Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mkgeiger/mqtt-geiger-counter
This project is based on my older Geiger Counter project on the same hardware. It converts the hardware in an MQTT client.
https://github.com/mkgeiger/mqtt-geiger-counter
arduino async-mqtt-client async-tcp cpm esp8266 geiger-counter high-voltage iot mqtt theremino wifi
Last synced: 22 days ago
JSON representation
This project is based on my older Geiger Counter project on the same hardware. It converts the hardware in an MQTT client.
- Host: GitHub
- URL: https://github.com/mkgeiger/mqtt-geiger-counter
- Owner: mkgeiger
- Created: 2021-01-19T20:03:53.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2021-01-31T16:43:09.000Z (about 4 years ago)
- Last Synced: 2024-11-13T15:20:19.998Z (3 months ago)
- Topics: arduino, async-mqtt-client, async-tcp, cpm, esp8266, geiger-counter, high-voltage, iot, mqtt, theremino, wifi
- Language: C++
- Homepage:
- Size: 753 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MQTT Geiger Counter
## Overview
In this project you will see how to build a MQTT client on base of an ESP8266 to measure the local gamma dose rate. I preferred to integrate my older Geiger Counter project (see https://github.com/mkgeiger/geiger-counter-iot) into my MQTT cloud. For that I am reusing the older hardware without any modifications. It will be used then only for long term measurements. Changes are affecting only the software, which will completely re-written to make it MQTT capable.## Hardware design
### Schematic
Please refer to my other project: https://github.com/mkgeiger/geiger-counter-iot/blob/master/README.md#high-voltage-booster. In a second revision I replaced the high voltage circuit with the Theremino Geiger adapter, which is smaller and supplies a much more stable high voltage output. Documentation for this module can be found under https://www.theremino.com/en/technical/schematics#geigeradapter. An external resistor of 100kOhm at the signal output shifts the logical level from 5V to 3.3V.
![MqttSetup](/ThereminoGeiger.png)### ESP8266 controller board
Please refer to my other project: https://github.com/mkgeiger/geiger-counter-iot/blob/master/README.md#nodemcu-esp8266-12e### Sensor
Please refer to my other project: https://github.com/mkgeiger/geiger-counter-iot/blob/master/README.md#gm-tube## SW-update
SW-update is done via USB cable.## SW installation and SW build
Following steps need to be done first:
1. install Arduino IDE 1.8.1x
2. download and install the ESP8266 board supporting libraries with this URL: http://arduino.esp8266.com/stable/package_esp8266com_index.json
3. select the `NodeMCU 1.0 (ESP-12E Module)` board
4. install the `Async MQTT client` library: https://github.com/marvinroger/async-mqtt-client/archive/master.zip
5. install the `Async TCP` library: https://github.com/me-no-dev/ESPAsyncTCP/archive/master.zip
6. config (see next chapter), compile and flash## SW configuration
The configuration is completely done in the web frontend of the WifiManager. At first startup, the software boots up in access point mode. In this mode you can configure parameters like
* Wifi SSID
* Wifi password
* MQTT broker IP address
* MQTT user
* MQTT password## SW normal operation
The software counts the ticks produced by the gamma tubes within measurement cycles of 10 minutes. The software publishes after each measurement cycle to 2 MQTT topics: Counts Per Minute [CPM] and the derived ionizing radiation dose [μSv/h]. Also the software supports re-connection to Wifi and to the MQTT broker in case of power loss, Wifi loss or MQTT broker unavailability. The MQTT topics begin with the device specific MAC-address string (in the following "A020A600F73A" as an example). This is useful when having multiple controllers in your MQTT cloud to avoid collisions.Publish topics:
* Topic: "/A020A600F73A/cpm" Payload example: "22.50"
* Topic: "/A020A600F73A/usvph" Payload example: "0.1234"