Бубен, gpsd, pl2303, linux, marlboro
пост написан и отправлен в печать 2008-08-27 примерно в 21:06
Вчера пришел наконец-то заказанный на eBay USB GPS ресивер Royaltek RGM-2000 (фото). Достаточно пожилой, но вполне подходящий для превращения ноутбука в простенький навигатор. Сразу же захотелось сконнектить его с ноутбуком на котором, напомню, установлена модификаий fedora 8, linux linpus lite. То, что это будет забавно. было понятно уже заранее. После коннекта к usb порту dmesg выдал стандартное usb1-1: configuration #1 chosen from 1 choice, что совершенно не порадовало. Тем не менее, на всякий случай проверил все /dev/ttys* - к сожалению, каждый из них выдавал Input/output error. Далее заглянул в lsusb, где увидел Bus 003 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port. После долгих гуглокопаний оказалось, что сам GPS ресивер, как и все, использует serial port для вывода данных (что за анахронизм?), по нашему - COM, а соединяется с системой через Serial<->USB присадку Prolific 2303. Пришлось пересобирать модули ядра для того что-бы получить это самый pl2303.ko, активировав в menuconfig (Devices -> Support for USB) USB Serial Converter support и модули USB Generic Serial Driver, USB Prolific 2303 Single Port Serial Driver.  После обычного modprobe usbserial и insmod pl2303.ko, dmesg уже радовал usb 2-2: pl2303 converter now attached to ttyUSB0.  Вопрос, для чего я это все накатал? Да потому что, как оказалось, туева хуча различных "экзотических" устройств использует этот проклятый пролифик - начиная программаторами оборудования и заканчивая GPS-модулями. Что касается gpsd, то тут вообще был детский лепет. После установки gpsd и gpsd-clients сервер стартуется командой dpsd -b -D2 -N /dev/ttyUSB0, либо же можно просто посмотреть статус приемника и координаты для ресиверов с чипом SiRF посредством sirfmon /dev/ttyUSB0. Что касается самого GPS приложения, то пока не могу найти что-то более-менее симпатичное и поддерживающее хоть один из распространенных видов карт. Для тестирования и баловства может пригодится tangogps, который выкачивает топографические либо спутниковые карты из интернета, умеет сохранять треки, просчитывать простейшую статистику маршрута и прочее. Под wine-ом, увы, ничего запустить не удалось, он почему-то категорически отказывался работать в режиме эмуляции с этим самым ttyUSB0. Будем искать.