Releases: kdinya/ha-ir-ac-control
Release list
v1.7.2
- Removed the separate ON-timer helper (
timer_helper_on) and every card-side auto-action on timer finish (toggle switches, localStorage prefs, best-effort fallback). The card now only shows/drives a singletimer_helperand never sends IR commands on its own — turn-off/turn-on scheduling is entirely yourtimer.finishedautomation now (README has a full example, including an independent card-invisible on-timer). - Every "learn" button now shows "Learn" next to the icon, consistently across every code field.
- An empty timer preset (Timers tab) now shows as a dimmed, disabled button instead of a live one that silently no-ops.
- Button highlight for active states (power/TURBO/timer) is now an inset glow from inside the button, not an outer halo — fixes a visible square-ish highlight caused by overflow clipping plus the browser's default touchscreen tap-highlight rectangle. Buttons also sit deeper/more physically in their sockets.
v1.7.1
Змінено
- Прибрано
input_boolean-перемикачі повністю. ON/OFF-перемикачі автоматичної дії таймерів тепер суто функціонал картки: стан зберігається вlocalStorageбраузера (окремо для кожного timer-helper), жодних допоміжних об'єктів у Home Assistant створювати не потрібно. З'являються автоматично, щойно вказаноtimer_helperі/абоtimer_helper_on. - Ці перемикачі повністю незалежні від будь-якої вашої окремої автоматизації на
timer.finished(приклад — у README) — можна користуватись карткою, автоматизацією, або обома одночасно.
Виправлено
- Миготіння "чужим" шрифтом на долю секунди перед появою семисегментних цифр при завантаженні/оновленні вкладки (
font-display: block).
Документація
- Оновлено README (розділ про автоматизації переписано, новий пункт у Changelog) та всі три мовні переклади редактора (uk/en/ru).
v1.7.0
v1.7.0 - Added an optional second, independent timer helper (timer_helper_on) for turning the AC on, separate from the existing off timer. - Added two optional physical-looking toggle switches on the card face (timer_off_enable_entity / timer_on_enable_entity, bound to input_boolean helpers) to enable/disable the matching automation without editing YAML. - New README section "Automations for reliable timer-based on/off" with ready-to-use example automations for both timers. - The best-effort client-side fallback (works only while a tab has the card open) now covers the on-timer too, and respects both toggle switches. - Reworked button styling: buttons now sit in a recessed "socket" with a lifted cap, deeper bevel and a more physical press animation — no more flat/fake-looking circles. - No changes to idle CPU/DOM behavior — everything still fully pauses when the card isn't visible or the dashboard is closed. See the README for the new confi
v1.6.1
Fixed
- Editing the manual/dynamic sleep timer while the AC is off no longer forces the big AC-temperature display fully visible — only the timer readout is affected now, as intended.
Performance
- The card now skips all recomputation and DOM work on
hassupdates that don't change anything it actually watches (Home Assistant calls every card'shasssetter on nearly every state change system-wide, many times a second). Text nodes are only touched when their value actually changed. - Added a regression test (
test/smoke.js) that fails if an unchangedhasstick triggers a re-render.
Changed
- Raised the max element scale from 600% to 1500%.
- Room-temperature
°Cand room-humidity%unit glyphs are now sized independently — 3x and 2x smaller, respectively. - Position tab labels now describe what each element actually shows (room temperature / outdoor temperature / AC set temperature) instead of "small/large temperature".
- Reworked button styling: layered metallic gradients, a bevel highlight, and a deeper press effect for a more premium-device feel.
Added
- Screen brightness slider (20-150%) on the Appearance tab.
See CHANGELOG in README for the full history.
v1.6.0
- Editor language switch now repaints immediately instead of silently getting eaten by the slider-drag-safe render suppression.
- Smaller °C/unit symbols.
- Clock separator
:blinks every second. - Clock/countdown pauses when the card is scrolled off-screen, the browser tab is backgrounded, or the card is removed from the dashboard.
- Every positionable element now has its own "always active" toggle on the Position tab (previously hardcoded to 4 elements).
- New ☀/🌙 preview-only toggle above the Position tab drag canvas.
- The sleep timer now actually turns the AC off when it finishes naturally while the card is open — see README for the companion automation for when nobody has a dashboard open.
- README rewritten with an honest changelog and a direct answer on whether temp_helper/timer_helper are required.
- Broadlink raw IR code capture: confirmed not feasible via any supported API, intentionally left out — commands/names are used instead, exactly as before.
v1.5.0
Виправлення
- Навчання IR-коду більше не зависає: Broadlink ніколи не повертає вивчений код на фронтенд (ні у відповіді сервісу, ні в notification) — карта тепер зберігає ключ команди й покладається на власне сховище Broadlink (як це і робить
remote.send_command). - Вкладка "Позиція": елементи більше не "перестрибують" після відпускання миші; прибрано кнопки +/- на самих хендлах (розмір — повзунками нижче).
- Висота панелі кнопок (
controls_height) тепер дійсно працює. - Годинник, температура/вологість в кімнаті та погода на вулиці завжди показуються на повну яскравість, незалежно від стану ввімкнення кондиціонера.
- Шрифт за замовчуванням замінено на
7segment.woff.
v1.4.0
v1.3.0
Fixed
- Position tab did nothing:
scale()was placed insidetranslate()'s parentheses, making the whole CSStransforminvalid — so the browser dropped position AND size for almost every element. Dragging and −/+ resize now work. - Bottom control panel: consistent button sizing so all 4 timer presets and the clock/timer toggle are always visible.
Changed
- Seven-segment font is now embedded directly in the resource file (works immediately, no separate font file needed). You can still upload your own font (ttf/otf/woff/woff2) on the Appearance tab.
- Removed the per-element font-size fields on the Appearance tab — size is controlled only via the −/+ resize on the Position tab.
- Second mode (TURBO/ECO) no longer changes the displayed temperature — it only sends its own IR code.
- Removed separate +/- IR codes — the +/- buttons always send the code for the resulting temperature from the per-temperature table.
- Entire script is now wrapped in an IIFE so its internal names cannot collide with any other Lovelace resource/card loaded on the same dashboard.
Other
- Cleaned up internal dev-only comments not relevant to using the card.
- Rewrote the README for the current feature set.
v1.2.1
Fixes the editor rebuilding its entire DOM on every hass update (HA fires this constantly, on any state change anywhere in the system). This was breaking two things:
- Typing an entity name closed the picker dropdown before you could select anything.
- Dragging elements on the Position tab got aborted mid-drag, so nothing ever saved.
Both are now fixed: only the first hass assignment triggers a full rebuild; later ticks just refresh live data on existing elements.
v1.2.0
Breaking change: the custom element tag changed from air-conditioner-card to ha-ir-ac-control-card to avoid colliding with other/legacy custom cards registering the same generic tag name.
Update dashboards: type: custom:air-conditioner-card -> type: custom:ha-ir-ac-control-card.
See README "Upgrading to v1.2.0" for full details.