@wpns Interestingly, the next morning, my Hub reverted back to fw 126, and the UDP broadcasts resumed. It has been sending out UDP ever sense then, however it seems weird that obs_st type packets are not sent at regular intervals, sometimes over 5 minutes between them. I guess the developer monitors this list and found an “oops” in fw 134 and reverted the update? My hub appears to still be on fw 127 right now.
If you are parsing the Hub status type, here is some Arduino code that should work:
#include <ArduinoJson.h>
const size_t capacity = JSON_ARRAY_SIZE(2) + 2*JSON_ARRAY_SIZE(4) + JSON_OBJECT_SIZE(11) + 160;
DynamicJsonDocument doc(capacity);
const char* json = “{“serial_number”:“HB-000xxxxx”,“type”:“hub_status”,“firmware_revision”:“126”,“uptime”:54024,“rssi”:-66,“timestamp”:1593955959,“reset_flags”:“BOR,PIN,POR”,“seq”:5396,“fs”:[1,0,15675411,524288],“radio_stats”:[22,1,0,3],“mqtt_stats”:[27,0]}”;
deserializeJson(doc, json);
const char* serial_number = doc[“serial_number”]; // “HB-000xxxxx”
const char* type = doc[“type”]; // “hub_status”
const char* firmware_revision = doc[“firmware_revision”]; // “126”
long uptime = doc[“uptime”]; // 54024
int rssi = doc[“rssi”]; // -66
long timestamp = doc[“timestamp”]; // 1593955959
const char* reset_flags = doc[“reset_flags”]; // “BOR,PIN,POR”
int seq = doc[“seq”]; // 5396
JsonArray fs = doc[“fs”];
int fs_0 = fs[0]; // 1
int fs_1 = fs[1]; // 0
long fs_2 = fs[2]; // 15675411
long fs_3 = fs[3]; // 524288
JsonArray radio_stats = doc[“radio_stats”];
int radio_stats_0 = radio_stats[0]; // 22
int radio_stats_1 = radio_stats[1]; // 1
int radio_stats_2 = radio_stats[2]; // 0
int radio_stats_3 = radio_stats[3]; // 3
int mqtt_stats_0 = doc[“mqtt_stats”][0]; // 27
int mqtt_stats_1 = doc[“mqtt_stats”][1]; // 0