From 2039c147f450a3c42daf153e86b0d42a2deb5111 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?King=20K=C3=A9vin?= Date: Wed, 20 Jul 2022 12:21:54 +0200 Subject: [PATCH] tinyusb: set serial to mac --- components/tinyusb_dfu/additions/src/tinyusb.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/components/tinyusb_dfu/additions/src/tinyusb.c b/components/tinyusb_dfu/additions/src/tinyusb.c index 9c2081c..0bf7003 100644 --- a/components/tinyusb_dfu/additions/src/tinyusb.c +++ b/components/tinyusb_dfu/additions/src/tinyusb.c @@ -54,6 +54,14 @@ esp_err_t tinyusb_driver_install(const tinyusb_config_t *config) ESP_RETURN_ON_ERROR(usb_new_phy(&phy_conf, &phy_hdl), TAG, "Install USB PHY failed"); dev_descriptor = config->descriptor ? config->descriptor : &descriptor_kconfig; + if (!config->string_descriptor) { // use configured strings + // set MAC as serial + uint8_t mac[6]; + esp_read_mac(mac, ESP_MAC_ETH); + static char usb_serial[13] = {0}; + snprintf(usb_serial, sizeof(usb_serial), "%02X%02X%02X%02X%02X%02X", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); + descriptor_str_kconfig[3] = usb_serial; + } string_descriptor = config->string_descriptor ? config->string_descriptor : descriptor_str_kconfig; tusb_set_descriptor(dev_descriptor, string_descriptor);