Skip to main content

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;
}

Release files for heiafr-hydrocontest-sensor_api 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for heiafr-hydrocontest-sensor_api 1.1.1
File Size Uploaded
heiafr-hydrocontest-sensor_api-1.1.1.tar.gz 3.0 kB Details

Release files / heiafr-hydrocontest-sensor_api-1.1.1.tar.gz

Download URL heiafr-hydrocontest-sensor_api-1.1.1.tar.gz
Size 3.0 kB
Tags Source
SHA-256 checksum
How to use checksums
89cf2c346320a2cd7055ef51b3746b236a3161ce94ea9984b2f65f3a7b2dc302
BLAKE2b-256 checksum
How to use checksums
a937586bc649becc129d6a18f7c4d3d03793129f5640d6730626506b25ee94bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.1.1 This release

1 release file

1.1.0

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page