frarzo / BeerProject

Project for my IoT's course

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BeerStation

Project for my IoT's course @UniUD.

This project was used for my Internet of Things' exam, and later for my bachelor degree's thesis.

I tried to implement as many things as possible I've learned to use during the course and using the ESP programmable boards I've previously played with.

Arzon Francesco - 142439

Folder Structure:

API folder contains the php server files used to create an API for the mobile application.
esp_programs folder contains the sketches loaded onto the ESP boards.
DB folder contains the tables for the database and some py files used to populate the database.
app folder contains the files and classes used to build the mobile app with Flutter.
thesis is the folder containing the thesis related files rasp_server.py is the Python server that runs on the Raspberry Pi.

Overview

A summed up view of the project's components interacting and the Use Case Diagram.

Brief tree folder view with the essential files
beerproject/
├─ thesis/
│  ├─ thesis.tex
│  ├─ thesis.pdf
│  ├─ presentation.ppt
│  ├─ img/
├─ certs/
│  ├─ ca/
│  ├─ broker/
│  ├─ rasp/
│  ├─ clientesp8266/
│  ├─ clientesp32/
├─ API/
│  ├─ login.php
│  ├─ register.php
│  ├─ resetdebt.php
│  ├─ getconsumazioni.php
├─ esp_programs/
│  ├─ others/
│  │  ├─ dump.ino
│  │  ├─ esp8266_write_card.ino
│  ├─ current/
│  │  ├─ esp32_rfid.ino
│  │  ├─ esp8266_card_to_tag.ino
│  │  ├─ pump.ino
├─ DB/
│  ├─ TABLES/
│  │  ├─ create_tables.sql
│  │  ├─ ER model.mwb
│  │  ├─ backup.sql
├─ app/
│  ├─ beerstation/
│  │  ├─ lib/
│  │  │  ├─ obj/
│  │  │  │  ├─ consumazione.dart
│  │  │  │  ├─ user.dart
│  │  │  ├─ screens/
│  │  │  │  ├─ homepage.dart
│  │  │  ├─ users/
│  │  │  │  ├─ login_screen.dart
│  │  │  │  ├─ register_screen.dart
│  │  │  ├─ main.dart
│  │  │  ├─ utils.dart
├─ docs/
│  ├─ app_images/
│  ├─ diagrams/
│  │  ├─ wiring/
│  ├─ icons/
│  ├─ Relazione IOT Arzon 142439.doc

App Screenshots:

Details

PHP server

cd ./beerproject
php -S 0.0.0.0:80

On RaspPi (or other local PC)

mosquitto
python rasp_server.py

The main programs to flash on the ESP boards are located in Arduino/current
Inside Arduino/others there is a sketch for writing userIDs on MIFARE 1K.

About

Project for my IoT's course


Languages

Language:C++ 42.9%Language:TeX 33.2%Language:Dart 12.4%Language:CMake 3.8%Language:PHP 2.5%Language:Python 2.0%Language:Jupyter Notebook 1.9%Language:HTML 0.7%Language:C 0.3%Language:Swift 0.3%Language:Kotlin 0.0%Language:Objective-C 0.0%