{"id":20981876,"url":"https://github.com/matteocalvanico/embeddedproject","last_synced_at":"2026-02-06T02:33:16.445Z","repository":{"id":222504588,"uuid":"757453521","full_name":"MatteoCalvanico/EmbeddedProject","owner":"MatteoCalvanico","description":"A simple IoT project with a ESP32 and a web app to manage and check parking lots availability","archived":false,"fork":false,"pushed_at":"2024-11-28T07:57:42.000Z","size":3268,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-20T06:42:41.222Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatteoCalvanico.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-14T14:27:31.000Z","updated_at":"2024-12-04T15:06:43.000Z","dependencies_parsed_at":"2024-02-26T20:56:40.872Z","dependency_job_id":null,"html_url":"https://github.com/MatteoCalvanico/EmbeddedProject","commit_stats":null,"previous_names":["matteocalvanico/embeddeproject","matteocalvanico/embeddedproject"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoCalvanico%2FEmbeddedProject","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoCalvanico%2FEmbeddedProject/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoCalvanico%2FEmbeddedProject/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoCalvanico%2FEmbeddedProject/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatteoCalvanico","download_url":"https://codeload.github.com/MatteoCalvanico/EmbeddedProject/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234750612,"owners_count":18880916,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-19T05:41:20.819Z","updated_at":"2026-02-06T02:33:16.410Z","avatar_url":"https://github.com/MatteoCalvanico.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Embedded Project\n\n## by Matteo Calvanico, Giacomo Ghinelli, Filippo Monti\n\n### Traccia\n\nGestore di parcheggi che permette, tramite un’interfaccia web, di vedere quanti sono i parcheggi liberi all’interno dell’area apposita. Ogni parcheggio è provvisto di un sensore di prossimità che rileva l'auto e ogni volta che arriva/parte lo comunica al server.\nPossibile anche disattivare un parcheggio a distanza mandandolo in manutenzione.\n\n### Suddivisione cartelle\n\n- ESP32: contiene il file .ino per far funzionare il circuito, il link del progetto su Wokwi, le varie liberie e il diagrama del circuito;\n- web-app: contiene la parte back e front end della pagina per gestire e visualizzare i parcheggi.\n\n# MQTT server\n\nIl server mqtt è in ascolto in un istanza Ec2 di AWS.\n\nHost endpoint: a3gozzilrkv83v-ats.iot.us-east-1.amazonaws.com\n\n## Motivazioni scelta di utilizzare una Ec2\n\nUn obbiettivo del progetto era la comunicazione attraverso un broker MQTT.\nDovendo usare WokWi per simulare un esp tramite la connessione wifi sarebbe stato necessario configurare un router per indirizzare il traffico rete.\n\nInvece, avendo scelto di hostare il server su una vm cloud (ubuntu), abbiamo potuto creare una connessione tra il server ed i client tramite internet.\n\nE' possibile consultare la documentazione aws per l'inizializzazione di un server mqtt su istanza ec2 al [link](https://aws.amazon.com/it/blogs/iot/how-to-bridge-mosquitto-mqtt-broker-to-aws-iot/)\n\n### Connessione al server\n\nLa connessione al server necessità che il client dichiari uno user name ed una password che sono state configurate durante l'inizializzazione del server MQTT.\n\nInoltre per far in modo che la vm cloud accetti la connessione è necessario allegare alle richieste tre diversi certificati di sicurezza.\nQuesti certificati si trovano in una cartella drive condivisa tra i membri del progetto. Chiedere a giacomo.ghinelli@studio.unibo.it per l'accesso alla cartella.\nPer autenticare gli applicativi web-app/back-end ed ESP32/ è necessario:\n\n1. Copiare la cartella secrets scaricata dal drive in web-app/back-end/mqtt-subscription/\n2. Copiare il contenuto dei certificati dove appositamente indicato nel file ESP32/sketch.ino\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteocalvanico%2Fembeddedproject","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatteocalvanico%2Fembeddedproject","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteocalvanico%2Fembeddedproject/lists"}