Yale Smart Alarm Sensors

Yeah sure, i can help, i don’t actually have the smoke alarms, but i can help you help me implement them as well.

I just hope they are not like the PIRs which don’t seem to report status the same way.

What to do is add the following line in to the .py file, just below where temp_object is populated:

_LOGGER.error(str(temp_object))

So it looks like this:

        """Update sensor data."""
        temp_object = self.client._get_authenticated(_ENDPOINT_DEVICES_STATUS)
        
        _LOGGER.error(str(temp_object))
        
        for object in temp_object['data']:

Then restart your homeassistant, what this will do is dump the YALE API payload to your homeassistant logs each time it updates ( it will spam your logs ).

Then you will need to trigger a smoke alarm, and look through the log entries to see what the YALE API reports in its status, status1 and status2 fields.

If you can post the whole log entry or just what its reporting in status fields when triggered i should be able to add it.

Thanks! It’s a little late for setting of smoke alarm tonight (it already went off twice today - bloody cooker!) so will try out tomorrow and report back. Brilliant. Thanks again.

Hi there. Well, I set the logger running then I triggered smoke alarm (bloody noisy, bit I guess that’s the idea! Not sure the neighbours enjoyed it!) and when I compared the logs for the smoke alarm entity there appeared to be no difference (see below).

Do I have to wait longer than a few seconds (10) to see the updated status? I noticed the MIN_TIME_BETWEEN_UPDATES is set to 30 sec? I’m loath to do it for over 30 seconds unless that’s the answer!! Sorry to be unsure.

Log entry when idle

{‘area’: ‘1’, ‘no’: ‘14’, ‘rf’: None, ‘address’: ‘RF:e1610040’, ‘type’: ‘device_type.smoke_detector’, ‘name’: ‘Ground floor smoke’, ‘status1’: ‘’, ‘status2’: None, ‘status_switch’: None, ‘status_power’: None, ‘status_temp’: None, ‘status_humi’: None, ‘status_dim_level’: None, ‘status_lux’: ‘’, ‘status_hue’: None, ‘status_saturation’: None, ‘rssi’: ‘9’, ‘mac’: ‘00:1d:94:0a:f9:00’, ‘scene_trigger’: ‘0’, ‘status_total_energy’: None, ‘device_id2’: ‘’, ‘extension’: None, ‘minigw_protocol’: ‘’, ‘minigw_syncing’: ‘’, ‘minigw_configuration_data’: ‘’, ‘minigw_product_data’: ‘’, ‘minigw_lock_status’: ‘’, ‘minigw_number_of_credentials_supported’: ‘’, ‘sresp_button_3’: None, ‘sresp_button_1’: None, ‘sresp_button_2’: None, ‘sresp_button_4’: None, ‘ipcam_trigger_by_zone1’: None, ‘ipcam_trigger_by_zone2’: None, ‘ipcam_trigger_by_zone3’: None, ‘ipcam_trigger_by_zone4’: None, ‘scene_restore’: None, ‘thermo_mode’: None, ‘thermo_setpoint’: None, ‘thermo_c_setpoint’: None, ‘thermo_setpoint_away’: None, ‘thermo_c_setpoint_away’: None, ‘thermo_fan_mode’: None, ‘thermo_schd_setting’: None, ‘group_id’: None, ‘group_name’: None, ‘bypass’: ‘0’, ‘device_id’: ‘RF:e1610040’, ‘status_temp_format’: ‘C’, ‘type_no’: ‘11’, ‘device_group’: ‘000’, ‘status_fault’: [], ‘status_open’: [], ‘trigger_by_zone’: []},

Log entry when triggered

{‘area’: ‘1’, ‘no’: ‘14’, ‘rf’: None, ‘address’: ‘RF:e1610040’, ‘type’: ‘device_type.smoke_detector’, ‘name’: ‘Ground floor smoke’, ‘status1’: ‘’, ‘status2’: None, ‘status_switch’: None, ‘status_power’: None, ‘status_temp’: None, ‘status_humi’: None, ‘status_dim_level’: None, ‘status_lux’: ‘’, ‘status_hue’: None, ‘status_saturation’: None, ‘rssi’: ‘9’, ‘mac’: ‘00:1d:94:0a:f9:00’, ‘scene_trigger’: ‘0’, ‘status_total_energy’: None, ‘device_id2’: ‘’, ‘extension’: None, ‘minigw_protocol’: ‘’, ‘minigw_syncing’: ‘’, ‘minigw_configuration_data’: ‘’, ‘minigw_product_data’: ‘’, ‘minigw_lock_status’: ‘’, ‘minigw_number_of_credentials_supported’: ‘’, ‘sresp_button_3’: None, ‘sresp_button_1’: None, ‘sresp_button_2’: None, ‘sresp_button_4’: None, ‘ipcam_trigger_by_zone1’: None, ‘ipcam_trigger_by_zone2’: None, ‘ipcam_trigger_by_zone3’: None, ‘ipcam_trigger_by_zone4’: None, ‘scene_restore’: None, ‘thermo_mode’: None, ‘thermo_setpoint’: None, ‘thermo_c_setpoint’: None, ‘thermo_setpoint_away’: None, ‘thermo_c_setpoint_away’: None, ‘thermo_fan_mode’: None, ‘thermo_schd_setting’: None, ‘group_id’: None, ‘group_name’: None, ‘bypass’: ‘0’, ‘device_id’: ‘RF:e1610040’, ‘status_temp_format’: ‘C’, ‘type_no’: ‘11’, ‘device_group’: ‘000’, ‘status_fault’: [], ‘status_open’: [], ‘trigger_by_zone’: []},

Hey sorry i have been working away all week.

You can try changing the MIN_TIME_BETWEEN_UPDATES to something faster, 5 seconds for example,

tbh it looks like the PIR sensors response, which don’t seem to be poll able in the API.

I’ve not given up hope on them, but just not had a chance to try and reverse engineer the protocol

Hi
Just wanted to check what the latest is with interfacing with the Yale Smart home alarms? I have a Yale IA-320. I’m hoping to be able to:

  • access sensor status (i.e. doors and pir sensors)
  • arm/disarm alarm
  • activate alarm (i.e. make it sound)

Many thanks for your work on this!
Adam

The standard integration will give you the ability to arm and disarm,

My custom integration here: https://community.home-assistant.io/t/yale-smart-alarm-binary-sensors will give you the door sensors,

However there is no ability to access the PIR sensors (probably never happen due to the design of the alarm) and you cannot activate the alarm currently

Ok thanks again!
Adam

I’ve noticed the original yale smart github has been updated to trigger the alarm via panic button

I just don’t think it’s been pushed to HA

Yeah the version HA uses is very out of date, i had to pull in the newer version for the binary sensors

I have these alarms as well. I will try to do a test as soon as I can.

I see no change as well… :frowning:

Hi all,

Has anyone managed to be able to add a key pad in order to disarm the alarm rather than just press disarm?

Im looking at add this to a touch screen so that a pop up appears once the front door is open and the alarm is armed. once the correct code is entered the alarm with disarm.

Any ideas would really be appreciated.

Not exactly, in the end I created a manual alarm in HA with a keypad and used automations to set/unset the Yale one when then HA one was set/unset and vice versa. It’s a massive bodge, but it works!

Ah OK thanks for the info.

Did you use the alarm panel card?

What entity did you use?

When I try to and a manual one the card wants an entity.

Sorry if I wasn’t clear, I added a completely separate manual alarm (with no physical device) called ‘HA Alarm’ through HA and then pointed the alarm card at that entity. So I have 2 alarms in HA (I did say it was a bodge!)

I then set up several automations to change the state of each alarm to match the state of the other one. E.g. If Yale alarm set to disarmed set HA Alarm to disarmed, or if HA Alarm set to disarmed, set Yale alarm to disarmed. You need to do this for each state (armed_away, armed_home, disarmed) both ways - so quite a few automations.

The HA alarm works with the Alarm Panel card and shows a key pad, so I add that one to my dashboards, and when I arm/disarm it, the Yale one arms/disarms. IT works, but it’s quite a bit of effort to initially set up and is far from an ideal solution!

@HgoP @mattius @julian @abcpt Do you want to try my new integration I’m playing with which supports the smoke sensors?

See this post

You’ll need to add your yale config again in the new integration. It’s exactly the same as the current core integration with added smoke and temperature sensors

I do not have smoke sensors connected to my Yale system. Sorry.

Hello
Has anyone got the Yale Sync motion sensors to work yet?
My door contacts work fine.

Many thanks

1 Like

The motion sensors don’t work in a useful way for monitoring in home assistant.

I’m guessing to save battery life, they only work when the system is armed or the walk test mode is set.

A few people have tried and failed to make them useful.

Unfortunately I got rid of my Yale system due to the crappy battery life and switched to ring, so no more updates from me I’m afraid.

1 Like

+1 here would love this but I am guessing the fact it has not happened means its not possible?