см. Не устанавливаются настройки /dev/ttyUSBX
Это ж надо было совместить функционал драйверов телетайпов с функционалом серийных портов вообще. Знаю, что этот быдлокод — ещё наследие юникса. Ну ладно, совместили, но ведь можно ж было позже поправить (100 лет в обед схеме), или хотя бы вменяемые сообщения об ошибках запилить. Так нет же. Вот как я должен догадаться, что означает ENOTTY, для устройства, которое и не является терминалом, и для которого при открытии установлен флаг O_NOCTTY?
//хотя до питонистов им всё ещё далеко