У меня есть USB IrDA, который я заставил работать с моим IrDA-принтером (компактный принтер SiPiX A6) на стороне Windows, используя скорость по умолчанию 4000000 и время выполнения 1,0 мс (в конфигурации драйвера). USB IrDA-донгл использует чип SigmaTel. ИК-печать работает с использованием порта IrDA и драйвера SiPiX.
Я пытаюсь заставить его работать на моей стороне Linux (на той же машине), особенно когда драйвер SiPiX уже существует в CUPS. Кажется, я могу использовать стандартный драйвер USB FIR, чтобы увидеть мой IrDA и мой принтер, через irattach irda0 -s
, а затем irdadump
. Я вообще не могу получить ничего от SIR с этим USB-донглом (например irattach /dev/ttyS1 -s
).
Если FIR достаточно хорош, то, полагаю, мне придется создать какой-то последовательный порт из работающего FIR, а затем адресовать его из CUPS, но тут я застрял.
решение1
Используйте SIR с опцией модуля tx_window=1.
После компиляции и установки модуля ядра он должен загружаться автоматически при первом подключении донгла. Теперь вам нужно указать машине инициализировать подсистему IrDA. В дистрибутивах SuSE эта реакция на события USB обычно выполняется через hotplug Это тоже очень просто: просто сообщите hotplug, какой скрипт запустить при подключении USB-адаптера с помощью соответствующего файла .usermap, и с помощью этого скрипта запустите или остановите подсистему IrDA. /etc/hotplug/usb/usbirda.usermap # SigmaTel STIr4200 IRDA/USB usbirda 0x0003 0x066f 0x4200 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x0000000 /etc/hotplug/usb/usbirda #!/bin/баш если [ -x /usr/sbin/rcirda ]; тогда если [ "${ACTION}" = "добавить" ]; тогда /usr/sbin/rcirda старт && выход 0 еще /usr/sbin/rcirda остановить && выйти 0 фи фи Вы также можете загрузить его как .tar-архив. /usr/sbin/rcirda — это ссылка на скрипт /etc/init.d/irda, который устанавливается SuSE с irda-package. Он выполнит простую команду irattach: /usr/sbin/irattach ${IRDA_PORT} -s >/dev/null Если вы используете скрипт SuSE, вам следует убедиться, что IrDA настроен на использование установленного вами модуля, а не последовательного порта: /etc/sysconfig/irda ## Путь: Оборудование/IrDA ## Описание: Настройки для инфракрасного устройства ## Тип: string("",/dev/ttyS1) ## По умолчанию: /dev/ttyS1 # ... # #IRDA_PORT=/dev/ttyS1 IRDA_PORT=irda0
Рекомендации