IoT Projects
IoT Projects
IoT Projects
Hardware:
1. LED
2. 2 jumper wires (female-male)
3. Raspberry Pi
4. Device with web-browser (smartphone/laptop/…)
Description:
Run a web-server on RaspberryPi that controls RPi’s I/O devices. You can run a web server of your
own choice on RPi (i.e. Apache).
You can implement the above mentioned functionality of the web page e.g. by executing a python
script ‘turnon.py’ when ‘ TURN ON’ button is pressed, where python script implements controlling
the RPi’s pins in a way that turns the LED on. Another python script can be used for implementing
turn off functionality upon respective button press, and another for blinking. Spend minimal time
implementing the webpage (PHP), design is not important, only the functionality. To implement
the GPIO controls, you can use python RPi.GPIO library (https://pypi.org/project/RPi.GPIO/).
You should be able to access the RPi webserver from your device (smartphone/laptop) by
entering RPi’s IP address in a browser.
Use jumper wires to connect LED to RPi’s unused pins of choice. Beware of LED polarity (ground
and phase).
Project 2: Intruder detection
Detect unwanted presence and sound an alarm
Hardware:
1. Distance sensor HC-SR04
2. LED
3. Jumper wires
4. RaspberryPi 2x
Software:
1. Mosquito MQTT server/broker (https://test.mosquitto.org/)
Description:
Create a setup that allows a Raspberry Pi (1) to send data to another Wi-Fi compatible board
(RaspberryPi (2)), using MQTT (Message Queuing Telemetry Transport). The sender device,
publishes a message to a broker service, which then can be subscribed to by a receiver device.
Sender device should have motion sensors connected to its GPIO and read data from the motion
sensor periodically. Once presence is detected, sender device should publish that information to
the broker. Receiver device should be subscribed to the MQTT topic on the broker and receive the
information on intruder presnet. Receiver device should then ‘raise an alarm’ by blinking the LED
(0.5on and 0.5s off) for as long as obstacle is detected by the sensor.
Project 3: Fire detection
Detect fire and visualize it on subscriber
Hardware:
1. Flame KY-026 sensor
2. Raspberry Pi
3. LED
4. Jumper wires
Software:
1. MQTT
2. Node-RED
Description:
Create a setup that allows a Raspberry Pi board to send fire sensor data to your laptop, using
either MQTT (Message Queuing Telemetry Transport). The sender device (Raspberry Pi), publishes
a message to a broker service on RaspberryPi, which then can be subscribed to by a receiver
device (MQTT client on PC) that uses Node-RED dashboard to visualize the data received (draws
a chart).
Consider using python for configuring MQTT end-nodes and consider sending data in JSON
format over MQTT for ease of visualization.
Project 5: Heartbeat monitoring
Monitor your heartbeat online
Hardware:
5. Heartbeat sensor KY-039 (https://www.arduinocircuit.com/ky-039-heartbeat-sensor-
module-with-arduino/)
6. 2 Raspberry Pi boards
7. Jumper wires
Software:
3. MQTT
4. Node-RED
Description:
Create a setup that allows an Raspberry Pi board to measure and send heartbeat data to another
Wi-Fi compatible board (RaspberryPi), using MQTT (Message Queuing Telemetry Transport). The
sender device, publishes a message to a free public MQTT broker. Receiver device is subscribed
to the aforementioned broker. Use Node-RED dashboard to visualize the data received (draw a
chart of both temperature and humidity).
Consider using python for configuring MQTT end-nodes and consider sending data in JSON
format over MQTT for ease of visualization.