Есть ли возможность считывать данные из виртуальных последовательных портов без указанной ошибки?
Я пытаюсь получить данные, отправленные со сканера штрих-кодов символов / зебры li4278.Устройство работает в режиме простого эмуляции com-порта и находится в / dev / usb / hiddev0 как последовательный порт.
Я уверен, что эмуляция работает нормально, потому что CuteCom может читать с него, а также работает этот простой скрипт на pytonтоже:
defaultDevice = '/dev/usb/hiddev0'
inDev = open(defaultDevice, 'rb')
while True:
inBytes = inDev.read(1)
for x in inBytes:
print(x)
Но каждый раз, когда я пытаюсь прочитать его, используя pyserial с таким минимальным кодом, как этот:
with serial.Serial('/dev/usb/hiddev0', timeout=1) as ser:
x = ser.read()
print(x)
, возникает та же ошибка: termios.error: (22, 'Недействительным аргумент').Как будто он не может читать из виртуальных последовательных портов.
И нет, установка аргументов в значение rtscts = True, dsrdtr = True не работает.
У меня тот же '22, недействительныйошибка аргумента
Linux Mint 18, 64-битный, Python 3.7, pyserial 3.4.
Кто-нибудь знает, в чем дело?