{"id":21078729,"url":"https://github.com/bchoubert/electric-dashboard","last_synced_at":"2025-03-14T04:13:47.581Z","repository":{"id":90191562,"uuid":"76177800","full_name":"bchoubert/electric-dashboard","owner":"bchoubert","description":null,"archived":false,"fork":false,"pushed_at":"2016-12-16T11:20:15.000Z","size":2,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-11T13:53:00.712Z","etag":null,"topics":["polytech-lyon"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/bchoubert.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":"2016-12-11T14:00:53.000Z","updated_at":"2017-08-28T21:45:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"cee1925f-1954-42b9-8dfb-9b30b69f5987","html_url":"https://github.com/bchoubert/electric-dashboard","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bchoubert%2Felectric-dashboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bchoubert%2Felectric-dashboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bchoubert%2Felectric-dashboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bchoubert%2Felectric-dashboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bchoubert","download_url":"https://codeload.github.com/bchoubert/electric-dashboard/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243521287,"owners_count":20304187,"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":["polytech-lyon"],"created_at":"2024-11-19T19:42:07.529Z","updated_at":"2025-03-14T04:13:47.547Z","avatar_url":"https://github.com/bchoubert.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# electric-dashboard\n\nThe electric dashboard is an IOT schol project.\nWe had to use some imposed techologies and to develop interface parts.\n\n# Hardware\n\nThe hardware consists of an electric meter with an impulsion counter X-Devices.\nThis counter has an HTTP interface to request counter numbers.\nThe final product is also composed of a web interface built with Grafana on an InfluxDB database.\nThe middlehardware is a Raspberry Pi B+, which requests the HTTP interface of the counter and push the data on the server with a MQTT Topic (driven by Mosquitto).\n\n# Technology choices\n\nThe mandatory parts of the project (Database, Customer views, transfer to server) are pretty adapted to the project :\n* The database, InfluxDB, is perfect to store data that don't need to be change. For an electric consumption monitoring, that's perfectly that we needed to insert new reports from the electric meter.\n* The customer interfaces were made with Grafana. It's a powerful tool to build graphs, derivated functions and monitor data.\n* The middle communication, Mosquitto, is the perfect tool to push to a public server data from local network. It's also an efficient tool that don't store data (it transmits directly message from sender to subscribers).\n\n# Implementation\n\nOn InfluxDB, we opened an account with a database.\nNext, we created an admin user and a dashboard on Grafana.\nAfter the opening of a new Mosquitto topic, we developed a Python program which suscribes to our Mosquitto topic and insert new lines to the database.\nAlso, we developed a Python script that fetch the HTTP service from the electric counter and publish it in the Mosquitto topic. This script is launched every minute with Cron.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbchoubert%2Felectric-dashboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbchoubert%2Felectric-dashboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbchoubert%2Felectric-dashboard/lists"}