Odbiornik GPS przez port USB

wmbt
Piegowaty Guziec
Piegowaty Guziec
Posty: 2
Rejestracja: 29 sty 2010, 14:16
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odbiornik GPS przez port USB

Post autor: wmbt » 08 maja 2014, 10:57

Rozwiazanie sprawdzone dla GPS Mouse

SYSTEM: Linux Mint 16 64-bit
MASZYNA: Lenovo ThinkPad T61
ODBIORNIK GPS: SkyTraq Venus 6 GPS Receiver on USB
NAWIGACJA: AutoMapa Polska, wersja programu 6.15, wydanie mapy 1402

SkyTraq Venus 6 GPS Receiver działał bezproblemowo pod WinXP Prof SP3, oczywiście po doinstalowaniu drivera dla "CP1204 USB to UART Bridge Controller", pobranego ze strony http://www.silabs.com.

A jak w Mincie (w Ubuntu od 12 wzwyż powinno być identycznie)
Podłączamy naszą myszę GPS do portu usb i sprawdzamy, czy system ją widzi - w terminalu wpisujemy polecenie lsusb. U mnie jest tak:

Kod: Zaznacz cały

$ lsusb
Bus 005 Device 002: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light
Następnie instalujemy za pomocą Menedżera oprogramowania pakiety gpsd oraz gpsd-clients. Można to także wykonać z konsoli tekstowej poleceniem:

Kod: Zaznacz cały

sudo apt-get install gpsd gpsd-clients
Odpalamy następnie:

Kod: Zaznacz cały

sudo dpkg-reconfigure gpsd
i zgadzamy się na proponowane przez konfigurator opcje. Po zakończeniu konfiguracji w pliku /etc/default/gpsd powinniśmy mieć taki wpis:

Kod: Zaznacz cały

START_DAEMON="true"
DEVICES="/dev/ttyUSB0"
USBAUTO="true"
GPSD_SOCKET="/var/run/gpsd.sock"
Sprawdzamy czy się konfigurowanie powiodło:

Kod: Zaznacz cały

 [code]$ dmesg | grep tty
[   15.564001] usb 5-2: cp210x converter now attached to ttyUSB0
[/code]
Uruchamiamy z terminala cgps lub jego graficzny odpowiednik xgps i podziwiamy wyniki namiarów satelitarnych (cgps zatrzymujemy poleceniem q, xgps - no przecież to widać!). Na tym etapie "mysz GPS" jest w Linuksie skonfigurowana i każdy program korzystający z danych GPS powinien działać bez problemów.

Sęk w tym, że najbardziej popularne sa programy pod jedynie słuszny system i trzeba powalczyć z wine. Jesli mamy program który da się uruchomić pod wine to powinien działać ze skonfigurowanym w Linuksie gpsem. Musimy tylko przypisać nasze połączenie do portu szeregowego com 1, 2, 3 ... poleceniem ln. Ja przypisałem ttyUSB0 do com9, a ponieważ nie mam pojęcia czego szuka program uruchamiany przez wine stworzyłem trzy dowiązania: com9, Com9 i COM9.

Kod: Zaznacz cały

$ ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com9
Potrzebny jeszcze jeden krok. Uruchamiamy menedźera plików caja i otwieramy jako administrator katalog /dev. Klikamy prawym klawiszem myszy na ikonce ttyUSB0 wybierany Właściwości - zakładkę Uprawnienia i przydzielamy Innym prawo odczytu i zapisu. Krótko:

Kod: Zaznacz cały

sudo chmod o+rw /dev/ttyUSB0
Uruchamiamy ulubiony program nawigacyjny pod wine, wskazujemy COM9 jako port odbiornika gps - i w drogę!

W drogę ale na krótko - demon gpsd tworzy urządzenie ttyUSB0 w momencie startu, czyli po podłączeniu GPS Mouse do portu usb, po odłączeniu gps-u ttyUSB0 jest usuwane. Po ponownym podłączeniu gps lub restarcie trzeba chmod wykonac jeszcze raz - co jest mało eleganckim rozwiązaniem. Nie mam wiedzy by wykombinowac co i gdzie dopisać aby działo się to samoczynnie.
Ostatnio zmieniony 13 maja 2014, 17:28 przez igotit4free, łącznie zmieniany 1 raz.
Powód: Dodałem Code przy pilku konfiguracyjnym.
ODPOWIEDZ

Wróć do „Hardware-Inne”