Простейший скрипт
#!/bin/bash
while (true) ; do echo -e "AT+CSQ\r\n" > /dev/ttyUSB2; sleep 1; done &
cat /dev/ttyUSB2
первый раз посылает команду нормально. А потом начинает городить бред. То AT+C посылает, то AT+, то ATA, и даже не по одному разу, а и с сотню кряду иногда. Если просто запустить cat на одном терминале и посылать команды руками с другого — та же фигня. С неделю назад, до того как юзера добавил в нужную группу, тестил под рутом — вроде всё работало нормально. Сейчас и под рутом то же самое. В чём причина? Подключение как было, так и есть через wvdial. Есть вместо echo что-нибудь более низкоуровневое, делающее за раз один вызов write?