View previous topic :: View next topic |
Author |
Message |
Sedrik l33t
Joined: 08 Apr 2005 Posts: 655 Location: Uppsala, Sweden
|
Posted: Wed Oct 08, 2014 3:25 pm Post subject: [Solved] Can't read Suunto Vyper divecomputer properly. |
|
|
Hi all
I have a Suunto Vyper divecomputer that has a usb interface for downloading divelogs to pc.
I get the following error from subsurface
Code: | ERROR: Inappropriate ioctl for device (25) [in serial_posix.c:115 (serial_open)]
ERROR: Failed to open the serial port. [in suunto_vyper.c:113 (suunto_vyper_device_open)] |
I have added the following udev rule and my device shows up in /dev when I connect it
Code: | cat /etc/udev/rules.d/99-divecomputer.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", SYMLINK+="suunto" |
I have tried reading the device as root but get the same error, the divecomputer is in PC - Transfer mode.
Any help debugging this is greatly appreciated.
Thanks _________________ From Gentoo with love
Last edited by Sedrik on Mon May 20, 2019 11:04 am; edited 1 time in total |
|
Back to top |
|
|
Sedrik l33t
Joined: 08 Apr 2005 Posts: 655 Location: Uppsala, Sweden
|
Posted: Mon Jul 27, 2015 7:10 pm Post subject: |
|
|
bump, help still needed _________________ From Gentoo with love |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54834 Location: 56N 3W
|
Posted: Mon Jul 27, 2015 7:21 pm Post subject: |
|
|
Sedrik,
It looks like the device implements a serial interface over USB, in which case, you will get a /dev/ttyUSB0 or something like that if you have the right kernel modules loaded. Once you have the serial port you talk to the serial port. The USB transport does not matter.
Lets start at the beginning, post the lsusb line for the device. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Sedrik l33t
Joined: 08 Apr 2005 Posts: 655 Location: Uppsala, Sweden
|
Posted: Sun May 19, 2019 12:25 pm Post subject: |
|
|
Hi sorry to resurect such an old topic but I am back in gentoo land now after a laptop crash. Still having issues getting the device working.
When I try to download my dives from my Suunto Vyper I get the following error in the log.
Starting download from /dev/suunto2 using subusrface Code: |
[0.000112] ERROR: Inappropriate ioctl for device (25) [in ../../src/serial_posix.c:304 (dc_serial_open)]
Finishing download thread: "Unable to open /dev/suunto2 Suunto (Vyper)" |
Steps I have taken to try to ammend this.
My user is in the usb group Code: |
> groups
wheel audio usb users plugdev sedrik |
I have added a udev rule Code: |
> cat /etc/udev/rules.d/99-suunto.rules
SUBSYSTEM=="usb",ATTR{idVendor}=="0403",ATTR{idProduct}=="f680", MODE="0666", SYMLINK+="suunto%n" |
here is the lsusb output for the device
Code: |
> lsusb -D /dev/suunto2
Device: ID 0403:f680 Future Technology Devices International, Ltd Suunto Sports Instrument
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0403 Future Technology Devices International, Ltd
idProduct 0xf680 Suunto Sports Instrument
bcdDevice 6.00
iManufacturer 1 Suunto
iProduct 2 Suunto Sports Instrument
iSerial 3 ST01VUXQ
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0020
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 300mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 2 Suunto Sports Instrument
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable
Device Status: 0x0000
(Bus Powered) |
_________________ From Gentoo with love |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54834 Location: 56N 3W
|
Posted: Sun May 19, 2019 12:54 pm Post subject: |
|
|
Sedrik,
Lets avoid faffing about with a symlink. Start with my post above. When you connect the device do you get a new entry in /dev ?
If so, what is it?
If not, you have a bit missing from your kernel for serial over USB support.
From this commit you need the kernel options that build the file ftdi_sio_ids.h, which is in
drivers/usb/serial if it made it into the mainline kernel.
It did. Code: | /usr/src/linux/drivers/usb/serial $ grep -i FTDI_SUUNTO_SPORTS_PID *
ftdi_sio.c: { USB_DEVICE(FTDI_VID, FTDI_SUUNTO_SPORTS_PID) },
ftdi_sio_ids.h:#define FTDI_SUUNTO_SPORTS_PID 0xF680 /* Suunto Sports instrument */ |
Reading Kconfig in that directory, you need
Code: | config USB_SERIAL_FTDI_SIO
tristate "USB FTDI Single Port Serial Driver"
---help---
Say Y here if you want to use a FTDI SIO single port USB to serial
converter device. The implementation I have is called the USC-1000.
This driver has also been tested with the 245 and 232 devices.
See <http://ftdi-usb-sio.sourceforge.net/> for more
information on this driver and the device.
To compile this driver as a module, choose M here: the
module will be called ftdi_sio. |
_________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Sedrik l33t
Joined: 08 Apr 2005 Posts: 655 Location: Uppsala, Sweden
|
Posted: Mon May 20, 2019 11:03 am Post subject: |
|
|
Thanks for the pointers after enabling USB_SERIAL_FTDI_SIO and adding my user to the uucp group I was able to get it to work. I did remove the udev rule as well. _________________ From Gentoo with love |
|
Back to top |
|
|
|