Add voice to existing alarm system

I have an existing alarm system that uses an Arduino UNO to monitor a couple of switches, actions are echoed to a mobile phone by blue tooth and the base station phone talks to the mobile phone.

I am in the process of adding a panic button by voice and switch, and a gadget to hear my smoke alarm when if it goes off.

Next would be to make the alarm system call the emergency services by text, I would want to be pretty sure that I have no false positives before I turn that on, visions of being carted off in chains.

I had thought that if this were a commercial product that a community call would be a good idea, you send a message to all the neighbours that have the same system that there is an issue at some address. But that would be a pipe dream.

I have just finished coding the ESP8266 which will be used to pass panic notifications to the arduino and now busily waiting for my Gravity Voice recognition module to arrive.

4 Likes

Hey Malcolm,

Seems like an awesome ongoing project! Obviously have to be absolutely wary about false positives for the emergency line. Its something I would be wary of when setting up IOT devices yourself.

Looking at the voice module you could do a bunch with it, it’d be interesting to see if you can integrate the beep of the fire alarm as a recognised prompt, seems like if a cats meow works, the sound of the fire alarm likely would.

Keep us updated as this is an awesome project and I would love to see where it ends up!

Cheers,
Blayden

1 Like

I got my Gravity Voice Recognition module delivered today and have had my first play. It works.

First test change the wakeup word to lurch
Second test learn command words fire panic

new visio script for serial from [SKU_SEN0539- SKU_SEN0539-EN_Gravity_Voice_Recognition_Module_I2C_UART-DFRobot

download library DFRobot_DF2301Q using visio Manage Libraries

compile run then speak some commands

sent by arduino to pc com

Begin ok!
CMDID = 2 (lurch)
CMDID = 5 (fire)
CMDID = 6 (panic)
CMDID = 5 (panic)
CMDID = 5 (fire)

seems to have a bit of an issue telling spoken word fire and panic apart but it works

early days!

image

3 Likes

Hi Malcolm,

Great stuff! That voice recognition module seems like a nifty gadget. You can train quite a few commands there so you have plenty of room to expand down the line.

Keep us posted!

1 Like

Current status

I can receive data from the gravity device with an UNO but have been unable to read the serial from the gravity using either a D1 Mini or a Limos Dev board.

The current solution is to have a uno capture the output from the gravity and then trigger the D1 mini to pass the information to the alarm uno.

Transferring the panic alarm will simply be to trigger an optocoupler between the WIFI boards and the UNOs.

The Gravity board an uno a couple of leds and a switch will be the remote panic switch activated by voice or touch and the existing alarm circuit will have the receiving WIFI board connected with via an optocoupler.

2 Likes

Welcome to the forum Malcom!!

Super excited to see this project wrapped up!

And I’m very keen to see how you get the alarm signal out of the fire alarm :smiley:

Liam

2 Likes

I have ordered some optocouplers today PC815, so I am stuck for a week or so till they turn up.

I actually put an optocoupler in a spare smoke alarm at one point but I found that it wasn’t working as I envisaged it was not reliable, it may have been the wrong optocoupler for the job it was a 4N25.

More recently I tried using a couple of boards that detect sound
LM393 sound digital Sensor )
2 microphone sensor
I had some success with that but neither the wife nor the dog liked me testing it so I am waiting for a opportune time to continue.

cheers

2 Likes

I can now wake up the Gravity device by saying “hello robot” then I say “panic” and the panic led connected to the sending D1 mini will light, a message is sent to the receiving D1 mini which lights it’s panic led and a signal sent to the transistor to create a circuit to ground so that the alarm monitor UNO can trigger an event, or, press the panic button

I went to the Arduino forum for a bit of help in regard to interconnecting the D1 minis and UNO and was helped very quickly with two alternatives , voltage divider and transitor, or , optocouplers. Went with the first because I had those on hand.

Arduino forum jim-p had suggested a TN3904 but I used a 2N2222 because I had one and not the other.

The plan is to have the sender in the kitchen and the receiver in the garage with the alarm monitor,

I have to tidy up my code but should anyone want it, scream, and I shall make it available.

My testing went something like this, me “hello robot” robot “yes I am here” me “panic” me “expletive” me “PANIC” me “expletive” me “panic” robot “ok”

So if I am in a panic I shall have to speak very clearly, I might need a few different recordings of “panic”

3 Likes

It’s a noble idea, and keeps communities looking out for each other. Respect

Is the drive current suitable for the optocoupler? ie. is there a resistor in-line to limit current? Or is that not a concern for the source signal (smoke alarm)

Thanks for your continued updates @Malcolm - this is a novel idea and there are plenty of lessons and tricks wrapped up in this project that others can learn from and apply. Please consider submitting a project once you’re over the 80% mark :smiley:

3 Likes

I had a go at minimizing my voice hardware and used an old vitamin container and bit of nylon cutting board to make a “pretty” counter top device. An old 12v DC transformer drives the UNO which powers the D1 mini and the gravity device, I tried a 9v transformer but not enough grunt.

It works well enough until I put into the lounge room and if the TV is on the device does not work particularly well.

Wake up word is “lurch”, and there are two trigger words “panic” and “fire”, both work for me in a quiet room with me as far away as three metres but in the lounge room with the TV on lucky to get a 10% acceptance of commands. “fire” is the better command word as it works quite well whether I or my wife say the word, “panic” is not recognised as well as “fire”.

I expect that my final solutions is going to be a D1 mini with a panic button, and I shall abandon speech. The gravity device has been fun but it is not reliable enough to use for a safety device.

2 Likes

Good one. Please update us when you add the Gravity Voice recognition module.

1 Like