Skip to content

v1.2.0 — Auto-registered Home Assistant services + F13–F24 keys

Choose a tag to compare

@markusg1234 markusg1234 released this 17 Jul 15:04
· 180 commits to main since this release

Auto-registered Home Assistant services

New api_services: true option on espidf_ble_keyboard: — the component now registers
all documented Home Assistant services itself. No more pasting api: services: yaml
snippets, and all three HA cards (mouse, keyboard, media remote) work out of the box.

Registered services (as esphome.<device>_<service>): run_action, run_macro,
send_string, send_key, send_consumer, mouse_move, mouse_scroll, mouse_click,
mouse_hold, mouse_release, mouse_abs, switch_host, forget_host.

  • Requires the api: component; api: custom_services: true (needed by ESPHome
    2025.11+) is enabled automatically — you don't have to add it.
  • Default is false, so existing configs are unchanged. If you enable it, delete your
    manual api: services: definitions of the same names — keeping both registers
    duplicate service names.
  • Immune to the ESPHome 2026.5+ StringRef link error that can hit yaml-defined
    string-arg services after an ESPHome upgrade (the manual-yaml workaround is now
    documented in the README).
  • See the new "Home Assistant Services" section in the README for the full table.

F13–F24 key support

The keyboard HID report descriptor's key-array maximum is raised from 0x65 to 0x73,
so F13–F24 (keycodes 0x680x73) are no longer silently dropped by the host. These
are ideal "phantom" macro keys on Windows (VK_F13VK_F24) — recognized system-wide
but unused by default, so they never collide with app shortcuts.

⚠ Re-pairing required: hosts cache the HID descriptor per Bluetooth bond. After
updating, remove the device from the host's Bluetooth settings and pair again, or
F13–F24 stay ignored. Existing keys are unaffected (descriptor-only change).

Keycode tables for F13–F24 added to docs/keycodes.md / docs/keycodes.html.