ESP32 Fall Detector

by Arduino_having11_Guy in Circuits > Assistive Tech

2402 Views, 3 Favorites, 0 Comments

ESP32 Fall Detector

DSC_0344.JPG

I would like to thank DFRobot for sponsoring this project.

Here is a list of the parts used:

DFRobot ESP32 ESP-WROOM Module ×1 - https://www.dfrobot.com/product-1559.html

Silicon Labs CP2102 USB to UART Bridge ×1

MCP73831 Li-Ion Charger IC ×1

LM317BD2T Adjustable Regulator ×1

0805 4.7uF Capacitor ×2

0805 100nF Capacitor ×1

0805 1uF Capacitor ×1

WS2812b LED ×1

1206 LED ×4

Micro USB Connector ×1

0805 470 ohm Resistor ×1

0805 2k ohm Resistor ×1

0805 510 ohm Resistor ×1

0805 300 ohm Resistor ×1

0805 10k ohm Resistor ×2

0805 270 ohm Resistor ×2

6mm x 6mm Pushbutton ×2

SMD 6mm x 6mm Tall Pushbutton ×1

Previous Project

DSC_6525.JPG
DSC_6527.JPG
image2.png

Back in August of 2017, I imagined a device that could alert users if one of their loved ones experienced a fall or pressed a “panic” button. It used an ESP8266 and was assembled on a piece of perf-board. It had a single LED that would indicate if a fall had occurred. The device also featured a very basic LiPo charging circuit that had no indicators.

New Idea

DSC_0331.JPG
DSC_0332.JPG
PIC006.JPG
PIC008.JPG

Since my last fall detector was so rudimentary, I wanted to make drastic improvements. The first one was making it USB programmable, so I used a CP2102 USB to UART converter IC to handle the USB to UART serial connection.

I also wanted there to be more indications of the operations, so I added an LED for charging, one for power, and two for the USB status. I chose to use an ESP32 due to its increased power and Bluetooth connectivity, which can allow for future expansion, such as an accompanying app.

PCB Design

DSC_0329.JPG
DSC_0350.JPG
board.png
board_schematic.png

All these new features would require a lot of additional circuitry, and a simple piece of perf-board would not cut it. This required a PCB, which I designed in EagleCAD. I began by laying out the connections with their schematic editor. Then I moved onto making the actual board and traces.

Soldering

DSC_0340.JPG
DSC_0348.JPG
PIC000.JPG
PIC001.JPG
PIC004.JPG
PIC005.JPG

This was the most difficult part because of the fine-pitched pins. The hardest component to solder was the CP2102, which comes in a QFN-28 package. Each pin is just .5mm apart, and without a stencil, this was fairly tricky to attach. I solved this problem by applying a generous amount of liquid flux to the pads and then running a small amount of solder over the pins.

Usage

DSC_0345.JPG
DSC_0347.JPG

The device works by checking the acceleration measured by the MPU6050 at set intervals. Once it detects a fall, it sends an email to a set contact. I have found out that the battery lasts about three days, so it must be charged regularly. There is also a button that is connected to a hardware interrupt that can send an email when pressed.