usb ACM device doesn't work
ianf at clue.co.za
Sat Jun 22 18:54:59 UTC 2013
"Daniel O'Connor" wrote:
> On 22/06/2013, at 4:10, Ian FREISLICH <ianf at clue.co.za> wrote:
> > I bought a relay control board that has a USB interface. It presents
> > a serial port to Linux on /dev/ttyACMx. However when I plug it
> > into my FreeBSD host, it detects as follows:
> > ugen0.2: <KMT> at usbus0
> > umodem0: <KMT USB CDC COM, class 2/0, rev 1.10/1.00, addr 1> on usbus0
> > umodem0: data interface 1, has no CM over data, has no break
> > and I cannot communicate with it. Any ideas how to communicate with it?
> Have you tried anything?
> It should create /dev/cuaUx and /dev/ttyUx (where x is 0 in your case)
I'w sorry, I should have been more specific.
I have a device that controls a bunch of relays with commands issued
to it over a serial port. This serial port is CDC-ACM on a USB
interface. The device uses a PIC microcontroller and PICKIT2 from
Microchip Technology Inc (vendorID 0x04d8). Linux correctly detects
the device with "CM over data" and I'm able to communicate with it
on /dev/ttyACM0 and the TX/RX LEDs on the device blink when
FreeBSD on the other hand detects it as having no "CM over data"
and while I can open /dev/cuaU0 and write data to it, the RX/TX
lights on the device don't blink and reads time out. As previously
stated "I cannot communicate with it". I tried adding the quirk
UQ_ASSUME_CM_OVER_DATA, but then the terminal program locks up and
won't exit until I pull the USB cable. The same happens when I
force the CM over Data capability in the umodem driverwhen attaching
the device, so there's some issue with our CDC/ACM support or Linux
is working harder to make non-compliant usb hardware work.
Also, our usbdevs is incorrect in listing vedor 0x04d8 as I-Tuner
Networks. It is in fact licensed to Microchip Tochnology Inc. which
then sub-licenses productIDs royalty free to third parties providing
certain conditions are met. See:
I don't have the knowledge to fix the FreeBSD USD driver and for
the $45 it cost me it's not worth the effort to reinstall the host
I'm using with linux. If there's no fix forthcoming I'll just get
the EIA-485 version of the device with no hard feelings.
More information about the freebsd-current