Page 1 of 1

clean way to use

Posted: Sat Feb 28, 2026 9:28 am
by greengnu
I'm trying to use these together:

Code: Select all

dependencies:
  espressif/esp_tinyusb:
    version: "*"
  espressif/usb_device_uvc:
    version: "*"
but I'm getting compilation errors because they both depend on espressif/tinyusb and each provides their own tusb_config.h - so tusb.h will only include one of them and then the compilation of the other library fails.

What's a clean way that doesn't require any changes to either library to use these together?

Re: clean way to use

Posted: Sat Feb 28, 2026 11:12 am
by nopnop2002

Code: Select all

## IDF Component Manager Manifest File
dependencies:
  espressif/esp_tinyusb: "^1"
  idf: "^5.0"
esp_tinyusb is only valid for esp32s2/s3.
esp_tinyusb has a breaking change in V1 and V2.

V1

Code: Select all

#include "tusb_cdc_acm.h"
V2

Code: Select all

#include "tinyusb_default_config.h"
#include "tinyusb_cdc_acm.h"