Sensor servers for Telecom Box
Project description
Sensor API for the Raspberry Pi
The Sensor API for the Raspberry Pi is a web service that give access to environmental information of a Raspberry Pi. It uses the sensors of the Sense Hat as well as the internal CPU thermometer.
It returns the information as a JSON structure:
{
"C": 50.464,
"H": 39.45915603637695,
"P": 941.78369140625,
"T": 34.720176696777344
}
- C is the CPU Temperature (in °C)
- H is the Humidity (in %rH)
- P is the Barometric Pressure (in Millibars)
- T is the Ambient Temperature (in °C)
Installation
Install the required software:
sudo apt update
sudo apt install sense-hat libatlas-base-dev libopenjp2-7-dev gunicorn3
Install the app:
sudo pip install heiafr-hydrocontest-sensor_api
Running
If you want to test the service you can just start it localy using gunicorn:
gunicorn3 heiafr.hydrocontest.sensor_api:app
You can now go to http://127.0.0.1:8000 and check the result.
In a production environment, you would rather start the service using systemd and use a reverse proxy (e.g. Nginx) in front of it.
You can use this systemd service file (you can name it heiafr-hydrocontest-sensor_api.service
):
[Unit]
Description=HEIAFR Hydrocontest Sensor API
After=network.target
[Service]
User=root
Group=root
ExecStart=/usr/bin/gunicorn3 --bind=0.0.0.0:8081 heiafr.hydrocontest.sensor_api:app
[Install]
WantedBy=multi-user.target
This is a possible Nginx configuration:
location /sensors {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8081/;
proxy_read_timeout 90;
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for heiafr-hydrocontest-sensor_api-1.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 89cf2c346320a2cd7055ef51b3746b236a3161ce94ea9984b2f65f3a7b2dc302 |
|
MD5 | a41dba77733de636e732fe9cccd10ba2 |
|
BLAKE2b-256 | a937586bc649becc129d6a18f7c4d3d03793129f5640d6730626506b25ee94bf |