48c58b610c
Make the Right button toggle the living room lights
2026-03-15 17:32:36 +01:00
3507385d6c
LightState -> LightSettings
2026-03-15 17:32:35 +01:00
b9fc8bfaea
Re-order light list
2026-03-15 17:32:35 +01:00
5728da8e6c
Construct light list dynamically
2026-03-15 17:32:35 +01:00
1e313ca4ab
Improve lamp names
2026-03-15 17:32:35 +01:00
3855439d82
Hard code the lights controlled by the remote
2026-03-15 17:32:35 +01:00
50c8a413a6
Give every light its own type
2026-03-15 17:32:35 +01:00
6b73e32cda
Implement fading alarm
2026-01-17 18:22:37 +01:00
9104fac638
Remove the remoteControlledLights helper value
2026-01-17 17:07:08 +01:00
437e5bf25d
Store more state
2026-01-17 15:33:30 +01:00
78a692bd43
Move some types
2026-01-17 11:40:31 +01:00
6e4c89c436
Fix room on one of the lamps
2026-01-14 19:56:15 +01:00
0d21e81b82
Introduce a global remoteControlledLights value
2026-01-14 19:55:58 +01:00
2950b21488
Implement the 'Left' button on the remote
2026-01-14 19:53:15 +01:00
e792a57cb4
Improve error for unknown topics
2026-01-05 22:07:09 +01:00
838bbb79a3
Add naive remote control implementation
2026-01-05 21:53:48 +01:00
89a8c599c7
Strongly type the device FriendlyName
2026-01-05 19:19:04 +01:00
9531dee52b
Stop requiring the initial time in NightLightStateMachine
...
We're only fooling ourselves if we think that it's ready *right* after
construction anyway. After all, the initial state of the lights won't be
updated when the state machine is constructed.
2026-01-04 20:16:58 +01:00
bd550bfcd9
Encapsulate State to make it impossible to read
...
This was NightLightStateMachine's purpose, but it fits equally well
in the actual production code.
2026-01-04 12:09:07 +01:00
83b716a509
Reorganize types to prepare for unit testing
2026-01-04 12:08:10 +01:00
5219abfb4b
Fix incorrect namespaces
2026-01-04 12:08:10 +01:00
27c6646237
Put a full Message in ReceivedZigbeeEvent
...
We'll need the topic later.
2026-01-04 12:08:10 +01:00
10e26a4866
Turn Message into a record type
2026-01-04 12:08:10 +01:00
ab6e123efc
ZigbeeCommand -> Message
...
There isn't really anything specifically Zigbee about this type.
2026-01-04 12:08:10 +01:00
c377ec25dc
Introduce the Models module in order to make others internal
2026-01-04 12:08:10 +01:00