The country house alarm system
The country house alarm system
Introduction
The wireless (GSM) home security alarms have two main drawbacks:- The system requires the timely battery replacement.
- The wireless signal can be jammed.
The hardware
The hardware is very simple, and it is based on the W5100S-EVB-Pico board. The figure below describes the hardware in details: Hardware description As you see above, the hardware does not require any additional electronics components. The alarm sensors outputs connect to GP14 and GP15 pins of the W5100S-EVB-Pico board. The firmware configures the internal pull-up resistors in RP2040 for the GP14 and GP15 pins: Pull-up resistors So we do not need the external resistors for our sensors.Amazon AWS services
Before using this project, you should have the Amazon AWS account and create the resources in AWS IoT. The WIZnet website has the good manual for this: Getting Started with AWS IoT Core.Firmware
The firmware is simple. It is based on the sample project aws_iot_mqtt which is available on the WIZnet website: https://github.com/Wiznet/RP2040-HAT-AWS-C/tree/main/examples/aws_iot_mqtt The modified firmware is attached in the DOCUMENTS files section below.How to use the attached firmware
The firmware configures GPIO pins for sensors, the network and DHCP protocol, setups the certificate, initializes the MQTT transport. Then it makes the connection to the MQTT broker and subscribes to the MQTT topic. After that, the code in while() loop reads the sensors and publish sensors data to the MQTT topic on the AWS cloud. Additionally, I have configured the LED on the W5100S-EVB-Pico board to blink. This LED is also useful for debug purposes. Note, you should replace the root certificate, client certificate and private key in the mqtt_certificate.h file. You should have them when you created resources in AWS IoT. Also modify MQTT_DOMAIN, MQTT_PUB_TOPIC, MQTT_SUB_TOPIC and MQTT_CLIENT_ID.Mobile application
The Mobile application connects to the AWS cloud and subscribes to the topic on the MQTT broker, where data from alarm sensors is available. It shows the status of each sensor. The Android Studio project is attached. Mobile phone application It is based on the Android Studio project from there: https://github.com/felipemeriga/aws-sdk-android-samples. I used the AndroidPubSub project and modified it for my purposes. You need to download Android Studio to modify this project.-
AndroidPubSub_v1_0
The Android Studion project for the Mobile phone application
-
AWS_IOT_MQTT example
Modiified AWS_IOT_MQTT example
-
Basic Schematics
Used the existing W5100S-EVB-Pico with the external sensots
-
System Schematics
System Schematics
-
Hardware
Hardware description
-
Pull-up resistors
Pull-up resistors in the RP2040
-
W5100S-EVB-Pico
W5100S-EVB-Pico description
-
Mobile phone application
The mobile phone application printscreen