-
Notifications
You must be signed in to change notification settings - Fork 267
Description
Hey,
I decided to give this a shot on FreeBSD, it almost seems like it wants to work:
ugen0.3: <Espressif Systems BQ Station G2> at usbus0 (disconnected)
umodem0: at uhub0, port 2, addr 6 (disconnected)
umodem0: detached
ugen0.3: <Espressif Systems BQ Station G2> at usbus0
umodem0 on uhub0
umodem0: <Espressif Systems BQ Station G2, class 239/2, rev 2.00/1.00, addr 7> on usbus0
umodem0: data interface 1, has no CM over data, has no break
though it doesn't do anything:
➜ sq meshtastic --debug --port /dev/ttyU0
DEBUG file:__main__.py common line:1272 Not logging serial output
DEBUG file:serial_interface.py __init__ line:47 Connecting to /dev/ttyU0
So I started looking at the code for it and noticed the termios / tcsetattr and it dawned on me that it probably has something to do with that because I've had to use different termios settings for FreeBSD before. I noticed there's some tcsetattr
stuff here for Windows specifically:
https://github.com/meshtastic/python/blob/master/meshtastic/serial_interface.py#L51
from the pyserial project:
The module named "serial" automatically selects the appropriate backend.
yeah evidently not if you're having to use tcsetattr :) but yeah I'm at a loss for what backend it might be trying to use:
self.stream = serial.Serial(
self.devPath, 115200, exclusive=True, timeout=0.5, write_timeout=0
)
since we don't really get anymore log messages after
logging.debug(f"Connecting to {self.devPath}")
I'll take a look at this a bit later but just in case I forget, here's a ticket