[Bug]: USB HID Report collison
What happened?
Compiler errors when using bluepad32 with ESP32 USB HID.
Bluepad32 Version
Other
Bluepad32 version custom
Arduino esp32_bluepad32 version 4.1.0
Bluepad32 Platform
Arduino IDE
Platform version
Arduino IDE 1.8.19 on Ubuntu Linux
Controller
None
Microcontroller
ESP32-S3
Microcontroller board
Espressif ESP32-S3 DevKit-1 v 1.0
OS
Linux
Relevant log output
Arduino: 1.8.19 (Linux), Board: "ESP32S3 Dev Module, Disabled, Disabled, QIO 80MHz, 4MB (32Mb), Core 1, Core 1, USB-OTG (TinyUSB), Disabled, Disabled, Disabled, UART0 / Hardware CDC, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi), 921600, None, Disabled"
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHID.h:22,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h:23,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:3:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:87:3: error: 'HID_REPORT_TYPE_INPUT' conflicts with a previous declaration
HID_REPORT_TYPE_INPUT, ///< Input
^~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack.h:62,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/uni_hid_device.h:8,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/platform/uni_platform.h:15,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/arduino_platform.h:29,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoControllerData.h:9,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoController.h:13,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoBluepad32.h:12,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/Bluepad32.h:7,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:1:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack_hid.h:103:5: note: previous declaration 'hid_report_type_t HID_REPORT_TYPE_INPUT'
HID_REPORT_TYPE_INPUT,
^~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHID.h:22,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h:23,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:3:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:88:3: error: 'HID_REPORT_TYPE_OUTPUT' conflicts with a previous declaration
HID_REPORT_TYPE_OUTPUT, ///< Output
^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack.h:62,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/uni_hid_device.h:8,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/platform/uni_platform.h:15,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/arduino_platform.h:29,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoControllerData.h:9,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoController.h:13,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoBluepad32.h:12,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/Bluepad32.h:7,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:1:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack_hid.h:104:5: note: previous declaration 'hid_report_type_t HID_REPORT_TYPE_OUTPUT'
HID_REPORT_TYPE_OUTPUT,
^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHID.h:22,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h:23,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:3:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:89:3: error: 'HID_REPORT_TYPE_FEATURE' conflicts with a previous declaration
HID_REPORT_TYPE_FEATURE ///< Feature
^~~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack.h:62,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/uni_hid_device.h:8,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/platform/uni_platform.h:15,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/arduino_platform.h:29,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoControllerData.h:9,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoController.h:13,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoBluepad32.h:12,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/Bluepad32.h:7,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:1:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack_hid.h:105:5: note: previous declaration 'hid_report_type_t HID_REPORT_TYPE_FEATURE'
HID_REPORT_TYPE_FEATURE
^~~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHID.h:22,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h:23,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:3:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:90:2: error: conflicting declaration 'typedef enum hid_report_type_t hid_report_type_t'
}hid_report_type_t;
^~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack.h:62,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/uni_hid_device.h:8,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/platform/uni_platform.h:15,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/arduino_platform.h:29,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoControllerData.h:9,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoController.h:13,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoBluepad32.h:12,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/Bluepad32.h:7,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:1:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/btstack/src/btstack_hid.h:106:3: note: previous declaration as 'typedef enum hid_report_type_t hid_report_type_t'
} hid_report_type_t;
^~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoKeyboardConstants.h:10,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoController.h:15,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoBluepad32.h:12,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/Bluepad32.h:7,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:1:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/hid_usage.h:22:49: error: expected identifier before numeric constant
#define HID_USAGE_PAGE_BUTTON 0x09
^~~~
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:708:3: note: in expansion of macro 'HID_USAGE_PAGE_BUTTON'
HID_USAGE_PAGE_BUTTON = 0x09,
^~~~~~~~~~~~~~~~~~~~~
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/hid_usage.h:22:49: error: expected '}' before numeric constant
#define HID_USAGE_PAGE_BUTTON 0x09
^~~~
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:708:3: note: in expansion of macro 'HID_USAGE_PAGE_BUTTON'
HID_USAGE_PAGE_BUTTON = 0x09,
^~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHID.h:22,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h:23,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:3:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:699:6: note: to match this '{'
enum {
^
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoKeyboardConstants.h:10,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoController.h:15,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/ArduinoBluepad32.h:12,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32_arduino/include/Bluepad32.h:7,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:1:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/bluepad32/include/hid_usage.h:22:49: error: expected unqualified-id before numeric constant
#define HID_USAGE_PAGE_BUTTON 0x09
^~~~
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:708:3: note: in expansion of macro 'HID_USAGE_PAGE_BUTTON'
HID_USAGE_PAGE_BUTTON = 0x09,
^~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHID.h:22,
from /tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h:23,
from /home/me/Sync/bluepad32-esp32ard/examples/usbhid/usbhid.ino:3:
/tmp/autobuild_bluepad32ard_50439/arduino-1.8.19/portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/tools/sdk/esp32s3/include/arduino_tinyusb/tinyusb/src/class/hid/hid.h:1139:2: error: expected declaration before '}' token
}
^
exit status 1
Error compiling for board ESP32S3 Dev Module.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Relevant sketch
#include <Bluepad32.h>
#include "USB.h"
#include "USBHIDMouse.h"
void setup() { }
void loop() { }
weird.
if you try the template project ( https://github.com/ricardoquesada/esp-idf-arduino-bluepad32-template ) , develop branch, does ti work ?
Since it uses esp-idf 5.3.2 and Arduino Core v3.1.0
if you try the template project ( https://github.com/ricardoquesada/esp-idf-arduino-bluepad32-template ) , develop branch, does ti work ?
I tried the template project and set-target to esp32s3. I added some lines to sketch.cpp like this.
#include <Arduino.h>
#include <Bluepad32.h>
#include <USB.h>
#include <USBHIDMouse.h>
USBHIDMouse Mouse;
...
void setup() {
// initialize mouse control:
Mouse.begin();
USB.begin();
...
I think TinyUSB is disabled in sdkconfig so no collision errors but it says USBHIDMouse does not name a type.
$ idf.py build
Executing action: all (aliases: build)
Running ninja in directory /home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/build
Executing "ninja all"...
[4/15] Performing build step for 'bootloader'
[1/1] cd /home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/build/bootloader/esp-idf/esptool_py && /home/me/.espressif/python_env/idf4.4_py3.10_env/bin/python /home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 /home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/build/bootloader/bootloader.bin
Bootloader binary size 0x52b0 bytes. 0x2d50 bytes (35%) free.
[7/13] Building CXX object esp-idf/main/CMakeFiles/__idf_main.dir/sketch.cpp.obj
FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/sketch.cpp.obj
/home/me/.espressif/tools/xtensa-esp32s3-elf/esp-2021r2-patch5-8.4.0/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-g++ -DHAVE_CONFIG_H -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/build/config -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/newlib/platform_include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/freertos/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/freertos/include/esp_additions/freertos -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/freertos/port/xtensa/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/freertos/include/esp_additions -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_hw_support/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_hw_support/include/soc -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_hw_support/include/soc/esp32s3 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_hw_support/port/esp32s3/. -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_hw_support/port/esp32s3/private_include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/heap/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/log/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/lwip/include/apps -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/lwip/include/apps/sntp -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/lwip/lwip/src/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/lwip/port/esp32/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/lwip/port/esp32/include/arch -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/soc/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/soc/esp32s3/. -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/soc/esp32s3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/hal/esp32s3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/hal/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/hal/platform_port/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_rom/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_rom/include/esp32s3 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_rom/esp32s3 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_common/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_system/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_system/port/soc -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_system/port/public_compat -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/xtensa/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/xtensa/esp32s3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/driver/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/driver/esp32s3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_pm/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_ringbuf/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/efuse/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/efuse/esp32s3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/vfs/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_wifi/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_event/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_netif/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_eth/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/tcpip_adapter/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_phy/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_phy/esp32s3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_ipc/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/app_trace/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_timer/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/bluepad32/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/nvs_flash/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/spi_flash/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/mbedtls/port/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/mbedtls/mbedtls/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/mbedtls/esp_crt_bundle/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/mbedtls/mbedtls/3rdparty/everest/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/bluedroid/decoder/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/bluedroid/encoder/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/hxcmod-player -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/hxcmod-player/mods -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/lc3-google/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/lwip/dhcp-server -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/md5 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/3rd-party/yxml -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/src/classic -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/src/ble/gatt-service -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/src/ble -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/platform/embedded -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/platform/freertos -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/platform/lwip -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/btstack/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/app_update/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bootloader_support/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/cmd_nvs_4.4 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/console -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/cmd_system_4.4 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/bluepad32_arduino/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/variants/esp32 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/cores/esp32 -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/ArduinoOTA/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/AsyncUDP/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/BLE/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/BluetoothSerial/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/DNSServer/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/EEPROM/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/ESP32/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/ESPmDNS/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/Ethernet/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/FFat/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/FS/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/HTTPClient/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/HTTPUpdate/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/LittleFS/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/Insights/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/I2S/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/NetBIOS/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/Preferences/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/RainMaker/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/SD_MMC/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/SD/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/SimpleBLE/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/SPIFFS/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/SPI/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/Ticker/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/Update/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/USB/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/WebServer/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/WiFiClientSecure/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/WiFi/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/WiFiProv/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/components/arduino/libraries/Wire/src -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/mdns/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_adc_cal/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/wifi_provisioning/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/protocomm/include/common -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/protocomm/include/security -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/protocomm/include/transports -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bt/common/osi/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bt/include/esp32c3/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bt/common/api/include/api -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bt/common/btc/profile/esp/blufi/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bt/common/btc/profile/esp/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/bt/common/hci_log/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/nghttp/port/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/nghttp/nghttp2/lib/includes -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/wpa_supplicant/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/wpa_supplicant/port/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/wpa_supplicant/esp_supplicant/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_https_ota/include -I/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf/components/esp_http_client/include -mlongcalls -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -ggdb -O2 -fmacro-prefix-map=/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project=. -fmacro-prefix-map=/home/me/Sync/bluepad32-esp-idf-arduino/esp/esp-idf=IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -std=gnu++11 -fno-exceptions -fno-rtti -D_GNU_SOURCE -DIDF_VER=\"v4.4.8-1-ga9d0f22193\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -DARDUINO=10812 -DARDUINO_ESP32_DEV -DARDUINO_ARCH_ESP32 -DARDUINO_BOARD=\"ESP32_DEV\" -DARDUINO_VARIANT=\"esp32\" -DESP32 -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/sketch.cpp.obj -MF esp-idf/main/CMakeFiles/__idf_main.dir/sketch.cpp.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/sketch.cpp.obj -c /home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main/sketch.cpp
/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main/sketch.cpp:11:1: error: 'USBHIDMouse' does not name a type
USBHIDMouse Mouse;
^~~~~~~~~~~
/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main/sketch.cpp: In function 'void setup()':
/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main/sketch.cpp:276:5: error: 'Mouse' was not declared in this scope
Mouse.begin();
^~~~~
/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main/sketch.cpp:276:5: note: suggested alternative: 'pause'
Mouse.begin();
^~~~~
pause
/home/me/Sync/bluepad32-esp-idf-arduino/esp/my_project/main/sketch.cpp:277:5: error: 'USB' was not declared in this scope
USB.begin();
^~~
ninja: build stopped: subcommand failed.
ninja failed with exit code 1
What libraries are USB and USBHIDMouse ? Are they part of esp-idf ? or 3rd-party libs ?
If they are 3rd-party, you will need to add them in the CMakeLists.txt.
See: https://github.com/ricardoquesada/esp-idf-arduino-bluepad32-template/tree/develop?tab=readme-ov-file#using-3rd-party-arduino-libraries
What you need to do if you use USBHID, etc...
https://docs.espressif.com/projects/arduino-esp32/en/latest/esp-idf_component.html
What libraries are USB and USBHIDMouse ? Are they part of esp-idf ? or 3rd-party libs ?
USB.h and USBHIDMouse is included with the arduino-esp32 core.
./portable/packages/esp32/hardware/esp32/3.1.0/libraries/USB/src/USBHIDMouse.h
./portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/libraries/USB/src/USBHIDMouse.h
./portable/packages/esp32/hardware/esp32/3.1.0/cores/esp32/USB.h
./portable/packages/esp32-bluepad32/hardware/esp32/4.1.0/cores/esp32/USB.h
./esp/my_project/components/arduino/cores/esp32/USB.h
./esp/my_project/components/arduino/libraries/USB/src/USBHIDMouse.h
OK, I will probably use Arduino IDE but patch the source file to remove the duplicate declaration. If a new version of the library is released I can reapply the patch.
sure. but if you want to try the template, read the link that I sent you