John,
Very, very cool! I'm interested int weewx-loopdata, but I am heavily 
invested in MQTT. A cursory look at the code and it looks like I could 
instantiate LoopProcessor and invoke generate_loopdata_dictionary. 
Obviously the necessary 'wrapping' would need to be done.
Just wondering, off the top of your heard, does this doable/reasonable? 
Better way?
Thanks. rich
On Thursday, 30 July 2026 at 16:36:20 UTC-4 John Kline wrote:

> [image: weewx-loopdata.png]
>
> chaunceygardiner/weewx-loopdata: Make your skins come alive – report tags 
> updated on every LOOP packet 
> <https://github.com/chaunceygardiner/weewx-loopdata>
> github.com <https://github.com/chaunceygardiner/weewx-loopdata>
> <https://github.com/chaunceygardiner/weewx-loopdata>
>
> weewx-loopdata 6.6 
> <https://bambi5t.amarillo.johnkline.com/mockups/loopdata-6.6/release-notes.html#weewx-loopdata-66>
>
> Almanac fields can now pin their units, attribute chains walk exactly as 
> Cheetah walks a report tag, the French translation is out of Beta, and a 
> complete Dutch translation ships (Beta). Drop-in upgrade — install over 
> 6.x; no configuration changes, and every existing fields line produces the 
> same values as before. Released alongside weewx-celestial 7.5, whose 
> migration utility now emits the pinned spellings.
> What's new 
> <https://bambi5t.amarillo.johnkline.com/mockups/loopdata-6.6/release-notes.html#whats-new>
>
>    - 
>    
>    Unit segments on almanac fields. Almanac fields complete the grammar: 
>    like observation fields (day.outTemp.avg.degree_C) and station fields (
>    station.altitude.meter.raw) before them, an almanac field can carry a 
>    unit segment: almanac.sunrise.unix_epoch.raw, 
>    almanac.sun.visible.second.raw,almanac.sun.visible.hour.round(2).raw (the 
>    unit sits before round(n) and the format spec). It pins the unit no 
>    matter what the target report's unit settings say. Without one, .raw 
> follows 
>    the target report's converter — by design, that is report-tag parity — so 
> a 
>    target report with [Units] [[Groups]] overrides (say group_deltatime = 
>    hour) turns almanac.sun.visible.raw from seconds into hours. Pin the 
>    unit on any .raw field your javascript consumes numerically. The 
>    manual's Almanac fields page 
>    <https://chaunceygardiner.github.io/weewx-loopdata/almanac-fields.html> 
> has 
>    the full story.
>    - 
>    
>    Cheetah-exact attribute walking. Almanac and station field chains now 
>    auto-call exactly as Cheetah's NameMapper walks a tag: a segment that 
>    resolves to a method or function is called at every dot, not only at the 
>    end of the chain, and a callable instance is never auto-called (Cheetah 
>    leaves those alone). Concretely: under weewx-skyfield ≤ 1.14,
>    almanac.moon.parallactic_angle.degrees worked as a report tag but 
>    failed as a loopdata field; now both behave identically.
>    - 
>    
>    French is out of Beta.  lang/fr.conf has been native-speaker reviewed, 
>    in step with weewx-skyfield's and weewx-celestial's reviewed French (a 
> test 
>    keeps the three extensions' shared vocabulary identical). Select it with 
> lang 
>    = fr on the report's stanza.
>    - 
>    
>    Dutch ships (Beta).  lang/nl.conf is a complete Dutch translation of 
>    the sample report — gauge headings after the Dutch labels of WeeWX's own 
>    Seasons skin, the nine trend.barometer.desc descriptions in the 
>    tendency vocabulary of Dutch weather reports (*stijgend*, 
>    *gelijkblijvend*, *dalend*), and, for a loopdata instance whose target 
>    report is Dutch, the compass ordinates, moon phases, body and all 88 
>    constellation names — the shared vocabulary in step with weewx-skyfield's 
>    and weewx-celestial's Dutch (the same cross-repo test that pins the German 
>    and French). Select it with lang = nl. Beta pending native-speaker 
>    review — corrections welcome.
>    
>    [image: The sample report in Dutch] 
>    
> <https://raw.githubusercontent.com/chaunceygardiner/weewx-loopdata/master/LoopDataReport-nl.png>
>    
> Requirements 
> <https://bambi5t.amarillo.johnkline.com/mockups/loopdata-6.6/release-notes.html#requirements>
>
>    - WeeWX 4 or 5 (translations need WeeWX 4.6 or later)
>    - Python 3.7 or later
>    - No third-party Python packages required
>
> Installing/upgrading 
> <https://bambi5t.amarillo.johnkline.com/mockups/loopdata-6.6/release-notes.html#installingupgrading>
>
> Download weewx-loopdata.zip 
> <https://github.com/chaunceygardiner/weewx-loopdata/releases> and install 
> it over your existing copy, then restart weewxd:
>
> weectl extension install weewx-loopdata.zip
>
> (or wee_extension --install weewx-loopdata.zip on WeeWX 4).
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/weewx-user/4f504c52-b91a-47cf-b296-f2ec29626021n%40googlegroups.com.

Reply via email to