es-ude / elastic-ai.runtime.enV5

Elastic-ai.runtime implementation for the Elastic Node version 5.
https://www.uni-due.de/es/en/en_elastic_ai.php
MIT License
2 stars 2 forks source link

Set custom VID and PID for elasticNode. This way we can use normal librarys to detect the elastic node via usb-vendor. #236

Open DavidFederl opened 1 month ago

DavidFederl commented 1 month ago

Modify the TinyUSB integration of the enV5 implementation so that the USBD_VID and USBD_PID are overwritten with our own for the USB Debug Connection during runtime.

TODO


Additional Documentation

DavidFederl commented 1 month ago

@telefonjoker100 it would be nice if you can provide a little background, why we should need a feature like that.

LeoBuron commented 1 month ago

The name of the devices changes often and is different for the operating systems: mac, linux und windows. With the PID and VID it is possible to detect the device on each operating systems and connect to it. In addition, it changes also on my mac from time to time and it is annoying to always change the serial port, because it has a new name now.

LeoBuron commented 1 month ago

VID: 0x1209 PID: 0x4C48

LeoBuron commented 1 month ago

VID and PID got now accepted.

DavidFederl commented 4 weeks ago

The VID for RaspberryPi Products is set to 0x2E8A. For the bootsel stage (mass storage to upload uf2) is set to PID 0x0003. For the serial CDC connection (serial print output) the PID is set to 0x000A.

The PID for the bootsel stage is set during production and embedded into the pico bootloader stage 1 inside the RP2040 ROM. It can't be changed afterwards and is there fixed for ever.

The VID and PID for the serial CDC connection can be changed by modifying the TinyUSB library and can therefore be changed by us. (see edited task description)