FieldFlag
Every WBGT reading taken for you, a lightning 30-minute clock everyone can see, a cricket ground-and-covers record, and a log the AD or league can check
A solar WBGT station on each practice field takes the heat reading 15 minutes before practice and every 30 minutes after. A StrikeClock pod starts the NFHS 30-minute lightning clock on the big sideline digits the moment anyone presses THUNDER or its sensor hears a nearby strike, restarts it on every new one, and logs it all. A RollCall tap pod at the gate counts each athlete's heat-acclimatization day. Measurement and record only: the designated person decides, and it is not a lightning-safety or compliance certification. For cricket clubs, the GroundCheck kit adds a rain gauge, tags on the covers and flush wet-spot sensors in the outfield, and sends the visiting captain, both umpires and the league one timestamped ground page before anyone travels; the umpires still walk the ground and decide.
- Who buys it
- Athletic director or head athletic trainer at a Texas high school or ISD (UIL mandatory WBGT standards from 1 Aug 2026), then Georgia (GHSA requires an on-site instrument), Florida and Mississippi. Second sport: club cricket (home club committee or groundsman, then leagues that fine clubs for unfit grounds or wrong cancellations).
- Why it pays
- For a school with 3 outdoor practice sites: about 90 coach/athletic-trainer hours a year no longer spent taking readings (about $3,150 at $35/h, est.) and 3 Kestrel 5400s avoided ($1,662), against $2,097 + $897/yr. The larger value is a timestamped record of every reading and acknowledgement.
- Target price
- $699 per field station + $299/yr; StrikeClock pod +$199; RollCall tap pod +$149; GroundCheck cricket kit +$349; sideline display +$449 (target)
- First-minute wow
- Someone hears thunder and presses the big THUNDER key: the horn sounds, the sideline digits turn red and count down from 30:00, and when the sensor hears another strike 12 minutes later the clock jumps back to 30:00 on its own.

What the research found
And how this design answers it
- Cricket ground fitness: the umpires alone decide (MCC Law 2.7, ECB guidance), but leagues fine a home club 24 points for cancelling without letting the visitors see the ground and make the home club cover the pitch and run-ups → GroundCheck logs rain, cover on/off and outfield wet spots and sends one shared, timestamped ground page to both captains, both umpires and the league; it never says "fit" or "unfit"
- Lightning: NFHS says wait 30 minutes after the last thunder or lightning and restart the count on every new one, with detectors only an aid (NFHS SMAC, NATA 2013) → a StrikeClock pod with a THUNDER key and an AS3935 sensor runs that clock on the sideline digits, restarts it itself, and logs every reset
- Acclimatization is per athlete: late joiners start at day 1 and missed days do not count (NATA, NJSIAA, UHSAA, MSHSAA) → a RollCall tap pod at the gate counts each athlete's day and shows gear and second-session limits at the tap
- HeatFlag assumed no US rule uses WBGT → school sport does (UIL, GHSA, FHSAA, MHSAA), so the band comes only from the school's versioned WBGT rule-set, with Class 2/3 locked for the year
- ±1 °C WBGT can skip a UIL band (the red band is 1.9 °F wide) → target MAE ≤ 0.5 °C against an ISO reference, a published Kestrel comparison, and a band-edge rule that never rounds down
- The free UNC forecast is UIL-compliant → measured at the practice surface, no one walks out every 30 minutes, band-rise alerts mid-practice, and a per-practice PDF the AD can produce
- Readings must never stop → on-device Liljegren drives the display without LTE, and the display is shed first at low battery
- Fields are open after hours and balls fly → clamp screws hidden against the post, pin-hex bolts in nut traps, banded pole saddles, cable lock, polycarbonate diffuser, tilt and GNSS alerts
Use case
Saturday league match after a wet night
Home club groundsmanVisiting captainTwo appointed umpiresLeague fixtures secretaryFieldFlag station with GroundCheck
- 01Trigger: 14 mm of rain falls overnight; the rain gauge logs it and both cover tags show the covers stayed flat on the square with rain landing on them
- 02Detection: at 09:00 two of six wet-spot sensors (the long-on dip and the pavilion-end run-up) read well above this ground's "we played" baseline and one shows standing water
- 03Alert: at 09:30 the groundsman adds three phone photos and the app sends one ground page to the visiting captain, both umpires and the league, with the rain, covers and wet-spot history
- 04Action: the visitors still travel (their right under league rules); the umpires walk the whole field at 12:30, set the next inspection for 13:15 on the sideline digits, and start at 13:45 when both agree
Outcome: A 40-over match played that might have been cancelled by phone, no 24-point dispute, and a record the league can read if anyone complains (est.)
How it works
Architecture
- 01
Sense: HeatFlag head (SHT45, 150 mm black globe, ultrasonic wind) at 1.2–1.5 m, an AS3935 lightning sensor and THUNDER key in a strike pod, and a PN532 tap pod at the gate; for cricket, a tipping-bucket rain gauge, LoRa cover tags (LIS3DH + rain pins) and flush LoRa wet-spot pucks (stainless rods + water pins)
- 02
Decide: nRF9151 computes WBGT every minute; the lightning clock restarts at 30:00 on any THUNDER press, app press or AS3935 strike within the school's radius, and never ends a stop by itself
- 03
Send: LTE-M, MQTT over TLS with CBOR, a 7-day buffer; no school Wi-Fi
- 04
Tell: red countdown on the sideline digits, the strike-pod horn, SMS/push to every coach and the AD, pod LEDs at the tap, per-practice PDF/CSV
Hardware
Real parts, buyable today
Bill of materials: about $597 per pilot station, $82 StrikeClock pod, $57 RollCall tap pod with 100 wristbands, $208 GroundCheck kit (2 cover tags, 4 wet spots, receiver, rain gauge), $38 pole kit and $333 sideline display (est.); volume targets ≤ $280 station, ≤ $140 display.
| Block | Part | Why this part |
|---|---|---|
| Compute + radio | Nordic nRF9151 SiP on the HeatFlag board, beacon section not fitted | Pre-certified LTE-M + GNSS; runs WBGT on device |
| WBGT sensing | SHT45, PT1000 + MAX31865 in a 150 mm Cu globe, Renke RS485 ultrasonic | Standard globe and measured wind; the HeatFlag accuracy chain |
| Athlete tap-in | Elechouse PN532 NFC module, 3 LEDs and a buzzer in a sealed pod; NTAG215 wristbands | A quick tap counts each athlete's day; the tag holds only a random ID |
| Lightning clock | SparkFun AS3935 board, XIAO RP2040, RS485, 12 V piezo horn and a 16 mm IP67 THUNDER key in a sealed pod | A person hearing thunder always counts first; the sensor adds strikes they miss and restarts the clock |
| Sideline display | 144 × WS2815 12 V IP65 pixels in 4 printed 200 mm digits behind opal polycarbonate | Band colour plus number, readable at 30 m with margin (about 60 m by the 1 in per 25 ft rule) |
| Display driver | Raspberry Pi Pico 2 + THVD1410 RS485 + 74AHCT1G125 + 12→5 V buck | PIO drives the pixels; a Modbus slave on the station's bus |
| Power | 20 W (30 W with display) panel, BQ24650 MPPT, 12.8 V 12 Ah LiFePO4 | 4 Wh/day station (about 30 days in reserve); 58 Wh/day with display, which sheds at low battery |
| Cricket GroundCheck | RAK3272S (STM32WLE5 LoRa) in 2 cover tags and 4–8 wet-spot pucks, a RAK3272S receiver box on the station RS485 bus, tipping-bucket rain gauge | Battery nodes reach the station across a 150 m outfield (est.) with no Wi-Fi; the receiver also counts rain tips as Modbus slave 4 |
Mechanical
Printable CAD
31 parts, generated from code and checked as closed solids. Pick a part to inspect it, or download the STL files to print.
See the CAD parts render

Loading the CAD…
Real CAD · drag to rotate · scroll to zoomReal CAD · swipe sideways
Bought hardware fitted inside this part (checked in the CAD: nothing collides with the plastic)
- Fence clamp front with cable-lock tunnel (×5, +2 for display)fence-clamp-front.stl · ASA, white
- Fence clamp back with M8 nut traps (×5, +2)fence-clamp-back.stl · ASA, white
- Goal-post / light-pole band saddlepole-saddle.stl · ASA, white
- Display digit face, 200 mm 7-segment light box (×4)digit-face.stl · ASA, black
- Display digit back with strip channels and glands (×4)digit-back.stl · ASA, black
- Display bezel and sun hood (×4)display-visor.stl · ASA, black
- Display rail bracket (two stacked clamps)display-rail-bracket.stl · ASA, white
- Display controller boxctrl-box-back.stl · ASA, white
- Display controller lidctrl-box-lid.stl · ASA, white
- UIL band legend and coach QR placardlegend-placard.stl · ASA, white
- RollCall tap pod case (PN532, LEDs, buzzer, M12 gland)tap-pod-case.stl · ASA, white
- RollCall tap pod lid with tap targettap-pod-lid.stl · ASA, white
- StrikeClock pod case (AS3935 board, carrier PCB, horn, M12 gland)strike-pod-case.stl · ASA, white
- StrikeClock pod lid with guarded THUNDER key and horn portstrike-pod-lid.stl · ASA, white
- Radiation shield plate (×8, from HeatFlag)shield-plate.stl · ASA, white
- Shield spacer (×24, from HeatFlag)shield-spacer.stl · ASA, white
- Shield rain cap (from HeatFlag)shield-top-cap.stl · ASA, white
- Shield base and probe hub (from HeatFlag)shield-base.stl · ASA, white
- Sensor arm (×2, from HeatFlag)sensor-arm.stl · ASA, white
- Black globe mount (from HeatFlag)globe-mount.stl · ASA, white
- Electronics box back (from HeatFlag)ebox-back.stl · ASA, white
- Electronics box front (from HeatFlag)ebox-front.stl · ASA, white
- Vented battery bay (from HeatFlag)battery-bay.stl · ASA, white
- Battery bay lid (from HeatFlag)battery-lid.stl · ASA, white
- Battery sun shade (from HeatFlag)battery-shade.stl · ASA, white
- Solar panel tilt base (from HeatFlag)solar-base.stl · ASA, white
- Solar panel arm (×2, from HeatFlag)solar-arm.stl · ASA, white
- GroundCheck cover tag case with webbing lugs (×2, one per cover)covertag-case.stl · ASA, orange
- Cover tag lid with rain pins and water channel (×2)covertag-lid.stl · ASA, orange
- Wet-spot puck body, set in a 108 mm hole-cutter hole (×4–8)wetspot-body.stl · ASA, black
- Wet-spot cap, flush with the soil, with standing-water pins (×4–8)wetspot-cap.stl · ASA, black
Open risks we are working on
- WBGT accuracy is unproven: it must reach MAE ≤ 0.5 °C against an ISO reference, and it will likely read about 0.5–0.7 °C below a Kestrel 5400
- The UIL accepts a free internet forecast and only recommends records, so this is a labour-and-evidence sale, not a compliance sale
- Perry Weather is entrenched in Texas districts and actively marketing the UIL rule
- The AS3935 is a hobby-grade sensor with a coarse distance estimate and some false triggers; it is an aid only, and NFHS says never to rely on detectors over what people see and hear
- RollCall makes it hold student data: districts may refuse a vendor cloud, and a wrong rule-set gives wrong advice, so each rule-set is checked against its source
- Liability if a student suffers heat illness at a school using it; product-liability insurance cost is open
- Georgia, Florida and Mississippi band tables and the GHSA 'scientifically approved' wording are not yet checked against the handbooks
- GroundCheck: leagues or umpires may read the page as a fitness verdict, so it shows readings and photos only; wet-spot readings are relative to each ground and untested on clay and sand outfields; a puck flush in the outfield must survive mowers, rollers and spikes
Design stage only: nothing on this page is for sale. Specifications and prices are targets.