Paradox Alarm to Home Assistant interface through Pi Zero W (without IP150 module)

@gbyleveldt very cool indeed, and thanks for sharing. I discovered Homebridge and the PAI plugin recently and have been trying to get it set up on my Rpi 4 so that I can manage the alarm through Home(Homekit) on my Apple devices. Haven't had 100% success yet though, as I'm struggling to get the connection via the IP150 module correct, and with my limited Rpi, MQTT and related knowledge, it's a bit of a fumble in the dark!
Getting PAI to work through IP150 seems to have been the biggest challenge people have had so far. Truth be told, I’m glad I was too stingy to get an IP150
 
Getting PAI to work through IP150 seems to have been the biggest challenge people have had so far. Truth be told, I’m glad I was too stingy to get an True

Getting PAI to work through IP150 seems to have been the biggest challenge people have had so far. Truth be told, I’m glad I was too stingy to get an IP150
True that. It does seem tricky. I know you're not using the Insite Gold app, but would you perhaps know whether connecting to the panel in the way you do will prevent the app from simultaneously connecting through Swan server? When you connect via the IP150, you effectively lock out Insite Gold as it only allows one connection at at time. Ideally I'd like to keep access via the Insite App, but also be able to connect via Home Assistant at the same time
 
True that. It does seem tricky. I know you're not using the Insite Gold app, but would you perhaps know whether connecting to the panel in the way you do will prevent the app from simultaneously connecting through Swan server? When you connect via the IP150, you effectively lock out Insite Gold as it only allows one connection at at time. Ideally I'd like to keep access via the Insite App, but also be able to connect via Home Assistant at the same time
I have no idea my man. Because I don't have an IP150 I don't use the Insite Gold app. My alarm is only connected to Home Assistant through PAI
 
I just got my SP6000 board and I plan to go the PI Zero route as apposed to IP150. My only question is how I would go about programming the panel / setting up the zones etc. Would it still be possible for the Babyware Software to connect to the board via the RPI or can you only do this via the Paradox IP150 or Serial Interface? I do have a FT232R that I can retrofit for this purpose. Not too keen to configure everything via the keypad. Thanks for a great thread.
 
You can’t program the panel through PAI or a Pi. Babyware is looking for a connection to the panel through either a direct USB/TTL or IP150. You should be able to connect with the panel through an ft232 breakout board; that’s pretty much what’s inside the Paradox USB interface. You’ll have to play with the correct pin outs on the panel connector, use my first post as reference for the connector
 
@gbyleveldt : What a awesome read. I also have a MG5050 and also want it to be connected to my HA running on my Linux server. I also bought a Pi Zero. I have a lot of stupid questions about this setup, but before I delfe into that, here is a Q.

Sure the HA interface will be great, however it will in my perspective still be better to also connect it to my Google Home so I can arm/disarm my alarm with my voice.

Here is a scenario I would like to pitch to you.

Have you considered using a sonoff self inching device (https://www.geewiz.co.za/home-and-l...pen-and-close-gate-from-app-alexa-google.html) to just arm and disarm?

If it is at all possible? If it is possible to replace these insanely expensive Paradox remotes with something like a normal Nova (Centurion) remote, surely this will then also work with a normal N/O - N/C output dev. But where do you connect the N/O and N/C circuits onto the MG5050 board?

Can you please help? Your help would be GREATLY appreciated!

Thanks guys
 
Last edited:
@gbyleveldt : <SNIP>

Have you considered using a sonoff self inching device (https://www.geewiz.co.za/home-and-l...pen-and-close-gate-from-app-alexa-google.html) to just arm and disarm?

Sure you can do that - can't see how that's any different from doing it from HA - still need to open an App on your phone.
If it is at all possible? If it is possible to replace these insanely expensive Paradox remotes with something like a normal Nova (Centurion) remote, surely this will then also work with a normal N/O - N/C output dev. But where do you connect the N/O and N/C circuits onto the MG5050 board?

Can you please help? Your help would be GREATLY appreciated!

Thanks guys

You'd hook it up to one of the zone connections, and then program that zone appropriately.
 
So - I decided to take a stab at this, and this is what I ended up with:

20210306_135441.jpg

Basically, what you're looking at is an ESP01s, plugged into a a logic level converter board (so, something like https://www.communica.co.za/products/hkd-esp8266-esp-01-adapt-3-3v-5v) powered by a 4-23v to 5v buck converter (So, something like https://www.banggood.com/3pcs-DC-DC...-Buck-Converter-Replace-LM2596-p-1561049.html).

The buck converter takes the 13 odd volts from the serial connection down to 5 volts. The logic level converter takes the 5v stuff down to the 3v that the ESP01 runs on.

The ESP01 is flashed with the stock standard Arduino IDE "WiFiTelnetToSerial" sketch (naturally with my SSID & PW). Only change is to drop the serial rate down to 9600, so:

#define BAUD_SERIAL 115200

becomes

#define BAUD_SERIAL 9600

As I add my IOT devices into my DHCP server so they get fixed IP addresses, I know exactly which IP address to put into the PAI configuration:

CONNECTION_TYPE = 'IP'
IP_CONNECTION_HOST = '<IP Address>'
IP_CONNECTION_PORT = 23
IP_CONNECTION_PASSWORD = 'paradox' # IP Module password. "paradox" is default.
IP_CONNECTION_BARE = True

At the end of the day, this runs you less than R200, and has no fiddling with setting up a Pi.
 
@gbyleveldt : What a awesome read. I also have a MG5050 and also want it to be connected to my HA running on my Linux server. I also bought a Pi Zero. I have a lot of stupid questions about this setup, but before I delfe into that, here is a Q.

Sure the HA interface will be great, however it will in my perspective still be better to also connect it to my Google Home so I can arm/disarm my alarm with my voice.

Here is a scenario I would like to pitch to you.

Have you considered using a sonoff self inching device (https://www.geewiz.co.za/home-and-l...pen-and-close-gate-from-app-alexa-google.html) to just arm and disarm?

If it is at all possible? If it is possible to replace these insanely expensive Paradox remotes with something like a normal Nova (Centurion) remote, surely this will then also work with a normal N/O - N/C output dev. But where do you connect the N/O and N/C circuits onto the MG5050 board?

Can you please help? Your help would be GREATLY appreciated!

Thanks guys
What I am trying to achieve is to use my Google Assistant, and my Home Assistant (which runs in various rooms in my house on tablets mounted on the walls), and my Roav Anker Bolt in my vehicle to arm and disarm using only my voice, Hey Google, arm the security system, or Ok Google, is the Alarm on?

I dont want to use a app. I want to be able to arm it, just like switching a light on or off.

I am a newby if it comes to Paradox. Please help me with details. For example, how do I program a zone? How do I connect the Sonoff to the zone? I am really trying to learn.

Thank you guys, i really appreciate this!
 
@gbyleveldt

I've won using your original post. I must be honest, it wasn't really easy. The part that was the most challenging to me was getting PAI to run on the Pi, and then to get it to run in my Home Assistant. Never the less, from the time I got home from the robotics store, to up and running was about 5 hours.

I must say, having a alarm panel in HomeAssistant with real time views of what is going on with my zones is a bonus. However, all I really wanted was to be able to arm and disarm with my voice. I will have both soon. I have gotten a hold of people (security comp) that can help me program my Paradox panel with BabyWARE as I dont have the cable nor software.

I want to say thanks to all supporting this. It was a awesome learning curve.

Now...........................motion sensors (sonoff through sonoff bridge) that picks up there is no-one at home and using scenes to auto arm....

and.... presence sensing to disarm when I am close to home through a GPS tracker wired somewhere into my vehicle. All of this is next. But first, I need to arm and disarm with voice.

Oh yes. I used an old Pi Zero, but not the W version.
 

Attachments

  • 20210311_205507.jpg
    20210311_205507.jpg
    883.6 KB · Views: 80
@gbyleveldt

I've won using your original post. I must be honest, it wasn't really easy. The part that was the most challenging to me was getting PAI to run on the Pi, and then to get it to run in my Home Assistant. Never the less, from the time I got home from the robotics store, to up and running was about 5 hours.
<SNIP>
Glad you came right - I did some research and my original advice about programming a zone might not work with Paradox stuff - can't see anyway to set a zone as an arm/disarm zone, but your babyware mate might help shed light on it.

I have an ip100 module, so, now, if I want to program, I have to remove my dongle, add that in and program it via winload.
I think having a programming capability helps tonnes.
 
I've had a few people ask about how I integrated my Paradox Alarm with Home Assistant. There's a few ways to do it, but I wanted the most elegant and compact (hardware wise) solution for me, without paying stupid money for an IP150 module which is still very limited, especially with the newer firmware. I also wanted it to be self contained and run on my WiFi network, with all the other IoT devices I have running.

Most of the software work has been done by the authors of PAI, but for some reason there's no tutorial to do it the way I wanted to do it using a Pi Zero W. As a proof of concept, I eventually got it going using a Paradox USB interface (which is nothing other than a fancy USB to TTL interface), which I had laying around that I used to program my Panel using Babyware.

View attachment 922479

I had this running for a few weeks to make sure the Pi Zero is suitable for the purpose (seeing as it's not on the PAI recommended list) and it worked like a dream. Only issue is that it's not very elegant nor neat. As it was tested, you're going from Paradox TTL to USB, into the USB port of the Pi, then back to a virtual Serial port into PAI. A better way to do it would be to go directly from the Paradox serial port into the Pi. Only issue is that the Paradox TTL Serial is at 5V and the Pi Serial is 3V3 (and I checked, the PI I/O is not 5V tolerant).

After some messing about, I came up with the below wiring diagram. I'm using a 12V to 5V DC to DC converter to power the Pi directly off the 12V Aux pin1 on the Paradox Serial connector.
I used this one, but any suitable board will work:
https://www.robotics.org.za/D1-POWER?search=d1 power shield

For level shifting the 5V TTL of the Paradox Serial port to the 3V3 TTL of the Pi Zero, I used this. It's a 4 channel unit (you only need 2 channels), but it's all they had in stock:
https://www.robotics.org.za/BOB-12009?search=4 Channel - Logic Level Converter Bi-Directional

This is the way it's all connected:View attachment 922493

This is how it's all wired up, as per the above schematic. It's not pretty, but it's solid and compact. I sandwiched a piece of plastic between the PI and the two boards, with a little hot glue to keep it all together:
View attachment 922501

I recently got a 3D printer and was itching to use it for something other than printing Benchies. It's actually the first time I designed anything in 3D, so just excuse the lack of any flair :)
View attachment 922503

And done, with the lid in place as well. Still battling to get my bed leveling perfect on the printer, but it's functional at least.
View attachment 922505

Last but not least, it's working perfectly with Home Assistant.
View attachment 922507

In as much as setting it all up on the Pi Zero W, I'm running the latest Raspberry Pi OS, 32bit Lite (as I don't need a GUI because it's running headless in the panel).

Setting up PAI, I followed this guide:
https://github.com/ParadoxAlarmInterface/pai/wiki/Manual

Because you're running a Pi Zero W, there's some additional step you need to take in order to enable the serial port on the GPIO pins, it's not enabled by default on the Pi Zero W as would be the case with other versions.

I'm going to assume you know your way around Linux, using Nano as a configuration editor and how to use Putty to SSH into the Pi. Things in Italic is what you need to enter

Enable hardware UART PL011 port:

- Disable built in BT module
sudo nano /boot/config.txt
Add dtoverlay=pi3-miniuart-bt to end of file, save and reboot

- After reboot, check if ttyS0 is now available. This shows that BT is switched off and that ttyAMA0 is available on GPIO. If it doesn't return ttyS0 then ttyAMA0 is still mapped internally to BT device.
ls -lsa /dev/serial*
0 lrwxrwxrwx 1 root root 7 Sep 26 12:12 /dev/serial0 -> ttyAMA0
0 lrwxrwxrwx 1 root root 5 Sep 26 12:12 /dev/serial1 -> ttyS0

- Disable Console Messages over UART
sudo nano /boot/cmdline.txt
Remove console=serial0,115200 at start of file, save and reboot

Once the above is done, you need to configure PAI to send Panel updates using MQTT (I prefer this method over directly integrating with HA, as MQTT is more universal for non HA implementations).

See below my configuration, yours would probably be very similar to mine. I've only included the changes to the example pai.conf file


CONNECTION_TYPE = 'Serial' # Serial or IP
SERIAL_PORT = '/dev/ttyAMA0' # Pathname of the Serial Port
SERIAL_BAUD = 9600 # 9600 for SP/MG. For EVO: Use 38400(default setting) or 57600
KEEP_ALIVE_INTERVAL = 10 # Interval between status updates
POWER_UPDATE_INTERVAL = 60 # Interval between updates of the battery, DC and VDC voltages
PUSH_POWER_UPDATE_WITHOUT_CHANGE = True # Always notify interfaces of power changes
PUSH_UPDATE_WITHOUT_CHANGE = False # Always notify interfaces of all changes
MQTT_ENABLE = True # Enable MQTT Interface
MQTT_HOST = 'yourmqttbroker' # Hostname or address
MQTT_PORT = 1883 # TCP Port (TLS port if MQTT_TLS_CERT_PATH is set)
MQTT_USERNAME = 'yourmqttbrokerusername' # MQTT Username for authentication
MQTT_PASSWORD = 'yourmqttbrokerpassword' # MQTT Password
MQTT_RETAIN = True # Publish messages with Retain
MQTT_REPUBLISH_INTERVAL = 60 * 60 * 12 # Interval for republishing all data
MQTT_BASE_TOPIC = 'paradox' # Root of all topics
MQTT_ZONE_TOPIC = 'zones' # Base for zone states
MQTT_PARTITION_TOPIC = 'partitions' # Base for partition states
MQTT_BUS_TOPIC = 'buses' # Base for buses states
MQTT_MODULE_TOPIC = 'bus-module' # Base for bus module states
MQTT_SYSTEM_TOPIC = 'system' # Base for panel states
MQTT_USER_TOPIC = 'users' # Base for user states
MQTT_EVENTS_TOPIC = 'events' # Base for events
MQTT_CONTROL_TOPIC = 'control' # Base for control of other elements (ROOT/CONTROL/TYPE)
MQTT_DEFINITIONS_TOPIC = 'control' # Base for definitions
MQTT_HOMEASSISTANT_DISCOVERY_PREFIX = 'homeassistant'
MQTT_OUTPUT_TOPIC = 'outputs'
MQTT_DOOR_TOPIC = 'doors'
MQTT_KEYPAD_TOPIC = 'keypads'
MQTT_STATES_TOPIC = 'states'
MQTT_NOTIFICATIONS_TOPIC = 'notifications'
MQTT_SEND_PANIC_TOPIC = 'panic'
MQTT_PUBLISH_RAW_EVENTS = True
MQTT_INTERFACE_TOPIC = 'interface'
MQTT_TOGGLE_CODES = {}
MQTT_USE_NUMERIC_STATES = False # use 0 and 1 instead of True and False
MQTT_PUBLISH_COMMAND_STATUS = True # Publish command statuses to MQTT
MQTT_COMMAND_STATUS_TOPIC = "command_status"
MQTT_HOMEASSISTANT_AUTODISCOVERY_ENABLE = True

That should be it. It seems a little involved but the above should get you going in no time :)
I am definitely trying this. I have a PI zero W lying around and have already ordered the rest of parts. I have a MG5500 panel and SP150 internet module running FW5.02.019, connection with the board is epileptic at best. Thanks for this!
 
I am definitely trying this. I have a PI zero W lying around and have already ordered the rest of parts. I have a MG5500 panel and SP150 internet module running FW5.02.019, connection with the board is epileptic at best. Thanks for this!
Hi all. I am a bit confused about where to stick the configuration; on the Pi Zero, or the Pi Hass. Can someone kindly shed a little more light on this.
 
Hello, I need a bit of help. So I've been able to recreate device, started up nicely and shows its running on the terminal. However, It isn't showing up on my homeassistant. Can someone please help me figure out what is wrong. I am running HA version 2021.5.2 on a raspberry pi 4, I also have mqtt installed and running. Many thanks in advance.
 

Attachments

  • IMG_20210511_190534.jpg
    IMG_20210511_190534.jpg
    2 MB · Views: 59
Home Assistant interface through Pi Zero W (without IP150 module) by gbyleveldt.

It is basically just connected on the serial port of the Pi and the other end on the alarm's four pin bus header? Box threw me way off.
 
It is basically just connected on the serial port of the Pi and the other end on the alarm's four pin bus header? Box threw me way off.

Yea. That's just a picture of before I connected it to the alarm panel. The issue is that while everything seems to be running fine, it isn't showing up on my home assistant despite auto discovery being enabled. So I am wondering, is there something else I should have done.
 
Yea. That's just a picture of before I connected it to the alarm panel. The issue is that while everything seems to be running fine, it isn't showing up on my home assistant despite auto discovery being enabled. So I am wondering, is there something else I should have done.

Why not try some of the other programs on github?
 
Top
Sign up to the MyBroadband newsletter
X