You are not logged in.

#1 2006-07-23 18:54:45

PeteMo
Member
From: H'Burg, VA
Registered: 2006-01-26
Posts: 191
Website

gps, serial->usb, and udev

I have a garmin etrex venture handheld gps device that I am trying to connect to my laptop.  Since my laptop doesn't have any serial ports, I purchased a serial->usb converter which I am using to make the connection.  When I connect the device, dmesg reports:

usb 2-2: new full speed USB device using uhci_hcd and address 4
usb 2-2: configuration #1 chosen from 1 choice
pl2303 2-2:1.0: pl2303 converter detected
usb 2-2: pl2303 converter now attached to ttyUSB0

There is no /dev/ttyUSB*.  I did a search and found http://bbs.archlinux.org/viewtopic.php? … dev+ttyusb where tomk recommended the following rule:

KERNEL=="ttyUSB[0-9]*", NAME="tts/USB%n"

I put the rule in my local udev.rules file and rebooted.  I am still unable to transfer a test file to the gps using gpsbabel as outlined in the Open Source GPS how to.

The how to suggested the following command, with my output following:

$ sudo gpsbabel -r -i gpx -f test.gpx -o garmin -F /dev/ttyUSB0
[ERROR] XSERIAL: Cannot open serial port '/dev/ttyUSB0': No such file or directory
[ERROR] Cannot open serial port '/dev/ttyUSB0'
GARMIN:Can't init /dev/ttyUSB0

Which makes sense, since there is no /dev/ttyUSB0.

I then modified the command to point to /dev/tts/USB0 and got the following output:

$ sudo gpsbabel -r -i gpx -f test.gpx -o garmin -F /dev/tts/USB0
GARMIN:Can't init /dev/tts/USB0

If anyone has any idea what is going on and can point me in the right direction, I'd appreciate it.

Offline

#2 2006-07-23 22:52:44

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: gps, serial->usb, and udev

Here's what's happening on the udev side.

When you connect your device, the kernel makes it available on ttyUSB0, as reported by dmesg. However, the udev rule you quoted replaces /dev/ttyUSB0 with /dev/tts/USB0, so that is the correct one to use. That rule is  included in the Arch default udev ruleset, so there's no need to add it to your local rules.

Hopefully, someone else can help you out with the "Can't init" message - I don't have any relevant gear or experience to refer to.

Offline

#3 2006-07-27 09:52:59

PeteMo
Member
From: H'Burg, VA
Registered: 2006-01-26
Posts: 191
Website

Re: gps, serial->usb, and udev

Thanks for the help, tomk.  I was able to rule out any OS problems and it turns out that the serial -> usb converter market is filled with crappy products.  I never thought I'd have a problem with a simple converter!

For future reference, converters based on the prolific pl2303 controller are notoriously buggy.  Some work fine, others never work (mine is the latter), especially under linux. Here is a link for more info https://sourceforge.net/mailarchive/mes … d=10460644

On a side note - what is the reasoning for the udev rule that replaces /dev/ttyUSBx with /dev/tts/USBx?  Most everything I've seen indicates that simply using /dev/ttyUSBx is much more prevalent.

Offline

#4 2006-09-15 01:43:03

qwerty
Member
Registered: 2004-12-17
Posts: 183

Re: gps, serial->usb, and udev

So if i need to use /dev/ttyUSB0 i need just to modify the rule:

KERNEL=="ttyUSB[0-9]*", NAME="tts/USB%n"

in:

KERNEL=="ttyUSB[0-9]*", NAME="tts/USB%n", SYMLINK+="ttyUSB%n"

Is it right??

Offline

Board footer

Powered by FluxBB