Serial input/output, for using Arduino etc.

A serial interface would be very critical for working with physical computing projects (using Arduino and other serial devices). That is one of the main features I use in any programming environment, and want to be able to work with serial devices in Vuo.


Isn’t this a little “old school”, 80’s? Would this perhaps not be better handled by USB, HID protocol (see my node request), OSC or other network protocols.

@pbourke: Some commonly-used devices (such as Arduino) use the serial UART/RS232 protocol encapsulated in USB. On Mac, these USB-serial devices show up as /dev/tty* devices, which we plan to support with this node set. (No old-school DB9 ports necessary. :^] )

However apparently it’s possible to replace the Arduino’s firmware so it shows up as a USB HID.

@mnstri, is Arduino-via-USB-HID an option for you, or do you specifically need serial support? (I recall from fighting issues with the Kineme Serial patch that the FTDI serial drivers Arduino needs were pretty flaky, resulting in frequent kernel panics. Perhaps we can avoid that and use USB HID, whose Mac drivers are much more reliable…)

USB-HID is not an option. HID is useful for many things, but serial is a MUST for any creative coding environment that I use. If Vuo is never going to support it, I can’t seriously use it for my work. HID should be added also, but it is not able to replace serial completely.

Some of the never Arduinos support HID also out of the box, but it’s not so great for receiving data that is not suitable for the HID format. I also need to send data to the Arduino, not just read from it.

It is available in every other environment and works just fine. Pure Data, Max, Processing, Cinder, openFrameworks, VVVV… And it is not obsolete by any means. The Arduino community is huge.

There is also a serial plugin for QC that doesn’t have the problems with FTDI driver like the Kineme one.

Thanks for clarifying, @mnstri. So a node set specifically for serial I/O is definitely still on the table.

Do you mean ? Unfortunately that code is GPL so Vuo can’t learn from it, but it is encouraging that someone was able to get the FTDI drivers to work without frequent kernel panics.

It’s this one

Based on AMSerialPort I think it’s using a BSD license.

I really appreciate you keeping this on the table. I would drop the cash on the missing credits, if I would have the money at the moment.

Direct link to the serial wrapper

Also something that I really liked about the Kineme serial plugin is the ability to define the break string. This should be in the Vuo implementation also.

And the FTDI stuff is not such a huge issue anymore with Arduino since most of the boards don’t use FTDI anymore. But support for FTDI would be crucial for a ton of other serial devices.

Since 10.9, Apple seems to have been including their own implementation of the FTDI drivers. FTDI devices now appear in /dev and just work as expected. I don’t think it’s a big deal anymore.

For Arduino usage, the newer Arduinos doesn’t use the FTDI chip(FT232RL) anymore. It has been replaced by the atMega8u2 which (for Mac users at least) is driverless and can optionally act as a HID device!

We’re planning to include this in the upcoming Vuo 1.1.0 release.

In Vuo 1.1, we added serial nodes, so this feature request is resolved.

See also the Provide a way to set the baud rate of a serial device feature request.