Hardware to connect eMacros driveway alarm to Home Assistant

I bought this eMacros driveway alarm long before I started using Home Assistant. My driveway is a little over 1/4 mile long, and I needed to know when someone was coming down it. Works great, loud chime from the receiving unit can be heard through most of the house. Problem is, I just completed a sound proof home theater, where it cannot be heard. I’m trying to figure out how I can get it connected to Home Assistant so I can setup an automation that will notify me when this driveway alarm is triggered. The latter part is easy, it’s figuring how the hardware required to get it connected that I need help with.

What would be the best hardware to make this happen?

Doing some research, I found an FAQ for the same product on Alibaba that says it operates on a 433.92MHz frequency.

I currently have a Philips Hue Hub, a Lutron Caseta Wireless Smart Bridge, several Amazon Echo’s, and a Conbee II all connected to Home Assistant. AFAIK, none of those will handle 433.92MHz.

I found this Sonoff 433RF Bridge, which looks like it may do the job?

Is there any other hardware I should consider for this? Anything else I might need?

1 Like

Many people hardwire to receiver to use that as trigger into HA using RasPi gpio or esp8266. You’d use the power that turns ON LED that lights or that powers buzzer when theme device is trigger as an input

You may also use audio sensor or trigger off the vibration.

I had same issue as you and use ubiquiti nano AP to extend network far out and camera running frigate to detect car/person animal. I tried your idea but ultimately not helpful since knowing something there vs knowing who make big difference. False alarms are a pain. Even camera with long zoom could work for this. Just another idea.

1 Like

That was actually my first thought, but I’m a little lost on what components are necessary to make that work. I was leaning towards the ESP8266 because I think it could fit inside the receiving unit. However, I’ve never used an ESP8266 before, so I’m not sure where to start. It looks like a NodeMCU dev board may be the easiest place to start?

I have a Ubiquiti G4 camera on the house pointed down the driveway. There’s a lot of trees in the way, and like I said, the driveway is a little over 1/4 mile long. Camera can’t see more than ~100ft from the house before trees are blocking the view of the rest of the driveway. The entrance is not visible from the house.

The sensor on it is pretty good. I don’t have too many false alarms most of the time. Deer running by are usually the only thing that causes a false alarm. I have it mounted on a utility pole near the entrance of the driveway. There’s no power that far away from the house. The sensor is solar powered with rechargeable batteries. It’d be prohibitively expensive to get power and signal out to that same location to run a camera there.

Unfortunately my G4 camera triggers motion events from my dog walking around outside, so it has far more false positives than the motion sensor driveway alarm (dog can’t go that far away from the house and trip it). Ideally I would like to bring up the camera feed automatically when the driveway alarm triggers. I do this manually when I hear it go off now. Typically a vehicle will be visible by the camera a few seconds after the driveway alarm sounds.

Here’s a photo of the inside of the receiving unit. The light at the top with the “D5” marking blinks when the motion sensor is triggered. I’ve not measured what the voltage to that light is. There’s 5V MicroUSB power, and 6V AA battery backup on it. If I could have something share power with it and trigger an event when that light activates, that would be perfect.

D5 is an LED. While it’s not entirely visible on your picture how its anode is connected (the trace goes into a via to the other side of the PCB), I assume it’s similar to the D3 LED on the left. Basically it goes over a 1k resistor to the U5 chip. The cathode goes to ground. So if D5 is similar (I suspect it comes back out of the via near the center of the PCB and goes to pin 2 of U5 over R14, but you need to check to make sure), you can just solder a wire to the positive side of the LED and connect it to an ESP input. Just make sure that the voltage is not above 3.3V.

Alternatively, if you want to fully keep the original device functional, you can also solder a wire to the respective pin on U5 (easier than trying to non-destructively solder on a SMD LED or resistor) and connect that to an ESP input over a resistor to limit it to 3.3V.

1 Like

I think D5 ended up connected to pin 3 on U5. Testing with my multimeter, I found that P_VOD/P_GND (on the right side just to the left of the speaker connection) was 4.8V input that gets stepped down to 3.3V at G/V over on the left side for use everywhere else.

Despite it being close to 30 years since I last soldered anything, I managed to solder to the SMD LED at D5 without destroying it! All original function remains intact. :sunglasses:

I accidentally pulled the negative speaker wire off and had to solder it back in.

I connected P_VOD on the alarm to VIN (red wire) on a NodeMCU dev board, and P_GND to GND, allowing it to share power. Struggled with that a bit, took longer than it should have, but it works.

I was concerned that I might accidentally connect 2 pins on U5 and short it out, so I didn’t attempt to connect there. Instead I connected the positive side of D5 on the alarm to D1 (yellow wire) on the NodeMCU, and the 3.3V G on the alarm to the GND pin closest to D1 on the NodeMCU.

I brought the motion sensor up to the house to test everything out. Started programming the NodeMCU with Arduino IDE first, but decided to switch to ESPHome. Ran into a few bugs with ESPHome, but eventually got most everything working. The OTA updates don’t work, but I can live with that. Set it up as a binary sensor with a device class of motion. Does exactly what I wanted!

Unfortunately the NodeMCU dev board was too big to fit inside the alarm case, mostly due to the header pins. I shoved it in the battery compartment for now.

I wasn’t using batteries anyway, I’ve always had it plugged in. Whole house has redundant power, so I don’t need battery backup in the device.

The ESP-12F module by itself would have fit inside the alarm case. If I can get the OTA updates working, I may eventually try to do that.

Only problem I have is the WiFi range on it sucks. I measured -63dBm from the nearest AP to where I had the alarm mounted, and it just wouldn’t connect. I moved it to another outlet where the signal measures -51dBm and it connected right away. :man_shrugging:

1 Like

Very nice work ! I’m impressed you managed to solder onto the SMD LED without burning it up :grinning:

You don’t actually need two ground wires, GND is all shared through a common rail, but the second connection won’t hurt either. The wifi issues could be due to the very large ground plane on the alarm PCB shielding the ESP wifi antenna. The location of the ESP in the battery compartment puts it right behind this large grounded area. Did you try moving the ESP out of the way ? Maybe just next to it, you don’t want the alarm PCB between the wifi antenna and the AP. 2.4GHz is very directional.

1 Like

Thanks! Saved that solder for last. :wink:

Ahh, good to know.

Yup, I pulled it out, still no connection from that spot. Works fine inside the battery compartment where I moved it to, but it’s literally right next to an AP now.

I got these NodeMCU dev boards as a 3 pack for $13 off Amazon… setup one of the others to do nothing but connect to Wi-Fi, same issue at the original location. That spot is a corner about halfway between 2 APs, but there’s more than enough signal strength for any other device I put there to connect. It doesn’t HAVE to sit there, it’s fine where I moved it, just weird.

Testing a few other spots seemed to indicate these just don’t work well through walls. I put one the same distance away from the AP measuring about the same signal strength, but with line of sight to the AP, and it connected. :man_shrugging:

I did get the OTA updates to work from ESPHome, but it’s super flaky. I have to open up logging, then open a new tab and start the OTA update for it to be successful. If I don’t do that, doesn’t matter how many times I click retry, it will fail with a “connection reset” error.

Yeah well, you get what you pay for I guess, so I’m not surprised these cheap ESP boards may have some wifi range issues. That said, -63 dBm is still pretty decent strength and should definitely connect. Oh well. As long as you got it working, all good :slight_smile:

Can’t help with ESPHome, I never used it.

1 Like

The way I dealt with this issue is to setup two sensors ~75 feet apart. And in the ESPHome code configure it only send an On state to HA for a fixed period of time. Currently using 10 seconds. Then there is a 1 minute “cool down” delay in the ESPHome code before the sensor can be triggered again. Needing to do that is in part because the Wuloo driveway alarm blinks the sensor channel LED for a minute. I can live with that minute plus delay between automation triggers.

Then in the HA automation only fire the action if the second sensor is triggered within 10 seconds of the first. I just got it setup, and the testing I’ve done seems to show that they work the way I expect. Over the next few months we’ll see how successful it truly is.

I actually have two automatons using these two sensors, one for vehicles coming in the driveway and another for leaving.

And not only deer, I have plenty of squirrels and other small fury critters tripping the PIRs, so this approach dramatically helps to reduce false alarms. Though fast moving deer will trigger the automation, they more typically wander up and down my driveway so we’ll see. :crossed_fingers:

I also plan to use the additional 2 driveway PIRs of the set of 4 I have in conjunction with camera motion events for some other monitoring. Haven’t dove into setting that up yet.

I realize this is an old thread, but I have the same driveway alarm and (while I do love adding esps to allTheThings) there is a simpler way. rtl_433 can receive, decode, and publish to mqtt its transmissions using any compatible sdr dongle like this one - that’s just an example, as I recall mine was more like $10, but maybe supply chain issues have raised demand. It can also be used to receive any number of other transmissions, like those from your power meter, or tire pressure monitoring transmitters, etc.

1 Like