Ok, I will stand pat until you update the driver. I'm not ready to switch
to an mqtt setup yet anyways. I want to swap out the particle P1 for a
moteino for my sensor front end. I'm going to convert the P1 to act as my
rf to wifi gateway, or I may do this with my raspberry pi, not quite sure
yet.
On Monday, 27 March 2017 10:24:25 UTC-4, Bill Morrow wrote:
>
> I haven't died, just busy with work.
>
> Robert, my driver does not read JSON, it's only simple key-value pairs in
> a string. So for example, it doesn't know to strip the quotes off the key
> or the value here:
> "altimeter": "30.4916869968"
> It wants
> altimeter: 30.4916869968
>
>
> I am planning on adopting WYSIWYG (Frederic's) approach of a separate MQTT
> topic for each value.
>
>
> On Saturday, 25 March 2017 11:37:35 UTC-3, Robert Mantel wrote:
>>
>> So I tried changing the topic to weather/loop because that appears to
>> have the full json tuple format with the paired label:values that the
>> wxMesh driver needs but I get this error:
>>
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: engine: RealTimeGaugeData
>> will generate gauge-data.txt. min_interval is 120 seconds
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: engine: Finished loading
>> service user.rtgd.RealtimeGaugeData
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: engine: Starting up weewx
>> version 3.7.1
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: engine: Station does not
>> support reading the time
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: engine: Starting main packet
>> loop.
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: wxMesh: Working on payload :
>> Empty
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: wxMesh: Sleeping for 5
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: manager: Daily summary
>> version is 2.0
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: manager: Daily summary
>> version is 2.0
>> Mar 25 15:35:47 ubuntu-freenas weewx[5297]: rtgdthread: Zambretti is
>> installed: False
>> Mar 25 15:35:52 ubuntu-freenas weewx[5297]: wxMesh: Working on payload :
>> Empty
>> Mar 25 15:35:52 ubuntu-freenas weewx[5297]: wxMesh: Sleeping for 5
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: Got message {"soc":
>> "68.8047", "altimeter": "30.4916869968", "outHumidity": "63.0", "dayRain":
>> "0.0", "rainin": "0.0", "voltage": "3.9688", "dailyrainin": "0.132",
>> "windspeedmph": "4.4383", "kilopascals": "100.941", "heatindex": "29.534",
>> "rainmm": "0.0", "windspeedmps": "1.9841", "hpa": "1009.4", "hourRain":
>> "0.0", "windGustDir": "90.0", "tempc": "-1.37", "barometer":
>> "30.5439450745", "windchill": "29.534", "dewpoint": "18.4883", "windrun":
>> "32.3367", "windspdmps_avg2m": "1.3076", "windspeedkmph": "7.1427",
>> "humidex": "29.534", "winddir": "90.0", "pressure": "29.8079", "rain":
>> "0.0", "rainRate": "0.0", "dewptc": "-7.5065", "usUnits": "1.0", "altm":
>> "33.1085", "appTemp": "22.7487311772", "altf": "108.6236", "interval":
>> "2.0", "dateTime": "1490455920.0", "windDir": "53.0", "outTemp": "29.534",
>> "windSpeed": "2.9333", "rain24": "0.363", "windGust": "11.8354", "rssi":
>> "-71.0", "cloudbase": "3141.49934286"}
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: Working on payload :
>> {"soc": "68.8047", "altimeter": "30.4916869968", "outHumidity": "63.0",
>> "dayRain": "0.0", "rainin": "0.0", "voltage": "3.9688", "dailyrainin":
>> "0.132", "windspeedmph": "4.4383", "kilopascals": "100.941", "heatindex":
>> "29.534", "rainmm": "0.0", "windspeedmps": "1.9841", "hpa": "1009.4",
>> "hourRain": "0.0", "windGustDir": "90.0", "tempc": "-1.37", "barometer":
>> "30.5439450745", "windchill": "29.534", "dewpoint": "18.4883", "windrun":
>> "32.3367", "windspdmps_avg2m": "1.3076", "windspeedkmph": "7.1427",
>> "humidex": "29.534", "winddir": "90.0", "pressure": "29.8079", "rain":
>> "0.0", "rainRate": "0.0", "dewptc": "-7.5065", "usUnits": "1.0", "altm":
>> "33.1085", "appTemp": "22.7487311772", "altf": "108.6236", "interval":
>> "2.0", "dateTime": "1490455920.0", "windDir": "53.0", "outTemp": "29.534",
>> "windSpeed": "2.9333", "rain24": "0.363", "windGust": "11.8354", "rssi":
>> "-71.0", "cloudbase": "3141.49934286"}
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: {"soc" value:
>> "68.8047"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "altimeter"
>> value: "30.4916869968"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "outHumidity"
>> value: "63.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "dayRain"
>> value: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "rainin" value:
>> "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "voltage"
>> value: "3.9688"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "dailyrainin"
>> value: "0.132"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windspeedmph"
>> value: "4.4383"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "kilopascals"
>> value: "100.941"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "heatindex"
>> value: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "rainmm" value:
>> "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windspeedmps"
>> value: "1.9841"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "hpa" value:
>> "1009.4"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "hourRain"
>> value: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windGustDir"
>> value: "90.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "tempc" value:
>> "-1.37"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "barometer"
>> value: "30.5439450745"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windchill"
>> value: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "dewpoint"
>> value: "18.4883"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windrun"
>> value: "32.3367"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key:
>> "windspdmps_avg2m" value: "1.3076"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windspeedkmph"
>> value: "7.1427"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "humidex"
>> value: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "winddir"
>> value: "90.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "pressure"
>> value: "29.8079"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "rain" value:
>> "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "rainRate"
>> value: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "dewptc" value:
>> "-7.5065"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "usUnits"
>> value: "1.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "altm" value:
>> "33.1085"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "appTemp"
>> value: "22.7487311772"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "altf" value:
>> "108.6236"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "interval"
>> value: "2.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "dateTime"
>> value: "1490455920.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windDir"
>> value: "53.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "outTemp"
>> value: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windSpeed"
>> value: "2.9333"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "rain24" value:
>> "0.363"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "windGust"
>> value: "11.8354"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "rssi" value:
>> "-71.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: key: "cloudbase"
>> value: "3141.49934286"}
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windrun"': could not convert string to float: "32.3367"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windGust"': could not convert string to float: "11.8354"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windchill"': could not convert string to float: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "rainmm"': could not convert string to float: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "voltage"': could not convert string to float: "3.9688"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "altm"': could not convert string to float: "33.1085"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windspdmps_avg2m"': could not convert string to float: "1.3076"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "altimeter"': could not convert string to float: "30.4916869968"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "barometer"': could not convert string to float: "30.5439450745"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "pressure"': could not convert string to float: "29.8079"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windspeedmps"': could not convert string to float: "1.9841"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "rainRate"': could not convert string to float: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windspeedkmph"': could not convert string to float: "7.1427"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windspeedmph"': could not convert string to float: "4.4383"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "altf"': could not convert string to float: "108.6236"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "dewpoint"': could not convert string to float: "18.4883"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windGustDir"': could not convert string to float: "90.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windSpeed"': could not convert string to float: "2.9333"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "outTemp"': could not convert string to float: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "dateTime"': could not convert string to float: "1490455920.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "outHumidity"': could not convert string to float: "63.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "dewptc"': could not convert string to float: "-7.5065"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "hpa"': could not convert string to float: "1009.4"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "interval"': could not convert string to float: "2.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "winddir"': could not convert string to float: "90.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "kilopascals"': could not convert string to float: "100.941"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "rain24"': could not convert string to float: "0.363"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "heatindex"': could not convert string to float: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "appTemp"': could not convert string to float: "22.7487311772"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "usUnits"': could not convert string to float: "1.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "rssi"': could not convert string to float: "-71.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "tempc"': could not convert string to float: "-1.37"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "dayRain"': could not convert string to float: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "dailyrainin"': could not convert string to float: "0.132"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "humidex"': could not convert string to float: "29.534"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "windDir"': could not convert string to float: "53.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "cloudbase"': could not convert string to float: "3141.49934286"}
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "hourRain"': could not convert string to float: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> '{"soc"': could not convert string to float: "68.8047"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "rainin"': could not convert string to float: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: wxMesh: cannot read value for
>> ' "rain"': could not convert string to float: "0.0"
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: engine: Main loop exiting.
>> Shutting engine down.
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: rtgd: Shut down Thread-1
>> thread.
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: engine: Caught unrecoverable
>> exception in engine:
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** 'dateTime'
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** Traceback (most
>> recent call last):
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** File
>> "/usr/share/weewx/weewx/engine.py", line 871, in main
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** engine.run()
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** File
>> "/usr/share/weewx/weewx/engine.py", line 190, in run
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: ****
>> self.dispatchEvent(weewx.Event(weewx.NEW_LOOP_PACKET, packet=packet))
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** File
>> "/usr/share/weewx/weewx/engine.py", line 223, in dispatchEvent
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** callback(event)
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** File
>> "/usr/share/weewx/weewx/wxservices.py", line 45, in new_loop_packet
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: ****
>> self.calc.do_calculations(event.packet, 'loop')
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** File
>> "/usr/share/weewx/weewx/wxservices.py", line 189, in do_calculations
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** getattr(self,
>> 'calc_' + obs)(data_us, data_type)
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** File
>> "/usr/share/weewx/weewx/wxservices.py", line 306, in calc_maxSolarRad
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: ****
>> data['dateTime'], self.atc)
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** KeyError: 'dateTime'
>> Mar 25 15:35:57 ubuntu-freenas weewx[5297]: **** Exiting.
>>
>> Seems like it gets part way reading the payload, but then dies on trying
>> to convert the values? Not sure Bill, is what I'm trying to do here
>> possible?
>>
>> On Friday, 24 March 2017 20:23:37 UTC-4, mwall wrote:
>>>
>>>
>>>
>>> On Friday, March 24, 2017 at 8:13:57 PM UTC-4, Robert Mantel wrote:
>>>>
>>>> Bill, I have a question about the format of the MQTT message. I have
>>>> my raspberry pi running weewx, I also have that unit using mathew's mqtt
>>>> publisher to push data to my mosquitto server. I set up another virtual
>>>> machine running weewx with your driver, but for the life of me cannot get
>>>> your driver to pick up the info from it. It keeps saying the payload is
>>>> empty, but I have mqtt dashboard running on my android phone that I tested
>>>> with and get updates just fine. My goal is to actually migrate from my
>>>> fileparse setup on my PI to an mqtt based server on the freenas box.
>>>> Presumably Mathiew's mqtt implimentation will use the standard weewx
>>>> labels so I would assume I wouldn't even need a label map for the wxMesh
>>>> driver. Unless I'm way off on that.
>>>>
>>>
>>> the weewx-mqtt uploader publishes to the topic specified in [[MQTT]],
>>> which is 'weather' by default.
>>>
>>> so if you subscribe to /weather/+ you should see everything
>>>
>>> other mqtt uploader options:
>>>
>>> [StdRESTful]
>>> [[MQTT]]
>>> topic = weather
>>> append_units_label = True # should the units name be appended to
>>> the observation name?
>>> retain = False
>>> aggregation = individual, aggregate # upload each observation
>>> individually, and/or all in a single message
>>> unit_system = None # convert to the indicated unit system 'US',
>>> 'METRIC', or 'METRICWX'
>>> binding = archive # how often to emit data, either 'loop' or
>>> 'archive'
>>>
>>> you can also specify units and formatting for each observation, if
>>> necessary.
>>>
>>> m
>>>
>>