Skip to content

Bluepad32 v4.2.0

Latest
Compare
Choose a tag to compare
@ricardoquesada ricardoquesada released this 03 Jan 17:00

[4.2.0] - 2025-01-03

New

  • ESP32: ESP32-C6 and ESP32-H2 supported.
    • They depend on BTstack 1.6.2 (pre-bundled with Bluepad32 v4.2.0)
  • Pico W: Pico 2 W supported.
  • ESP-IDF: v5.3 and v5.4 supported
  • Wii: Add support for Wii uDraw Tablet. Fixes Github Issue #105
  • Wii: Add uni_hid_parser_wii_request_report_type(struct uni_hid_device_s* d, wii_report_type_t r);
    • Allows user to change the Wii report type

Changed

  • BTstack: Using v1.6.2
    • v1.6.1 is still supported by Bluepad32.
    • BTstack v1.6.2 changed some API used by Bluepad32. Bluepad32 adapts the API-calls at compile-time.
  • Documentation: Updated FAQ and Arduino docs.
  • Pico W: Updated btstack_config.h. Disables malloc, enables some BTstack features, and some minor changes
  • Pico W: Updated instructions to use Pico Debug probe
  • Pico W: Updated CMakeLists.txt with an option to dump HCI packets.
  • ESP32: Updated instructions to use JTAG debugger.
  • BLE: Connection is a bit more reliable. No longer depends on having encryption enabled.
  • Core: packet handlers have the uni_ prefix. Useful to avoid collision when putting breakpoints.
    • Example: Easier to put a breakpoint in uni_hci_packet_handler than in hci_packet_handler
      since there are many of those.
  • Controllers DB: Updated from latest SDL
    • Only a few new entries added.
  • ESP32 Console: incoming_connections_enable sets/gets whether incoming connections are allowed.
  • ESP32 Console: scan_and_autoconnect is a new command that behaves like the old incoming_connections_enable.
  • PlatformIO: platformio.ini file updated in "examples/esp32"
    (and "Arduino template" project as well)
    • See PlatformIO issue 1225 to learn what's going on between PlatformIO and Espressif.
    • You might need to uninstall PlatformIO first. E.g: rm -rf ~/.platformio

Fixed

  • Switch driver:
    • Increased timeout
    • Fixed pro joystick calibration
    • Make sure the right joycon calibration is mapped to the right location
    • Implemented a user calibration check and updated stick cal if true
  • Examples: Cleanup CMakeLists.txt
  • Allow multiple "safe" commands per loop.
    • This was a nasty bug that was mostly manifested in Arduino users, when multiple commands like
      BP32.forget...(), BP32.enableService...(), only the latest one was executed.
    • Now it allows up to 8 calls per loop.
    • Fixes Github Issue #130