Telemetry API
goal / problem solved | ποΈObservability of bee colony |
---|---|
Status | In development |
billing plan | 4-iot-sensors |
verticality | horizontal |
concept hierarchy path | analytics |
Blocking | πAnalytics with grafana |
Date | |
Priority | 6 |
Tasks | telemetry-api: setup MQTT broker server |
estimate | 5 |
impact = priority % | 30 |
Assigned to | Ahmed Daoudi, Artjom Kurapov |
Tags | IoTbackend |
Why this is needed
We want our devices as well as customerβs own hack-projects to be able to stream data to us so that
- beekeepers can track their apiaries in πAnalytics with grafana dashboards
- beekeepers can correlate data to get insights
- we can generate β οΈAlerts
Low volume metrics that ποΈβπ¨οΈEntrance Observer can send to π±Web-app
- temperature (min interval - 10 min)
- humidity (min interval - 10 min) - see π§Humidity monitoring
- weight (min interval - 10 min) β πBeep.nl weight telemetry integration
- bee counts at the hive entrance (min interval - 10 sec)
- how many worker bees have gone in and out
- how many of them had varroa mite
- how many of them had pollen
- how many guard bees are detected
- how many drone bees are detected
- how many queen bees are detected β πDetect queen mating from entrance video
- how many worker bees have gone in and out
- hornet count (min interval 10 sec) β β οΈHornet attack detection
- audio noise average volume (min interval - 1 sec)
- this should not be confused with actual audio stream that would be sent with π€6-channel audio monitoring as part of π§ΏRobotic Beehive, because ποΈβπ¨οΈEntrance Observer has limited amount of USB ports so we canβt have mics there
AC
- provide a flexible graphQL API in telemetry-api to store timeseries metrics
- store this data into timeseries DB, ex. InfluxDB. Alternatively maybe look at prometheus. If too hard, fallback to MySQL.
- play with πAnalytics with grafana to be able to display graphs