ESP32-S3 turns old Logitech wheels into full-featured USB controllers

ESP32-S3 microcontrollers, with their built-in USB host support, can connect peripherals like Logitech racing wheels. However, these devices are not standard HID peripherals and need configuration to start delivering data. The LogiWheelHost project by Joel Kometz aims to simplify this process.
This single-header library supports the G29, G923, G920, G27, G25, DFGT, and Driving Force Pro models, building on the EspUsbHost project. According to the documentation, the wheels do not stream all control updates upon power-up; they operate in a restricted mode, sending only neutral or combined-axis data.
To unlock the full feature set, users must trigger the so-called native mode switch. This mode provides more detailed information and updates on extended features, including separate pedals, all buttons, and the gear shifter. The switch is accomplished by sending a HID output report to the USB device, which is straightforward.
In addition to handling this detail, the library offers an API that simplifies obtaining and using controller states in custom code. Presumably, the project will work on other ESP32 microcontrollers with USB host support, which could be good news for those looking to repurpose an old Logitech wheel.


