3 ms·
> it turned out some kind of modem manager service was messing with the port, and needed to be disabled. Curious. What service was that? I have an on-board se
by foresto 7mo ago
> it turned out some kind of modem manager service was messing with the port, and needed to be disabled.
Curious. What service was that?
I have an on-board serial port that's only working in one direction, which is something I've never encountered before. I wonder if the service you're referring to could be causing my problem.
- xobs 7mo agoModemManager. You need to set the variable ENV{ID_MM_PORT_IGNORE}=“1” I. A udev rule. Standard usb serial ports show up as ttyACM#, whereas nonstandard ports that require a driver like ftdi show up as ttyUSB#. Modems tend to be standard usb devices, so ModemManager by default scans all serial ports as if they were modems. This involves sending some AT commands to them to try and identify them. Software implementations of serial devices tend to follow the standard, so they show up as ttyACM#.
- foresto 7mo agoThanks for the tip. Unfortunately, it doesn't seem to be the cause of my one-way serial port issue. Adding the udev environment variable makes no difference, nor does stopping the ModemManager service.
- blueflow 7mo agoModemManager used to open() and probe every tty device attached to the system. I had a 8-channel relay card with an arduino nano wired up with my desk to control the lights and disco ball, interfaced with a custom ascii-based serial protocol. connecting it to an ubuntu machine (where modemmanager was active in the default install) turned the 2nd or 3rd channel on. This was generally infuriating, there are many arduino forum posts about modemmanager messing up DIY setups. Upstream fix was changing modemmanager to work on a whitelist / opt-in approach instead of blacklist / out-opt. My fix was to switch to debian.