mirror of
https://github.com/acaloiaro/roam-location
synced 2026-07-21 10:12:21 +00:00
No description
The simple atmosphericCeiling*sin(elevation) model overestimates clear-sky radiation at low sun angles because it ignores the longer atmospheric path light travels near the horizon. At 5° elevation the path is ~11x vertical, making the real clear-sky ceiling ~26 W/m² rather than the 83 W/m² the naive model predicts — causing sunny low-angle readings to be misclassified as mostly cloudy. Replace with the Beer-Lambert correction: expectedClearSky = 950 * exp(-opticalDepth / sin(elevation)) * sin(elevation) opticalDepth=0.1 (clear atmosphere) produces accurate values across all angles: ~26 W/m² at 5°, ~93 W/m² at 10°, ~715 W/m² at solar noon. |
||
|---|---|---|
| geocode | ||
| service | ||
| starlink | ||
| vendor | ||
| weather | ||
| webdav | ||
| .ignore | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
| README.md | ||
roam-location
The purpose of this repo is to make my current location available on adriano.fyi. The coordinates from the two services here are used populate the map at https://adriano.fyi/whereami
About
I can't imagine this is useful to many others. This repo consits of a receiver of GPS data and a web service that makes the data avaialble.
Receiver
The receiver receives UDP packets containing NMEA sentences from my Sierra Wireless RV55 router. The sentences are parsed and appended to a log file.
Location Service
The location service simply finds the last location appended to the log file and makes it available as a JSON object over HTTP.
Running
ROAM_LOCATION_DB_PATH=/path/to/nmea_logs.log go run main.go