Vuo detects no serial ports in OSX

Steps causing the bug to occur

  1. Add any node that looks for a serial port.

How did the result differ from what you expected?

I expected the USB-connected Arduino Uno’s port to show up as a device.

When did you first notice this bug?

As soon as I tried to use serial nodes.

Have you found a workaround?

First, I tried using “Make Serial Device from URL” using the absolute path of the device. Then I tried changing USB ports, and when they weren’t showing up either, trying “Make Serial Device from URL” for those ports as well. I’ve also tried installing serial drivers from Prolific, Keyspan, and every other usb-serial driver I could find, but no luck. The Arduino is definitely connected and communicating over the serial port fine.

Other notes

  • Vuo version: 1.1.0
  • macOS version: OS X 10.10

I’ve also now tried on a Macbook Pro running 10.10.3 (The first try was on a Mac Pro 2013). Same thing - no serial devices detected, manually inputting the url has no effect either.

Hi, @robaiello. Sorry I didn’t get back to you sooner.

So far we’ve successfully used the Arduino Diecimila on OS X v10.8 (using the FTDI VCP driver, as you noticed) and on OS X v10.10 (using the Apple drivers). According to Apple IOKit, they’re registered as IORS232SerialStream devices.

  1. Could you check Console.app to see if Vuo logged any debug messages while you tried to use your Arduino Uno with Vuo?

  2. I wrote a little app to give a list of all serial devices and metadata provided by IOKit. Please extract and run the attached app, copy/paste or screenshot the results, and post it here.

Hopefully that should give us the info we need to get this fixed.

VuoSerialTest.app_.zip (58.3 KB)

Console output:

4/22/15 4:06:47.999 AM PlayMovie-n2Hg1A[29917]: VuoSerialDevice.c:158 VuoSerialDevice_realize() Warning: No serial devices found.

Here are the results from the app:

/dev/cu.Bluetooth-Incoming-Port
omit: yes
type: IORS232SerialStream
tty: Bluetooth-Incoming-Port
vendor: (null)
product: (null)
serial: (null)

/dev/cu.Bluetooth-Modem
omit: yes
type: IOModemSerialStream
tty: Bluetooth-Modem
vendor: (null)
product: (null)
serial: (null)

/dev/cu.usbmodem2021
type: IOModemSerialStream
tty: usbmodem2021
vendor: Arduino (www.arduino.cc)
product: Arduino Uno
serial: 6493534333335170C181

I’m assuming the issue is that my Arduino shows up as usb modem rather than an RS232 device? Any idea how I can change that?

Thanks for your help!

I have an Ardunio Uno compatible device called a MicroView, I just tried that and Vuo detected it no problem. It gets mounted as usbserial device, unlike my actual Uno board. Unfortunately the shield I want to use to control my Vuo comp only works with the actual Uno board, so I guess I have to figure out how to get my Uno to be detected by osx as a usbserial device instead of a usbmodem device. Obviously, this isn’t a Vuo bug, but if you have any suggestions I would appreciate it. Thanks!

Doing some more research… it seems “the newer Arduinos don’t have FTDI devices on them… Arduinos now use an ATmega16U2 as the USB-serial IC.”
From the Arduino website: “…On the Mac, this should be something with /dev/tty.usbmodem (for the Uno or Mega 2560) or /dev/tty.usbserial (for older boards) in it.”

I have an older Uno, which uses the ATmega8U2, so I’ve ordered an updated version but I’m not sure if that’s going to fix the problem. Any way the serial nodes could detect usbmodem serial streams?

I’ve managed to force connection, reading at least, through URL /dev/tty.usbmodem1411 (my arduinos address).

Once you force it does it show up in a list node in vuo? Or does it just work when you send a serial command from your Arduino, even though the vuo comp doesn’t seem to see it? I’ve tried both /dev/cu.usbmodem#### and dev/tty.usbmodem#### for all of my usb ports, with two different uno boards, and I can’t seem to get it to work.

As Martinus said, type in the path of the serial port manually in the Make Serial Device from URL and feed that to the Device port of Receive Serial Data or Send Serial Data.

Use the /dev/cu.usbmodemXXXX option instead of the tty., The sending doesn’t seem to work in Vuo with the tty..

Receiving data seems to be fine with the tty though.

@mnstri, regarding cu vs tty device files — if I understand this post correctly, it’s saying that the tty device files are intended for the getty daemon to listen and wait for the modem to pick up, and that non-modem serial devices (like Arduino) should use the cu device files. (That’s why Vuo’s List Serial Devices node returns cu paths, and why Vuo’s Send Serial Data node is tailored to work with cu.)

@robiaello, I don’t know of a way to change the way a USB serial device identifies itself to OS X. In the next Vuo release, we’ll change Vuo to detect both USB RS232 and USB Modem devices.

Thanks for everyone’s input. I did finally get it working using the Make Serial Device from URL node pointing to my cu.usbmodem device, turns out I had a problem with my vuo comp and that’s why it didn’t appear to be working, but all good now!

Fixed in Vuo 1.1.1, released today — Vuo now detects serial devices that identify themselves as USB modems.

Awesome, thanks!