Может кто-то сталкивался, есть терминал ingenico и процессинг arcom. Из под Set работа терминала нестабильна, максимум, что удалось - четыре продажи подряд, в дальше - отказ, в основном - отказ на второй продаже.
2. При ручном вызове cashreg из командной строки, с теми же опциями, с которыми происходит вызов из Set сбоев не зафиксировано. Пять продаж и пять отмен подряд.
Суть отказа:
Как правило в середине транзакции, хотя иногда и в начале транзакции, до ввода карты или после ввода карты, но до запроса пин-кода терминал сообщает "нет ответа от кассы", затем "потеряна связь с кассой" (под кассой здесь понимается cashreg, запущенный в этот момент времени на кассовом ПК), далее по таймауту перезапуск терминала. После перезапуска терминал имя файла устройства терминала в linux меняется. Процесс cashreg при этом не завершается, Set зависает в состоянии ожидания ответа от терминала. Если завершить процесс cashreg вручную, Set выдает сообщение "не найден файл ответа" и готов к дальнейшей работе. Каких-то значимых сообщений об ошибке в логах cashreg, Set и системы (мы включили syslog на tiny core) нет.
Что исключили и как:
1. Неисправность конкретного USB-порта, путем использования разных портов
2. Влияние прочей USB-периферии, путем ее отключения
3. Спонтанное самопроизвольное отключение USB-устройства терминала (первоначально это было одним из предположений исходя из логов ядра), путем наблюдения за системными логами, отключение/подключение устройства происходит в результате перезагрузки терминала, что нормально
4. Проблемы с питанием терминала от USB, путем подключения внешнего БП
5. Влияние USB-подсистемы вообще, путем перехода на RS-232
6. Влияние скорости в порту, как в случае USB, так и в случае RS-232 (сегодня было такое подозрение)
7. Всевозможные проблемы с правами, невозможность запуска процесса cashreg из-под Set, невозможность создания/удаления файлов
8. Сетевые проблемы в момент зависания транзакции
9. Использование неправильной версии cashreg - использована версия для ядра 2.6, соответствующая установленному ядру, в двух вариантах, слинкованный статически и динамически
Что остается/что можно еще делать:
1. Какая-то несовместимость использованной версии tiny core и аппаратной платформы
2. Недостаток ресурсов
3. Какой-то тюнинг сетевых настроек (именно cashreg общается с ПЦ Банка, терминал в сетевом взаимодействии не участвует).
Может что-то еще не учитываю?