π AR Smart IR
AR Smart IR v1.2.5
Big expansion of the bundled TV code database, plus a couple of reliability fixes.
πΊ Expanded media_player database
- β 50 new TV codesets added, sourced from irdb and rendered to Pronto with the built-in
tools/ir_render.py. - π·οΈ +16 brand-new manufacturers: ANITECH, AOC, CIS BOX, Coby, Daewoo, Emerson, Fast, Fisher, LXI, Loewe, Magnavox, Marantz, Memorex, NEC, Proton, Quasar.
- π 6 existing brands got additional codesets: Hitachi, JVC, LG, Panasonic, Philips, Sony.
- ποΈ 1,183 individual IR commands added.
- π The
media_playerpicker now lists 117 codesets across 53 manufacturers (was 56). Total bundled catalog is now 501 codesets.
All new codes are Pronto-encoded, so they auto-transcode to Broadlink, Xiaomi, MQTT, LOOKin, ESPHome, and Tuya through the controller layer β no per-controller work needed.
Each device maps on / off / volumeUp / volumeDown / nextChannel / previousChannel / mute to the right entity actions, routes inputs and digit-tuning into sources (incl. Channel 0β9), and preserves every other button (MENU, GUIDE, arrows, etc.) as extra command keys.
π Fixes
- Fixed malformed JSON (trailing commas) in
codes/media_player/1440.jsonandcodes/light/1020.jsonthat were silently preventing those devices from loading.
π§ͺ Validation
- All 1,183 new Pronto commands round-trip through the controller's
pronto2lircparser β zero failures. - All four code folders load cleanly with no catalog warnings.
β οΈ Notes
- The renderer currently covers the NEC, Sony SIRC, RC5, and RC6 protocol families. Codesets using other protocols were skipped rather than shipped broken.
ir_render.pyuses LSB-first NEC framing; some imported sets areNECx(MSB-first) variants β worth spot-testing the power button on brands you actually own before relying on the full batch.- A handful of irdb codesets don't include a cleanly-named power/volume key, so those buttons remain available under the preserved extra keys rather than the mapped entity actions.
Install / update via HACS, or copy custom_components/ar_smart_ir/ manually and restart Home Assistant.