arduino-esp32 icon indicating copy to clipboard operation
arduino-esp32 copied to clipboard

Enable USB host callback

Open rjjrbatarao opened this issue 7 months ago • 1 comments

Related area

Usb ethernet esp32 s3

Hardware specification

ESP32 S3 Devkitc

Is your feature request related to a problem?

im trying to enable a feature to use usb ethernet on esp32 s3 and CONFIG_USB_HOST_ENABLE_ENUM_FILTER_CALLBACK is a requirement to be enabled, maybe it can be enabled in the next release? thank you

Describe the solution you'd like

edit sdkconfig CONFIG_USB_HOST_ENABLE_ENUM_FILTER_CALLBACK=y

Describe alternatives you've considered

using esp-idf

Additional context

No response

I have checked existing list of Feature requests and the Contribution Guide

  • [x] I confirm I have checked existing list of Feature requests and Contribution Guide.

rjjrbatarao avatar Apr 24 '25 01:04 rjjrbatarao

The only way to change a skdconfig parameter is by building an Arduino project as an IDF Component. In that case, it is possible to change any IDF configuration using idf.py menuconfig.

https://docs.espressif.com/projects/arduino-esp32/en/latest/esp-idf_component.html https://www.youtube.com/watch?v=8w3MmsZBa9o Examples at https://github.com/SuGlider/devcon2024

Regarding changing CONFIG_USB_HOST_ENABLE_ENUM_FILTER_CALLBACK, it is necessary to investigate the possible implications to the current USB Client driver of the ESP32 Arduino Framework, which is based on TinyUSB code. I'd suggest sending this same question to the https://github.com/hathach/tinyusb/issues which would be the right place for it.

SuGlider avatar Apr 29 '25 05:04 SuGlider

I'd also like to see CONFIG_USB_HOST_ENABLE_ENUM_FILTER_CALLBACK=y

as I want to use the native ESP-IDF stack with a 4G modem that presents multiple interfaces.

CONFIG_USB_HOST_ENABLE_ENUM_FILTER_CALLBACK is only relevant to ESP-IDF’s native USB Host stack (used via usb/usb_host.h APIs). TinyUSB has its own internal stack, configuration, and callbacks.

Is there any other reason not to turn this on by default?

jetpax avatar Jul 24 '25 09:07 jetpax

I did what @SuGlider suggested and I think its the only way unless the maintainers enable this by default. ESP32 S3 has storage options of 8, 16 and even 32Mb flash an I see no reason they dont enable this by default only on esp32 s3. Im using it now for usb ethernet and many more usb device could be made available if they enable this.

rjjrbatarao avatar Jul 24 '25 11:07 rjjrbatarao

Unfortunately 'my' Arduino project is Tasmota that I am adding 4G modem support to. Its a fairly complex build, so not possible to switch to Arduino as component

jetpax avatar Jul 25 '25 05:07 jetpax