>>>> Воткни принтер через переходник COM-USB и не возись с COM портами напрямую.
>>> Мне кажется нет никакой разницы через переходник оно или нет если надо
>>> ждать ответа от устройства "на том конце" и единственный путь определить
>>> что его там нет - отвал по таймауту.
>> Не могу понять откуда 30секунд таймаута, делал так stty -F /dev/ttyS4 -icanon
>> min 0 time 3, все равно 30 сек
> Это полное время работы скрипта? нет, это время проверки порта на одной скорости
> Можно предположить что ваша проверка пуст ли порт- некорректна, и последующий 30
> секундный таймаут- результат того что на пустом порту отрабатывает вот тот
> весь остальной код.
скрипт немного переделал:
1. не имеет смысла искать принтер на другой скорости если мы уже нашли на предыдущей (если на порту есть принтер скрипт отрабатывается за 2 сек не важно на какой скорости висит принтер)
2. попытался поиграть с stty если долго висит, наверняка на порту ничего нет, убиваю stty и дальше не проверяю порт
на тестовом компьютере проверяю работает время определения 2сек, пустой порт не проверяет все вроде пучком. при загрузке скрипт пытается 1 раз проверить пустой порт... не пойму что не так...
из лога при загрузке:
Aug 19 13:09:50 PnX-D945 user.notice /etc/rc2.d/S81aura: Starting POS printer search...
Aug 19 13:09:52 PnX-D945 user.notice /etc/rc2.d/S81aura: POS printer model: AURA PP-7000-II found on port /dev/ttyS4 speed 19200
Aug 19 13:10:24 PnX-D945 user.notice /etc/rc2.d/S81aura: POS printer model: AURA not found on port /dev/ttyS5 speed 19200
из лога на загруженом:
Aug 19 14:14:50 PnX-D945 user.notice ./aura: Starting POS printer search...
Aug 19 14:14:52 PnX-D945 user.notice ./aura: POS printer model: AURA PP-7000-II found on port /dev/ttyS4 speed 19200
что изменилось не пойму