Jablotron JA-80 series and JA-100 series alarm integration

Maybe I am to stupid :smile: I got 10 sensors both wired and wireless it finds all my sensors even the indoor and outdoor panels, but only 3 of my sensors are almost working, one of the can changes to on but donā€™t go back to off, and one is alway on and change to off when activatedā€¦

I dont think your stupid, I think it could be better explained from me and others :slight_smile:

The problem with the code seems to be that it has only added relevant Hex values that works for the developers own installation, I have done the same with mine. But what I found is that the code lacks a lot of sensor values.

To get this to work fully, either you have to be lucky and hope that all your sensors been added from the start or you have to look at Hex values for a while and do some trial an error. For me, the only thing I have some issues with is my magnetic door sensors that doesnt seem to behave exactly the same as the motion sensors. You can get all packets by enabling debug logging for ā€œcustom_components.jablotron_system.binary_sensor: debugā€

What you then need to do is to change 2 line of code to fit your sensors.
These lines are 394 and 396 in the code I shared in paste bin.

For line 394, this is the value that can be seen as char 5-6 in the 5508 packet part 1
I had one value I needed to add which seem to be my ā€œsecond zoneā€ at home.

For line 396, this is the value that can be seen as char 7-8 in the 5508 packet part 1
You will see in your logs that this can have 2 different values for a specific ID (more about ID later)
This is the value that means on or off, from what I have seen it seems that on is always 2 lower then off
So if you can see that an ID have c4 and c6 as char 7-8 it is, according to my finding, c4 that is the value for on.
on value should be added to line 396

The values should be added like bā€™xc4ā€™

char 9-12 in the 5508 packet part 1 is the ID for the sensor
So look for the sensor to find the corresponding on/off chars.
ID will not be added to the code, as far as I have seen. But is good to have stored just to get all possible states.

In the end, the only values you need to have on line 394 and 396 is the values fitting your installation.

I have lot in my log, do you mind have a look, itā€™s okay to say no

Here are the interesting values, made a quick regex
https://pastebin.com/3UM9M9HP

from this you should be able to find all needed values, will just take some time to sort them out

okay now I almost have all my sensors working, but still have 2 sensors that says open when cloesed and closed when open, I have study all the PART1 packets and as char 5-6 i have 4b and 0e and put these in line 394 and char 7-8 I have c4, c6, 94, 96, 7a and 78 i have put these in line 396 does that sound right??

You should only add the chars for on on line 396
By looking at your numbers it looks like you are adding both on and off.
Most likely you should add
C4, 94 and 78 My guess is that the others are off for the sensors
I also noticed a sensor with id 80 05 that have on/off as c0/c2 for this you should add c0

okay think I have it working now :slight_smile: spending a lot of time looking in the log :-).
you say that 9-12 is the ID for the sensor, can I see in F-link what ID each sensor have og how do you see that ? also have you done any think to the control panel ? Iā€™am only able to arm Home, nothing happens when arming away

My Sensors naming in HA actually follow their position in the alarm.
binary_sensor.jablotron_1 has position 1 in F-link

I am not sure I have tried armed away yet, someone is always home in Corona time.

But I am using Plaksnors Alarm panel without any changes.

Finally its working. Thank you Horsi. And without FLINK running. But now there is a little delay in sensor response in HAā€¦2-3 secondsā€¦ If im connected with FLINK the response is much fasterā€¦
I dont know if it makes any sense but what i did was i changed the order of my sensor IDs(pirs and magnetic door sensors) in f-link to positions from 1 to 12 and it works for me. Previously, they were ordered randomly in FLINK and just few recognized in HA. I use sensors.bin from Horsi. All sensors have been recognized, and have a good response with FLINK running. Iā€™d like to use pir sensors to automatically turn on some lights on movement but with 3 seconds delay itā€™s not possible. Any ideas? I will be grateful for every answer.
Have a nice day.

For me I actually see no difference in the delays when having f-link on or off.
But I notice some sensors are a little slower in general, could be due to some being set for use with animals.
My primary use case right now is for the doors to send a notice to my phone when opened, prevent small kids from running out and strangers to walk in when we are in the backyard

Hi,

I just integrated hassio with my Jablotron JA-80 using this component: https://github.com/mattsaxon/HASS-Jablotron80

Itā€™s seems that works very well, so I can read alarm status and can arming/disarming.
Iā€™m wondering if anybody can get informations about PIR with JA-80

I did try and create an implementation that supported that and it looked technically possible, though I abandoned the project as it required that the alarm be in service/maintenance mode, which I decided was an unacceptable trade off as you cant trigger the alarm in this mode.

Hi Everyone,
I spend some time reading that post as Iā€™m dealing with setting up integration. Iā€™m sorry if I missed answer somewhere, but I donā€™t know what to do now. I managed to phisicaly connect my HA to JA80 via USB (it works with original OLink tool) and I see that I have communication. problem is that after adding configuration to yaml file and restarting HA I can see alarm entity as unavaialble and the worse thing - alarm seams to restart in loop. In logs I have:

2020-05-04 18:32:27 DEBUG (MainThread) [custom_components.jablotron.alarm_control_panel] Sending startup message
2020-05-04 18:32:27 DEBUG (MainThread) [custom_components.jablotron.alarm_control_panel] Successfully sent startup message
2020-05-04 18:32:28 DEBUG (MainThread) [custom_components.jablotron.alarm_control_panel] send_command_loop() enter
2020-05-04 18:32:28 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=alarm_control_panel.jablotron_alarm, old_state=None, new_state=<state alarm_control_panel.jablotron_alarm=unavailable; friendly_name=Jablotron Alarm, supported_features=15 @ 2020-05-04T18:32:28.028881+02:00>>
2020-05-04 18:33:36 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection.139682796481936] Received {'type': 'call_service', 'domain': 'alarm_control_panel', 'service': 'alarm_disarm', 'service_data': {'entity_id': 'alarm_control_panel.jablotron_alarm'}, 'id': 58}
2020-05-04 18:32:38 DEBUG (SyncWorker_16) [homeassistant.util.json] JSON file not found: /config/custom_components/jablotron/.translations/alarm_control_panel.pl.json
2020-05-04 18:32:38 DEBUG (SyncWorker_12) [homeassistant.util.json] JSON file not found: /config/custom_components/jablotron/.translations/alarm_control_panel.en.json

Do you have any ideas what went wrong?

No idea why youā€™ve got translations running here, Iā€™ve not come across that before.

Hello everyone,

Iā€™ve created new PR, which fixes few things (at least in my case), so feel free to check it.

  • Removed deprecated BinarySensorDevice and migrated to BinarySensorEntity
  • Added class motion , so HA will assign icon automatically
  • Added unique_id , so you can rename binary sensor properly
  • Added few bytes variants for PIR wired sensor, which cover all my PIR sensor at home

FIXES:

  • Motion (over PIR) detection works good, but after detection it was stuck in On state, Iā€™ve tricked it by automatically setting Off state after few seconds, when movement is not detected. Probably _triggersensorupdate does not work well.

Here is pull request hope it will help.

1 Like

Hello David,
I just used your binary_sensor.py and jablotron platform is not working. I have this message in log:
2020-05-27 13:22:57 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform jablotron_system.binary_sensor: Platform not found (cannot import name ā€˜BinarySensorEntityā€™ from ā€˜homeassistant.components.binary_sensorā€™ (/usr/src/homeassistant/homeassistant/components/binary_sensor/init.py)).

any ideas how to avoid this?
Thank you

Which version of HA do you use? BinarySensorEntity is ā€œreplacementā€ for BinarySensorDevice since 0.110 - thatā€™s why @davidzadrazil updated it.

But according to dev blog, it should be still working. Odd.

@Nath is right, it should work with older versions.

@gajda could you provide your HA version? Also, did you replace binary_sensor.py completely?

I have 0.105.3, updating ringt now. And yes, I replaced binary_sensor.py completely.

EDIT: sensors are working great after upgrade. Thank you very much !

Anyone knows if the change BinarySensorDevice to BinarySensorEntity will have any other effects?

Updated my code and it works by the way