Automation false alerts - help needed!

I am brand new to HA and Z Wave, so I’m probably doing something stupidly wrong here… I have a Z Wave door sensor setup to detect when my Worx Landroid docks and undocks. It works, but I’m getting false alerts. The robot will be out mowing for a while and then send me a new “mowing” alert". Here’s the Automation that’s firing in a seemingly random manner. I tried putting in a longer delay, but that’s not helping.

- id: '1528596104650'
  alias: Alert when Taylor Leaves
  trigger:
  - entity_id: binary_sensor.ecolink_doorwindow_sensor_sensor
    for:
      seconds: 55
    from: 'off'
    platform: state
    to: 'on'
  condition: []
  action:
  - data:
      message: 'Taylor: mowing {{now().strftime(''%H:%M:%S'')}}'
      target:
      - device/Galaxy S9
    service: notify.pushy

Thank you for any thoughts!

have you checked to see if the door sensor is actually getting triggered for some reason causing the automation to run? if it is then the problem isn’t with the automation, it’s with the sensor.

Yes! That’s the issue. Somehow the Z wave sensor is sending false changes from “off” to “on”. The below log snippet shows that. The door sensor was definitely not tripped at this time, since the magnet was on the other side of the yard. :slight_smile:

Gotta figure out how why that’s going on. Any ideas?

2018-06-16 23:03:23.814 Info, Node002, Received SensorBinary report: Sensor:255 State=Off
2018-06-16 23:03:23.814 Detail, Node002, Refreshed Value: old value=true, new value=false, type=bool
2018-06-16 23:03:23.815 Detail, Node002, Changes to this value are not verified
2018-06-16 23:03:23.815 Detail, Node002, Notification: ValueChanged
2018-06-16 23:03:24.111 Detail, Node002,   Received: 0x01, 0x11, 0x00, 0x04, 0x00, 0x02, 0x0b, 0x71, 0x05, 0x00, 0x00, 0x00, 0xff, 0x06, 0x16, 0x00, 0x00, 0x00, 0x78
2018-06-16 23:03:24.112 Detail,
2018-06-16 23:03:24.112 Info, Node002, Received Alarm report: type=0, level=0, sensorSrcID=0, type:Access Control event:22, status=255
2018-06-16 23:03:24.112 Detail, Node002, Refreshed Value: old value=0, new value=0, type=byte
2018-06-16 23:03:24.112 Detail, Node002, Changes to this value are not verified
2018-06-16 23:03:24.112 Detail, Node002, Refreshed Value: old value=0, new value=0, type=byte
2018-06-16 23:03:24.113 Detail, Node002, Changes to this value are not verified
2018-06-16 23:03:24.113 Detail, Node002, Refreshed Value: old value=0, new value=0, type=byte
2018-06-16 23:03:24.113 Detail, Node002, Changes to this value are not verified
2018-06-16 23:03:24.113 Detail, Node002, Refreshed Value: old value=23, new value=22, type=byte
2018-06-16 23:03:24.113 Detail, Node002, Changes to this value are not verified
2018-06-16 23:03:24.114 Detail, Node002, Notification: ValueChanged
2018-06-16 23:03:24.139 Detail, Node002, Notification: ValueChanged
2018-06-16 23:03:24.176 Detail, Node002, Notification: ValueChanged
2018-06-16 23:03:24.203 Detail, Node002, Notification: ValueChanged
2018-06-16 23:03:24.229 Detail, Node002,   Received: 0x01, 0x0a, 0x00, 0x04, 0x00, 0x02, 0x04, 0x30, 0x03, 0xff, 0xff, 0xc4
2018-06-16 23:03:24.229 Detail,
2018-06-16 23:03:24.230 Info, Node002, Received SensorBinary report: Sensor:255 State=On

Is the magnet on the mower or the docking station?

The advantage of having the magnet on the mower is that the z-wave transmitter is always in the same place on the docking station and is less likely to drop off the network. Also the transmitter is not subject to vibration that could false trigger the magnetic reed switch.

The magnet is on the mower. The switch / sensor is on the docking station.

What’s odd to me is that I don’t seem to be getting false events when the mower’s docked and the sensor is closed. It only seems to be happening while the mower is out & about, so the sensor is opened.

I’m working on a code workaround, but I’m not sure if it’s going to work. Trying to capture the time of events and only notify me if a reasonable time has elapsed.

Ok, the only other thing I can think of is EMI (electromagnetic interference). Maybe the microprocessor or switchmode power supply in the dock is interfering with the sensor. Try moving it away from the dock and see if you are still getting false triggering. If you do it could be a faulty sensor. However if the false alerts stop then you might have to look for a different location on the dock to mount the sensor.

Yeah, that’s what I was thinking also. I’m not sure how much stray magnetism it needs to set it off.

For this type of sensor, I would have thought quite a lot. The magnetic reed switch will not activate just from stray fields produced by consumer electronic equipment. And it is essentially a switch, not a sensor that needs a lot of amplification.
When the magnet is close to the reed switch the input to the micro controller monitoring pin is shorted to ground or a supply rail. A very low impedance path unlikely to be affected by EMI. However when the magnet is away from the reed switch it is open and the microcontroller pin is either floating (bad design!) or pulled high or low with a high value resistor. This has the potential to be more affected by EMI (small currents induced in large impedances produce large voltages, Ohms Law).

Thank you both for your help!

Unfortunately, there’s not really another place I can move the sensor on the dock where the mower will connect when it comes back to charge.

I’ve rewritten my automations and currently trying to test and see if it works. I’ll post back here once I get them working. Basically, if the sensor fires an “on” or “off” command, I’m checking to see if it’s been at least 1 minutes since the last state change. IF it has, then I’m pushing a notification and saving the new time. Hopefully. :slight_smile: