Skip to content

Button / control panel (function 0) ​

A physical control panel: up to eight buttons and eight indicator LEDs. It publishes which buttons are pressed and what colour each LED is showing. Its command topic is unusual — it does not send a command to the panel, it emits a button frame as if the panel had been pressed, which is how a touchscreen stands in for a physical switch.

  • LED state enum (ledN): off, green-blink, green, red-blink, red.

Published ​

device/0/<i>/life ​

metadata adds counter; expireAfterSec: 30. Button pressed states.

data fieldTypeDescription
bp0..bp7boolButton 0-7 pressed
json
{
  "data": {
    "bp0": false,
    "bp1": true,
    "bp2": false,
    "bp3": false,
    "bp4": false,
    "bp5": false,
    "bp6": false,
    "bp7": false
  },
  "metadata": {
    "rxdate": "2026-06-17T14:30:45.123Z",
    "rxTimestamp": 1781793045,
    "expireAfterSec": 30,
    "counter": 1
  }
}

device/0/<i>/state ​

expireAfterSec: 30. LED states.

data fieldTypeDescription
led0..led7stringLED 0-7 state (enum)
led0Code..led7CodeintRaw LED state 0-4
json
{
  "data": {
    "led0": "green",
    "led0Code": 2,
    "led1": "off",
    "led1Code": 0,
    "led2": "red-blink",
    "led2Code": 3,
    "led3": "off",
    "led3Code": 0,
    "led4": "off",
    "led4Code": 0,
    "led5": "off",
    "led5Code": 0,
    "led6": "off",
    "led6Code": 0,
    "led7": "off",
    "led7Code": 0
  },
  "metadata": {
    "rxdate": "2026-06-17T14:30:45.123Z",
    "rxTimestamp": 1781793045,
    "expireAfterSec": 30
  }
}
bash
mosquitto_sub -h 127.0.0.1 -t 'device/0/+/#' -v

Command — device/0/<i>/command ​

Regex ^device/0/([[:digit:]]+)/command$. Simulates a button press by emitting a button life frame. If release is true (default), a second all-released frame is sent ~200 ms later.

FieldTypeDescription
in0..in7boolPress button 0-7 (default false)
releaseboolAuto-release after press (default true)
bash
mosquitto_pub -h 127.0.0.1 -t 'device/0/0/command' -m '{"in0":true}'
mosquitto_pub -h 127.0.0.1 -t 'device/0/0/command' -m '{"in3":true,"release":false}'

Integration of multiplexed solutions
MUXEN and the MUXEN logo are trademarks of MUXEN SAS.