Lab Temperature Monitor
Temperature monitoring, reporting and visualisation system.
Posted on Jun 13, 2025

About
This project is designed to continually record and store data about the system's physical environment.
The Data
The system periodically stores temperature data along with timestamps in an InfluxDB database. Due to the total size of the data being a number of bytes, the cloud hosted version of InfluxDB is suitable for deployment.
Accessing the data
Once connected to the internet, the system exposes a REST API route at /temp
. This returns a JSON object containing the current temperature, removing the need to query the database and providing the most up-to-date temperature.
The system also implements rate limiting to ensure it is not overloaded, sending an appropriate error if too many requests are made within a time period.
Visualisation
The system integrates with Grafana, both through the InfluxDB plugin for time-series data, and using the REST API for current data.