Local/independent weather alert notifications

There’s a Pi hat that can receive SAME alerts from NOAA for weather alerts but it’s been unavailable for quite some time. Instead I’ve implemented a pretty basic (and cheaper) solution to this that’s local and doesn’t rely on a Pi/SD card. Sure, you can get notifications via other means but I like the idea of this not relying on Internet service, cloud, or any providers rebroadcasting weather alerts such as cell providers, Alexa, etc. This is instantaneous and lets me do any number of automations.

The Midland - WR120B/WR120EZ - NOAA Emergency Weather Alert Radio is $30 on Amazon and has an external alert port that lets you use a separate battery powered strobe they sell for hearing impaired users. This port is actually just a NO relay that acts as a switch for their strobe accessory. Using this radio, a chopped up headphone cord and a D1 mini I’m able to get notifications into HA and to my MQTT broker. Of course I don’t get what the watch/warning is for but given that I’ve configured the radio to only alert on certain conditions and not all/default weather watches and warnings this isn’t a problem for me. I basically want to know if there’s a tornado watch or warning issued for our area.

The basic ESPhome config is below, sending a notification from HA or any other means once you have an alert is pretty trivial. Hopefully this is of use to someone.

esphome:
  name: weather-alert

esp8266:
  board: d1_mini

# Enable logging
logger:

# Enable Home Assistant API
api:
  password: "1234"

ota:
  password: "1234"
  
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

captive_portal:

binary_sensor:
  - platform: gpio
    pin:
      number: D2
      mode: INPUT_PULLUP
      inverted: True
    name: "Severe Weather Alert"
    filters:
      - delayed_on: 10ms
1 Like

Awesome, this is exactly the information I was looking for.
I could only assume that the jack was a normally open relay contact, since there is no way to test it.
Would you have any details on how to wire up either a ESP-01 or a D1 Mini?
I’m guessing from the code, that I would need to connect the ground of the headphone jack to the gnd of the D1 Mini, and the center of the jack to the pin labeled D2?

Yes though it doesn’t really matter which wire from the headphone plug you connect to the d1’s ground vs the input pin as the end result is the same, the input is sunk to ground when the weather radio triggers on an alert. For me since it was a stereo headphone plug I chopped up for this the bare wires in the cord (probably ground on the plug) go to either the d1’s gnd or the input pin you’re using and I tied the red and white wires together and they connect to whichever d1 pin you didn’t connect to in the first step. If you’re using a mono plug that you just have two wires and wire one to each. Pretty simple solution which is why I like it. The key is to disable all of the alerting for the watch and warning conditions on the radio itself that you don’t care about like radioactive spills, disorderly mobs, etc. I was really surprised at the number of things this radio will alert for by default.

Good luck!

Edit: if you trigger the self test alert on the radio it will trigger the output and thus your d1 as well. Good way to test it all works without having to wait for an actual natural disaster. :wink: