devices.esphome.io
IoT-devices GGreg20_V3 module
IoT-devices GGreg20_V3 module
Device Type: sensorElectrical Standard: globalBoard: esp8266
GGreg20_V3 Ionizing radiation detector module
Geiger-Mueller tube: SBM20
Input voltage: 2.2V - 5.5V
Tube Voltage: 400V
Sensor-side interface: pulse output
MCU-side interface: GPIO with pulse counter
GGreg20_v3 is compatible with the ESP8266/ESP32 logic signal levels (3V3 ACTIVE-LOW: 3.0-3.3V HIGH and about 0.7V LOW), and will work even with the 5V logic input. Sensor compatibility: any ESP8266- or ESP32- powered device
Vendor site: https://allmylinks.com/iot-devices
Connection
For example, it could be GPIO0 (D3). This pin is convenient because it has a built-in Flash button in most devices and boards based on the ESP8266 module - in case you need to check how the controller counts pulses without a sensor, it is possible to simulate pulses with a button.
Powering from a 2.4V input source
If you want to power the GGreg20_V3 from a 2.4 volt source, you need to short the Schottky diode shown in the photo with a wire or replace it with a 0 ohm resistor. Note, however, that such a correction will disable the module's reverse polarity protection:
      
  
        
Basic Configuration
esphome:  name: esphome_node1 # Controller Unique Name
esp8266:  board: nodemcuv2 # Controller type you have to select when creating new yaml-config in ESP Homewifi:  ssid: "YourWiFiSSID"  password: "SSIDPassword"  # Enable fallback hotspot (captive portal) in case wifi connection fails  ap:    ssid: "Esphome Node1 Fallback Hotspot"    password: "Cpxg9hRIBU7M"captive_portal:# Enable logginglogger:# Enable Home Assistant APIapi:  encryption:    key: !secret encryption_key
ota:  password: "OTApassword"# Just embedded test D3 (GPIO0) button on every ESP8266 Devboard# You can press D3 button several times to simulate incoming GGreg pulsesbinary_sensor:  - platform: gpio    name: "D3 Input Button"    pin:      number: 0      inverted: True      mode: INPUT_PULLUP# Here we calc and include to the firmware a power and doze values of ionizing radiation as sensor outputssensor:  - platform: pulse_counter    pin: D3    unit_of_measurement: "mkSv/Hour"    name: "Ionizing Radiation Power"    count_mode:      rising_edge: DISABLE      falling_edge: INCREMENT    update_interval: 60s    accuracy_decimals: 3    id: my_doze_meter    filters:      - sliding_window_moving_average: # 5-minutes moving average (MA5) here          window_size: 5          send_every: 5      - multiply: 0.0054 # SBM20 tube conversion factor of pulses into mkSv/Hour  - platform: integration    name: "Total Ionizing Radiation Doze"    unit_of_measurement: "mkSv"    sensor: my_doze_meter # link entity id to the pulse_counter values above    icon: "mdi:radioactive"    accuracy_decimals: 5    time_unit: min # integrate values every next minute    filters:      - multiply: 0.00009 # obtained doze (from mkSv/hour into mkSv/minute) conversion factor: 0.0054 / 60 minutes = 0.00009; so pulses * 0.00009 = doze every next minute, mkSv.