Lighting Automation/Control Software
First thing is to establish the command protocol to use with mqtt topics and payloads.
This is based around posible commands we want to issue.
There is a total of 11 rooms and 17 zones.
The Workshop, Stuido, and Comfy Area have multiple zones.
There will be times when we want to change all zones in these rooms, also time when we might want to act on multiple rooms.
An 'All Off' button for the workshop should include the electronics bench, an 'All off' for the Stuido should include the Comfy Area?
Master all off from the last man switch should be all but the hall
Switch panels should not care about current state and should just send 'toggle' state commands per zone, except for posible all off buttons
Special function scripts form holly may want to set certain states, these will not matter about current state but would be setiing a defined on/off.
Sould we provide current state for loggin use on holly anyway, could be used to calculate lighting bill each month
Internally the control box firmware will have to track state of each zone it's in charge of.
Posible commands
- ON
- OFF
- TOGGLE
Posible State
- ON
- OFF
Rooms And zones
if no zone listed assume 1 or 0??
Controller 1
- Workshop
- 0 (all)
- 1 (wood working)
- 2 (Cnc's)
- 3 (metal working
- 4 (bike)
- Electronics
- Textiles
- Toilets
Controller 2
- Kitchen
- Blue
- Storage
- Box
- Hall
- Studio
- 0 (all)
- 1 (walk way)
- 2 (middle)
- 3 (far side)
- Comfy
- 0 (all)
- 1 (walk way)
- 2 (seating)
Topic | Description | Notes |
---|---|---|
nh/li/set/ROOM/ZONE | Lighting Command | ROOM is one of the pre defined rooms ZONE within a ROOM and payload is COMMAND |
nh/li/state/ROOM/ZONE | Lighting State | Retained Topic! ROOM is one of the pre defined rooms ZONE within a ROOM and payload is Curent STATE |