Alarm for deaf with with Surf5, WIZPoE-P1 and Edge ML module
A fire alarm sound detector for deaf.
Once Edge ML IC detected alarm, a message will be sent via the Internet connection provided by Surf5.
SOLOMON SYSTECH - Monochrome 0.96" 128x64 OLED Graphic Display
x 1
Introduction
This project demonstrates how to leverage WIZnet Surf5, WIZPoE-P1 and Edge machine learning (ML) module to implement an IoT platform with ML capability, powered by Ethernet cable (without AC adapter).
This project is targeted toward deaf individuals who are living in an apartment. It monitors sounds inside a building. If it detects a fire alarm sound, it sends an alert message to the user’s mobile device, signalling them to escape immediately.
WIZPoE-P1 provides 5V power to both Surf5 and Edge ML module. Surf5(W7500) acts as a main controller which provides Ethernet connectivity for sending an alert message to cloud. Edge ML module monitoring sound inside the apartment, it sends Surf5 an alert message if fire alarm sound is detected.
This platform can be expanded to support various applications by upgrading the ML models while keeping the power and controller circuitry.
The following hardware are required for this project:
1. WIZnet Surf 5 Board
2. WIZnet WIZPoE-P1
3. Coral Micro Board
4. I2C level shifter module
5. 0.96" I2C LCD module
6. A mobile phone with Whatsapp installed
The following software are required for this project:
1. WIZnet Surf5 SDK
2. Coral Dev Board Micro SDK
Getting Started
DO NOT connect USB cable to both Surf 5 Board and Coral Miro Board simultaneously. Otherwise, boards MAY be permanently damaged!
There are two projects, one for WIZnet Surf5 and the other one for Google Coral Micro Board. They are under subdirectories "src-surf" and "src-coral" respectively.
Build and flash alarm sound detection firmware on Coral Micro Board
- Install Coral Dev Board Micro
- Clone this repository by "git clone https://github.com/teamprof/surf5-alarm4deaf"
- copy the "surf5-alarm4deaf/src-coral" directory to the installed Coral SDK directory
- change to the directory "<Coral SDK>/src-coral"
- build firmware by typing commands
"cmake -B out -S ."
"make -C out -j4"
if everything goes smooth, you should see the following output
- flash firmware by typing command
"python3 coralmicro/scripts/flashtool.py --build_dir out --elf_path out/coralmicro-app"
if everything goes smooth, you you see the following output
- Disconnect USB cable between PC and Coral Micro Board, launch a serial terminal (e.g. GTKTerm) with 115200 8N1
- Connect USB cable between PC and Coral Micro Board, if everything go smooth, you you see the following output
- (IMPORTANT) Disconnect USB cable between PC and Coral Micro Board.
Build and flash Surf5 firmware
- Follow the instruction on WIZnet web site to install Surf5 SDK on VS code
https://docs.wiznet.io/Product/Open-Source-Hardware/surf5/getting-started/install-vscode-guide - Clone this repository by "git clone https://github.com/teamprof/surf5-alarm4deaf"
- copy the "surf5-alarm4deaf/src-surf5" directory to the installed Surf5 SDK directory
- change to the directory "<Surf5 SDK>/src-surf5"
- Follow the instruction on "https://www.callmebot.com/blog/free-api-whatsapp-messages/" to get APIKEY. Replace the "<MobileNumber>" and "<ApiKey>" values with your mobile number and the APIKEY got on step 5 in "secret.h".
- build the firmware by clicking the "Build" icon on VS code. If everything goes smooth, you should see the following
- Follow the instruction on WIZnet web site to download and install Surf5 ISP tool
https://docs.wiznet.io/Product/Open-Source-Hardware/surf5/getting-started/flashing-surf5 - flash the built Surf5 firmware via the ISP tool. If everything goes smooth, you should see the following
- launch a serial terminal (e.g. TeraTerm) to connect Surf5 at 115200 8N1. Click the "Reset" button on Surf5, if everything goes smooth, you should see the following
- plug-in Ethernet cable to Surf5. If Surf5 got IP address, you should see the following
- (IMPORTANT) Disconnect USB cable between PC and Surf5.
Complete demo
DO NOT connect USB cable to either Surf 5 Board or Coral Miro Board. Otherwise, boards MAY be permanently damaged!
- wiring between WIZnet Surf5 and Coral Micro Board according to schematic design
- short/close the jumper J5 to connect Surf5 5V to Coral Micro board 5V
- mount WIZPoE-P1 onto Surf5
- connect the Surf5 with an Ethernet cable to a PoE Hub. If everything goes smooth, you should see the following
Demo
Video demo is available on:
Software explanation in high level
Contributions and Thanks
Many thanks to the following authors who have developed great software and libraries.
-
surf5 alarm4deaf project
Surf5 alarm4deaf source code and hardware info
-
schematic
schematic