# UDP data transmitted by the Hub

**URL:** <https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763>\
**Category:** Developers\
**Created:** [April 5, 2018, 8:44pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763 "2018-04-05T20:44:16Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![GaryFunk](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/garyfunk/32/5729_2.png) [@GaryFunk](https://community.tempest.earth/u/GaryFunk)\
**Post date:** [April 5, 2018, 8:44pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/1 "2018-04-05T20:44:16Z")

</div>

This is interesting

Some may have already done the math, but…

UDP packets per 24 hour period with one Hub, one Sky and one Air.

| Packet Type | Packets |
| --- | --- |
| Hub Status | 14,400 |
| Device status | 2,880 |
| Air observation | 1,440 |
| Sky observation | 1,440 |
| Rapid wind | 28,800 |
| Total | 48,960 |

This does not take into account rain, lightning and any debug data.

---

<div class="post-metadata">

**Author:** ![bernd.wechner](https://avatars.discourse-cdn.com/v4/letter/b/9de053/32.png) [@bernd.wechner](https://community.tempest.earth/u/bernd.wechner)\
**Post date:** [July 20, 2018, 5:23am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/2 "2018-07-20T05:23:03Z")

</div>

I’m curious, how did you count those and and where is the documentation if any on what the hub sends when to whom and how?

---

<div class="post-metadata">

**Author:** ![GaryFunk](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/garyfunk/32/5729_2.png) [@GaryFunk](https://community.tempest.earth/u/GaryFunk)\
**Post date:** [July 20, 2018, 5:33am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/3 "2018-07-20T05:33:55Z")

</div>

I used an abacus.

Seriously, I captured all the data stored it in a SQL database.

Here is the answer.

Hub Status is transmitted every 10 seconds.  
Device Status and Observation is transmitted every 60 seconds.  
Rapid Wind is transmitted every three seconds.

The REST API, web socket and UDP specs are here:

[https://weatherflow.github.io/SmartWeather/api/](https://weatherflow.github.io/SmartWeather/api/)

---

<div class="post-metadata">

**Author:** ![bernd.wechner](https://avatars.discourse-cdn.com/v4/letter/b/9de053/32.png) [@bernd.wechner](https://community.tempest.earth/u/bernd.wechner)\
**Post date:** [July 20, 2018, 7:11am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/4 "2018-07-20T07:11:51Z")

</div>

Thanks. You used weewx to capture and store in database? Or some other method (eager student here). Seems like a lot of data to be broadcasting on a LAN. Odd choice. A configurable target might have been desirable (not to Weatherflow devs). Probably deemed not a hug issue or traffic volume – not like streaming a security camera 😉 – but still, can’t say unnecessary broadcasts strike me as great planning.

---

<div class="post-metadata">

**Author:** ![GaryFunk](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/garyfunk/32/5729_2.png) [@GaryFunk](https://community.tempest.earth/u/GaryFunk)\
**Post date:** [July 20, 2018, 7:28am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/5 "2018-07-20T07:28:20Z")

</div>

I use WFArchiver. It records ALL UDP data sent by the Hub.

It is a lot of data but that’s just a small part of the data that the Hub actually generates.

---

<div class="post-metadata">

**Author:** ![bernd.wechner](https://avatars.discourse-cdn.com/v4/letter/b/9de053/32.png) [@bernd.wechner](https://community.tempest.earth/u/bernd.wechner)\
**Post date:** [July 20, 2018, 8:16am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/6 "2018-07-20T08:16:59Z")

</div>

Thanks for that. Looks like you wrote WFArchiver (in javascript). Curious what you think of weewx? It seems to offer a web interface for visualizing and navigating data.

Also I’m curious how you know this: just a small part of the data that the Hub actually generates.

What more data does the hub send to [weatherflow.com](http://weatherflow.com)?

---

<div class="post-metadata">

**Author:** ![GaryFunk](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/garyfunk/32/5729_2.png) [@GaryFunk](https://community.tempest.earth/u/GaryFunk)\
**Post date:** [July 20, 2018, 8:34am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/7 "2018-07-20T08:34:26Z")

</div>

Yes, I am the author. At the time I wrote it there was no other application to capture and store the data from the station Hub.

Besides the UDP data that is broadcast there is MQTT data the that is sent to WeatherFow. That more than doubled the UDP data. Then there is calibration data and at times, debug data.

As for weewx, I have not used it

---

<div class="post-metadata">

**Author:** ![bernd.wechner](https://avatars.discourse-cdn.com/v4/letter/b/9de053/32.png) [@bernd.wechner](https://community.tempest.earth/u/bernd.wechner)\
**Post date:** [July 20, 2018, 8:51am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/8 "2018-07-20T08:51:55Z")

</div>

Well thanks for writing and sharing it! Community is always great. Is there a spec for the MQTT data the hub sends to weatherflow. Interestingly, from a gateway that could all be sniffed too I imagine …

I plan on trying weewx. Given there’s a weatherflow driver for it:

> **[captain-coredump/weatherflow-udp](https://github.com/captain-coredump/weatherflow-udp)**
>
> WeatherFlow Personal Weather Station driver for weewx, via UDP broadcast packets - captain-coredump/weatherflow-udp

when time permits. May try to mount Sky properly this weekend.

---

<div class="post-metadata">

**Author:** ![GaryFunk](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/garyfunk/32/5729_2.png) [@GaryFunk](https://community.tempest.earth/u/GaryFunk)\
**Post date:** [July 20, 2018, 8:54am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/9 "2018-07-20T08:54:30Z")

</div>

WeatherFlow has not published any data on MQTT from the Hub.

---

<div class="post-metadata">

**Author:** ![vreihen](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/vreihen/32/13217_2.png) [@vreihen](https://community.tempest.earth/u/vreihen)\
**Post date:** [July 20, 2018, 10:54am UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/10 "2018-07-20T10:54:30Z")

</div>

> [@GaryFunk](#):
>
> Rapid Wind is transmitted every five seconds.

Rapid\_wind is every three seconds in non-power-save mode, and 15 seconds(?) in power-save mode IIRC. (Davis LOOP packets are every 2.5 seconds, which is how I remember WF rapid\_wind being 3 seconds.)

> [@bernd.wechner](#):
>
> Seems like a lot of data to be broadcasting on a LAN. Odd choice. A configurable target might have been desirable (not to Weatherflow devs). Probably deemed not a hug issue or traffic volume – not like streaming a security camera 😉 – but still, can’t say unnecessary broadcasts strike me as great planning.

As an eager student, you may want to install wireshark (free software) and see all of the broadcast/multicast packets floating around from consumer devices (besides the ARP packets sent to map MAC to IP addresses every time that two devices want to communicate). WF’s 23 multicast packets per minute (if my math is correct) are a drop in the proverbial bucket compared with the frequent mDNS announcements made by most consumer devices like _idle_ Apple TVs, Chromecasts, and Fire sticks.

> [@bernd.wechner](#):
>
> I plan on trying weewx. Given there’s a weatherflow driver for it:
> 
> [GitHub - captain-coredump/weatherflow-udp: WeatherFlow Personal Weather Station driver for weewx, via UDP broadcast packets](https://github.com/captain-coredump/weatherflow-udp)
> 
> when time permits. May try to mount Sky properly this weekend.

Rumor has it that the guy who wrote that driver is a regular participant here… 😊

---

<div class="post-metadata">

**Author:** ![GaryFunk](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/garyfunk/32/5729_2.png) [@GaryFunk](https://community.tempest.earth/u/GaryFunk)\
**Post date:** [July 20, 2018, 2:20pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/11 "2018-07-20T14:20:59Z")

</div>

I should have checked my math. And I should have been sleeping. 😉

---

<div class="post-metadata">

**Author:** ![spacesnow](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/spacesnow/32/252_2.png) [@spacesnow](https://community.tempest.earth/u/spacesnow)\
**Post date:** [October 26, 2018, 6:33pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/12 "2018-10-26T18:33:58Z")

</div>

Maybe a stupid question i thougt the hub sends data to wunderground. How is this done? Not by ftp i think and the hub hasnt a webserver too as far as i know. Are the values sent by the WF servers ? I almost should think it should be possible tot het the data by a simple wget

If this jas been asked before i m sorry thanks.  
-Ron

---

<div class="post-metadata">

**Author:** ![vinceskahan](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/vinceskahan/32/2785_2.png) [@vinceskahan](https://community.tempest.earth/u/vinceskahan)\
**Post date:** [October 26, 2018, 7:23pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/13 "2018-10-26T19:23:41Z")

</div>

You’d have to run a sniffer on the wire(less) to get any data the hub transmits to anywhere…

But I’m guessing (guessing…) that the heavy lifting is done server-side by WF servers after the data is received there. That’s the case with IFTTT if I recall correctly.

It wouldn’t make any sense to build in a third-party upload capability in a bunch of distributed hub devices that could break immediately if a downstream unaffiliated company changed their API or shut their services off. WF seems to want all integrations they support to flow from their servers as an intermediary.

---

<div class="post-metadata">

**Author:** ![spacesnow](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/spacesnow/32/252_2.png) [@spacesnow](https://community.tempest.earth/u/spacesnow)\
**Post date:** [October 26, 2018, 7:33pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/14 "2018-10-26T19:33:13Z")

</div>

Thanks for this I couldnt find anything by packet sniffing except the upd packets from port 50222 and a lot of traffic to the wf servers. So I let it go

---

<div class="post-metadata">

**Author:** ![eric](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/eric/32/13553_2.png) [@eric](https://community.tempest.earth/u/eric)\
**Post date:** [October 26, 2018, 8:10pm UTC](https://community.tempest.earth/t/udp-data-transmitted-by-the-hub/763/15 "2018-10-26T20:10:52Z")

</div>

the link to WU is via the WF servers. The hub ony sends data to the WF servers and broadcasts locally via UDP so we can grab it, that’s about what the hub does regarding sending data.
