NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Garmin gps tracker: libusb i/o error



Hi,

I'm trying to retrieve data from my Garmin gps-sportswatch via libusb:
(using pkgsrc/geography/gpsbabel, or the to be imported garmintools pkg)

ugen1 at uhub6 port 2
ugen1: vendor 0x091e product 0x0003, rev 1.10/0.01, addr 2

(Strange, the vendor and product id's are in usbdevs (Forerunner 305) but
the kernel doesn't print its name?)

The device is properly detected by gpsbabel, but I'm getting the following
error on usb_bulk_write:

# gpsbabel -D9 -t -i garmin -f usb:-1 -o gpx -F /tmp/blah.gpx
GPSBabel Version: 1.3.6
Bad cmdsend r -5 sz 12
usb_bulk_write failed. 'error writing to bulk endpoint /dev/ugen1.02: 
Input/output error'

The code is:

int r;
r = usb_bulk_write(udev, gusb_bulk_out_ep, (char *)(void *)opkt->dbuf, sz, 
TMOUT_B);

if (r != (int) sz) {
        fprintf(stderr, "Bad cmdsend r %d sz %ld\n", r, (unsigned long) sz);
        if (r < 0) {
                fatal("usb_bulk_write failed. '%s'\n",
                usb_strerror());
        }
}


(same error from similar code in garmintools package)

On Linux I can communicate with this device just fine using the same code.

Any ideas?


        Geert


-- 
Geert Hendrickx  -=-  ghen%telenet.be@localhost  -=-  PGP: 0xC4BB9E9F
This e-mail was composed using 100% recycled spam messages!


Home | Main Index | Thread Index | Old Index