Compare commits

...

1 commit

Author SHA1 Message Date
9312f79507 USBD_CDC: Allow setting the CDC string descriptor 2024-06-20 20:33:26 -05:00
4 changed files with 14 additions and 3 deletions

View file

@ -87,8 +87,8 @@ uint16_t Adafruit_USBD_CDC::getInterfaceDescriptor(uint8_t itfnum_deprecated,
return len; return len;
} }
// Baud and config is ignore in CDC // Configure with a custom descriptor string
void Adafruit_USBD_CDC::begin(uint32_t baud) { void Adafruit_USBD_CDC::begin(uint32_t baud, const char *descriptor) {
(void)baud; (void)baud;
// already called begin() // already called begin()
@ -102,10 +102,14 @@ void Adafruit_USBD_CDC::begin(uint32_t baud) {
} }
_instance = _instance_count++; _instance = _instance_count++;
this->setStringDescriptor("TinyUSB Serial"); this->setStringDescriptor(descriptor);
TinyUSBDevice.addInterface(*this); TinyUSBDevice.addInterface(*this);
} }
void Adafruit_USBD_CDC::begin(uint32_t baud) {
Adafruit_USBD_CDC::begin(baud, "TinyUSB Serial");
}
void Adafruit_USBD_CDC::begin(uint32_t baud, uint8_t config) { void Adafruit_USBD_CDC::begin(uint32_t baud, uint8_t config) {
(void)config; (void)config;
this->begin(baud); this->begin(baud);

View file

@ -51,6 +51,7 @@ public:
(void)pin_tx; (void)pin_tx;
} }
void begin(uint32_t baud); void begin(uint32_t baud);
void begin(uint32_t baud, const char *descriptor);
void begin(uint32_t baud, uint8_t config); void begin(uint32_t baud, uint8_t config);
void end(void); void end(void);

View file

@ -60,6 +60,11 @@ void Adafruit_USBH_CDC::begin(unsigned long baudrate) {
} }
} }
void Adafruit_USBH_CDC::begin(uint32_t baudrate, const char *descriptor) {
(void)descriptor;
begin(baudrate);
}
void Adafruit_USBH_CDC::begin(unsigned long baudrate, uint16_t config) { void Adafruit_USBH_CDC::begin(unsigned long baudrate, uint16_t config) {
(void)config; // TODO support line coding later (void)config; // TODO support line coding later
begin(baudrate); begin(baudrate);

View file

@ -36,6 +36,7 @@ public:
uint8_t getInterfaceIndex(void) { return _idx; } uint8_t getInterfaceIndex(void) { return _idx; }
void begin(unsigned long baudrate); void begin(unsigned long baudrate);
void begin(uint32_t baud, const char *descriptor);
void begin(unsigned long baudrate, uint16_t config); void begin(unsigned long baudrate, uint16_t config);
bool mount(uint8_t idx); bool mount(uint8_t idx);