Radiation detector platform

Today I got one GGreg20_V3, and wrote a small app, that integrates it to HA via mqtt; all seems great.
Now, I want to put it outdoor, so only needs a 3d printable enclosure; does anybody has one? Please upload it to thingverse, if I can ask for it :slight_smile:
If noone reply, I would make a poor quality one (so bad at cad), so save the world from it if you can :smiley:

1 Like

For me too :slight_smile:

Hello @sakalauskas
Thank you for your integration. It seems that the URL https://rewidget.jrc.ec.europa.eu/v3/objects/point?id=LT21042 doesn’t work anymore. Do you know if they have updated the adress of the json ?

2 Likes

Stoped working for me also… what the heck EU is working…

I got some bad news… I just got an e-mail from EURDEP… they discontinued the widgets service.

If you choose the simple map on website: Radiological Maps - European Commission
Open the developer tools of your browser, go to network tab.

Click on the desired area.
On the network tab, you’ll see a lot of requests, but you’ll need the last with url polygon?id=XX_YY&zoom=Z…
If you zoom in a bit, you’ll get closer data, as the zoom variable increases.

Copy the id to this link, and you’ll get the result in HA in XML format.
https://remap.jrc.ec.europa.eu/api/maps/polygon?id=74_35&zoom=4

Example xml:

<MapInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/JRC.REM.EURDEP.Web.App.Map.Public.DAL.Controllers">
<Avg>64.79</Avg>
<Error i:nil="true"/>
<Max>64.79</Max>
<Min>64.79</Min>
</MapInfo>

For example see sakalauskas’s post up here. Check the rest sensor with te right url.

3 Likes

Here’s working snippet for Krakow, Poland (see previous post for the tips on polygon URL):

sensor:
  - platform: rest
    name: Radiation in Krakow
    resource: https://remap.jrc.ec.europa.eu/api/maps/polygon?id=604_275&zoom=7
    scan_interval: 1800 # check every 30 minutes
    timeout: 60 # seconds
    json_attributes:
      - avg
      - max
      - min
    unit_of_measurement: nSv/h
    value_template: "{{ value_json.avg }}"
    headers:
      Content-Type: application/json
4 Likes

https://remap.jrc.ec.europa.eu/api/maps/point?id=XX00000

Hi,
I have this device:

it generate a json file over http connection, and I use REST to get value in HA

Hi,
would you mind posting the two solutioning elements you mentioned here?

I am evaluating the µRAD here as well and came across this posting (link and core content cited) - please be aware this addresses the uRADMonitor Radon but, radiation sensors might be treated the same way:

JSON output:
http://192.168.1.202/j

{"data": {"id":"1D000XXX","type":"1D","temperature":18.66,"humidity":57.38,"pressure":101355,"radon":84,"uptime":128050} }

SENSORS to create in HASSio:

  - platform: rest
    name: urad_sensors
    resource: http://192.168.1.202/j
    json_attributes:
      - data
    value_template: "OK"
    
  - platform: template
    sensors:
      urad_temperature:
        value_template: "{{ state_attr('sensor.urad_sensors', 'data')['temperature'] }}"
        device_class: temperature
        unit_of_measurement: "°C"
        
      urad_humidity:
        value_template: "{{ state_attr('sensor.urad_sensors', 'data')['humidity'] }}"
        device_class: humidity
        unit_of_measurement: "%"
        
      urad_pressure:
        value_template: "{{ state_attr('sensor.urad_sensors', 'data')['pressure'] }}"
        device_class: pressure
        unit_of_measurement: "P"
       
      urad_radon:
        value_template: "{{ state_attr('sensor.urad_sensors', 'data')['radon'] }}"
        unit_of_measurement: "Bq/m3"
        
 urad_XXXXXX:
        value_template: "{{ state_attr('sensor.urad_sensors', 'data')['XXXXXX'] }}"
        device_class: XXXX # not mandatory, you can comment this line entirely
        unit_of_measurement: "XXX"

I have a station on https://www.uradmonitor.com/ It has a radiation detector and has been active for several years. My station is in Little Rock, AR, USA, but there are many stations around the world. I would love to have an interface for my data to be visible on Home Assistant.

1 Like

There is an API for uradmonitor.com, so you should be able to; unfortunately it looks like you have to login to get to the API, so I can help you with that; but…some of the uradmonitor devices do have local API support, if yours is one then you can pull it all in locally. If you search the forum, there is another discussion on the local API for uradmonitors and that should get you what you need.

Edit: here is your API: URad API. Since you have the only one in Arkansas, you have a model A.

Update and keep alive heartbeat:
As you know, starting from version 2023.12.0, ESPHome has new requirements for Pin Reuse Validation of configuration files. These changes have also covered our GitHub repositories. We have already made the necessary changes to the examples for ESP8266, ESP32, Raspberry Pico W for ESPHome firmware. More details are available here:

BR, Oleksii

Hi all,
I wanted to integration radiation information in my dashboard. I do not have my own geiger machine.
Therefore I have to rely on publicly available information from the nearest data source.
In my case that was a weather station in De Bilt - The Netherlands.

I managed to get readings using home assistant rest configuration.
Thought I would share the used code.

Key was to know which station id to use and the knowledge that there are two values (and therefore two stations id’s). Namely AB (Alpha and Beta radiation), but the more important one was Gamma.

Here is my rest code:

# Radiation Values De Bilt NL1280 Gamma Value
- resource: "https://remap.jrc.ec.europa.eu/api/maps/point?id=NL1280"
  scan_interval: 1800 # check every 30 minutes
  headers:
      Content-Type: application/json
  sensor:
  - name: Radiation Utrecht Gamma Avg
    icon: mdi:radioactive-circle
    unit_of_measurement: nSv/h 
    value_template: >
      {% if value_json.avg == 0 %}
        {{ sensor.radiation_utrecht_gamma_avg }}
      {% else %}
        {{ value_json.avg }}
      {% endif %}
  - name: Radiation Utrecht Gamma Min
    icon: mdi:radioactive-circle
    unit_of_measurement: nSv/h 
    value_template: >
      {% if value_json.min == 0 %}
        {{ sensor.radiation_utrecht_gamma_min }}
      {% else %}
        {{ value_json.min }}
      {% endif %}
  - name: Radiation Utrecht Gamma Max
    icon: mdi:radioactive-circle
    unit_of_measurement: nSv/h 
    value_template: >
      {% if value_json.max == 0 %}
        {{ sensor.radiation_utrecht_gamma_max }}
      {% else %}
        {{ value_json.max }}
      {% endif %}

# Radiation Values De Bilt NL0998 AB Value
- resource: "https://remap.jrc.ec.europa.eu/api/maps/point?id=NL0998"
  scan_interval: 1800 # check every 30 minutes
  headers:
      Content-Type: application/json
  sensor:
  - name: Radiation Utrecht AB Avg
    icon: mdi:radioactive-circle
    unit_of_measurement: nSv/h 
    value_template: >
      {% if value_json.avg == 0 %}
        {{ sensor.radiation_utrecht_ab_avg }}
      {% else %}
        {{ value_json.avg }}
      {% endif %}
  - name: Radiation Utrecht AB Min
    icon: mdi:radioactive-circle
    unit_of_measurement: nSv/h 
    value_template: >
      {% if value_json.min == 0 %}
        {{ sensor.radiation_utrecht_ab_min }}
      {% else %}
        {{ value_json.min }}
      {% endif %}
  - name: Radiation Utrecht AB Max
    icon: mdi:radioactive-circle
    unit_of_measurement: nSv/h 
    value_template: >
      {% if value_json.max == 0 %}
        {{ sensor.radiation_utrecht_ab_max }}
      {% else %}
        {{ value_json.max }}
      {% endif %}

[update: I noticed that last week the rest API reported values of 0 as the API interface was under maintenance. Added this condition and only adding new values if they are not 0 - otherwise use the last known good value]

Happy Coding

2 Likes

Thank you for sharing this example with the community.
Best regards,
Oleksii

They have change something again, i get 0 value from every station from 7th of May.
Can anyone find out the new solution to scrapping this values? (I have no succes)

Same Problem here.
About 15Days no change…

Resonse from Site:

0
Service is under maintenance, try later
0
0

for a short time it back online but nothing again

anyone has idea how to scrap thoose datas?

So, played with it for a bit using postman.
Seems to intermittently work using a larger timeout with the REST call.

I am using now: timeout: 80

Will monitor how the content behaves over time.

Thank you Robert
This was the solution, all work again
:beers: