DIY Emergency Button for Service Dogs

by jonathanengels in Circuits > Assistive Tech

259 Views, 2 Favorites, 0 Comments

DIY Emergency Button for Service Dogs

Hachiko Knop finaal.jpg
Leen-Van-de-Sande_De-Nayer-knop-meldhond 3.jpg
IMG_20251006_143227.jpg
Mainpicture.jpg
IMG_20251105_150145.jpg

Together with Hachiko vzw, we (Makerspace De Nayer) developed a budget-friendly smart alarm button that allows (service) dogs to independently call for help for their owners when something goes wrong. When activated, an emergency text message is sent to one or more persons who can assist the owner. The button can also be used outdoors and automatically sends its exact location through GPS, so first responders know exactly where to go. Furthermore, the first responders can reply with SMS to the button which triggers a feedback signal so the person in need knows somebody is coming to help. Thanks to the dovetail connection, the mounting system is fully interchangeable: wall mounting, wheelchair mounting, etc., all possible. It also runs entirely autonomously on a battery, which can last up to 200 days before needing a recharge! Perfect for outside activities and gain back again some extra freedom and security! With a total cost of around €60, it is also a cheap alternative to current alarm systems.


To make this, all you need is a 3D printer, some basic electronics and fasteners. The button can be used in different situations and for other target groups as well. Which one do you also think about? Let us know! :)

Supplies

IMG_20251006_134331_002.jpg
IMG_20251006_134523.jpg
IMG_20251006_135509_002.jpg

You will need following components, tools and machines to create this awesome button:

Components

  1. 4x // DIN 912 M3x16mm screws
  2. 2x // DIN 912 M3x20mm screws
  3. 2x // DIN 934 M3 nut
  4. 2x // DIN 912 M6x16mm screws
  5. 4x // PH screw 1,5 x 6mm (If this is not available at your hobby store, just change 3D print file.)

Electronics:

  1. 1x // LED 5mm
  2. 1x // 82Ω resistor (for LED)
  3. 1x // 3 V Active Piezo Buzzer Alarm Sensor
  4. 1x // LilyGo T-SIM7670G - ESP32S3 Microcontroller (inclusive GPS and network antenna)
  5. 1x // Molex 18650 Li-ion battery 3500mAh
  6. 1x // Microswitch (Long lever)
  7. 1x // Female Jack plug 10x3.5mm stereo audio connectors OR small built-in rocker switch
  8. 1x // USB-A to USB-C cable
  9. 8x jumper wires
  10. 1x Nano SIM card


Tools

  1. 1x // Allen key 2,5mm
  2. 1x // Allen key 4mm
  3. M3 & M6 tap
  4. Solder iron + Solder
  5. 3D printer (at least 180x180mm build plate)
  6. PETG filament (Black, white, something translucent)
  7. Superglue
  8. Multimeter

Case 3D Printing + Tapping M3 / M6

IMG_20251006_134331_002.jpg
Dimensions Dove tail connection.jpg

First start with printing al the parts to make the case. Everything is 3D printed, no special components are required. It is advised to print lever in a contrast color compared to the case, dogs can see the difference better that way. Blue and yellow are the most visible colors for dogs, so experimenting with for example a yellow case and blue button will also help the dog!

Also, for the led, best result is printing with translucent PETG. (We used dual color : White (for the paw icon) in combination with light blue translucent PETG)

We used a Bambulab A1 mini printer which does the job pretty well! Of course similar printers are possible.

To print:

  1. 1x Top cover
  2. 1x lever
  3. 1x Base
  4. 1x Led display insert
  5. 1x Wall fix
  6. 1x Tube fix (in case of wheelchair connection, or can also be used to hang at backpack,...)

To Tap:

  1. 4x M3 in the Top cover case connections
  2. 2x M6 in the Base (for the lever connection)

Solder All Hardware

2x16pins solder.jpg
AllGND to microswitch.jpg
Circuit connections.jpg
IMG_20251013_111459.jpg
IMG_20251006_134523.jpg
IMG_20251013_111522.jpg
IMG_20251006_135509.jpg
  1. Start with soldering the 16pin connectors (2x) to the microcontrollerboard. This makes connections easier later on in the process.
  2. Solder to the COM side of the microswitch the GND from buzzer and LED (short leg) and a jumper wire which goes to the GND of the microcontroller.
  3. Solder LED (long leg) to the 82Ω resistor and than through a jumper wire to GPIO15 of microcontroller.
  4. Solder Buzzer through a jumper wire to GPIO2 of microcontroller
  5. Solder 2 jumper wires to the Jack or rocker switch and connect this to the GND on the right side of microcontroller and the other to GPIO1 (should be underneath each other which will be handy later on when connecting the top cover as a last step to the rest of the case)

Try to cover all soldered parts with electrical tape to avoid short circuit!

Assemble the Electronics Into the Case

Battery switch on.jpg
IMG_20251013_111531.jpg
IMG_20251013_111538.jpg
IMG_20251006_142211.jpg
  1. Plug in the battery inside the microcontroller, also make sure the slider switch at the left of the microcontroller is slided to the top, this makes sure the build in battery is active!
  2. Attach the microcontroller with 4 screws 1,5x6mm to the 4 pillars inside the case.
  3. Attach the SIM card (open metal slider) --> Also don' t forget to activate your SIM card and unlock PIN Code authorization via a phone.
  4. Attach the GPS antenna and the LTE antenna to the microcontroller. You can fix the GPS antenna in place with a soldering iron. The LTE antenna can slide underneath it.
  5. Connect the LED and buzzer into the two front holes, if you want you can use super glue, not necessary.
  6. Connect the microswitch to the case with two M3 x 20mm screws with M3 nuts.
  7. If you did not do it yet, connect all jumper wires to the input pins on microcontroller (see step 2) and according to the arduino code.

Prepare the Top Cover

IMG_20251013_155442.jpg
IMG_20251013_155541.jpg
IMG_20251013_155601.jpg
IMG_20251006_134921.jpg
IMG_20251006_134949.jpg
IMG_20251006_142211.jpg
  1. Attach the LED 3D printed display to the case, use of superglue is recommended.
  2. Attach the jack or switch to the case.
  3. Connect both jumper wires to the microcontroller (see step 2)

Install the Lever

IMG_20251007_120049.jpg
IMG_20251007_120054.jpg
IMG_20251013_111511.jpg

Connect the lever with the 2 M6 screws. Do not tighten it too hard, otherwise lever could be a bit stiffer to operate. Test it thoroughly before closing the whole with the cover.

Arduino Code Upload

DownloadZIP.jpg
libraries arduino.jpg
folder upload sketch.jpg
Arduino settings.jpg
Arduino Code changes.jpg

If you don' t have it on your PC yet, download Arduino.IDE software. Open the Arduino code in Arduino.IDE. Change the telephone number to your contact person in case of emergency who needs to get the sms message:

#define SMS_TARGET "+YYXXXXXXXXX"

--> With YY: The land code (eg: Belgium is 32)

--> With XXXXXXXXX: the rest of the telephone number. (To add more contacts, see picture in attachment)


Upload the code!


Some important things to pay attention to:

  1. Install the complete folder (also with "utilities.h" file) in your C:\\ --> documents --> Arduino --> Sketches folder
  2. Download from github the complete folder for T-SIM7600X --> copy paste all libraries from the downloaded folder to your Arduino --> Libraries location.
  3. Download the ESP32 Dev Module in your board manager (Arduino).
  4. Make sure your settings are according to what is required following github documentation! (see picture in attachment)
  5. UPLOAD the code! (Make sure your COM port is correct) also try booth and reset button if not uploading immidiately.
  6. After the code is uploaded, sometimes it is necessary to push one time the reset button on the microcontroller. If you put the switch in training mode, you can easily see if it worked!

Final Assembly

IMG_20251013_111216.jpg
IMG_20251007_120239.jpg
IMG_20251006_143212.jpg
IMG_20251105_150145.jpg
IMG_20251017_141251.jpg

After testing if everything works properly it is time to close everything!

  1. Connect the top cover to the base with 4x M3x16mm screws and allen key 2,5mm.
  2. Make sure the wires of the jack switch are underneath the lever!
  3. Install your preferred fixation system to wall, wheelchair,...


Yay! Your emergency button is ready to use! Let' s hope you will not use it that much...

How to Use?

IMG_20251020_113349.jpg
IMG_20251020_113401.jpg
Overview prototypes.jpg
SMS confirmation.jpg

Yes, it seems straight forward but still it is interesting to explain how the emergency button works:

  1. Training: if the pin is inserted in the jack (left side) or if you use a regular switch, the '0' setting is applied. Training means: if the dog pushes the button, a beep / led signal of 5 sec will occur, NO sms will be send in this situation, good to train your dog in the beginning.
  2. Live mode: if the pin is removed from the jack or the regular switch is 'I' position. When dog pushes the button now, it will give the same beep / led signal for 5 sec. but afterwards the button can' t be pushed until the emergency SMS is send. GPS is trying to find a fix for 60sec, if not found --> location not available sms. If found --> a openstreetmap link will be send. The receiver can now confirm with the code and a feedback beep sound will start. After the feedback sound is finished, the button can be pushed again.


If you want to personalize your button, we made some other examples of possible button designs ;)

Good luck!