RainbowDuino here it is! (and how to program it)

2009 June 25

rainbowduino2
Yay – I finally got my RainbowDuino. Unluckily I did sth wrong with the external power connection (JST 2 pin jack) and smashed a capacitor. Maybe the polarity was wrong or it couldn’t stand the 12 volts? But luckily no damage to the main system so it still works using the terminal connector (right through the 5volts of the Arduino). *phew*

The first real basic problem I ran into was how to program the Rainbowduino as there’s no USB connector and I don’t have an UART interface.
But well, nothing simpler than that: Just connect your Arduino’s Tx,Rx,GND,Reset and Vcc ports with those of the Rainbowduino, choose the right controller type in your IDE and program it as usual – works perfect for me!

Check out my Rainbowduino Editor mtXcontrol here – it’s an easy way to draw shapes on your rainbowduino!

Btw. DTR on Rainbowduino is Reset on Arduino

UPDATE:
Sorry I forgot to mention, this trick does NOT work if your host arduino is a ATmega168 – you need an ATmega328 to pass serial communication through. Before that, make sure you upload this blank sketch to your host Arduino first:

/* blank sketch to upload on Arduino */
void setup()
{
}

void loop()
{
}

And, as multiple times requested, a picture of my complete setup:
arduino_rainbowduino

Make sure you’ve selected the switch right. It has to point to the same side as the green Terminal connectors are. If you power rainbowduino through the white JST jack, flip it!

60 Responses leave one →
  1. 2009 September 25
    charlie from LOST permalink

    hi,

    Am I supposed to use the reset that’s next to the 5v and ground?

  2. 2009 September 25
    tobi permalink

    Ehm yes! And make sure to have a blank sketch uploaded on the (master) arduino…

  3. 2009 September 28

    hello, i see on your youtube page some editor program for the rainbowduino… can you share it with an another curious (and newbie) rainbowduino user ? :)

    thanks

  4. 2009 September 28
    tobi permalink

    yes I’ll post it soon here! It’s not yet fully finished and ready to publish, but I’m working hard on it! For sure it’ll be OS and free for download, more on this soon – so stay tuned!

  5. 2009 October 7
    tobi permalink

    Alright, it’s published, please see http://www.rngtng.com/mtxcontrol/ for more!

  6. 2009 October 24

    Hi I loaded both Firmware and Processing code.
    Uploading of Firmware seems fine -> Rainbowduino started to show random patterns
    For connection with processing I changed the serial port (as mine shows up second in the list). But the rainbowduino seems to not do anything when recieving Mxt Controls.

    Any ideas?

  7. 2009 October 25
    tobi permalink

    hm did you use the latest one? Please try 1.02, you’ll find it here: http://github.com/rngtng/mtXcontrol/downloads

  8. 2009 October 25
    the noob permalink

    I’m a noob, do you think one day you’ll put together a “how to for noobs” read me file on how to get it up and running?

    btw way awesome job and the youtube clip with the accelerometer looks pretty cool!

  9. 2009 October 26

    Hi,

    When I attach my rainbowduino to my arduino mega with only the 5v and gnd, I only see red LEDs on my matrix. When I attach the power supply to the rainbowduino, I see the sample sketch. I tried flipping the switch on there but I don’t know what I’m doing wrong.

  10. 2009 October 29

    Hi Tobi,
    ich hänge leider schon beim Programmieren des Rainbowduinos mit Deiner Firmware über einen Arduino. Ich denke, ich habe die beiden korrekt miteinander verknüpft (5 Kabel), in meiner IDE habe ich den Duemilanove mit atmega168 aus gewählt – aber ich bekomme alle Nase lang nur dusellige Fehlermeldungen (protocol error, expect=0×14, resp=0×51).
    Hast Du auf Anhieb eine Idee?

  11. 2009 October 29
    tobi permalink

    Hey mistake, i just updated the blog post, I think I forgot to mention to upload a blank sketch onto the Arduino first. ;-)
    And make sure that DTR on Rainbowduino is connected to Reset on Arduino. Does this work?

  12. 2009 October 29

    Ok, I’ll try it in english ;)
    I already found the part with the blank sketch somewhere on the net – but I’m afraid the blank sketch I chose was just a little bit blanker than the one you showed above ;) :(
    I hope this was the simple reason for failing, as the DTR and the Reset-Line were connected.
    I’m @work right now – I’ll try it in a few hours.
    Thanks :)

  13. 2009 October 29

    Update. Just one step ahead.
    I uploaded the blank sketch. success.
    I uploaded your firmware. success.
    At least I guess success, because:
    I removed VCC, GND and Reset, instead I used an external 9v battery. I started mtxcontrol, the rx & tx-leds on the arduino are blinking – but nothing’s happening on the rainbowduino. :(
    I’m going to try again after 4:30 pm…

  14. 2009 October 29
    tobi permalink

    cool congrats! Well by default mtXcontrol runs in Free mode, so Rainbowduino doesn’t show the frames at all, until you click the 2nd top right Button saying ‘MATRIX: Free’ or hit alt+ENTER. This puts Rainbowduino in Slave mode and displays 1:1 what you’re doing with mtXcontrol. Maybe I should make this the default option..

    ah yes, and english please as we have a lot of international readers… ;-) and nice Blog btw.

  15. 2009 October 29

    Thank you, particularly for your help and your compliment :)
    The last thing I tried in my break was changing the free/slave-mode – the blinking rx/tx started on the arduino, nothing was blinking on the rainbowduino. But as I mentioned already: just about 3 hours and I’ll try on ;)

  16. 2009 October 29

    Still no luck… I’ve checked that uploading the firmware to the rainbowduino now works fine by uploading the original data from seeedstudio again – all leds lit up. After that I uploaded your firmware again, started the editor – the tx/rx-leds of the arduino reacted (after setting the slave mode, of course), but not the rainbowduino.
    Any idea now?

  17. 2009 October 29
    tobi permalink

    @mistake: I’ve send you an email with detailed questions/tasks which may track the problem down..

  18. 2009 October 30

    Interesting. I discovered, that my leds weren’t as bright as they should be – and now I know why:
    I used VCC and GND right next to TX and RX on the rainbowduino… Now that I’ve changed to the green terminal connector and switched the switch, it’s shining as bright as before when I used an 9V battery on the JST jack…
    Thank you for you’re great getting you’re great piece of software running :)

  19. 2009 November 3

    I’m getting “programmer is not responding” in the arduino IDE when I try to upload. Which Board did you choose under the Board menu?

  20. 2009 November 3

    I got it to work by taking the atmega out of my arduino!

  21. 2009 November 3

    When I upload the firmware using the Arduino IDE the matrix goes all white. Is that what it’s supposed to do? Do I need to run something in Processing also? Or just upload the firmware and rum mtxcontrol?

    Thanks!

  22. 2009 November 3

    Which .pde files to I upload to rainbowduino? What are all of the rest of them for? Do I just upload the firmware and then launch mtxcontrol application?

  23. 2009 November 3
    tobi permalink

    @Dave: well to upload the sketch on the Arduino choose ATmega 328 (first item from the IDE Board menu), for upload on Rainbowduino it’s ATmega 168

    @Tony: Start the Processing IDE and load the mtXcontrol.pde and run it. (Don’t get confused, this will load all other files as well.) For the firmware, open Arduino IDE, load firmware.pde and upload it to your rainbowduino. By default, the firmware loads it’s data from EEPROM. If you’ve never used it before it’s likely that each byte has 255 as value which would result in a white screen – seems allright!

  24. 2009 November 3

    Thanks… What about the mtxcontrol standalone application? Where do I use that?

  25. 2009 November 3
    tobi permalink

    hehe well actually the standalone app should replace the need of using processing IDE and loading the mtXcontrol.pde file, but users reported the standalone doesn’t work for some reasons. Maybe give it a try and tell me if it works for you..

  26. 2009 November 3

    I got it working. When you open the .pde file with Processing it alerts you that you need to move it to it’s own folder. So you have to say continue, and then put all of the other files besides the firmware folder inside the new mtxcontrol folder. Then it started working just fine! Thanks!

  27. 2009 November 3

    Also how do you type letters and numbers like in the video?

  28. 2009 November 3

    Nevermind! I should have read that you h0ld down Ctrl

  29. 2009 November 6
    Jose permalink

    Hi,
    I try to use your standalone application (.exe) but I wasn´t sucessfull.

    Later I found another project in seeestudio (Raindrops) that uses your library
    Rainbowduino.h. I upload it with success and I begin to understand the code (I don´t know
    to much about C language.

    After run my arduino connected to rainbowduino it begin to work ok (I´dont have
    the accelometer module, but for this porpose I think it is not necessary).

    But there is a problem the LEDs are flickerin, I don´t have a stable image.
    Î know that in the game the lines are scrooling, but even after changing the code a little for
    displaing some LED in one line I have the same behabiour.

    Is this normal ??

  30. 2009 November 9

    Hi tobi,

    Works fine with 1.02. Great Job!

    Thanks

  31. 2009 November 11
    Ross D permalink

    Ok, this program looks fab! I have all the hardware and the mtXcontrol downloaded… but I can’t find the firmware anywhere. Do I need to upload something to the rainbowduino, or to the arduino? If so could you tell me where I can get them files.

    Hoping to build something on Friday with this – looks good!

    Thanks

    Ross

  32. 2009 November 12
    tobi permalink

    hey Ross, you have to get the firmware from source, find it here: http://github.com/rngtng/mtXcontrol/tree/master/firmware/

  33. 2009 December 17

    Very nice. Thanks!

  34. 2009 December 18

    Hi,

    Is there a way to control the brightness of the leds? They are to bright for my application.

  35. 2009 December 18
    tobi permalink

    Hey Rene, unfortunately, by now, there’s nothing like this… but it’s on my todo list, stay tuned ;-)

  36. 2010 January 16

    Hello, thank you for posting this.

    It was very helpful for me, I programmed the rainbowduino with the test plasma sketch “through” a arduino mega. the only thing that confused me was that
    After loading the blank sketch with the IDE set to “mega” and connecting the rainbowduino,
    I had to switch the IDE to an “diecimila duemilanove or nano atmega168″ arduino to program the rainbow through the arduino mega serial.

    If you are using an arduino other than diecimila duemilanove or nano you will probably have to change it or you will get a avrdude serial error.

    once that happens you cant reprogram the arduino either unless you press the reset while reconnecting the usb/power

  37. 2010 January 16
    tobi permalink

    hm I havn’t tried the Arduino mega yet. But as far I’ve heard there’re no differences in way how to program the controller..

  38. 2010 January 18

    Hi tobi

    I can’t get the mtxcontrol to work, I’ve connected my seeduino mega to the rainbowduino, loaded the blank code and then loaded the firmware code. When I launch the mtxcontrol the program doesn’t work, nothing displays, no grid, no buttons, nothing. Have you changed the program, I noticed you recently did a upgrade

    Thanks

  39. 2010 January 18
    tobi permalink

    what OS are you using? please get the source code from github and run mtXcontrol within the processing IDE. What errors do you get?

  40. 2010 January 19

    I’m running 10.5.8 when I run mtxcontrol nothing comes up. I’ll email a link for a short video tonight.

    Thanks T

  41. 2010 January 19

    This is the link I used to download the zip file for my Mac. Do I need any other files?

    T

  42. 2010 January 19

    Here’s a link to my short video

    http://screencast.com/t/YWZjYjlh

    Thanks T

  43. 2010 January 21
    Ola permalink

    Hi!

    I have problems loading the firmware to my Rainbowduino. I uploaded the blank sketch to my Duemilanove (168) as usual.
    But when I then try to upload the firmware I get a “protocol error” just like someone mentioned above. I checked the connections and re-uploaded the empty sketch. It never works. At some point the default rainbow-pattern stopped working so I guess something was uploaded. Can the Rainbowduino get corrupt?

    I have the board “Arduino Diecimila, Duemilanove, or Nano w/ ATmega168″ selected all the time.

    Thanks!
    /Ola

  44. 2010 January 27

    i finaly receive the rainbow ard. i am new to this i followed you instructions but anly got the full white lights the Mtx controler does not reconise the board it gives me this ( no output device found running in standalone mode) please can somewon tell me what am i doing wrong

  45. 2010 January 27
    tobi permalink

    Hey Ola! Apparently this uploading trick doesn’t work if your host arduino is a ATmega168 as well, you need an ATmega328 as ‘host’ to pass serial communication through…

  46. 2010 January 27

    i looks like onley a rocket sintinces can get these things to work my advice to aneyon dont buy this its garbage

  47. 2010 January 27

    i am sorer about that coment but after trying every thing it stil dosent work yes ihave a ATMega328 just like the one in your picture

  48. 2010 January 28
    tobi permalink

    hey levi, no worries rocket science is fun ;-) what mtXcontrol Version are you using, which OS (mac, win, linux – version number)? if rainbwoduino turned white, connection should be all fine..

  49. 2010 January 29
    DatManChris permalink

    Well I got mine tuesday and had it running in an evening.
    If you can take the 168 / 328 out then that seems to help.
    It works really well but wish that you could send it a longer stream from processing.
    I want to set up say 8 in a row and use it as a scrolling message display.
    My idea is to send 1 row at a time from processing to the first rainbowduino via serial RX and as it reaches row 8, shunt that row using the serial TX to the the second and so on.
    If I could just get to the bottom of how the source code works then I’b be half way there…
    I’ve built an analog clock using 480 RGB led’s in 7 8*8 and 1 4*8 matrix’s and It would be really nice to scroll a message round the face.
    If you release another version of the source code, Can you put a few more comments in to help us not so hardcore programers a chance???

    Great work and the Rainbowduino wouldn’t be half the product without mtXcontrol…

  50. 2010 January 29

    hi thanks i am using windows vista 64 yes i do get the all white screne i dont understand the part about the processing yes i did down load the processer but do ihave to load the xtxcon. to the processor or to the original ard. prosser.

Trackbacks & Pingbacks

  1. Rainbowduino… a virus in my Arduino!
  2. neophob.com » Rainbowduino fun – aka neorainbowduino
  3. Rainbowduino mit Arduino verbinden und programmieren « SUSAY – Design, Technik und Trends

Leave a Reply

Note: You can use basic XHTML in your comments. Your email address will never be published.

Subscribe to this comment feed via RSS