Skip to content

v0.21.0

Choose a tag to compare

@manio manio released this 12 Jun 14:30

What's Changed

@Deadknight's work:

  • Introduce Bluetooth-based Android Auto Wireless proxy and car Wi-Fi MITM implementation:

    • Added new proxy modes (car-wifi-mitm, proxy_ap, external_ap) with AP+STA and dual-radio support.
    • Improved HU pairing, SDP discovery, rendezvous handling, connection sequencing, recovery, retries, and compatibility with stricter head units (including MBUX).
    • Added Wi-Fi join backends (wpactrl, wpa_supplicant) and configurable timeouts.
    • Added keepalive handling, TCP connection synchronization, route recovery, smarter Wi-Fi bootstrap processing, and improved reliability during wireless Android Auto startup.
    • Introduced configurable kernel module preloading, firmware path configuration, and enhanced USB Wi-Fi adapter support.
    • Added optional Bluetooth passthrough service allowing Android Auto HFP/call audio to use the head unit's native Bluetooth adapter when aa-proxy-rs is in the middle.
  • Companion Bluetooth

    • Replaced the legacy BLE/GATT companion transport with a Classic Bluetooth RFCOMM implementation.
    • Added persistent pairing agent, SPP fallback profile for improved Android compatibility, and HMAC-SHA256 authentication for companion connections.
    • Improved companion Bluetooth output formatting and protocol consistency.
  • Album Art Injection

    • Reworked media playback channel discovery and synchronization.
    • Added synthetic metadata fallback when no metadata template is available.
    • Improved album art injection reliability, optional duration-tick workaround, PNG size handling, and H.264 diagnostics/logging.
  • Vendor Extensions

    • Added binary REST response support with automatic Base64 encoding for non-text payloads.
    • Improved response fragmentation logic and transfer performance.
    • Removed unused vendor extension helper functions.
  • Web Interface & API

    • Added GET /config-data-tree endpoint exposing the complete configuration tree.
    • Added mobile long-press labels/tooltips.
    • Replaced browser alerts with snackbar notifications for configuration saves.
    • Reorganized Bluetooth Wireless Proxy configuration sections in the UI.
  • Display Profiles

    • Added content_insets and stable_content_insets support to display profiles by @korhojoa
    • Removed legacy duplicated inset fields and unified inset handling.
  • Web input improvements by @fkloft in #109:

    • Added rotary input support, visual rotary feedback, and expanded keypad controls.
  • Fix: allow reconnect after manual disconnect by @wiskiw in #112

New Contributors

Full Changelog: v0.20.1...v0.21.0

Buildroot:

Full BR Changelog: aa-proxy/buildroot@b0f31bd...1ca6bcd