- Full Obsidian vault content - Host configs (ice, grizzley, ubuntu, proxmox, truenas, panda, hyte) - Media stack documentation - Traefik HA setup - Automation scripts - Bachelor party planning
11 KiB
IoT Device Reorganization Plan
Created: 2026-04-20 Status: Draft — requires review before execution
Problem Statement
- Duplicate naming — Three
Aqara Light Switch H2 USdevices with no way to tell which is which. Light entities numbered arbitrarily (light.aqara_light_switch_h2_us_2through_16) with no relation to physical location. - Relay vs. physical switch confusion — Aqara H2 switches have both relay outputs AND physical button inputs. The ceiling light in the Baby Room is controlled by an Aqara H2 switch relay, but the physical wall switch also has a button event. These are mixed together.
- Ecosystem overlap — The same physical lights are controlled by multiple systems:
- Shelly relays (Bedroom/Office ceiling lights)
- Aqara H2 switches (Baby Room, Front Door, Entrance)
- TP-Link smart plugs (Left Lamp, Right Lamp, Tall Lamp)
- Govee LED strips (H6076, H60A4, H60A1)
- Aqara ceiling light fixture (Colorful Ceiling Light 36W)
- Entity suffix chaos — Matter re-commissioning appends
_2,_3, etc. to entity IDs, making them meaningless. Duplicate entities (e.g.,lock.aqara_smart_lock_u100ANDlock.aqara_smart_lock_u100_2) suggest double-commissioning.
Current Inventory (44 devices, 339 entities)
Lighting — 12 devices, HEAVILY OVERLAPPED
| Location | Physical Device | Integration | Entity | Issue |
|---|---|---|---|---|
| Bedroom | Ceiling light (wired to Shelly 1PM) | Shelly | switch.shelly1pmg4_a085e3bb2898 |
Good name, but entity ID is MAC-based |
| Bedroom | Govee LED strip | Govee | light.h60a1 |
Named "Ceiling Light" — conflicts with actual ceiling light |
| Bedroom | Left Lamp (TP-Link HS103 plug) | TP-Link | switch.left_lamp |
Good name |
| Bedroom | Right Lamp (TP-Link HS103 plug) | TP-Link | switch.right_lamp |
Good name |
| Office | Ceiling light (wired to Shelly 1PM) | Shelly | switch.shelly1pmg4_a085e3b7fc74 |
MAC-based entity ID |
| Office | Grizzley Pi Power (TP-Link HS103 plug) | TP-Link | switch.bug_zapper |
Controls grizzley host power — entity name misleading |
| Living Room | Tall Lamp (TP-Link KP115 plug) | TP-Link | switch.tall_lamp |
Good name |
| Living Room | Govee H6076 strip #1 | Govee | light.h6076 |
No friendly name |
| Living Room | Govee H6076 strip #2 | Govee | light.h6076_2 |
Duplicate model, no distinction |
| Living Room | Govee H60A4 strip | Govee | light.h60a4 |
No friendly name |
| Baby Room | Aqara H2 switch (dual relay) | Matter | light.aqara_light_switch_h2_us, _2 |
Which relay is main light vs ring light? |
| Baby Room | Aqara Ceiling Light 36W (fixture) | Matter | light.colorful_ceiling_light_36w, _2, _3, _4 |
4 light entities for 1 fixture (main + ring?) — needs clarification |
Aqara Switches (H2 US) — 3 IDENTICAL DEVICE NAMES
| Area | Device | Relays | Physical Buttons | Entity Count |
|---|---|---|---|---|
| Baby Room | Aqara Light Switch H2 US | 2 relays: light._us, light._us_2 |
2 button events | 24 entities |
| Front Door | Aqara Light Switch H2 US | 2 relays: light._us_6 through _us_8? |
Multiple buttons | 36 entities |
| Entrance | Aqara Light Switch H2 US | 2 relays: light._us_3 through _us_5? |
Multiple buttons | 36 entities |
Key confusion: Each H2 has 2 physical buttons + 2 relays, but the entity numbering (_us_3, _us_6, _us_7, etc.) doesn't map to which physical button controls which relay. After re-commissioning, these will all reset and need clear naming.
Sensors & Locks
| Location | Device | Integration | Entity | Status |
|---|---|---|---|---|
| Living Room | Aqara Motion Sensor P1 | Matter | binary_sensor.aqara_motion_sensor_p1_occupancy |
Good |
| Rooftop Door | Aqara Door/Window Sensor | Matter | binary_sensor.*_door |
Good |
| Rooftop Door | Aqara Vibration Sensor T1 | Matter | binary_sensor.*_occupancy |
Good |
| Front Door | Aqara Smart Lock U100 | Matter | lock.aqara_smart_lock_u100 |
Has duplicate _2 entities |
| Front Door | Aqara Doorbell G410 | Matter | button.*_identify only |
Limited Matter support? |
| Garage | Aqara Camera Hub G3 | Matter | button.*_identify only |
Limited Matter support |
| Entrance | IKEA MYGGBETT door sensor | Matter | binary_sensor.*_door |
Good |
| Entrance | IKEA MYGGSPRAY motion sensor | Matter | binary_sensor.*_occupancy |
Good |
| Garage | IKEA MYGGBETT door sensor | Matter | binary_sensor.*_door_2 |
Suffix _2 from re-commissioning |
| Laundry | IKEA KLIPPBOK water leak | Matter | binary_sensor.*_water_leak |
Good |
| Living Room | IKEA ALPSTUGA air quality | Matter | sensor.*_co2, *_pm25, etc. |
Good |
| Office | IKEA TIMMERFLOTTE temp/humidity | Matter | sensor.*_temperature, *_humidity |
Good |
Reorganization Plan
Phase 1: Clean Slate — Re-commission Matter (DO THIS FIRST)
Since we already removed the Matter integration:
- Add Matter integration in HA Settings > Devices & Services
- Commission Aqara M3 hub first — it bridges all Zigbee children
- Commission IKEA devices one at a time
- Rename EVERY device immediately after commissioning using this convention:
Naming Convention
Format: {Room} {Function}
| Old Name | New Device Name | Primary Entity |
|---|---|---|
| Aqara Light Switch H2 US (Baby Room) | Baby Room Light Switch | light.baby_room_light, light.baby_room_ring_light |
| Aqara Light Switch H2 US (Front Door) | Front Door Light Switch | light.front_door_porch_light, light.front_door_hall_light |
| Aqara Light Switch H2 US (Entrance) | Entrance Light Switch | light.entrance_hall_light, light.entrance_outside_light |
| Colorful Ceiling Light 36W | Baby Room Ceiling Light | light.baby_room_ceiling_main, light.baby_room_ceiling_ring |
| Aqara Door and Window Sensor | Rooftop Door Sensor | binary_sensor.rooftop_door |
| Aqara Vibration Sensor T1 | Rooftop Vibration Sensor | binary_sensor.rooftop_vibration |
| Aqara Motion Sensor P1 | Living Room Motion Sensor | binary_sensor.living_room_motion |
| Aqara Smart Lock U100 | Front Door Lock | lock.front_door |
| Aqara Smart Video Doorbell G410 | Front Door Doorbell | (limited Matter support) |
| Aqara Camera Hub G3 | Garage Camera Hub | (limited Matter support) |
| ALPSTUGA air quality monitor | Living Room Air Quality | sensor.living_room_co2, etc. |
| MYGGBETT door/window sensor (Entrance) | Entrance Door Sensor | binary_sensor.entrance_door |
| MYGGBETT door/window sensor (Garage) | Garage Door Sensor | binary_sensor.garage_door |
| MYGGSPRAY motion sensor | Entrance Motion Sensor | binary_sensor.entrance_motion |
| KLIPPBOK water leak sensor | Laundry Leak Sensor | binary_sensor.laundry_water_leak |
| TIMMERFLOTTE temp/hmd sensor | Office Climate Sensor | sensor.office_temperature, sensor.office_humidity |
Phase 2: Fix Non-Matter Devices
| Device | Action |
|---|---|
| Shelly Bedroom Ceiling Relay | Rename device to "Bedroom Ceiling Light", rename entity to switch.bedroom_ceiling_light |
| Shelly Office Ceiling Relay | Rename device to "Office Ceiling Light", rename entity to switch.office_ceiling_light |
| Govee "Ceiling Light" (H60A1) | Rename to "Bedroom LED Strip", entity to light.bedroom_led_strip |
| Govee H6076 #1 | Rename to "Living Room TV Backlight", entity to light.living_room_tv_backlight |
| Govee H6076 #2 | Rename to "Living Room Shelf Light", entity to light.living_room_shelf_light |
| Govee H60A4 | Rename to "Living Room Ambient Strip", entity to light.living_room_ambient_strip |
| TP-Link "Grizzley Pi" | Rename entity from switch.bug_zapper to switch.grizzley_power, rename device to "Grizzley Host Power" — this is the remote power control for the grizzley Pi (only non-PoE Pi) |
| LG TV (cast) | Merge with webostv device if possible, or accept duplicate |
Phase 3: Clarify Relay ↔ Physical Switch Mapping
For each Aqara H2 switch, document the physical wiring:
Baby Room H2 Switch:
Physical Button 1 (left) → Relay 1 → [what does it control?]
Physical Button 2 (right) → Relay 2 → [what does it control?]
Front Door H2 Switch:
Physical Button 1 → Relay 1 → [porch light?]
Physical Button 2 → Relay 2 → [hall light?]
Entrance H2 Switch:
Physical Button 1 → Relay 1 → [entrance hall?]
Physical Button 2 → Relay 2 → [outside light?]
Action: After re-commissioning, physically press each button and observe which relay toggles. Then name accordingly.
Phase 4: Clean Up Duplicate/Misleading Entities
- Delete duplicate Matter entities (the
_2suffixed ones from double-commissioning) - Disable
button.*_identifyentities (not useful for daily use) - Disable
sensor.*_battery_typeandsensor.*_battery_voltage(keep only*_batterypercentage) - Disable
number.*_on_levelandselect.*_power_on_behavior(advanced settings) - Keep: primary light/switch/lock/sensor entities + battery percentage + firmware update
Device → Integration → Ecosystem Map
Lighting Control Paths (identify conflicts)
Bedroom Ceiling ──→ Shelly 1PM (Wi-Fi) ──→ HA Shelly integration
Bedroom Lamps ──→ TP-Link HS103 (Wi-Fi) ──→ HA TP-Link integration
Bedroom LEDs ──→ Govee H60A1 (BLE/Wi-Fi) ──→ HA Govee integration
Baby Room Main ──→ Aqara H2 Relay 1 (Zigbee→M3→Matter) ──→ HA Matter
Baby Room Ring ──→ Aqara H2 Relay 2 (Zigbee→M3→Matter) ──→ HA Matter
Baby Room Fixture ──→ Aqara Ceiling Light 36W (Zigbee→M3→Matter) ──→ HA Matter
Living Room Tall Lamp ──→ TP-Link KP115 (Wi-Fi) ──→ HA TP-Link
Living Room Strips ──→ Govee (BLE/Wi-Fi) ──→ HA Govee
Office Ceiling ──→ Shelly 1PM (Wi-Fi) ──→ HA Shelly
No actual conflicts — each physical light has ONE control path. The "overlap" is naming confusion, not actual duplicate control.
Infrastructure Controls (not consumer IoT)
| Device | Integration | Purpose | Current Name |
|---|---|---|---|
| TP-Link HS103 plug | TP-Link | Remote power for grizzley Pi (only non-PoE host) | switch.bug_zapper |
Action: Rename to switch.grizzley_host_power. Consider adding to a "Infrastructure" area in HA and protecting with a confirmation prompt to prevent accidental shutdown.
Execution Checklist
- Phase 1: Re-commission Matter devices with proper names
- Add Matter integration in HA
- Commission Aqara M3 hub (name: "Bedroom Hub M3")
- Commission each IKEA sensor with location-based name
- Rename all devices immediately upon discovery
- Phase 2: Rename non-Matter devices in HA
- Shelly relays → descriptive names
- Govee lights → room + function names
- TP-Link "Grizzley Pi" → "Bug Zapper"
- Phase 3: Map Aqara H2 physical buttons → relays
- Baby Room switch
- Front Door switch
- Entrance switch
- Phase 4: Disable noisy entities (identify buttons, battery voltage, power-on behavior)
- Phase 5: Update HA automations with new entity IDs
- Phase 6: Update Alexa routines if entity names changed