Commit Graph
100 Commits
Author SHA1 Message Date
randy 6a51099789 common: ipv6_only package for the IPv6-only IoT network
- common/wifi.yaml: the network gets id wifi_iot, so devices can
  override it with '!extend wifi_iot'
- common/ipv6_only.yaml: add-on package next to any common package;
  switches to the IPv6-only SSID, wifi ipv6_only (SLAAC, no DHCPv4,
  esphome/esphome#19750 as external component until merged) and
  min_ipv6_addr_count: 1
- mcu-lvgl-trainer, mcu-nspanel-dev, mcu-rfid-reader, mcu-stackchan,
  mcu-tft moved to the IPv6-only network
2026-09-27 21:26:02 +02:00
randy 369578a63a mcu-nspanel-office-j: dim the display at night like the bedroom panel
CI / ESPHome config validation (push) Failing after 8s
CI / YAML lint (push) Failing after 38s
Inactive display dim follows the sun (5 % by day, off after dusk at
-6 degrees) and stays at 5 % while light.office_j_lights is on.
Re-applied on time sync, at dawn/dusk and when the lights change.
2026-09-27 20:36:59 +02:00
randy bdf49db1c2 mcu-lvgl-trainer: six pages for the pain cave, fix touch rotation
- touch: drop calibration/transform, the driver defaults to the native
  320x480 panel and LVGL rotates touch points itself (taps were rotated
  by 90 degrees)
- pages: clock (default), basement lights with brightness and color
  temperature for the exercise room (sliders hidden while it is off),
  training start/stop, fan off/50-100 %, stopwatch, status screen with
  "Made for ESPHome" logo and IPv6 first
- light attributes read as text, 'None' while off is skipped
- unused fonts, colors and leftovers removed; ext_uart kept for a
  future ANT+ bridge
2026-09-27 20:31:37 +02:00
randy 349f699572 mcu-stackchan: "Made for ESPHome" logo, IPv6 on status screen
- status screen logo replaced by the official "Made for ESPHome" badge,
  the plain ESPHome logo is not meant for third-party devices
- status screen shows one global IPv6 and one IPv4 address (link-local
  skipped) instead of the IPv4 sensor value
2026-09-27 19:49:57 +02:00
randy 329830e553 mcu-m5paper: rework on M5Stack components, battery mode with forecast
Rewrite of the old config on the core ESPHome components (it8951, gt911,
bm8563, sht3xd):
- USB: always on, forecast screen redrawn every 15 min, forecast
  refreshed every hour and when Home Assistant connects
- battery: BM8563 timer wakes the board every 15 min (off 1:00-5:00),
  it draws the stored forecast and cuts power; WiFi only when the
  forecast is older than 6 h
- mode detected by trying to power off; battery voltage drop on USB
  triggers the battery cycle
- hourly forecast via weather.get_forecasts, 48 h kept in the FM24C02
  EEPROM (include/m5paper_weather.h)
- OTA image confirmed before power-off, battery wake-ups are shorter
  than boot_is_good_after
- status screen with "Made for ESPHome" logo, IPv6 addresses first
2026-09-27 19:49:57 +02:00
randy d813717d2c common: enable ha_time in common packages, devices extend it
Move the homeassistant time platform (id ha_time) into all common
packages. Devices with custom triggers now use '!extend ha_time';
plain duplicate time blocks are removed. mcu-lvgl's unused time_comp
is unified to ha_time.
2026-09-27 16:43:35 +02:00
randy eea872b930 mcu-stackchan: spectrum analyzer, head touch gestures, status bar
- Winamp style spectrum analyzer instead of the face while music plays,
  using audio_spectrum from randybb/esphome-components
- head touch: tap starts the assistant, stroking shows an in-love face;
  SI12T sensitivity raised so the pads actually trigger
- battery (AXP2101) and wifi indicators, ear icon while listening
2026-09-27 15:19:07 +02:00
randy 39e744900d mcu-stackchan: add M5Stack StackChan config
Voice assistant satellite with animated face on the CoreS3 display:
- power rails, IO expander resets and servo power as in the M5 BSP
- mic and speaker share one I2S bus, so the mic is released before playback
- AW88298 volume limited to the audible range (0.5-1.0)
- partial display redraws, status screen until Home Assistant connects
- battery and wifi indicators, listening icon
- camera converted to JPEG on demand, no periodic frames
2026-09-27 14:02:40 +02:00
randy 6348e6bbb6 mcu-nspanel-*: migrate to native nspanel_lovelace component
CI / ESPHome config validation (push) Failing after 14s
CI / YAML lint (push) Failing after 32s
Switch all NSPanels from the MQTT + AppDaemon based
esphome-nspanel-lovelace-ui to the native component
(randybb/esphome-nspanel-lovelace-native, ref: devices).
Cards and screensaver are now configured directly in ESPHome,
removing the dependency on MQTT and AppDaemon.
2026-09-26 19:31:16 +02:00
randy 6a40e65a4b mcu-nspanel: drop local sk.json, use built-in sk translation from fork 2026-09-26 18:05:23 +02:00
randy a6605fe5e4 Add CLAUDE.md: no Claude attribution in commits/PRs 2026-09-25 23:14:35 +02:00
randyandClaude Sonnet 5 0daecc2fb9 mcu-lvgl-trainer, mcu-lvgl-eworkbench: migrate display to mipi_spi
CI / ESPHome config validation (push) Failing after 8s
CI / YAML lint (push) Failing after 52s
qspi_dbi is deprecated in favor of mipi_spi. Also fixes
mcu-lvgl-trainer's LVGL rotation (must be set on the lvgl component,
not the display, when LVGL is in use) and its deprecated
publish_initial_state -> trigger_on_initial_state. brightness is
dropped since mipi_spi only supports it for AMOLED panels and both
devices already control backlight separately.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 22:56:01 +02:00
randyandClaude Sonnet 5 c9358e7bd6 Rename deprecated light rgb_order to channel_colors
ESPHome renamed the esp32_rmt_led_strip platform's rgb_order option to
channel_colors; update the remaining devices using it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 22:16:30 +02:00
randyandClaude Sonnet 5 173514f73e mcu-echo-1: migrate to speaker-based media_player with mixer
The i2s_audio media_player platform was removed; rebuild the audio
pipeline like mcu-echo.yaml with an i2s_audio speaker feeding a
mixer, so media playback, TTS announcements, and rtttl beeps all
share the one physical DAC output without conflicting. Also uses
format: NONE instead of the deprecated codec_support_enabled.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 22:16:11 +02:00
randyandClaude Sonnet 5 b818b5291b mcu-gate: split OGI detection into steady-state and blink sensors
The single on_multi_click FSM mixed an unbounded "at least 1500ms"
pattern with two bounded blink patterns, which made Open detection
unreliable. Split into two binary_sensor entries sharing the same
pin: a filter-based one for steady Open/Closed, and a dedicated
on_multi_click for the Opening/Closing blink patterns.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 22:09:06 +02:00
randyandClaude Sonnet 5 ab08e9a0af mcu-gateway: migrate modbus_controller off deprecated register_count
register_count is derived from value_type now; drop the now-redundant
register_count: 1 on the temp/humidity sensors, and replace the
Solar Pressure sensor's register_count: 2 (its device always returns
2 registers per read) with a hidden padding sensor on the next
register using reuse_previous_range: true, per the new
modbus_controller range-grouping mechanism.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:52:03 +02:00
randyandClaude Sonnet 5 5f966ffba6 mcu-tft: migrate display from deprecated ili9xxx to mipi_spi
ili9xxx is being phased out in favor of the unified mipi_spi driver;
model TFT 2.4 maps to the ILI9341 chip it was already using.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:43:14 +02:00
randyandClaude Sonnet 5 cd78449995 mcu-tft: comment out pinned esp-idf/platform version
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:39:02 +02:00
randyandClaude Sonnet 5 aaa6418edc mcu-well: add Modbus support for n4dig08 relay module
Adds a UART-based Modbus link plus scripts to toggle channel 1 on the
n4dig08 relay module, and calls relay_module.setup() before each
irrigation switch action.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:35:44 +02:00
randyandClaude Sonnet 5 a36dd4447d mcu-well: enable sram1_as_iram to use bootloader's extra 40KB IRAM
Fixes bootloader warning:
[W][app:198]: Bootloader supports SRAM1 as IRAM (+40KB). Set sram1_as_iram: true under esp32 > framework > advanced

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:35:38 +02:00
randyandClaude Sonnet 5 f9656a8e4c mcu-well: rename deprecated api services/service to actions/action
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:35:14 +02:00
randyandClaude Sonnet 5 c0309c5418 mcu-apollo-dev: explicitly set esp-idf toolchain
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:25:38 +02:00
randyandClaude Sonnet 5 c895c821ea mcu-rf: rework RF pin wiring and unify transmit/receive frequency
Move rx/tx off the shared gdo0 pin (21) onto dedicated pins, drop the
now-unneeded allow_other_uses/gdo0_pin workarounds, and align tx/rx
frequency to 433.92MHz.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:25:32 +02:00
randyandClaude Sonnet 5 13a5bf04cc mcu-basement: rename sewage treatment blower to aerator pump
Reflects what the device actually controls; renames the entity/id
(blower_auto -> aerator_auto) and display names accordingly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:25:22 +02:00
randyandClaude Sonnet 5 176b875bef Rename deprecated light rgb_order to channel_colors
ESPHome renamed the esp32_rmt_led_strip platform's rgb_order option to
channel_colors; update all devices using it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:24:58 +02:00
randyandClaude Sonnet 5 56db2c2087 Rename deprecated api services/service to actions/action
ESPHome renamed the api component's services/service keys to
actions/action; update all devices using the old names.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:24:36 +02:00
randyandClaude Sonnet 5 468e813958 Stop tracking .device-builder.json state file
It's generated/local state from ESPHome Device Builder that changes
constantly and doesn't belong in version control.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 21:22:20 +02:00
randy 083d603777 Add .device-builder.json to gitignore
CI / YAML lint (push) Failing after 15s
CI / ESPHome config validation (push) Failing after 17s
2026-06-17 12:12:38 +02:00
randy fc37633d53 Comment out broken PR for LLDP
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-14 19:21:26 +02:00
randy eb85d84880 Switch from platformio to native esp-idf toolchain for ESP32* devices 2026-05-14 18:14:07 +02:00
randy 85c2caa9eb Fix media-player on mcu-echo
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-12 23:21:17 +02:00
randy 259d269af5 Add new RF Bridge
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-11 21:47:10 +02:00
randy 252c4c3f22 Add VSCode settings for YAML file association with ESPHome
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-10 21:17:30 +02:00
randy 4237c7c4ce Remove area from comments, and add, if missing 2026-05-10 21:17:13 +02:00
randy 34c4c475ea Update ESP32 configuration to use numeric minimum_chip_revision and enable sram1_as_iram
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-09 11:06:02 +02:00
randy bfcf9005d6 Add allow_partition_access to OTA configuration for esp32 devices
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-08 22:30:05 +02:00
randy 3a23b88823 Cleanup
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-07 12:06:00 +02:00
randy e4c8c72c20 Custom scripts and related device lists are no longer needed
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-05-07 00:31:06 +02:00
randy bd087dc511 Update .gitignore to include .device-builder.yaml and .claude 2026-05-06 22:25:39 +02:00
randy 184a40ddf7 Add local fonts 2026-05-06 22:24:36 +02:00
randy 0f68e1379f switch to specific OTA for esp32 devices with ethernet 2026-05-06 22:24:08 +02:00
randy a76df9405b Add id's to all common components 2026-05-06 22:20:29 +02:00
randy 51f7537244 Separate OTA for esp32 which supports partition table update via OTA 2026-05-06 22:18:49 +02:00
randy bab7ffafe6 Force WPA2 for esp8266 devices 2026-05-06 22:17:59 +02:00
randy e00040e7ee Add A3 to morning irrigation cycle 2026-05-06 22:17:25 +02:00
randy 39929e46a7 Reboot mcu-kitchen when API is stuck due weak wifi 2026-05-06 22:16:09 +02:00
randy ca6f175a58 Add minimum chip revision to mcu-gateway
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-04-26 12:31:11 +02:00
randy 945b60c168 New file for device-builder 2026-04-26 12:22:54 +02:00
randy 4a95ebbc79 Fix for esphome-desktop 2026-04-26 12:22:19 +02:00
randy fb9822a5be pcf8574 pin numbering has been changed 2026-04-26 12:21:46 +02:00
randy 06f125e851 Simplify status led
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-04-06 14:36:37 +02:00
randy a35b003284 Allow async and disable reboot for MQTT on all NSPanels 2026-04-06 14:35:01 +02:00
randy 1badaaf232 NSPanels no longer need an explicit esp_http_client - fixed in the ext component
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-02-26 19:16:29 +01:00
randy 5600203e6b Add --- to make valid yaml's and fix all commented indentations 2026-02-24 08:53:20 +01:00
randy 1b5ef340e4 Remove empty line
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-02-21 10:14:58 +01:00
randy 082286ba87 Remove version/platform from can devices 2026-02-21 09:56:32 +01:00
randy baad6eda7c Real data for LLDP 2026-02-21 09:55:04 +01:00
randy 9eeeef6a57 NSPanel's need esp_http_client 2026-02-21 09:54:27 +01:00
randy a966f6adb4 Templated gate beacon on_press and on_release
CI / YAML lint (push) Has been cancelled
CI / ESPHome config validation (push) Has been cancelled
2026-02-19 14:23:27 +01:00
randy 2ef5945c9f Add indent-sequences: whatever to support more compact indent 2026-02-19 12:21:00 +01:00
randy 3ca7b2390d Use image files from assets directory 2026-02-19 12:10:33 +01:00
randy 38791e3313 Move fonts (not being used for now) and images to assets directory. Remove obsolete .h files. 2026-02-19 12:07:56 +01:00
randy d03d889e81 Remove unused local components directory 2026-02-19 11:54:26 +01:00
randyandClaude Sonnet 4.6 4ee29295ac Remove debug ota.h and its include from mcu-lvgl
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 11:36:52 +01:00
randyandClaude Sonnet 4.6 dd033f69bb Refactor vehicle beacon configs and clean up gate
Extract shared M5ATOM vehicle code (esp32, on_loop, LED effects) into
common/vehicle_base.yaml, reducing each vehicle file from ~136 to 20
lines. Remove dead commented-out code from on_loop lambda.

Gate: fix on_multi_click and select indentation, change
esp32_ble_tracker id from ${name} to ${device} (lowercase),
remove unused commented-out gate_flash GPIO sensor.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 11:32:23 +01:00
randyandClaude Sonnet 4.6 7c9aae0a7d Fix trailing spaces and missing newlines in all mcu-*.yaml files
Bulk cleanup: remove trailing whitespace and ensure files end with a
newline. Structural issues (indentation, bracket spacing) left for
per-file fixes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 11:22:12 +01:00
randyandClaude Sonnet 4.6 c88ccfbdb8 Use ESPHome dev branch in CI to match production
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 11:18:38 +01:00
randyandClaude Sonnet 4.6 b18ce4a2da Fix yamllint errors in POW configs, update CI and lint config
- Fix UART list indentation (yamllint error)
- Remove trailing spaces in display lambda
- Add missing newline at end of file
- Add ON/OFF to yamllint truthy allowed values
- Fix invalid comments rule option in .yamllint.yml
- Lint only changed files in CI (avoids blocking PRs with pre-existing issues)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 11:14:51 +01:00
randyandClaude Sonnet 4.6 d4967c6411 Add CI: ESPHome config validation and YAML lint
- yamllint on all YAML files with ESPHome-friendly rules
  (allows True/False, long lines for lambdas, no forced document-start)
- ESPHome config validation on changed mcu-*.yaml files per push/PR

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 11:05:09 +01:00
randyandClaude Sonnet 4.6 a8b71d99dd Fix and improve POW dishwasher and washer configs
- Remove redundant interval block overriding status_led behavior
- Add UART id and reference it explicitly in cse7766
- Replace manual power factor template with native cse7766 power_factor sensor
- Remove redundant switch_led control from bi-stable relay actions
- Fix stray quote in energy sensor name (dishwasher)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 10:56:34 +01:00
randy 1c8c319406 Some changes to common files 2026-02-11 23:07:57 +01:00
randy 8693d810b4 Remove custom_components 2026-02-11 23:06:57 +01:00
randy d3e3175d39 Remove custom_components 2026-02-11 23:06:27 +01:00
randy c3a5291927 Migrate heating to friendly name and sub devices and rename it to heater 2026-02-11 23:05:21 +01:00
randy d24866b5a2 Migrate mains-power to friendly name and sub devices 2026-02-11 23:04:39 +01:00
randy 9812f5ed03 New POW devices - dishwasher and washer 2026-02-11 23:03:12 +01:00
randy 86051c9f1a Usual cleanup + irrigation changes 2026-02-11 23:02:24 +01:00
randy c2d1d16cbd New rfid-reader 2026-02-11 23:01:58 +01:00
randy 239f4c3ce5 Migrate from Boards to Variant, remove hardcoded versions, remove customn directories and some cleanup 2026-02-11 23:01:41 +01:00
randy badcad9c5a Remove config switches from common configs and add version text_sensor to eth 2025-05-18 17:41:01 +02:00
randy ba1aea9132 Add archive to git ignore 2025-05-09 21:08:36 +02:00
randy 918b54e5ed Delete old files 2025-05-09 21:08:22 +02:00
randy a55314dff8 Merge pull request #1 from randybb/friendly_name
Add friendly_name to make HA folks happy
2025-05-09 21:06:16 +02:00
randy 9cc69d7ad2 Add friendly_name to make HA folks happy 2025-05-09 21:01:58 +02:00
randy f552ea0f97 Start playing with CANopen 2025-05-02 20:34:53 +02:00
randy e0b76fb95f Fix ethernet 2025-05-02 20:29:19 +02:00
randy f8ef9d261d Remove API and WIFI from vehicle beacons 2025-05-02 20:24:55 +02:00
randy f86cb569b0 Switch to pioarduino 2025-05-02 20:23:18 +02:00
randy e77ab50d02 Slovak translation for esphome-nspanel-lovelace-native 2025-03-16 15:44:40 +01:00
randy 5b913cecf0 Add area, switch to idf 5.3.1, replacing climate.heating with a new setup 2025-03-16 15:43:49 +01:00
randy 6c79fad79c Change old style platform on last 5 devices 2025-01-21 13:09:13 +01:00
randy 1fb6e50d31 Add new Sonoff POW devices 2025-01-21 13:02:16 +01:00
randy 1e38d96c2d Add new CANOpen test devices 2025-01-21 13:01:57 +01:00
randy a0c5bc4a0c Add new C6 test devices 2025-01-21 13:01:36 +01:00
randy 7b04a57a08 Add screen restart and ADC PR to all NSPanels 2025-01-21 13:00:55 +01:00
randy f8d585cb54 Staircase light compatibility with z2m 2.0.0 2025-01-21 12:58:31 +01:00
randy ec63c86137 Another old style platform 2025-01-21 12:57:32 +01:00
randy eb04a6bf28 Switch to the default esp-idf (5.1.5) 2025-01-21 12:56:00 +01:00
randy 5ed2f4d75e Add text uptime sensor and update common configs 2025-01-21 12:51:29 +01:00
randy d5cea62123 Another old style platform needs a change 2025-01-21 12:50:16 +01:00