Yes. ipv6 is an adventure. I tried to turn it on for my home LAN and DNS
was a big problem until I figured out that I just needed to always use
"hostname.local" for the LAN DNS and it would work. Unfortunately it also
seemed to break my pihole ad-blocking so I turned ipv6 back off here after
a few day test.
I like the clock on your About page too!
On Saturday, September 2, 2023 at 1:02:04 PM UTC-7 Stefan Gliessmann wrote:
> Dear Vince,
>
> thank you very much for providing the scripts! I really do appreciate!
> However, last Tuesday I changed my ISP. Good think - it is 1 Gbps! And my
> challenge was that it is IPv6 and I had to learn very quickly that port
> forwarding with IPv6 is completely different to IPv4, and even more
> particular DDNS with IPv6.
> But I am happy to report that my server is back online rv.sgplex.de :)
> As I will be on vacation in Spain the next few weeks, I will place your
> scripts in action!
>
> Thanks again for providing them!
>
> Cheers
>
> On Monday, August 28, 2023 at 10:17:58 PM UTC+2 vince wrote:
>
>> (sorry - ignore the earlier truncated post)
>>
>> I cooked up a bash script that subscribes, calls a python script to
>> reformat, then publishes. The bash script sleeps a second between loops
>> to not eat up your cpu. You 'should' be able to change the variables in
>> the bash script to match your configuration pretty easily...
>>
>> This subscribes to ORIGINAL_TOPIC and publishes to FINAL_TOPIC in the
>> bash script.
>> To test:
>>
>> - open a bash window and subscribe to the FINAL_TOPIC
>> - open a second window and run the bash script which will
>> listen/reformat/publish
>> - if you're not querying your gps currently, open a third window and
>> publish to the ORIGINAL_TOPIC ala
>>
>> mosquitto_pub -h 192.168.1.171 -t RV/original -m
>> '[{"dateTime":"1693128700.0","gpsLat":"52.152435"},{"dateTime":"1693128700.0","gpsLong":"9.929356"}]'
>>
>> What you should see in window1 that is subscribing is output ala:
>> {"dateTime": "1693128700.0", "gpsLat": "52.152435", "gpsLong": "9.929356"}
>>
>> That kind of data should be ok to subscribe to in weewx for your lat/lon
>> data....
>>
>> #---- reformat_mqtt.bash ----
>>
>> #!/bin/bash
>> #
>> # ip address of MQTT broker
>> BROKER="192.168.1.171"
>>
>> ORIGINAL_TOPIC="RV/original"
>> FINAL_TOPIC="RV/final"
>>
>> while true; do
>>
>> # subscribe to a topic
>> # run the python script to reformat to stdout
>> # publish to a final topic
>>
>> mosquitto_sub -C 1 -h ${BROKER} -t ${ORIGINAL_TOPIC} \
>> | python3 reformat_mqtt.py \
>> | mosquitto_pub --stdin-line -h ${BROKER} -t ${FINAL_TOPIC}
>>
>> # sleep a bit to not eat up your cpu
>> sleep 1
>>
>> done
>>
>>
>> #---- reformat_mqtt.py -----
>> #
>> # this reformats the GPS information
>> # to a more normal looking output
>> #
>>
>> # it assumes your input data is always in the same order and always
>> complete
>> # ala:
>> [{"dateTime":"1693128700.0","gpsLat":"52.152435"},{"dateTime":"1693128700.0","gpsLong":"9.929356"}]
>>
>> import json
>> import sys
>> for line in sys.stdin:
>> jsondata = json.loads(line)
>> reorganized_data = {}
>> reorganized_data['dateTime'] = jsondata[0]['dateTime']
>> reorganized_data['gpsLat'] = jsondata[0]['gpsLat']
>> reorganized_data['gpsLong'] = jsondata[1]['gpsLong']
>> print(json.dumps(reorganized_data))
>>
>>
>> On Monday, August 28, 2023 at 5:19:15 AM UTC-7 Stefan Gliessmann wrote:
>>
>>> I asked in the community forum for my router and I was told that this is
>>> the only way they can currently forward data via MQTT.
>>> A future firmware release shall allow more formatting.
>>>
>>> I might now play around with this
>>> https://github.com/mrtncls/mqtt-translator to get the MQTT payload from
>>> an array in one single statement ...
>>> Anybody used the MQTT Translator for this purpose?
>>>
>>> On Monday, August 28, 2023 at 11:01:41 AM UTC+2 Stefan Gliessmann wrote:
>>>
>>>> Which code do you refer to?
>>>> [image: Screenshot 2023-08-28 at 11.00.03.png]
>>>> This is what I specified in the GPS/Router to push via MQTT to my
>>>> broker ...
>>>> On Sunday, August 27, 2023 at 8:39:40 PM UTC+2 vince wrote:
>>>>
>>>>> We'd have to see your code to see what you are publishing.
>>>>>
>>>>> Your MQTT log looks very odd and likely needs some tweaking
>>>>>
>>>>> MQTT:
>>>>> [{"dateTime":"1693128700.0","gpsLat":"52.152435"},{"dateTime":"1693128700.0","gpsLong":"9.929356"}]
>>>>>
>>>>>
>>>>>
>>>>> I'd expect something like {"dateTime":"1233456", "gpsLat":"52.1234",
>>>>> "gpsLong": "9.987"} for a more typical set of JSON to publish. You want
>>>>> one element (not in an array) with three items therein - dateTime/lat/lon.
>>>>>
>>>>>
--
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 on the web visit
https://groups.google.com/d/msgid/weewx-user/f6d6c16b-1a45-41a4-a15c-b051861d67e7n%40googlegroups.com.