help needed: Android devices and FTDI dive computers

Linus Torvalds torvalds at linux-foundation.org
Wed Aug 8 12:15:52 PDT 2018


On Wed, Aug 8, 2018 at 11:58 AM Dirk Hohndel <dirk at hohndel.org> wrote:
>
> Vendor ID: 0403
> Vendor Name: FTDI
> Product ID:  f460
> Product Name (reported):  TTL232R-3V3

I have no idea where it got the TTL232R-3V3 from. As mentioned, the
names just come from some user space ID database.

The kernel calls this

   #define FTDI_OCEANIC_PID        0xF460  /* Oceanic dive instrument */

> Vendor ID: 0403
> Vendor Name: Smartinterface
> Product ID:  6001
> Product Name (reported):  USB <-> Serial Cable

The 0403:6001 vendor:device ID is the "original" FTDI ID. Which is not
surprising, since Dietrich reported it's an ebay seller one. So it
just uses the default FTDI ID.

> It's interesting that they report the official FTDI Vendor ID, but a
> different Vendor Name :-)

Again, it's just the database. The reason for that is that not all
vendors have their own "real" USB vendor ID, so they use the chip
vendor ID for the chip, and then asked for an ID for their own use
from the vendor (rather than from the USB SIG).

So the databases of USB ID's will often have a <vendorid,devid>
mapping to a device name, rather than translate the two independently.

The FTDI chips allow both the vendor ID and the device ID to be
reprogrammed using a serial ROM (along with some other default
settings, iirc), so you will *also* find FTDI chips that do *not* have
the FTDI vendor ID. There are atmel devices that used the FTDI chips,
but used their own USB vendor ID etc etc.

The kernel FTDI driver literally has a list of over eight *hundred*
combinations of vendor ID and device ID's for the FTDI driver.

> Which means that I need to make sure that I pick the Vendor ID, not just
> the Vendor Name when setting FTDI as connection.

.. again, the strings you see really are entirely meaningless and not
reliable at all.

Even the vendor ID isn't reliable, although in the case of dive
computers, it's possible that they all use the FTDI vendor ID. I find
57 different vendor IDs in the kernel ftdi driver, but none of them
look like dive computers.

                Linus


More information about the subsurface mailing list