Linux FTDI серийный драйвер

384
Henrik Frilund

Я испытываю досадную проблему с последовательными устройствами FTDI в Linux, которая наблюдалась на нескольких машинах и в разных дистрибутивах. Проблема в том, что последовательный адаптер пропускает символы, и теперь с полностью обновленной установкой Arch с ядром 4.12.4 он стал настолько плохим, что последовательная консоль полностью непригодна для использования. Мы используем последовательные приставки для тестирования встроенных устройств, и частота проблем, с которыми мы сталкивались раньше, заключалась в том, что когда вы запускаете ночной тест, это может произойти один или два раза, достаточно плохо, что нам пришлось переключаться на компьютеры под управлением Windows для некоторых наших потребностей в журналировании. Как пример с 4.12.4. Здесь у нас есть встроенное устройство, которое печатает строку "Button pressed: Button 3 Switch 2\n"при нажатии определенной кнопки. Что я получаю:

Button pressed: Button 3 Switch 2  Button pressed: Button 2 Switch 2  Button pressed: Button 2 Switch 2  2 Switch 2 Button pressed: Button 2 Switch 1  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 SwitchButton pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 SwiButton pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  sed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  Button pressed: Button 3 Switch 2  

Делать то же самое под Windows не вызывает проблем, и до последнего обновления все работало нормально. Если я попробую то же самое на виртуальной машине с Ubuntu, то это тоже нормально, но я знаю, что, если бы я запустил его в течение долгого времени, он также потерял бы символы. Кто-нибудь еще сталкивался с такой же проблемой и, возможно, нашел решение? Последовательный порт работает на 115200 1N8 и не контролируется потоком.

Благодарю.

1
* «до последнего обновления оно работало» * - так что простой обходной путь - вернуться к предыдущей версии ядра. Вы не обязаны использовать каждое обновление. sawdust 6 лет назад 0

0 ответов на вопрос