This project describes how to build simple radiation meter and connect it to internet. RadiationD-1.1(CAJOE) board with M4011 Geiger Tube is used as radiation sensor.
- RPi devices: Raspberry Pi Zero, Zero W, Zero 2W, 3, 4.
- 74HC14N - Hex Schmitt Inverter, transforming slowly changing input signals into sharply defined, jitter-free output signals.
- RadiationD-1.1(CAJOE) board Perform board calibration before use.
- Install Raspberry Pi OS Lite
- Copy files on Raspberry Pi device into directory
/opt/rpi-radiation-monitor
- Edit configuration file
rpi-radiation-monitor.json
. - Install and enable
rpi-radiation-monitor
as systemd service.sudo cp rpi-radiation-monitor.service /etc/systemd/system/ sudo chown root:root /etc/systemd/system/rpi-radiation-monitor.service sudo systemctl daemon-reload sudo systemctl enable rpi-radiation-monitor
- Start | Stop
rpi-radiation-monitor
service.sudo systemctl start rpi-radiation-monitor sudo systemctl stop rpi-radiation-monitor sudo systemctl status rpi-radiation-monitor
- Security HTTP Basic access authentication is used for all REST endpoints, credentials are set in config file.
- GET radiation measurements:
Example response. cpm = count per minute (last minute). Measurement values are recalculated after each pulse from detector. Normal background radiation (depends on your environment) should be between 0.3 - 0.1 μSv/h
curl -u client-001:Jah7thei --location --request GET 'http://<hostname>:<port>/api/v1/system/measurements'
{ "radiation": { "value": 0.1390728476821192, "unit": "uSv/h" }, "counter": { "cpm": 21, "total": 2463 }, "timestamp": 1653722329.4236865, "uptime": 6450.739503145218 }
- GET system info:
curl -u client-001:Jah7thei --location --request GET 'http://<hostname>:<port>/api/v1/system/info'
{ "id": "rpi-radiation-monitor-001", "type": "rpi-radiation-monitor", "version": "1.0.0", "name": "RPI Radiation Monitor", "timestamp": 1653722673, "uptime": 6793 }