Skip to content

smartuni/riot-po-2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RIOT im Internet of Things, Sommersemester 2025

Welcome to the primary repository of the RIOT im Internet of Things project for the Summer 2025 semester at HAW Hamburg. The project was concerned with designing, implementing and presenting technologies to improve the city of Hamburg's methods of managing its harbor's floodgates.

The Current Situation

Currently, the methods for ensuring floodgates are closed in the event of a flood are inefficient. Field workers receive orders, send updates and otherwise communicate with the central office via walkie-talkies. The central office relies on pen-and-paper record-keeping to log events, such as gates being opened or closed.

Our Proposed Solution

The solution proposed and developed by our team is as follows:

  • Floodgates will be fitted with sensors, called "GateMates," which autonomously report the state of the gate (open or closed) to a server located in the central office.
  • Field workers will be issued devices, called "SenseMates," which receive orders from the central office. SenseMates will also record the state of nearby gates by communicating with the GateMates, enabling workers to confirm or refute the state reported by the GateMate.
  • The workers at the office will be given a web app with a user interface, allowing them to track the status of gates in real time, as well as providing a digital record of the status of gates and allowing them to issue orders without the need for walkie-talkie communication.

Our proposed solution replaces the inefficient methods currently used by the city of Hamburg with fast and reliable digital methods, saving crucial time in the event of a flood.

How to start the project

SenseGate

  • Connect to Power
  • Wait until blue LED is on
  • Red LED indicates if door is open (LED off) or closed (LED on)
  • Blue LED indicates, if a state update is in progress (LED off).
  • There is a time runoff, which is triggered/restarted on any sensor input. When blue LED is on, the update is processed and sent via LoraWAN.

Deployment

Before flashing make sure signature keys are generated!

Testing

make all flash RIOT_CONFIG_USE_TEST=1

Production

make all flash RIOT_CONFIG_DEVICE_ID=<GATE_ID>

SenseMate

Startup

  • Use power switch
  • Wait until screen is ready

Deployment

Before flashing make sure signature keys are generated!

Testing

make all flash RIOT_CONFIG_USE_TEST=1

Production

make all flash RIOT_CONFIG_DEVICE_ID=<GATE_ID>

How to start frontend and backend

Requirements to Start the Frontend

  • nodejs installed
  • npm installed

Frontend StartUp

frontend StartUp

Backend StartUp

backend StartUp

Nodes

Overview

SenseMate

  • node carried around by workers
  • receive from and propagate data to other nodes via BLE-module
  • receive from and send data to server via LoRa-module

SenseGate

  • node attached to flood gates
  • receive from and propagate data to other nodes via BLE-module
  • receive from and send data to server via LoRa-module

Server

  • receive from and send data to nodes via LoRa-Module
  • display real-time accumulated data

Used Hardware

  • Board: Nordic nRF52840
  • Power Switch​
  • Battery​
  • Thumbwheel​
  • Navigation​
  • Display​
  • Soundbuzzer​
  • Vibrationmotor​

SenseMate is a battery-powered IoT device for monitoring and controlling floodgates. It communicates over BLE and LoRaWAN and provides tactile, visual, and acoustic feedback.

Key Features

Pinout Summary

Peripheral Connection Type MCU Pin
LoRa SPI SPI SCK / MOSI / MISO
LoRa CS GPIO D10
LoRa RST GPIO D9
LoRa IRQ (DIO0) GPIO D6
LoRa DIO1 / DIO2 GPIO D5 / D4
OLED Display I²C SDA / SCL
Thumbwheel Digital Inputs A0 / A1 / A3
Buzzer PWM/GPIO A2
Vibration Motor GPIO (via NPN) D3
Battery Voltage Analog Input A6

This document is intended for firmware developers. All components are prewired—just refer to the pinout and RIOT board support to begin implementing logic.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 17