To be used with Home Assistant.
Tested on a Visonic PowerMax Complete.
Implemented using protocol description found at: https://www.domoticaforum.eu/viewtopic.php?f=68&t=6581&sid=1acd634aa4f71212ec7d6d58c91751b2
Connect the PowerMax to a USB RS232 converter, e.g.: https://www.electrokit.com/usbseriellomvandlare-bbch340t.53189
See https://www.domoticz.com/forum/viewtopic.php?f=38&t=11134 for more information on how to connect the pins.
Docker image: https://hub.docker.com/r/robinwallberg/powermax-mqtt/
USER_CODE
- The user code to use for arming/disarmingSERIAL_PORT
- Serial port to use, default: /dev/ttyUSB0MOTION_TIMEOUT
- Timeout in seconds before resetting a PIR motion event, default: 120MQTT_URL
- MQTT broker URL, e.g. mqtt://192.168.1.123MQTT_TOPIC
- MQTT Topic to use, default: PowerMax. Will publish zone events to PowerMax/(1-30).
Example of a zone event published to PowerMax/3:
{
"id": 3,
"enrolled": true,
"open": false,
"bypassed": false,
"lowBattery": false,
"motion": false,
"tamper": false
}
Example of a Home Assistant binary MQTT sensor for zone events:
- platform: mqtt
name: "Front Door"
state_topic: "PowerMax/3"
device_class: door
payload_on: true
payload_off: false
value_template: '{{ value_json.open }}'
- platform: mqtt
name: "Front Door Battery"
state_topic: "PowerMax/3"
device_class: battery
payload_on: true
payload_off: false
value_template: '{{ value_json.lowBattery }}'
Home Assistant MQTT Alarm Panel:
alarm_control_panel:
- platform: mqtt
name: Larm
state_topic: "PowerMax"
command_topic: "PowerMax/set"