tedmarshall
New member
It's probably too late to change, but Crystalfontz make some poor decisions on the contents of the USB descriptor for the new CFA735. When I plugged one into a Linux box (recent Ubuntu), it enumerated as /dev/ttyACM0 (Abstract Communications Modem) instead of /dev/ttyUSB0 (as for CFA635). Checking with "lsusb -v", I discovered the following values in the device's USB descriptor:
Thus, you are telling the OS that the module is a standard modem! By the way, the OS driver also tries to talk AT protocol to the device. This has no real effect but is kind of ugly.
This is not a real big deal. Changing my code to talk to /dev/ttyACM0 makes everything work fine. However, this could have problems if there is other software on the system that tries to talk to a modem on the system. Also, it just plain violates the USB standard!
BTW, the CFA635 sets bInterfaceClass to 255 (vendor specific), as does a USB-to-serial dongle I tried.
I don't know if there is a better set of values to describe a display, but I'd have preferred to see 255, just for backward compatibility.
Code:
bInterfaceClass 2 communications
bInterfaceSubclass 2 Abstract (modem)
bInterfaceProtocol 1 AT-command (v.25ter)
This is not a real big deal. Changing my code to talk to /dev/ttyACM0 makes everything work fine. However, this could have problems if there is other software on the system that tries to talk to a modem on the system. Also, it just plain violates the USB standard!
BTW, the CFA635 sets bInterfaceClass to 255 (vendor specific), as does a USB-to-serial dongle I tried.
I don't know if there is a better set of values to describe a display, but I'd have preferred to see 255, just for backward compatibility.
Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.