Christian, I wrote the wxMesh driver, and bonjour81 <https://github.com/bonjour81> improved it with his fork. He changed it to publish each datum separately. My version expects an MQTT publication on the topic "weather" that looks like this text string:
TIME:0,AMBT:37.73,BARP:1013.48,RHUM:73.44,HUMT:31.07,IRRA:7,BATV:942,PHOV:522,SYST:36.50 namely key:value pairs with a colon between the key and value, and a comma between the pairs. The label_map section in wxMesh config maps the keys to weewx values. My configuration is: [wxMesh] driver = user.wxMesh # MQTT specifics host = localhost # MQTT broker hostname client = XXXXX username = XXXXX password = XXXXX topic = weather # topic is all weather (indoor and outdoor, e.g.) poll_interval = 1 [[label_map]] TIME = dateTime HUMT = outTemp RHUM = outHumidity INTE = inTemp INHU = inHumidity BARP = barometer IRRA = radiation PHOV = supplyVoltage BATV = consBatteryVoltage AMBT = extraTemp1 SYST = extraTemp2 WDIR = windDir WIND = windSpeed Not every publication has to have every possible key. I have an outdoor station which provides some data, and a separate indoor one which provides indoor temperature and humidity. The wxMesh driver subscription brings both in, pushes them in to baseline weewx, which magically combines them into loop packets. Sparse documentation is here <https://github.com/morrowwm/weewxMQTT/wiki/Configuration>. Also, my driver does not attempt to reconnect if it loses the connection to the MQTT broker. That would be a nice enhancement. I don't have issues with staying connected on my setup, so this is only an issue when I restart mosqitto. I'm currently spending my free time building hardware (an anemometer right now), so haven't made improvements to wxMesh a priority. I currently use nrf24L01 radios, but plan to switch to rfm69 for increased range. I could share the station software which reads the radio traffic and publishes MQTT with you if that would help. On Monday, 25 September 2017 19:22:27 UTC-3, Christian Peters wrote: > > Hm...wxMesh and even a python test script using paho.mqtt lost connection > from time to time. > But the python demo script reconnects while wxMesh seems not to reconnect > so the empty payload starts and didn't recover. wxMQTT seems to > reconnect...but it anyway stops after a while grabbing data.....(IP ....153 > (debian))! > > 1506377499: New client connected from 192.168.2.153 as weewx_mqttc (c1, > k60, u'default_usernameXXX'). > 1506377506: New connection from 192.168.2.143 on port 1883. > 1506377506: New client connected from 192.168.2.143 as mosqpub|7457-balin > (c1, k60). > 1506377506: Client mosqpub|7457-balin disconnected. > 1506377506: New connection from 192.168.2.143 on port 1883. > 1506377506: New client connected from 192.168.2.143 as mosqpub|7459-balin > (c1, k60). > 1506377506: Client mosqpub|7459-balin disconnected. > 1506377516: New connection from 192.168.2.143 on port 1883. > 1506377516: New client connected from 192.168.2.143 as mosqpub|7462-balin > (c1, k60). > 1506377516: Client mosqpub|7462-balin disconnected. > 1506377516: New connection from 192.168.2.143 on port 1883. > 1506377516: New client connected from 192.168.2.143 as mosqpub|7464-balin > (c1, k60). > 1506377516: Client mosqpub|7464-balin disconnected. > 1506377517: Client mosqsub/4185-debian has exceeded timeout, disconnecting. > 1506377517: Socket error on client mosqsub/4185-debian, disconnecting. > 1506377520: New connection from 192.168.2.153 on port 1883. > > Sadly I'm not able to fix this....maybe someone will read this and maybe > have a look on the wexMesh/wxMQQT driver.... > > In the thread Neil posted there was a hint that we have to take care that > if the connection is lost to the broker the driver has to reconnect...but > this seems not to be working inside weewx? > > Regards, > > Christian > > > > >