XSense Fire Alarm made smart

Hey All, I’m starting to get adventurous with my micro electronics. I’ve bought 6 xsense fire alarms and I’ve started to try and wire one into esp32 so i can detect when it goes off. I’ve drawn a blank and I’m after some advice (fairly new to micro electronics).

My theory was to intercept the wires to the siren, in my head this was a obviosu target because when the alarm goes off the siren is powered. I identified the pins driving the siren and have run some tests with my multimeter to prove the voltage when it goes off;

image

So I rigged it up to GPIO input using this code;

binary_sensor:
  - platform: gpio
    pin:
      number: 27
      mode:
        input: true
        pulldown: true
    name: Fire Alarm

The problem I have is without the pulldown activated the pin floats and i get constant on-off triggers. But with it set to true i pick-up nothing, I think this is because when the siren runs its only pulling 0.8 - 1v which is too little for the gpio to pickup? I also checked my code by throwing 3.3 at pin 27 and it triggered.

How can I either up the voltage or reduce the resistance of the pulldown to allow it to be picked up and not float?

I’m a bit of a newbie so my logic may be wrong here? Any help would be appreciated.

Perhaps an optocoupler would help.

Thanks, I’ve just purchased some. Interesting idea which may work!

Take a look at this thread perhaps Detect if multiple LEDs on external circuit are turned on with ESP8266

Thanks Nick,

So my optocouplers arrived to tonight, I’m able to take the low voltage to drive the no/nc on a higher voltage to trigger the gpio on esphome. Works perfectly, I’ve now got my xsense fire alarms triggering push via ha!

1 Like

Great to hear!

Great to hear indeed!
Can you share the details? Which optocoupler, little schema?
I would like to do exactly the same :slight_smile:

Hey Sure, I’m no master electrician but here’s some photos and how I did it.

One wire goes to tp1 the other to the negative battery fixing, both of these wires go to one side of the coupler.

The other side of the coupler is a gpio pin and 3v3,

I used these 50 Pcs Photo Coupler In-Line… Amazon.co.uk

I found that there is a specific side for the board and the other for the alarm, if you get it wrong it breaks the coupler I found, I broke a few before I got it working.

It’s worked faultlessly whether it’s this alarm or others that trigger it. One thing though, for me because I’ve tampered with this alarm I don’t trust it to be a working one so I just use it as a receiver

If your alarm is board is different just use a voltage meter to find a vault spike when the siren goes off and use that.

Nice, Thanks!

Do you have any additional information on how you did this integration?

Hey PrayfulDrop,

Not sure what else is to be shared? Once you have configured you get a binary sensor in HA that can drive your automation.

Is there something specific you need help with?

Sam

I am curious to see more photos of how you integrated the fire alarm and also “hid” the esp device. I assume the configuration yaml code above would be the binary sensor. Any code for the ESP device?

I managed to do the same listening to what is sent over 868.3 MHz. Still in the phase of analysing the payload, but it looks promising. Although I’d prefer to reconfigure the ESP in the basestation or make it connect to my own MQTT server instead of the AWS one.
The pairing seems to happen via Bluetooth, but 868 MHz can be used later to detect an active alarm. These sensors also broadcast the alarm so all of them go off at the same time.