Scanners & Radios · Volume 9
Midland WR120
NOAA weather radio with S.A.M.E. (Specific Area Message Encoding) alerting
Contents
| Section | Topic |
|---|---|
| 1 | About this volume |
| 2 | Hardware tour |
| 3 | Operating modes |
| 4 | Programming workflow |
| 5 | Codeplug backups |
| 6 | Field use |
| 7 | Tips and tricks |
| 8 | Resources |
1. About this volume
The Midland WR120 is the dedicated NOAA weather-alert receiver in the lineup — the only device on the bench whose single job is to sit silent for weeks and then yell when a tornado warning, severe thunderstorm warning, or flash-flood warning is broadcast for the configured county FIPS code. It operates exclusively on the seven NOAA Weather Radio All Hazards (NWR) channels in the 162.400–162.550 MHz VHF band, and it implements S.A.M.E. (Specific Area Message Encoding) — the FIPS-coded protocol that lets the receiver ignore alerts targeted at other counties and trigger only on the ones that matter for the local geography.
Why this earns the bench slot when the SDS200 (Vol 11) and SDS100 (Vol 10) can both tune 162 MHz NWR perfectly well: unattended operation. A scanner parked on a NWR channel works only if you’re listening; the WR120 is the always-on appliance that wakes the household at 2 AM and stays silent for every other county’s warnings the rest of the time. The S.A.M.E. selectivity is the load-bearing feature. A non-S.A.M.E. weather radio beeps on every alert in the regional transmitter’s coverage footprint, which over a multi-county footprint trains the household to ignore the alarm. The WR120’s silence-until-relevant behavior is what makes it actually get listened to when it does sound.
Why this over a smart-home weather-alert service: latency and dependency. The WR120 hears the alert ~3–5 seconds after NWS transmits, on a path of NWS-transmitter → 162 MHz RF → onboard S.A.M.E. decoder → audio. The app-push path is NWS → NOAA Weather Wire / IPAWS → CAP feed → vendor infrastructure → cellular tower → phone → notification queue → audio; that’s 30–120 seconds in the median case and fails completely during regional cellular outages — which are correlated with the weather events you most want to be alerted about. The WR120’s only dependency is mains, with AA-battery backup that survives the 4–8 hour outage typical of a severe-storm-induced grid disturbance.
The WR120 is Public Alert®-certified — it meets the NWS/CEA-2009-B standard for S.A.M.E. decoding, event-code filtering, alert-tone audibility, and tamper-resistant programming. Most generic hardware-store NOAA radios are not certified and may be S.A.M.E.-capable only nominally; the WR120 is the entry-level certified device in Midland’s catalogue and one of the units NWS cites in its recommended-equipment list at https://www.weather.gov/nwr/info. For the regulatory and frequency-planning context see Vol 22; for the antenna upgrade path see §6 and the dipole build in [Antennas Vol 6](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol6.md).
2. Hardware tour
The WR120 is a desktop appliance, not a handheld. Roughly 6.5 × 5 × 1.5 inches, ~1 lb with batteries installed, plastic case, intended to live permanently on a nightstand, kitchen counter, or shack desk.
2.1 The seven NWR channels
Fixed-tuned, channelized superheterodyne with the seven NWR frequencies baked in as presets WX1 through WX7:
| Preset | Frequency (MHz) | Preset | Frequency (MHz) |
|---|---|---|---|
| WX1 | 162.400 | WX5 | 162.500 |
| WX2 | 162.425 | WX6 | 162.525 |
| WX3 | 162.450 | WX7 | 162.550 |
| WX4 | 162.475 |
There is no general-coverage tuning. 25 kHz channel spacing, narrow-band FM at ±5 kHz deviation; each NWS transmitter site runs 300 W to 1 kW ERP, with the network built out to ~1,070 sites nationally covering ~95% of the US population. At any given location typically one to three of the seven channels carry receivable signal; the others are quiet because no nearby transmitter uses them. The on-radio “Weather Scan” walks all seven and stops on the strongest, which is how you find the right channel at initial setup.
2.2 Power: mains plus AA backup
- AC adapter: included wall-wart, 9 V DC, ~200 mA (TBD — verify exact spec with Jeff against the actual unit’s adapter label; Midland’s spec sheet calls out “AC adapter included” without a clean datasheet number).
- Battery backup: 4× AA, alkaline or lithium primary. (The scaffold notes “3× AA” — verify with Jeff against the actual unit; the WR120 manual specifies 4 cells, and a 4-cell pack gives a clean 6 V nominal that the radio’s internal regulator drops to its 3.3 V logic rail with reasonable headroom.) Battery life on standby (radio quiet, occasional S.A.M.E. polling) is in the months range; in active alert mode (siren sounding, voice broadcasting) it’s hours, so during an extended outage the backup keeps the alerter running through at least the duration of the immediate weather event but is not a multi-day solution.
The AA backup is the load-bearing redundancy here. The exact time you need the weather radio most — during a severe storm that may take down local power — is the time mains is most likely to fail. Without battery backup, the WR120 would go dark right when the tornado warning matters.
2.3 Front panel: display, LEDs, controls
A 4-line segment LCD shows current channel, time, FIPS receipt status, event code on alert, and menu state during programming (backlight on button press, auto-off in standby). Three-color hazard LEDs light up by severity when a S.A.M.E. message is decoded: RED for Warnings (Tornado, Severe Thunderstorm, Flash Flood, Hurricane — life-threatening, immediate action), ORANGE/amber for Watches (conditions favorable; be prepared), YELLOW for Statements / Advisories (informational). The color-coded LED is useful at a glance from across a darkened bedroom — you wake to the siren, look at the radio, and the LED tells you “warning” vs “watch” before you’ve parsed any LCD text.
Controls: Volume, Snooze, Weather, Menu, Select, Cancel — standard appliance-radio layout. The Snooze button silences an active alert for 5 minutes so the voice broadcast can complete without continuous siren over it.
2.4 Antenna
The stock antenna is a telescoping whip that extends to ~14 inches (~35 cm), top-mounted on the back of the chassis. At 162 MHz, a quarter-wave is ~46 cm and a half-wave is ~93 cm — the stock 35 cm whip is slightly shorter than a quarter-wave, which compromises gain by ~1–2 dB but is mechanically reasonable for a desktop unit. For most home installations within 30 miles of a NWR transmitter, the stock whip is more than adequate.
The back of the chassis includes an external antenna jack (3.5 mm mono — not a coax connector; this is the appliance-radio convention, not the ham convention). Connecting an outdoor 162 MHz dipole or a 1/4-wave ground-plane via a 3.5 mm pigtail with a coax adapter is the upgrade path for marginal signal locations (basement, RFI-heavy urban core, behind a hill from the nearest NWR transmitter). See §6 (Field use) for the upgrade discussion.
2.5 What’s missing
No CAT control, no serial, no USB — configuration is on-panel only. No SD card, no logging — past alerts are not retained beyond the on-screen scroll during the broadcast. No multiple-radio sync (master / slave deployments for whole-house coverage use independent units instead). No CAP / IPAWS over IP fallback — radio is RF-only, so a local NWR transmitter outage during maintenance has no internet path. These omissions are intentional. The WR120 is a $35–45 (mid-2026) appliance, not a network-attached emergency-management platform; the simplicity is the feature.
3. Operating modes
The WR120 has four operating modes, plus an event-filter overlay that applies to all of them.
3.1 S.A.M.E. mode (primary)
The default. The receiver continuously demodulates the configured NWR channel with audio muted until an alert arrives. When the NWS transmitter sends a S.A.M.E. header — a 1050 Hz alert tone preceded by an AFSK data burst encoding event code, originator, FIPS area code(s), valid time, and effective duration — the WR120 decodes the header, checks the FIPS code(s) against its configured list, and either triggers the alert (LED + siren/voice per alert-mode setting, event code on LCD, NWS voice broadcast through the speaker) or stays silent if FIPS doesn’t match. After three end-of-message (EOM) bursts the unit returns to silent standby.
Up to 25 FIPS codes can be configured (TBD — confirm against the actual revision; Midland publishes “up to 25” but earlier hardware revisions topped out at 5). This covers multi-county configurations: home + work + parents + travel destinations + child’s school district.
3.2 All-hazards (non-S.A.M.E.) mode
If FIPS is left unprogrammed or explicitly disabled, the WR120 alerts on every S.A.M.E. message on the configured channel regardless of FIPS. Useful at temporary locations where you don’t know the local FIPS (alerts on everything until you can look it up), or for regional travel (campground, hotel) where you want all alerts in the broadcast area without configuring multi-county codes for the trip. This mode is exactly why a generic non-S.A.M.E. weather radio is annoying in normal use — every Severe Thunderstorm Warning in any of the 6–12 counties within the NWR transmitter’s footprint triggers the alert, most of which are not where you live.
3.3 Manual weather monitoring
Hold the WEATHER button and the radio un-mutes and broadcasts current NWR programming live. Transmitters carry a continuous loop (weather forecast, marine forecast where applicable, current conditions, ~3–5 minute loop) in the synthesized “Tom” / “Donna” / “Paul” / “Javier” voices that have been NWR’s signature since the 2002 Iconix-Webb generator deployment. Used to verify receivability at setup, to listen to the forecast directly (faster than a phone weather app), or to hear pre-storm conditions when an alert hasn’t fired yet but the forecast is concerning.
3.4 Alert-mode variants (siren / voice / display)
Independent of channel-mode, the alert presentation can be set to siren (1050 Hz alert tone at full volume — the speaker measures ~75–80 dB at 1 m, not the marketing-claim 90 dB, but enough to wake a sleeping adult through a closed bedroom door); voice (alert tone muted, NWS voice broadcast plays directly — less startling at night); voice + siren (combination; siren during the header tone, voice takes over); or display (completely silent, LCD lights up showing the event code — for newborns’ rooms or recording-studio control rooms).
The Snooze button gives 5 minutes of silence so the voice broadcast can be heard without the siren competing — useful when an alert wakes you and you want to actually parse what NWS is saying.
3.5 Event filter (the cross-mode overlay)
S.A.M.E. defines ~80 event codes (TOR Tornado Warning, SVR Severe Thunderstorm Warning, FFW Flash Flood Warning, HUW Hurricane Warning, TSW Tsunami Warning, CAE/CDW AMBER, RWT Required Weekly Test, RMT monthly, NPT national periodic, plus Civil Emergency Messages, Hazardous Materials Warnings, etc.). Full list: https://www.weather.gov/nwr/eventcodes. The WR120 enables/disables each code individually. Defaults are sensible (most everything enabled); the tuning hot spots are RWT (Wednesday late-morning weekly chirp — disable if annoying, but lose the weekly “radio still works” confirmation), CAE/CDW (AMBER — emotional preference; default enabled), and the Statement / Advisory categories (SPS, ESF — low-urgency informational, disable if you only want genuinely actionable Warnings and Watches). Standard configuration is all Warnings + all Watches + RWT enabled, other tests and advisories per preference (TBD — confirm with Jeff and document in programs/midland-wr120/notes.md).
4. Programming workflow
All configuration is on-panel via the front-panel buttons and 4-line LCD. There is no PC programming, no CAT control, no app. The WR120 is the simplest device in the lineup from a configuration standpoint — and the most opaque, since menu state is invisible until you walk through it.
4.1 The four configuration steps
- Channel: MENU → Weather Scan walks WX1–WX7 and stops on the strongest. Confirm receivability with the LCD signal bars or by un-muting via WEATHER for a clean-audio check.
- FIPS code(s): MENU → FIPS / SAME Setup, select a slot (1 through 25), enter the 6-digit code via up/down arrow scrolling (not a true numeric keypad — 30–60 s per code). Repeat per county. Save. Codes are looked up at https://www.nws.noaa.gov/nwr/coverage/county_coverage.html: a leading “0” plus the 5-digit Census FIPS county code, e.g. Livingston County MI = Census FIPS 26093 → S.A.M.E. 026093. The leading “0” means “entire county”; “1” / “2” etc. are partial-county codes used only where NWS has explicitly subdivided coverage. For most users the “0” full-county code is what’s wanted.
- Event codes: MENU → Event Setup walks the ~80 codes one at a time; SELECT toggles enabled/disabled. Budget 10–15 minutes for the full walk on first setup. Most operators leave defaults alone on the first pass and only tune the filter after a few false-positives annoy them.
- Alert mode: MENU → Alert → siren / voice / both / display. The setting applies to all event codes uniformly — per-event-type alert behavior (e.g. siren for Tornado, voice-only for Severe Thunderstorm) isn’t supported. Pick the most-startling mode that’s tolerable for the room the radio lives in.
4.2 The sensitivity / channel-quality knob
Weather Scan picks the strongest channel automatically; no manual squelch knob (appliance convention). Marginal reception on the chosen channel (intermittent dropouts, hiss during un-muted listening) is remedied by repositioning (move 6–10 ft toward an exterior wall or away from RFI sources), extending the whip fully and re-scanning, or adding an external antenna (§6.2).
4.3 No PC programming exists
Unlike every other receiver in this series (Unidens on ProScan/Sentinel/FreeScan, Baofengs and Yaesu on CHIRP, AnyTone on its vendor CPS), the WR120 has zero host-side programming software. Configuration lives on the radio’s NVRAM, set via the front panel, and that’s the only interface. Vol 21 (Programming Software Landscape) correctly has no entry for the WR120 — it would be an empty row. The flip side: no codeplug-as-a-file backup either (see §5).
5. Codeplug backups
There is no codeplug. Configuration lives in onboard NVRAM (LCD clock is RAM-backed by the AA cells; FIPS codes, channel, event filter, and alert mode are NVRAM-backed and persist through full battery removal). No file format, no PC tool, no export.
Backup discipline is therefore paper-based. Document the configuration in programs/midland-wr120/notes.md (TBD — Jeff to populate with the specific channel, FIPS codes, event filter, and alert mode). A reasonable template lists the channel + transmitter callsign, the per-county FIPS code with its label (home / work / parents / school / vacation), the event-filter state (typically: all Warnings + all Watches + RWT enabled, advisories per preference), and the alert mode (siren + voice is the default).
For most users the FIPS list is the only thing genuinely worth backing up. Channel selection is rediscoverable in 30 seconds via Weather Scan; the event filter and alert mode are configured once to defaults and rarely revisited. Without the paper backup, recovering the FIPS list means re-looking-up every county and re-walking the on-panel data-entry menu — annoying but tractable.
6. Field use
The WR120’s “field” is the home. There is no portable / mobile use case — the unit is mains-powered with AA backup, intended to live in one location permanently.
6.1 Placement
Three considerations: audible from the master bedroom — the whole point is to wake the household at 2 AM, so the radio belongs there or in an adjacent hallway with the door open, not buried in the basement utility room; AC outlet plus AA batteries installed — the backup is what gets the radio through the outage that typically accompanies the storm; near line-of-sight to the local NWR transmitter — 162 MHz is line-of-sight VHF, so a basement install may receive marginally where a top-floor install with a window toward the transmitter receives cleanly.
6.2 Antenna upgrades
The stock whip is adequate for ~90% of US home installations (within ~30 miles of a NWR transmitter, no major terrain obstruction). For the rest, the upgrade path is an outdoor 162 MHz antenna:
- Quarter-wave ground plane: simplest DIY. ~46 cm radiator, four ~50 cm radials at 37° downward, on a 6–10 ft mast at the eaves. ~0 dBi gain with a clean low-angle pattern that catches the NWR transmitter’s line-of-sight signal where the indoor whip is shadowed by walls and roofing material.
- Half-wave dipole: marginally better (~2.15 dBi). NWR is vertically polarized so orient the dipole vertically; horizontal gives ~20 dB cross-polarization loss. See [Antennas Vol 6](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol6.md) for the build — center-fed with a 1:1 current BALUN, ~93 cm of #14 AWG copper, end insulators, RG-58 or RG-8X feedline.
- Shared outdoor scanner discone (if you already have one feeding the SDS200 — see Vol 11): a Diamond D-130J or similar covers 162 MHz at roughly 0 to +2 dBi. Tap off for the WR120 via a Mini-Circuits ZFSC-2-1+ 50 Ω splitter ([Antennas Vol 18](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol18.md)).
The 3.5 mm external-antenna jack on the back of the WR120 needs a 3.5 mm mono plug to female coax (BNC or SO-239) pigtail. Cheap on Amazon or DX Engineering. Verify the WR120 manual for the exact jack type — some revisions use a screw terminal rather than a 3.5 mm jack (TBD with Jeff against the actual unit).
6.3 Posture
Always-on home-base alerter. No licensing concern (receive-only on a public-service broadcast); no operator skill after configuration. Install once, configure once, rotate batteries annually. Multiple units are cheap redundancy — a second WR120 in the workshop or basement (separated from the main living area by ~20 ft of structure that attenuates the upstairs alert) costs $35–45 with no synchronization issue (each sounds its own alert independently). Cross-link: [Antennas Vol 29](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol29.md) for shared-antenna context, Vol 22 for the regulatory framing.
7. Tips and tricks
7.1 FIPS code lookup is non-obvious
The NWS lookup page at https://www.nws.noaa.gov/nwr/coverage/county_coverage.html is organized by state, then by NWR transmitter (KIH28 Detroit, KZZ77 Pontiac, etc.), then lists each county served by that transmitter with its FIPS code. The lookup is bidirectional — find the transmitter that covers your area first (which is also how you identify the NWR channel WX1–WX7 to program), then find your county within that transmitter’s coverage list. The 6-digit S.A.M.E. code is the leading “0” + the standard 5-digit Census FIPS code (e.g., Livingston County MI = Census FIPS 26093 → S.A.M.E. 026093).
7.2 Multi-county FIPS configuration
The WR120 supports up to 25 FIPS codes (TBD — see §3.1). Use them: home, work (if different), parents’/in-laws’ counties (so you’re alerted when a tornado approaches them and can call to confirm they’re sheltering), children’s school district, weekend/vacation property, through-route counties for regular drives. 8–10 codes covers most family scenarios.
7.3 Event-filter tuning
Highest-value tuning is disabling RWT if the Wednesday chirp is annoying — but the RWT is also how you know the radio still works, so if disabled, schedule a monthly manual “press WEATHER and listen” check. RMT (monthly) and NPT (quarterly) can also be disabled but generate few enough alerts that most operators leave them enabled.
7.4 Outdoor antenna upgrade math
For marginal-reception locations (basement, RFI-heavy urban core, terrain-shadowed from the NWR transmitter): a 162 MHz dipole on a 6–10 ft mast outside gives 2–3 dB more signal than the stock whip and removes the indoor RFI floor — combined S/N improvement is typically 6–10 dB, the difference between intermittent missed alerts and reliable decoding. Parts cost under $20 ([Antennas Vol 6 §4](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol6.md) has the build — wire, two end insulators, optional 1:1 current BALUN). Skipping the BALUN and accepting some common-mode shield radiation is fine at 162 MHz on a short coax run. For a commercial buy, a Workman 162-MHz ground-plane works, as do budget marine-VHF antennas (cut for 156 MHz, usable at 162 with ~1.3:1 SWR — the WR120’s receiver is undemanding).
7.5 AA battery rotation
Replace the AA backup batteries annually. The WR120 doesn’t drain them quickly in standby (months on a fresh set), but alkaline leakage over multi-year periods corrodes the battery contacts and can permanently damage the radio. Lithium primary AAs (Energizer Ultimate Lithium L91) eliminate the leakage risk and roughly double standby life at ~3× the cost; worth it for a radio that may sit silent for years between alerts. A radio left with dead alkalines for 6–12 months may have corroded contacts severe enough that the AC-only mode fails too (the regulator board can have a current path through the battery terminals); if a long-untended WR120 won’t power up on AC, pull the batteries, clean contacts with a vinegar swab and fiberglass eraser, retry. Deep corrosion is often a write-off.
7.6 Multiple radios for whole-house coverage
Two WR120s at $35–45 each (mid-2026) totals $70–90 — cheaper than a single Public-Alert-certified base with wireless slaves ($150–250 for base plus $50 per slave). For a multi-story or sprawling home, two independent WR120s (one upstairs audible from bedrooms, one downstairs audible from kitchen / workshop) give coverage redundancy with no shared-failure mode. Configure both with the same FIPS list and event filter; they alarm in parallel. A second unit at the shack desk (near the SDS200 base scanner) gives the operator the alert at the bench even when not in the bedroom — worth considering as a $35 add.
8. Resources
Manuals: ../manuals/midland-wr120/ — Midland WR120 user manual (PDF; TBD if downloaded locally — verify path and download from Midland support if not). Current revisions are the WR120B / WR120EZ family, functionally identical for S.A.M.E. and event-filter purposes.
Midland USA:
- Product page: https://midlandusa.com/products/wr120-noaa-weather-alert-radio
- Support / downloads: https://midlandusa.com/support
NOAA Weather Radio (NWR):
- Program overview: https://www.weather.gov/nwr/
- Coverage maps and transmitter database: https://www.nws.noaa.gov/nwr/coverage/
- County / FIPS lookup: https://www.nws.noaa.gov/nwr/coverage/county_coverage.html
- S.A.M.E. event codes (full list, ~80 codes): https://www.weather.gov/nwr/eventcodes
- Public Alert® receiver certification (CEA-2009-B) overview: https://www.weather.gov/nwr/publicalert
S.A.M.E. and EAS technical references:
- NWSI 10-1712 (NWS instruction on NWR S.A.M.E. encoding): https://www.weather.gov/media/directives/010_pdfs/pd01017012curr.pdf
- FCC Part 11 (EAS, governs S.A.M.E. encoding used by NWR): https://www.ecfr.gov/current/title-47/chapter-I/subchapter-A/part-11
- IPAWS (upstream of the EAS / NWR S.A.M.E. message flow): https://www.fema.gov/emergency-managers/practitioners/integrated-public-alert-warning-system
Sibling project cross-references:
- Vol 1 (Overview), Vol 11 (SDS200), Vol 22 (Frequency Planning)
- [Antennas Vol 6 (Single-band dipoles)](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol6.md), [Vol 18 (Passive splitters)](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol18.md), [Vol 29 (Use-case Matrix)](../../../Hack Tools/Antennas/02-inputs/volume_sources/vol29.md)