mtXControl - a Rainbowduino Editor By Tobi

Ok long time no hear as I was quite busy lately. But I managed to drive my rainbowduino and mtXcontrol development forward supporting multiple devices. Not yet fully finished, but good for beta test. Get a (quite nerdy) sneak preview here:

vimeo.com/10377543

I focused to get quick and easy. Some features:

  • one for all -> master & all slave run on same firmware
  • no configuration -> auto detection of master & slave + I2C address selection
  • nice protocol for easy communications with devices. I’ll release a processing (java) library, which should be easy to port to other languages
  • Master/slave communication is kept generic, so you can use this for other project with multiple Arduinos as well

Wanna beta test? Grap the sources here and start with examples:
github.com/rngtng/rainbowduino/tree/master_slave

Stay tuned! Tobi

I have a question…

g. Close the Arduino IDE. Load the latest Processing IDE (although similar in appearance, they are not the same). Remember to leave everything connected as displayed in the blog photo.
h. Load the mtXControl application and compile and run it. The display should go blank.

What exactly do I have to load and run on Processing ?

h. Load the mtXControl application and compile and run it. <- Is this mtXcontrol.exe file ?

I currently have the LED Matrix on White, it doesn’t go blank. I get the following message on mtXControl: “No output device found, running on standalone mode”. What to do ?
Thanks in adv.

the current mtXControl just can communication with COM port 1, please set your USB2Uart to COM Port 1

I need help. I cant make it work, windows or mac. Im stuck at the all white LEDs pattern. Could anyone make a video or screen caps of the whole process ? Im clueless. I ran mtxcontrol on mac and nothing happens, only the icon shows up. I tried running the latest processing ide while running mtxcontrol, no luck. Do I have to run anything on processing before running mtxcontrol ? thank you in advance.

I can’t get the mtXcontrol to work with the Rainbowduino through my UartSB v2.2. I got the firmware upload to work, but mtXcontrol always says “Output device not found, running in standalone mode.” I started with my UartSB set to COM8 (default), then I tried COM1. The tutorials I’ve seen say to run something in Processing, but I can’t find that. I’m using the mtXcontrol.exe file instead, and it doesn’t work.
Anyone willing to help?

mike41325 and I are experiencing the same issue. We must be missing something, I don’t know what should be running on processing when mtxcontrol is running… or if there’s any… any help much appreciated.

Hi there,

The new version of mxtController and conresponding firmware run on rainbowduino may not work, so you may try this(I’v tested ok):

  1. Download the mtXcontrol_windows.zip and Rainbow_mtX.zip here:http://code.google.com/p/rainbowduino/downloads/list

  2. Connect your rainbowduino in proper way to your computer that you can program it throgh COM.(Remember to change the port to use COM1)

  3. Unzip Rainbow_mtX.zip to your arduino code directory (no need in the arduino library), open Rainbow_mtX.pde by arduino and program it to your rainbowduino.(If it compiles failed, there may be another rainbowduino class in your arduino library, so back up and remove it).
    After programmed, the rainbow Matrix will be all in white.

4.Unzip mtXcontrol_windows.zip and run mtXcontrol.exe.
If ther’s error reported, like “not found javaw.exe”, then you need to add the java path to your environment variable(On my computer is: D:\Program Files\arduino-0018\java\bin ). Am I understood?
If there’s no error reported, just enjoy controlling your rainbow!

May it helps!

All the best,

-Icing

I got it to work, but certain actions (like loading from the matrix) will freeze the program and I have to force-quit the window. Anyone have a solution?

Hi mike,

Which version of mtXcontrol and firmware are you using? I’m failed on the newest one.

I used the most recent version that was posted right before my comment today.

Got it working for the first time today ! It’s awesome ! Had some problems with the COM port and app is running a bit slow but it works great ! Good work!

I have 1 more question: how do I hook up a second rainbowduino so I can write whole words ? I have 2 rainbowduinos connected but can only control 1, the other one is still running another sketch. Do I have to upload the new firmware to it individually (unplug all, upload firmware, restart mtxcontrol) ?

Hi xDGx,

Glad to hear you got it work! :smiley:

However I think this version may not support the function you need as it can only control one rainbowduino. :wink:

I’m not sure if the new version support the cascading. And I’ll do some test.

If there’s any info you get, remember to tell me! :slight_smile:

All the best,

-Icing

I can’t seem to get off the starting blocks with this one!

I can’t successfully upload any sketches whilst the Rainbowduino is wired up to the Arduino, even the ‘blank’ sketch. If it is wired up (all correctly as well, I’ve checked and double checked) I get the error message:

avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0xff
avrdude: failed to write to flash memory, rc=-4

If I unplug the rainbowduino, the sketch loads up perfectly. So I’m not too sure how to get mTxControl to work if I cant get the firmware sketch to upload and run, when I can’t have the rainbowduino attached.

I’m sure I must be doing something wrong, being and Arduino noob! So any help would be greatly appreciated.

By the way, I’m on XP, using Arduino 0018 and a Duemilanove 328.

Thanks,
Ali

I managed to get the Rainbowduino to run the Plasma sketch… which now reveals a fault with one of the red diodes on 8x8 RGB matrix! I’d send it back, but it’s probably too late now. I ordered the matrix and the Rainbowduino from two separate companies at the same time. The matrix arrived three days later, the Rainbowduino never showed, it was now out of stock (which it wasn’t when I ordered it) and wouldn’t be back in for over a month! 6 weeks later I got in touch with the company asking where it was, and I was told they had no record of an order! Money was taken from my bank account and the order even showed on an ‘Order History’ window on their website, but I was continually told they had no record of an order. By sheer coincidence, when I got home that same day, there in my letterbox was the Rainbowduino, at least the despatch guy knew I had an order!!

Anyway, I’m getting way off topic. I have finally been able to upload to my v2.0 Rainbowduino through my Deumilanove, but only after removing the 328 from Arduino. If the chip is in, I get this error:

avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0xff
avrdude: failed to write to flash memory, rc=-4

So, I can upload firmware.pde to the Rainbowduino with my arduino chip removed, but that’s about as far as I get. I’ve read through all the other steps, I’m lost at a few of them, like what .pde should I be running on the Arduino when I start up mTxControl? But until I can upload sketches to the Arduino when the Rainbowduino is connected, I think I’m pretty well stuck.

Thanks,
Ali

Hi Ali,

Sorry to know it brought you so much troubble.

To use the rainbowduino, you need to know that it has one atmega168 itself, so you can programm to it through Arduino IDE(e.g. 0018). However, without FTDI chip on it which change serial to usb, rainbwoduino could not be programmed directly. You need one uartSB or with the help of your Deumilanove board. Here is the link on how to programm rainbowduino through arduino:
http://www.rngtng.com/2009/06/25/rainbowduino-here-it-is-and-how-to-program-it/

Anyway, glad to know that you have successfully programed the rainbowduino. So you may need to do by the steps I’v posted on the previous page.

May it helpful to you, and feel free to ask any question!

Regards,

-Icing

Icing, you say that the rainbowduino has a 168 chip on it? The rainbowduino that I have is a V2.0 with a 328 chip on it.

I had to use the files you suggested in this post: viewtopic.php?p=2768#p2768

How would you use arduino with 328 chip to program a rainbowsuino 328 version? I’ve got an ftdi dongle, so I’ve programmed the rainbowduino and got it working.

What is the maximum number of frames I can upload to the rainbowduino for free mode? At the moment it seems that I can only upload 10 frames for standalone mode and speed setting isn’t working in ‘free’ mode.

It will play all 20 frames that I have in the editor in slave playback mode and I can adjust speed.

Have you thought of other features you could write into mtx control? I was wondering why you’d chosen 8 colours? as the rainbowduino can do a lot more.

also with regard to my previous question, is the frame restriction due to eeprom space? the 328 version has 2x ram, eeprom and flash compared to the original.

I notice that the firmware.pde is actually fairly small, so there is something like 27KB of space left on my rainbowduino, it should be fairly simple to use PROGMEM to store loads more frames in flash without running into ram/eeprom issues.

----edit-----
I was using the mtXcontrol from my first post, it had an extra issue where it was displaying everything upside down, not sure why as there wasn’t any source code.

I’ve managed to get the latest version of mtXcontrol to compile and run in processing, I had to hardcode the com port and baudrate to match the firmware, I can now set brightness and change the standalone speed. As the rainbowDuino 328 version has 1024 BYTES of memory I’ve also increased the maximum number of frames the rainbowduino can store from 10 to 25, not sure how many more frames it can take.

Using the version of mtXcontrol linked in my first post, it was displaying the frames upside down. In the latest version they’re now the right way up but are back to front this time :confused:

for instance if I have 8 columns:

RRGGBBYY

it is displayed
YYBBGGRR

and it scrolls from right to left not left to right, any ideas why?

how simple do you think it would be to save the speed and brightness to eeprom too?

Newbie here :slight_smile:

At my whitts end with this now, get a whte scren on the 8x8 rainbow, used the Diecimila to program by removing the chip, programmed ok with Rainbow_mtX.pde and so now it shows a white screen, have changed com port to 1 and have unzipped the windows_mtX Control

it loads mxt control fine and when it loads the matrix goess black then back to white,
any help?

thankyou :slight_smile:

any pone out there

Hi, this is a bug in mtxcontrol I think, when you are using a new rainbowduino it has FF in all the EEPROM bytes so mtxcontrol tries to load 255 frames and crashes. The fix is to add a line in mtxcontrol’s firmware.pde:

void load_from_eeprom(word addr) {
word num_frames = EEPROM.read(addr++);
if (num_frames > 10) return; // uninitialized eeprom

Which mtXControl is the latest version? The one I downloaded doesn’t have two separate zip files, I just downloaded one off the github site and it contained the mtXControl exe, and the files for the host arduino as well as the rainbowduino.