Connect other hardware
Feed your site from Ecowitt gateways and virtually any other station via a personal upload URL - no WeatherLink account needed.
Pro Weather is built around Davis stations on WeatherLink, but it's not limited to them. Every site can accept data pushed straight from your own hardware through a personal upload URL that speaks two widely supported upload protocols:
- the Ecowitt protocol - spoken natively by Ecowitt / Fine Offset gateways: GW1000, GW1100, GW2000, WH2600, HP1000-series consoles and the many rebrands (Ambient, Froggit, DNT, Waldbeck and friends);
- the Wunderground protocol - spoken by practically every weather software: weewx, Meteobridge, CumulusMX, WeatherDisplay and most console firmware.
That second one is the key to the long tail: if your station runs through weewx - Davis, Oregon Scientific, La Crosse, AcuRite, Hideki/TE923, Peet Bros, RainWise, Fine Offset USB models, SDR receivers, one-wire, and dozens more - it can feed a Pro Weather site. The full model-by-model rundown lives on the Compatibility page.
1. Get your upload URL
Open your site in the dashboard, go to the Publishing tab, and under Receive data from your own hardware choose Enable hardware ingest. You'll get a URL like:
https://pro-weather.com/api/ingest/f3a91c…The URL is a secret
Anyone who has this URL can feed data to your site - the token in the path is the credential. If it ever leaks, hit Regenerate URL and update your hardware; the old URL stops working immediately.
2. Point your hardware at it
Ecowitt / Fine Offset gateways
In the WS View Plus app (or the gateway's web UI): your device → Weather Services → Customized:
- Customized: Enable, protocol Ecowitt
- Server IP / Hostname:
pro-weather.com - Path: everything after the hostname, e.g.
/api/ingest/f3a91c… - Port:
443(HTTPS where the firmware offers it) - Upload interval: 60 seconds is plenty
Older firmware and HTTPS
Some older gateways only upload over plain HTTP on port 80, which our hosting redirects to HTTPS - a redirect those gateways won't follow. If yours can't do HTTPS/port 443, relay through weewx or Meteobridge below, or update the gateway firmware.
weewx
Add your upload URL as a custom Wunderground endpoint in weewx.conf - the
station ID and password can be anything, they're ignored:
[StdRESTful]
[[Wunderground]]
enable = true
station = ANY
password = ANY
server_url = https://pro-weather.com/api/ingest/f3a91c…
rapidfire = falseMeteobridge
Meteobridge's Weather Underground service can't point at a custom server, but
its template uploads can send the same thing. On the Services tab, under
Definition of Events, add an HTTP Event (every 60 seconds) with this
URL as one line - the =F, =mph, =inHg and =in converters make it
correct whatever units your Meteobridge displays:
https://pro-weather.com/api/ingest/f3a91c…?tempf=[th0temp-act=F.1:--]&humidity=[th0hum-act.0:--]&dewptf=[th0dew-act=F.1:--]&windspeedmph=[wind0wind-act=mph.1:--]&windgustmph=[wind0wind-max10=mph.1:--]&winddir=[wind0dir-act.0:--]&baromin=[thb0seapress-act=inHg.2:--]&rainin=[rain0total-sum1h=in.2:--]&dailyrainin=[rain0total-sumday=in.2:--]&rainratein=[rain0rate-act=in.2:--]&solarradiation=[sol0rad-act.0:--]&UV=[uv0index-act.1:--]Set the success string to success so Meteobridge can tell the upload
worked. Sensors you don't have simply post as -- and are ignored.
CumulusMX
CumulusMX's Weather Underground upload has a fixed server address, so use its
Custom HTTP feature instead: in the admin interface open Settings →
Custom HTTP → Interval based, enable it with an interval of 60 seconds, and
enter this URL as one line. The unit= parameters force the right units no
matter what units Cumulus itself is set to, and rc=y keeps decimal points
even on comma-decimal locales:
https://pro-weather.com/api/ingest/f3a91c…?tempf=<#temp unit=F dp=1 rc=y>&humidity=<#hum>&dewptf=<#dew unit=F dp=1 rc=y>&windspeedmph=<#wspeed unit=mph dp=1 rc=y>&windgustmph=<#wgust unit=mph dp=1 rc=y>&winddir=<#bearing>&baromin=<#press unit=inHg dp=2 rc=y>&rainin=<#rhour unit=in dp=2 rc=y>&dailyrainin=<#rfall unit=in dp=2 rc=y>&rainratein=<#rrate unit=in dp=2 rc=y>&solarradiation=<#SolarRad>&UV=<#UV dp=1 rc=y>&indoortempf=<#intemp unit=F dp=1 rc=y>&indoorhumidity=<#inhum>Drop any tag for a sensor you don't have.
WeatherDisplay, console firmware and everything else
Wherever the software or firmware lets you set a custom / alternative Weather Underground upload server, paste your upload URL as the server address and leave the station ID/password fields as anything you like. If it only offers the stock Weather Underground entry with no server field, relay through weewx or Meteobridge as above - both run happily alongside any other software already reading your station.
3. Watch the data arrive
Within a minute of the first upload your site gains a station called after
your hardware (for example GW2000A…), and the Publishing tab shows Last
data received. Temperature, humidity, dew point, pressure, wind, gusts,
rain, solar, UV, indoor readings, PM2.5, soil moisture and soil temperature
(4 channels each) and leaf wetness are all understood - in both the Ecowitt
and the Wunderground field naming - and anything your hardware doesn't send
(like dew point on many gateways) is derived automatically.
From there it behaves like any station: live conditions on your public page, email alerts, uploads to weather networks, and on Pro (or your trial) a permanent archive that powers charts, records and the almanac - pushed readings are archived about every 4 minutes.
Nothing arriving? Check these in order
- Last data received on the Publishing tab is the ground truth - it updates within about 15 minutes of a successful upload.
- The URL must match exactly. The whole path including the token, over HTTPS, with no trailing slash. If you regenerated the URL, every device still using the old one is rejected.
- Upload interval: 60 seconds is the sweet spot. Anything faster than about one upload per 4 seconds gets rate-limited (the uploader sees HTTP 429 and should back off on its own).
- At least one core reading must be present - temperature, humidity, wind, pressure, rain, solar or PM2.5. An upload carrying none of these is answered with HTTP 400.
- Old Ecowitt firmware: if the gateway can only do plain HTTP on port 80, it can't follow our HTTPS redirect - see the callout above.
- On the software side, most uploaders keep a log: weewx logs the
Wundergroundrestful thread to syslog, Meteobridge shows the last HTTP event result next to the event, and CumulusMX writes Custom HTTP errors to its diagnostics log.
Using it alongside WeatherLink
Both sources can feed one site. Your WeatherLink station stays the face of the site unless you explicitly choose otherwise under Settings → Cards & stations → Stations to display, so enabling hardware ingest never silently changes what visitors see. A site fed only by pushed hardware can be published exactly like a WeatherLink one - the Publish button lights up once the first data has arrived.
Connect your WeatherLink station
Generate a WeatherLink v2 API key so live data flows into your site.
Compatibility
Every weather station, gateway and service Pro Weather works with. Davis via WeatherLink, Ecowitt and Fine Offset by direct push, virtually everything else through weewx, plus all publishing destinations.
