Making Max/Ableton talk Firmata/Arduino

Maxuino update v014

Posted: July 28th, 2012 | Author: | Filed under: Uncategorized | 26 Comments »

This is an incremental release fixing a number of issues and offering a new pathway for those of you that have been using v009 and v007.  Note that you can use the StandardFirmata that comes with the Arduino IDE – OR – the stepperFirmata we include with Maxuino.

Download it here.

  • there are now two versions of the and maxuino files
    • is the same as our recent releases and relies heavily on the GUI and OSC input.  This remains largely unchanged and is still experiencing issues with digital inputs.
    • shows you how to talk directly to the maxuino translator, simplifying things for those of you who want to include a lightweight low feature capability into your sketches. Note that it uses the maxuino-noGUI.maxpat.  For those of you that have been using v009 because you wanted direct access in this way, please use this new patch rather than the old versions. All features are working and have been tested with Arduino UNO and MEGA 2650 boards.
  • fixed a minor bug in maxuino.js
  • updated stepperFirmata to match the latest version of Firmata (v2.3) and so it should compile again.  Dont forget you need to add stepperDriver to your arduino libraries folder and restart Arduino IDE to get this Firmata to work.

We were not able to test every configuration and board and so please do post any issues you find – its the summer, and so there is a bit more time right now to get things fixed quickly!


26 Comments on “Maxuino update v014”

  1. 1 adam said at 12:39 pm on September 29th, 2012:

    I’m testing v014 and I’m wondering if it compatible with max 5.1.0 (41208)

    Ive got both PD and V4 communicating with my arduino but the patch you provide(followed the instructions) doesn’t give any response at all. Im using firmata Firmata_v2.3.2

  2. 2 Donna Hewitt said at 5:20 am on October 14th, 2012:

    Hi there,
    I am really enjoying Maxuino, it is very useful for me. I realise from the updates that the problem with digital inputs being reliable is known but it would be helpful for me to know if there is a fix likely to happen in the near future. I’d really like to work with Maxuino on my current project but only have a couple of weeks and so need to look for alternatives if i can’t get it working reliably with the digital inputs.

    I am using Maxuino v014 and arduino MEGA 2560

    Any advice on this would be greatly appreciated.

    Thanks so much for your great work. Sorry to hassle..

  3. 3 maxuino said at 4:47 am on October 16th, 2012:

    Adam, it should still work with Max 5, tho we have moved to Max 6 for all development. If you want to send us a screen shot of your max atch when it i running we cn try to trouble shoot with you.

  4. 4 maxuino said at 4:48 am on October 16th, 2012:

    I would encourage you to use the non-GUI version of Maxuino for now if at all possible since we are deep on some other items at the moment. Apologies.

  5. 5 Andrew said at 7:12 pm on October 19th, 2012:

    I’m having trouble getting Max6 to talk to my Arduino Uno with Maxuino 014 on OS 10.6.8. I’ve been going over the Getting Started procedure for a couple days with no luck. I upgraded my Arduino software to 1.01 from 1.0. I tried the standardFirmata in both versions and most recently I’ve tried the stepperFirmata from the Maxuino site (and with the stepperDriver).

    I’ve confirmed with that communication is possible with the Arduino. But when I open the or the non-GUI version I get the same response – the rx light on the Uno blinks when I set the pin mode and level, but nothing meaningful happens, i.e. raising pin 13 doesn’t light the onboard led. The led I’ve wired to pin8 won’t come on either.

    One thing I’ve noticed is that the always reports the firmata version as 2.3 (which appears to be true), but only under the newest Maxuino stepperFirmata, does report a version of 2.3. I other cases, I’ve seen 2.1 and 2.2. I thought that maybe this meant using the stepperFirmata from Maxuino had enabled real communincation.

    I’ve installed OSC-route (tried in a number of paths in the Applications/Max6 folder. I’ve added the path in Max, when it wasn’t already in there). At the moment the OSC files are in Max’s max-externals and max-help folders under Cycling74.

    Lastly I loaded some Arduino sketches of mine onto the Uno to confirm its functionality, so all that’s left I believe is some mistake of mine. Any help would be greatly appreciated.

  6. 6 maxuino said at 2:05 pm on October 21st, 2012:

    Andrew, that is quite a thorough bug report! Two questions for you:
    I assume you are selecting the serial port for your board before you try to talk to the board?
    if you can double click on the maxuino subpatch from the help patch, you will see there are three print objects that can be switched on. If you can turn those on and send me the results I can help make sure that maxuino is working well.

  7. 7 Andrew said at 3:44 pm on October 21st, 2012:

    Thanks for getting back to me. I think I’ve figured it out, though being only days new to Max and Maxuino, I’m not entirely sure of that.

    My serial port is at the top of the list and so is already ‘selected’. To make it work, however, I have to select any different option and then reselect my port. I know I tried changing ports early on, but somehow never had to right combination of other things to make it all work I guess. I reloaded the standardFirmata from Arduino 1.01 and it does in fact work. I went back to your firmware in case I end up using a stepper motor.

    I was also hitting the update button, but it looks like that simply populates the list, not chooses an item.

    I added a delay feeding into a button from the ‘update’ message ‘message result’ port to the umenu ‘in’ port so that 500ms after the loadbang event or an update event it bangs the umenu to select the default item. For my case where the Arduino serial port is on the top of the list it works fine.

    Thanks for your help (and for creating this in the first place). Now that it’s working I just have to learn how to use it!

  8. 8 Andrew said at 4:02 pm on October 21st, 2012:

    I found another way to make it work. If I open the original, toggle into Edit mode, edit anything in the Maxuino patcher object, toggle back out of Edit mode and it works. I tried changing the delay time or just typing anything and backspacing over it so Max thinks I’ve changed it and that’s enough to make it work.

  9. 9 Tim said at 7:26 pm on November 22nd, 2012:

    Andrew, thanks for your reports on your problem, you helped me solve mine! Thanks

  10. 10 juz said at 10:43 am on November 27th, 2012:

    just for others with the same issues:
    i originally popped the ‘maxuino_014’ file in /max6/ when i moved it to mac6/patches/ it all worked

  11. 11 Hugh Jones said at 5:13 pm on December 11th, 2012:


    I have managed to get Maxuino 14 running nicely but only the no GUI version.

    Can someone explain to me what the difference is between the GUI and no GUI versions?


  12. 12 maxuino said at 5:26 pm on December 11th, 2012:

    Hugh, the GUI and no GUI version differ in two ways:
    – the gui version has a sexy interface that allows you to instantly start controlling the pins and modes on the arduino. It also can accept OSC formatted commands, thus allowing you to set the state of many pins in one single command. Also the GUI version has a max4live compatible patch. The issue is that at the moment there is an error in the digital input mode where any digital input signal then turns off that pin (the GUI has a feedback issue).
    – the no gui version has a bit less overhead, and is fairly simple, but uses differently formatted commands (not OSC). if you are trying to quickly integrate arduino into an existing patch setup, all you need to grab from the nogui help patch is the serial port chooser, the pin mode section, and then whatever input or output you are looking for, combined with the no gui maxuino object.
    Be sure to see the maxuino protocol page for details on how to talk to the GUI vs the noGUI versions.

  13. 13 Edd said at 1:20 pm on January 23rd, 2013:


    I’ve been using maxuino to build a midi keyboard powered by infra red sensors. Its going very well, but recently I added some buttons to it that communicate through the digital ins of an arduino mega. The pins work fine in the GUI and non-GUI test patches but when I start my patch they do not work. All the analogue ins and PWMs work fine and the only way to get the digital ins to work is to delete the Maxuino no-GUI object and put it back when the patch starts. Any ideas why this is?

    Thanks a lot!

  14. 14 maxuino said at 6:45 pm on January 27th, 2013:

    Edd, that is a strange problem for sure. inside the maxuino no-gui sub patch there are several print boxes. can you turn them all on and then get your patch to do its startup routine so all the commands will print in the max window and I might be able to help catch the issue.

  15. 15 Luke said at 4:40 pm on February 11th, 2013:

    I am a little stuck in the initial stages! I have used previous versions of maxuino successfully, but I am currently unable to get any response from my Arduino Mega. When I open the Maxuino.maxhelp patch I am able to select the correct port, however when I attempt communication with the Arduino (setting pins etc.), there is no recognition (not even the RX light flashing). When I delve into the patch a bit more and get to the Maxuino gui window, I am able to get the RX light to flash, but again I am unable to get pin 13 to flash. I was wondering if you might have any ideas!

  16. 16 Jenny said at 2:32 am on February 16th, 2013:


    Thank you so much for Maxuino–it’s an incredible contribution.

    I have what is probably an extremely simple question, but I can’t seem to figure it out: is there a way to create a preset in the Maxuino GUI such that when my patch is loaded, it automatically selects the ArduinoMega board from the umenu (and, if necessary, bangs the “update” button for the correct port, which is always USBmodem and never Bluetooth, but sometimes it seems to matter whether I actually bang that message or not)?

    The reason I want this preset to function is that I’m using Maxuino for a gallery installation (I built some interactive instruments fitted with LEDs whose on/off functions are determined by the instruments’ audio signals in MaxMSP), and the gallery needs to be able to turn the computer on and off each day, without me being there….and right now, the patch can’t simply load on restart with everything set up the way it needs to be (once it loads, one has to manually double-click the MaxuinoGUI object and manually select the correct Arduino board before the LEDs will function properly in my patch).

    I’d really appreciate some advice on this! Perhaps I need to explore using the noGUI object?

    Many thanks for this, and for your amazing software!

  17. 17 maxuino said at 3:01 am on February 16th, 2013:

    Jenny, I would recommend switching to the no-gui version so you can just send the commands you need w/o needing to set the board type. Your load bang would do the right serial port name, then set your pin modes after a 5second or so pause (the port command resets the arduino). then you are off and running and only need the no-gui maxuino object in your patch. email me (chris – see the if you have more issues.

  18. 18 Jenny said at 9:20 pm on February 21st, 2013:

    Hi Chris, that solved the problem! Everything working great now. Many thanks!

  19. 19 Rob said at 10:15 am on July 10th, 2013:

    I am having trouble driving a stepper motor from the maxuino

    The stepperFirmata v2.3 is installed on arduino (uno) as confirmed by firmata test app but max patch still says 2.3

    I can drive the stepper from arduino code on your stepperDriver page so I assume the hardware is good and connected properly

    From the max help patch (no GUI) I can move the stepper step-by-step using digital out on/off and change direction.
    If I set the step pin as pwm then the motor can spin smoothly but does not have variable speed as duty is changed.
    But when I set the motor number, step pin, and dir pin in the stepper box I get nothing.

    Am I missing something? The motor# can be anything right? It just allows multiple motor control.
    I am not using the sparkfun easy driver board but this board: but it is the same kind of thing with step and dir pin so should be no different….

    I would be eternally grateful for any help, support and pointers


  20. 20 maxuino said at 4:05 am on July 11th, 2013:

    Rob, if you have a chance to be a guinea pig, we have posted update 16 that has been working really well with steppers via an upcoming ConfigurableFirmata. Otherwise send me an email chris dot d dot coleman and I can try to walk you thru it.

  21. 21 Stfane said at 5:41 pm on August 24th, 2013:

    Hello, I try to make it work and I do not understand why, it’s not working at all?
    I have an arduino Uno, installed with firmata 2.3.6, and maxuino 14
    my led is working on 13 when I use Digital Output.
    but when I plug an Led with PWM it’s not working at all the same with a simple pushbutton, and it’s working with maxuino 8…
    can you tell me if you have a solution it’s a nightmare!!! thx

  22. 22 maxuino said at 8:37 pm on September 7th, 2013:

    PLease try the newer b016 version, we have fixed a number of bugs since v14…

  23. 23 tdf said at 6:36 pm on February 9th, 2014:

    Hi everyone, I am quite new to Arduino programming and seem to be stuck:
    1. I use Max 6.1 on OS X 10.9.1
    2. I uploaded Firmata 2.1
    3. I downloaded Maxuino b016
    4. I put OSC route and all the other berkeley stuff in my project folder and it is found by Max
    Now here’s what’s bothering me:
    The M4L-Patch is working fine. I get analog input and can make my little light bulb at pin 13 flash. But I wanted to make my own patch with a genuine GUI that is also loading everything with a loadbang so I won’t have to select my USBdevice and type of Arduino.
    So I startet the maxuino.maxhelp to see what I could do.
    And I could not do much. I can select my USBdevice and see that my Arduino MEGA responds, BUT…
    Trying to use the “test the built in LED”-test or any other kind of communication gives me errors like this by OSC-route:
    “OSC-route: invalid message pattern digitalWrite does not begin with /
    ” I think it is some kind of formatting error? but how could I solve this? As I said, I am new to this kind of stuff and I really need a hint 🙂 Thanks, Tommy

  24. 24 Yarun Claassen said at 2:12 pm on November 5th, 2015:

    Hey Chris,

    Thank you for creating this, it’s an amazing tool! I have a small problem. Maxuino will not connect to my Arduino(after uploading Firmata and installing the externals to MSP).
    I choose the right port and type(Arduino Uno) in the maxuino.maxhelp file but MSP doesn’t receive or send any information. The debugger does not give any errors, nor does it print a verification when I click ‘init’ as stated in the tutorial.
    When I put the correct settings in the drop-down menus I am still unable to make LED 13 blink(even with an external LED).
    I see in previous comments there were a few others with problems similar to mine, but the solutions given sadly did not work for me.
    Thanks in advance,


  25. 25 Julian said at 3:00 pm on December 23rd, 2015:

    medi می‌گه patch 2.2 rO baraye avbvilnaar nasb kardam vali vaqti mikham bazi rO ejra kOnam bazi ejra nemishe.mige PES 2013 nasb nist!!!!!!!!!!!!!!! in che errOrie akhe!!! kOllan bazi parid age mitunid rahnamaei kOnid lOtfan.mamnOon

  26. 26 Jon said at 11:26 pm on April 13th, 2016:

    @tdf, it is indeed a formatting error, I encountered it in the maxforlive device. I fixed it by inserting “sprintf /%s /%i %i” between “js maxuino.js” and “p midi” in the main patcher window.

Leave a Reply