Davis Weather Link Live driver with UDP

216 views
Skip to first unread message

Bastiaan Meelberg

unread,
Jun 28, 2020, 5:28:58 AM6/28/20
to weewx-development
The last few weeks I have been working on a weewx driver for Davis Weather Link Live. This device can give regular intervals of full ISS data and a 2.5 seconds interval of UDP data containing wind and rain. See this site for more information https://weatherlink.github.io/weatherlink-live-local-api/

At this moment there is a working beta version: https://github.com/grebleem/WeatherLinkliveUDP for who is interested. The driver can be seen in action here https://meteo-otterlo.nl

However, the JSON data can be a bit odd when using multiple stations. That is if a second ISS for an anemometer or a separate temperature sensor is installed. 

So if you have a Davis Weather Link Live (WLL), it would helpful if you post the JSON response from a http://1.2.3.4:80/v1/current_conditions request in a web browser (where 1.2.3.4 is the ip address of the WLL). So I can implement multiple sensors in this driver. 

Also at the davis-udp.py program will write the UDP JSON to a file, these also would be very helpful!

Thanks,
Bastiaan
davis-udp.py

Maarten van der Hoeven

unread,
Jun 28, 2020, 5:36:14 AM6/28/20
to weewx-development
Find attached the json-output, created by davis-udp.py


{"data":{"did":"001D0A71154A","ts":1593336954,"conditions":[{"lsid":321275,"data_structure_type":1,"txid":2,"temp": 66.5,"hum":64.6,"dew_point": 54.2,"wet_bulb": 58.0,"heat_index": 66.1,"wind_chill": 62.5,"thw_index": 62.1,"thsw_index": 71.4,"wind_speed_last":11.00,"wind_dir_last":213,"wind_speed_avg_last_1_min":14.43,"wind_dir_scalar_avg_last_1_min":228,"wind_speed_avg_last_2_min":13.75,"wind_dir_scalar_avg_last_2_min":227,"wind_speed_hi_last_2_min":22.00,"wind_dir_at_hi_speed_last_2_min":243,"wind_speed_avg_last_10_min":13.37,"wind_dir_scalar_avg_last_10_min":223,"wind_speed_hi_last_10_min":22.00,"wind_dir_at_hi_speed_last_10_min":243,"rain_size":2,"rain_rate_last":0,"rain_rate_hi":0,"rainfall_last_15_min":0,"rain_rate_hi_last_15_min":0,"rainfall_last_60_min":0,"rainfall_last_24_hr":20,"rain_storm":24,"rain_storm_start_at":1593210300,"solar_rad":359,"uv_index":5.1,"rx_state":0,"trans_battery_flag":0,"rainfall_daily":0,"rainfall_monthly":175,"rainfall_year":175,"rain_storm_last":6,"rain_storm_last_start_at":1592760421,"rain_storm_last_end_at":1592866861},{"lsid":321279,"data_structure_type":1,"txid":3,"temp": 71.3,"hum":null,"dew_point":null,"wet_bulb":null,"heat_index":null,"wind_chill":null,"thw_index":null,"thsw_index":null,"wind_speed_last":null,"wind_dir_last":null,"wind_speed_avg_last_1_min":null,"wind_dir_scalar_avg_last_1_min":null,"wind_speed_avg_last_2_min":null,"wind_dir_scalar_avg_last_2_min":null,"wind_speed_hi_last_2_min":null,"wind_dir_at_hi_speed_last_2_min":null,"wind_speed_avg_last_10_min":null,"wind_dir_scalar_avg_last_10_min":null,"wind_speed_hi_last_10_min":null,"wind_dir_at_hi_speed_last_10_min":null,"rain_size":1,"rain_rate_last":0,"rain_rate_hi":0,"rainfall_last_15_min":0,"rain_rate_hi_last_15_min":0,"rainfall_last_60_min":0,"rainfall_last_24_hr":0,"rain_storm":null,"rain_storm_start_at":null,"solar_rad":null,"uv_index":null,"rx_state":0,"trans_battery_flag":0,"rainfall_daily":0,"rainfall_monthly":0,"rainfall_year":0,"rain_storm_last":null,"rain_storm_last_start_at":null,"rain_storm_last_end_at":null},{"lsid":321271,"data_structure_type":4,"temp_in": 76.3,"hum_in":47.8,"dew_point_in": 55.1,"heat_index_in": 76.1},{"lsid":321270,"data_structure_type":3,"bar_sea_level":29.883,"bar_trend": 0.039,"bar_absolute":29.870}]},"error":null}

Op zondag 28 juni 2020 11:28:58 UTC+2 schreef Bastiaan Meelberg:
test1593336823.json
test1593336838.json

Maarten van der Hoeven

unread,
Jun 28, 2020, 5:37:58 AM6/28/20
to weewx-development
Running the beta, it throws an error instantly:

Jun 28 11:37:16 ubuntu weewx[4761] INFO __main__: Starting up weewx version 4.1.1
Jun 28 11:37:16 ubuntu weewx[4761] DEBUG weewx.engine: Station does not support reading the time
Jun 28 11:37:16 ubuntu weewx[4761] INFO weewx.engine: Using binding 'wx_binding' to database 'weewxtest'
Jun 28 11:37:16 ubuntu weewx[4761] INFO weewx.manager: Starting backfill of daily summaries
Jun 28 11:37:16 ubuntu weewx[4761] INFO weewx.engine: Starting main packet loop.
Jun 28 11:37:16 ubuntu weewx[4761] DEBUG urllib3.connectionpool: Starting new HTTP connection (1): 192.168.2.33:80
Jun 28 11:37:16 ubuntu weewx[4761] DEBUG urllib3.connectionpool: http://192.168.2.33:80 "GET /v1/current_conditions HTTP/1.1" 200 None
Jun 28 11:37:16 ubuntu weewx[4761] DEBUG weewx.manager: Daily summary version is 2.0
Jun 28 11:37:16 ubuntu weewx[4761] INFO weewx.engine: Main loop exiting. Shutting engine down.
Jun 28 11:37:16 ubuntu weewx[4761] DEBUG weewx.restx: Shut down MQTT thread.
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__: Caught unrecoverable exception:
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****  'WeatherLinkLiveUDPDriver' object has no attribute 'PreviousDatestamp'
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****  Traceback (most recent call last):
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd", line 154, in main
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****      engine.run()
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 188, in run
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****      for packet in self.console.genLoopPackets():
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****    File "/usr/share/weewx/user/weatherlinkliveudp.py", line 182, in genLoopPackets
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****      packet = self.DecodeDataWLL(CurrentConditions['data'])
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****    File "/usr/share/weewx/user/weatherlinkliveudp.py", line 276, in DecodeDataWLL
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****      logdbg(f'Daily rain reset - next reset midnight {str(self.PreviousDatestamp)}')
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****  AttributeError: 'WeatherLinkLiveUDPDriver' object has no attribute 'PreviousDatestamp'
Jun 28 11:37:16 ubuntu weewx[4761] CRITICAL __main__:     ****  Exiting.




Op zondag 28 juni 2020 11:28:58 UTC+2 schreef Bastiaan Meelberg:
The last few weeks I have been working on a weewx driver for Davis Weather Link Live. This device can give regular intervals of full ISS data and a 2.5 seconds interval of UDP data containing wind and rain. See this site for more information https://weatherlink.github.io/weatherlink-live-local-api/

Bastiaan Meelberg

unread,
Jun 28, 2020, 5:40:49 AM6/28/20
to weewx-development
I see I still use the lsid of mine station in some part of the driver, will update is in a few minutes.

flor...@pre-vost.fr

unread,
Jun 28, 2020, 5:41:35 AM6/28/20
to weewx-development
Hi !
Nice to have a driver for udp request !

I'm very glad to work with you to develop the driver to have in futur a single driver :) 

Bastiaan Meelberg

unread,
Jun 28, 2020, 5:44:04 AM6/28/20
to weewx-development
Maarten,

The driver is updated. Try again please.

On Sunday, June 28, 2020 at 11:37:58 AM UTC+2, Maarten van der Hoeven wrote:

Bastiaan Meelberg

unread,
Jun 28, 2020, 5:44:42 AM6/28/20
to weewx-development
Yes! That would be great to get one solid WLL driver.

Cheers,
Bastiaan

Bastiaan Meelberg

unread,
Jun 28, 2020, 5:48:59 AM6/28/20
to weewx-development
Very helpful Maarten! Thank you.

The temp with tx_id 3 that is an 'extra' temp sensor?

Maarten van der Hoeven

unread,
Jun 28, 2020, 5:51:02 AM6/28/20
to weewx-development
Driver updated, data is okay now!

Also running MQTT and bechertown: I see windspeed reported as km/h, although I've set the unit to m/s in weewx.conf

Yes, tx_id 3 is an extra temp sensor. I've got the ISS on ID=2, and the temp sensor on ID=3

Op zondag 28 juni 2020 om 11:48:59 UTC+2 schreef Bastiaan Meelberg:

flor...@pre-vost.fr

unread,
Jun 28, 2020, 6:00:39 AM6/28/20
to weewx-development
Bastiaan,

How can I find lsid without make a request to know in json format ?

I don't know if the best practice is to check via lsid or data_structure_type ?

Thank's,

Bastiaan Meelberg

unread,
Jun 28, 2020, 6:00:44 AM6/28/20
to weewx-development
The MQTT is sending the wind in kph:

{"dateTime": "1593338025.0", "windSpeed_kph": "4.828032", "winDir": "319.0", "windGust_kph": "25.749504", "windGustDir": "169.0", "rain_cm": "0.0", "rainRate_mm_per_hour": "0.0", "beaufort_count": "1.0", "maxSolarRad_Wpm2": "822.1835611108015", "hourRain_cm": "0.0", "rain24_cm": "0.06", "dayRain_mm": "0.0", "usUnits": "16.0"}


The Belchertown skin is not altering the MQTT message, so I made this change to the weewx.conf file to display the correct unit:

    # Various options for customizing your reports.

    [[Defaults]]
        [[[Units]]]
            [[[[Groups]]]]
                group_speed = km_per_hour    # Options are 'mile_per_hour', 'km_per_hour', 'knot', or 'meter_per_second'

If you need another MQTT need to send it.

Maarten van der Hoeven

unread,
Jun 28, 2020, 6:10:23 AM6/28/20
to weewx-development
My apologies for my misinformation... I thought I had set the windspeed om meter_per_seconds, but it was still on the default km_per_hour.

I've changed the units in weewx.conf, now displaying as meter_per_second


Op zondag 28 juni 2020 12:00:44 UTC+2 schreef Bastiaan Meelberg:

Bastiaan Meelberg

unread,
Jun 28, 2020, 6:15:09 AM6/28/20
to weewx-development
You are right. It needs a better solution, but it works for now.

The problem with multiple sensors is that there is a second conditions in data with the data_structure_type. But some values are 'null' and some are '0' (e.g. rain_rate_last).
I will change it in the future that the user can set a tx_id for ISS, wind and so on.

Bastiaan Meelberg

unread,
Jun 30, 2020, 1:11:01 PM6/30/20
to weewx-development
Made a lot of changes the last few days to make this driver more solid. 
For those who is interested please check out the latest development branch:


Make shure the stanza in weewx.conf look something like this:
[WeatherLinkLiveUDP]
    wll_ip = 192.168.1.47
    poll_interval = 20    # number of seconds (min. is 10 seconds)
    driver = user.weatherlinkliveudp

The next implementation will be extra temp sensor.

Maarten van der Hoeven

unread,
Jun 30, 2020, 4:08:26 PM6/30/20
to weewx-development
Yes, running nice!

I have an external temp sensor; willing to test also!

Op dinsdag 30 juni 2020 19:11:01 UTC+2 schreef Bastiaan Meelberg:

Bastiaan Meelberg

unread,
Jul 1, 2020, 3:41:55 AM7/1/20
to weewx-development
Good to hear!

If you have time, can you check the latest development build: https://github.com/grebleem/weewx-weatherlinkliveudp/archive/development.zip 
If you add this to the stanza
extra_id =3

You should have the extra sensor data in weewx.

Maarten van der Hoeven

unread,
Jul 1, 2020, 3:40:31 PM7/1/20
to weewx-development
Copied the development-driver on the right place, and added extra_id =3 to the driver-config in weewx.conf

I ran weewxd from the prompt; I do not see any extratemp3 passing by.

root@ubuntu:/home/maarten/Downloads# /usr/bin/weewxd
LOOP:   2020-07-01 21:35:49 CEST (1593632149) altimeter: 1006.8298368803157, appTemp: 17.28481418176042, barometer: 1007.1457023136227, beaufort: 1, cloudbase: 621.1850988795652, dateTime: 1593632149, dewpoint: 12.611111111111112, heatindex: 17.72222222222222, humidex: 20.314658361183554, inDewpoint: 14.444444444444445, inHumidity: 45.2, inTemp: 27.333333333333332, maxSolarRad: None, outHumidity: 72.1, outTemp: 17.72222222222222, pressure: 1006.7393357345647, radiation: 16, rainRate: 0.0, signal1: 0, txBatteryStatus: 0, usUnits: 17, UV: 0.0, windchill: 17.72222222222222, windDir: 258, windGust: 3.57632, windGustDir: 260, windSpeed: 1.78816
LOOP:   2020-07-01 21:35:49 CEST (1593632149) beaufort: 1, dateTime: 1593632149, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 258, windGust: 3.57632, windGustDir: 260, windSpeed: 1.78816
LOOP:   2020-07-01 21:35:52 CEST (1593632152) beaufort: 2, dateTime: 1593632152, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 254, windGust: 3.57632, windGustDir: 260, windSpeed: 2.2352
LOOP:   2020-07-01 21:35:54 CEST (1593632154) beaufort: 1, dateTime: 1593632154, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 250, windGust: 3.57632, windGustDir: 260, windSpeed: 1.78816
LOOP:   2020-07-01 21:35:57 CEST (1593632157) beaufort: 1, dateTime: 1593632157, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 250, windGust: 3.57632, windGustDir: 260, windSpeed: 1.34112
LOOP:   2020-07-01 21:35:59 CEST (1593632159) beaufort: 1, dateTime: 1593632159, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 250, windGust: 3.57632, windGustDir: 260, windSpeed: 1.34112
LOOP:   2020-07-01 21:36:02 CEST (1593632162) beaufort: 1, dateTime: 1593632162, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 255, windGust: 3.57632, windGustDir: 252, windSpeed: 1.34112
LOOP:   2020-07-01 21:36:04 CEST (1593632164) beaufort: 1, dateTime: 1593632164, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 259, windGust: 3.57632, windGustDir: 252, windSpeed: 1.78816
LOOP:   2020-07-01 21:36:07 CEST (1593632167) beaufort: 2, dateTime: 1593632167, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 267, windGust: 3.57632, windGustDir: 252, windSpeed: 2.68224
LOOP:   2020-07-01 21:36:09 CEST (1593632169) beaufort: 1, dateTime: 1593632169, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 256, windGust: 3.57632, windGustDir: 252, windSpeed: 1.78816
LOOP:   2020-07-01 21:36:09 CEST (1593632169) altimeter: 1006.7959690570649, appTemp: 17.28481418176042, barometer: 1007.1118384320345, beaufort: 1, cloudbase: 621.1850988795652, dateTime: 1593632169, dewpoint: 12.611111111111112, heatindex: 17.72222222222222, humidex: 20.314658361183554, inDewpoint: 14.444444444444445, inHumidity: 45.2, inTemp: 27.333333333333332, maxSolarRad: None, outHumidity: 72.1, outTemp: 17.72222222222222, pressure: 1006.7054718529766, radiation: 16, rainRate: 0.0, signal1: 0, txBatteryStatus: 0, usUnits: 17, UV: 0.0, windchill: 17.72222222222222, windDir: 256, windGust: 3.57632, windGustDir: 260, windSpeed: 1.78816
LOOP:   2020-07-01 21:36:12 CEST (1593632172) beaufort: 1, dateTime: 1593632172, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 258, windGust: 3.57632, windGustDir: 252, windSpeed: 1.78816
LOOP:   2020-07-01 21:36:14 CEST (1593632174) beaufort: 2, dateTime: 1593632174, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 265, windGust: 3.57632, windGustDir: 252, windSpeed: 3.12928
LOOP:   2020-07-01 21:36:17 CEST (1593632177) beaufort: 2, dateTime: 1593632177, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 265, windGust: 3.57632, windGustDir: 252, windSpeed: 3.12928
REC:    2020-07-01 21:36:00 CEST (1593632160) altimeter: 1006.8298368803157, appTemp: 17.28481418176042, barometer: 1007.1457023136227, beaufort: 1.1666666666666667, cloudbase: 621.1850988795652, dateTime: 1593632160, dewpoint: 12.611111111111112, ET: 0.0011517070455688023, heatindex: 17.72222222222222, humidex: 20.314658361183554, inDewpoint: 14.444444444444445, inHumidity: 45.2, inTemp: 27.333333333333332, interval: 1.0, maxSolarRad: None, outHumidity: 72.1, outTemp: 17.72222222222222, pressure: 1006.7393357345647, radiation: 16.0, rainRate: 0.0, signal1: 0.0, txBatteryStatus: 0.0, usUnits: 17, UV: 0.0, windchill: 17.72222222222222, windDir: 253.651796853672, windGust: 3.57632, windGustDir: 260, windrun: 0.1028192, windSpeed: 1.7136533333333333
LOOP:   2020-07-01 21:36:17 CEST (1593632177) altimeter: 1006.7959690570649, appTemp: 16.346030181760423, barometer: 1007.1118384320345, beaufort: 2, cloudbase: 621.1850988795652, dateTime: 1593632177, dewpoint: 12.611111111111112, heatindex: 17.72222222222222, humidex: 20.314658361183554, inDewpoint: 14.444444444444445, inHumidity: 45.2, inTemp: 27.333333333333332, maxSolarRad: None, outHumidity: 72.1, outTemp: 17.72222222222222, pressure: 1006.7054718529766, radiation: 16, rainRate: 0.0, signal1: 0, txBatteryStatus: 0, usUnits: 17, UV: 0.0, windchill: 17.72222222222222, windDir: 265, windGust: 3.57632, windGustDir: 260, windSpeed: 3.12928
LOOP:   2020-07-01 21:36:19 CEST (1593632179) beaufort: 2, dateTime: 1593632179, maxSolarRad: None, rainRate: 0.0, usUnits: 17, windDir: 257, windGust: 3.57632, windGustDir: 252, windSpeed: 3.12928



Op woensdag 1 juli 2020 09:41:55 UTC+2 schreef Bastiaan Meelberg:

Bastiaan Meelberg

unread,
Jul 1, 2020, 5:35:46 PM7/1/20
to weewx-development

That is strange, it is setup now to LOOP as extraTemp1. If you want it as nr 3 that can be made modular as well. Can you save a few 'current_conditions' JSON files (not copy paste). I can load them up in the debugger, see what goes wrong.

Maarten van der Hoeven

unread,
Jul 2, 2020, 3:57:25 AM7/2/20
to weewx-development
No data in whatever extratemp. I got the external sensor on channel id = 3 (hence extra_id=3), but I suspect the data comes into extratemp1. I d not have any preference on that. Mysql-output, and three json files of current conditions

mysql> select datetime,from_unixtime(datetime),outtemp,extratemp1,extratemp2,extratemp3 from archive order by datetime desc limit 10;
+------------+-------------------------+--------------------+------------+------------+------------+
| datetime   | from_unixtime(datetime) | outtemp            | extratemp1 | extratemp2 | extratemp3 |
+------------+-------------------------+--------------------+------------+------------+------------+
| 1593676080 | 2020-07-02 09:48:00     |  16.63888888888889 |       NULL |       NULL |       NULL |
| 1593676020 | 2020-07-02 09:47:00     |  16.61111111111111 |       NULL |       NULL |       NULL |
| 1593675960 | 2020-07-02 09:46:00     |  16.61111111111111 |       NULL |       NULL |       NULL |
| 1593675840 | 2020-07-02 09:44:00     | 16.555555555555557 |       NULL |       NULL |       NULL |
| 1593669720 | 2020-07-02 08:02:00     | 15.347222222222223 |       NULL |       NULL |       NULL |
| 1593669660 | 2020-07-02 08:01:00     |  15.38888888888889 |       NULL |       NULL |       NULL |
| 1593669540 | 2020-07-02 07:59:00     | 15.370370370370372 |       NULL |       NULL |       NULL |
| 1593632400 | 2020-07-01 21:40:00     | 17.666666666666668 |       NULL |       NULL |       NULL |
| 1593632340 | 2020-07-01 21:39:00     | 17.666666666666668 |       NULL |       NULL |       NULL |
| 1593632160 | 2020-07-01 21:36:00     |  17.72222222222222 |       NULL |       NULL |       NULL |
+------------+-------------------------+--------------------+------------+------------+------------+
10 rows in set (0.00 sec)


Weewx.conf:
[WeatherLinkLiveUDP]
    wll_ip = 192.168.2.33

    poll_interval = 20    # number of seconds (min. is 10 seconds)
    driver = user.weatherlinkliveudp
    extra_id = 3



Op woensdag 1 juli 2020 om 23:35:46 UTC+2 schreef Bastiaan Meelberg:
current3.json
current1.json
current2.json

Bastiaan Meelberg

unread,
Jul 2, 2020, 6:10:15 AM7/2/20
to weewx-development
Very helpful! 
Just found out that the extra_id from the .conf file is a str type. Comparing this to an int will never match. 

Maarten van der Hoeven

unread,
Jul 2, 2020, 7:44:43 AM7/2/20
to weewx-development
Yes, that makes a difference! Also showing okay on the website!

mysql> select datetime,from_unixtime(datetime),outtemp,extratemp1,extratemp2,extratemp3 from archive order by datetime desc limit 10;
+------------+-------------------------+--------------------+--------------------+------------+------------+

| datetime   | from_unixtime(datetime) | outtemp            | extratemp1         | extratemp2 | extratemp3 |
+------------+-------------------------+--------------------+--------------------+------------+------------+
| 1593690180 | 2020-07-02 13:43:00     | 19.444444444444443 |  20.24074074074074 |       NULL |       NULL |
| 1593690120 | 2020-07-02 13:42:00     | 19.388888888888893 |  20.12962962962963 |       NULL |       NULL |
| 1593690060 | 2020-07-02 13:41:00     |  19.34722222222222 | 19.916666666666668 |       NULL |       NULL |
| 1593690000 | 2020-07-02 13:40:00     | 19.333333333333332 | 19.833333333333332 |       NULL |       NULL |
| 1593689940 | 2020-07-02 13:39:00     | 19.333333333333332 | 19.740740740740737 |       NULL |       NULL |
| 1593689820 | 2020-07-02 13:37:00     | 19.333333333333332 |               NULL |       NULL |       NULL |
| 1593689760 | 2020-07-02 13:36:00     | 19.333333333333332 |               NULL |       NULL |       NULL |
| 1593689700 | 2020-07-02 13:35:00     | 19.333333333333332 |               NULL |       NULL |       NULL |
| 1593676680 | 2020-07-02 09:58:00     |  16.72222222222222 |               NULL |       NULL |       NULL |
| 1593676620 | 2020-07-02 09:57:00     |  16.72222222222222 |               NULL |       NULL |       NULL |
+------------+-------------------------+--------------------+--------------------+------------+------------+

10 rows in set (0.00 sec)



Op donderdag 2 juli 2020 om 12:10:15 UTC+2 schreef Bastiaan Meelberg:

Maarten van der Hoeven

unread,
Jul 2, 2020, 8:50:13 AM7/2/20
to weewx-development
A question. Is 'rain' still work in progress? I notice a repeating NULL-value (no worries, testing against a test-database within a virtual machine. fully seperated from my 'production'-site)

mysql> select datetime,from_unixtime(datetime),outtemp,extratemp1,rain,ET from archive order by datetime desc limit 10;
+------------+-------------------------+--------------------+--------------------+------+-----------------------+
| datetime   | from_unixtime(datetime) | outtemp            | extratemp1         | rain | ET                    |
+------------+-------------------------+--------------------+--------------------+------+-----------------------+
| 1593693840 | 2020-07-02 14:44:00     |                 20 |  21.64814814814815 | NULL |  0.004293896657547285 |
| 1593693780 | 2020-07-02 14:43:00     |                 20 | 21.833333333333332 | NULL |  0.004304368552713827 |
| 1593693720 | 2020-07-02 14:42:00     |                 20 | 21.833333333333332 | NULL |  0.004311294113859122 |
| 1593693660 | 2020-07-02 14:41:00     |                 20 | 21.833333333333332 | NULL |  0.004316451537816886 |
| 1593693600 | 2020-07-02 14:40:00     | 20.041666666666664 | 21.930555555555554 | NULL |  0.004321999760490444 |
| 1593693540 | 2020-07-02 14:39:00     | 20.055555555555554 | 22.074074074074073 | NULL |  0.004325689825000265 |
| 1593693480 | 2020-07-02 14:38:00     | 20.083333333333332 | 22.166666666666664 | NULL |  0.004326424995698886 |
| 1593693300 | 2020-07-02 14:35:00     |  20.09259259259259 | 22.277777777777775 | NULL | 0.0042999357683097044 |
| 1593693240 | 2020-07-02 14:34:00     |  20.11111111111111 |   22.2037037037037 | NULL |   0.00429406704665147 |
| 1593693180 | 2020-07-02 14:33:00     |  20.12962962962963 |  22.11111111111111 | NULL |  0.004320916570420523 |
+------------+-------------------------+--------------------+--------------------+------+-----------------------+
10 rows in set (0.01 sec)


Op donderdag 2 juli 2020 om 13:44:43 UTC+2 schreef Maarten van der Hoeven:

Bastiaan Meelberg

unread,
Jul 2, 2020, 9:06:20 AM7/2/20
to weewx-development
Sorry about that. I was surprised as well. I accidentally comment out the rain to get in the Loop, during debugging.

It should be good in the current master build:

https://github.com/grebleem/weewx-weatherlinkliveudp/archive/master.zip


I'm also working on a weatherlink import, at this moment the program will produce a .cvs and wee_import can import this file. Keep you posted!

Maarten van der Hoeven

unread,
Jul 2, 2020, 1:38:42 PM7/2/20
to weewx-development
Yes, okay now (two top records). It gave me also the opportunity to iron out a bug in my own weewx-service. Hadnt caught the situation that rain might be NULL :)

mysql> select datetime,from_unixtime(datetime),outtemp,extratemp1,rain,ET from archive order by datetime desc limit 10;
+------------+-------------------------+--------------------+--------------------+------+-----------------------+
| datetime   | from_unixtime(datetime) | outtemp            | extratemp1         | rain | ET                    |
+------------+-------------------------+--------------------+--------------------+------+-----------------------+
| 1593711420 | 2020-07-02 19:37:00     | 18.916666666666664 |  19.47222222222222 |    0 |  0.003361470627628734 |
| 1593711360 | 2020-07-02 19:36:00     |  18.88888888888889 | 19.388888888888893 |    0 | 0.0034129711072366695 |
| 1593711060 | 2020-07-02 19:31:00     |  18.77777777777778 | 19.055555555555557 | NULL |  0.003440203244074394 |
| 1593711000 | 2020-07-02 19:30:00     |  18.77777777777778 | 18.930555555555554 | NULL | 0.0034680891688093356 |
| 1593710940 | 2020-07-02 19:29:00     |  18.72222222222222 |  18.88888888888889 | NULL |                  NULL |
| 1593695820 | 2020-07-02 15:17:00     |  19.61111111111111 | 20.370370370370367 | NULL | 0.0031779497530594037 |
| 1593695760 | 2020-07-02 15:16:00     |  19.61111111111111 | 20.444444444444443 | NULL |  0.003190712625375343 |
| 1593695700 | 2020-07-02 15:15:00     | 19.555555555555557 | 20.444444444444443 | NULL |  0.003232360174501971 |
| 1593695640 | 2020-07-02 15:14:00     | 19.555555555555557 | 20.444444444444443 | NULL | 0.0032646454867943896 |
| 1593695580 | 2020-07-02 15:13:00     | 19.555555555555557 | 20.444444444444443 | NULL |  0.003283176153447136 |
+------------+-------------------------+--------------------+--------------------+------+-----------------------+

10 rows in set (0.00 sec)


Op donderdag 2 juli 2020 15:06:20 UTC+2 schreef Bastiaan Meelberg:

Maarten van der Hoeven

unread,
Jul 4, 2020, 5:56:25 AM7/4/20
to weewx-development
I did run the driver for a couple of days now, all data seems okay to me. Today it is said it's going to rain, so going to test that data as well today.

Op donderdag 2 juli 2020 om 19:38:42 UTC+2 schreef Maarten van der Hoeven:

Bastiaan Meelberg

unread,
Jul 4, 2020, 6:27:28 AM7/4/20
to weewx-development
Good to hear! I all-ready had some rain and it looks good. Thank you for testing.

The WeatherLink v2 API weewx-import will go live tonight or tomorrow, so you can import large periods from WeatherLink to weewx.

Florentin Prevost

unread,
Jul 4, 2020, 6:30:23 AM7/4/20
to weewx-development
Why do you copy idea ?
I'm glad to work together for the wll driver but it seems that you work to same fonctions...

Maarten van der Hoeven

unread,
Jul 4, 2020, 6:30:33 AM7/4/20
to weewx-development
Good to hear about the import! Just finished the import of old archived data into my weatherlink-account this week, going back to August 2012. So have a nice set of testdata :)

Op zaterdag 4 juli 2020 om 12:27:28 UTC+2 schreef Bastiaan Meelberg:

Bastiaan Meelberg

unread,
Jul 4, 2020, 6:34:55 AM7/4/20
to weewx-development
What do you mean?

Florentin Prevost

unread,
Jul 4, 2020, 6:38:54 AM7/4/20
to weewx-development
Like we work on the same functions for Wll driver. Why not to work together to developp the driver ? Each one developp the same code and it would a shame to work 2 times for the same code ...

Bastiaan Meelberg

unread,
Jul 4, 2020, 6:52:09 AM7/4/20
to weewx-development
I just program what I need, because I like programming.
 
Use my program (you all-ready did I see in you're driver ;-), or don't use it. That is the good think of open source. 

Your importer is doing the calculation e.g. Fahrenheit to Celsius I don't like that, weewx is way better in making the conversions. 
Also I just want to import a date range and not have to figure out my station_id. So I decided to make my own.

But feel free to make a better driver/importer. 

Florentin Prevost

unread,
Jul 4, 2020, 7:09:56 AM7/4/20
to weewx-development
It just a proposition.

Also, I mentionned you in credits.

Maarten van der Hoeven

unread,
Jul 4, 2020, 7:36:23 AM7/4/20
to weewx-development
Yes, agree. I like the weather, I like programming, I like to cooperate. It's my current lack of python-knowledge that I want to contribute the best I can do right now, and that is testing both of your drivers. I dont see it as competition, and may the best win. Far from that. In the end, it's my small contribution to the community in testing two drivers, and make them both better working. In hoping that the user pick the driver it feels most comfortably with, or not.

Op zaterdag 4 juli 2020 12:52:09 UTC+2 schreef Bastiaan Meelberg:

flor...@pre-vost.fr

unread,
Jul 5, 2020, 8:02:38 AM7/5/20
to weewx-development
Sorry for that. 

There was a  misunderstandings . Let's forget this conversation;)  

-fp 

Maarten van der Hoeven

unread,
Jul 7, 2020, 7:09:34 AM7/7/20
to weewx-development
Hi Bastiaan,

something I can test?

Op zondag 5 juli 2020 14:02:38 UTC+2 schreef flor...@pre-vost.fr:

Bastiaan Meelberg

unread,
Jul 7, 2020, 3:33:57 PM7/7/20
to weewx-development
Hi Maarten,

If you want you can give the importer a try:


Thanks.

Maarten van der Hoeven

unread,
Jul 7, 2020, 3:57:43 PM7/7/20
to weewx-development
Okay, have played with it.

First I needed to create a tmp-directory. Without it, the csv-file cannot be created.
Started the importer to import one single day: 2020-01-01. It creates an empty csv-file

maarten@ubuntu:~/weatherlink/tmp$ ls -las
total 8
4 drwxrwxr-x 2 maarten maarten 4096 Jul  7 21:49 .
4 drwxrwxr-x 3 maarten maarten 4096 Jul  7 21:47 ..
0 -rw-rw-r-- 1 maarten maarten    0 Jul  7 21:47 davis1594151264.csv
0 -rw-rw-r-- 1 maarten maarten    0 Jul  7 21:49 davis1594151341.csv
maarten@ubuntu:~/weatherlink/tmp$

with errors

maarten@ubuntu:~/weatherlink$ python3 weewx_weatherlink --date=2020-01-01
Use date: 2020-01-01 00:00:00
1 [1577833200] - [1577919600]: 2020-01-01 00:00:00 - 2020-01-02 00:00:00
Finding stations:

station id: 92884
Name:       Welsumerveld
Country:    Netherlands
latitude:   52.310936
longitude:  6.0856133


  -- WARNING! --
 Running WeeWX during a wee_import session can lead to abnormal termination of the import.
 If WeeWX must remain running (e.g., so that live data is not lost) run the wee_import session on another machine
 or to a second database and merge the in-use and second database once the import is complete.

Is this correct? [y/n] y
Fetching 1577833200 - 1577919600
Fetching 1577833200 - 1577919600
Traceback (most recent call last):
  File "weewx_weatherlink", line 361, in <module>
    main()
  File "weewx_weatherlink", line 340, in main
    writer.writerow(wu_data[0].keys())
IndexError: list index out of range

Running a range:
maarten@ubuntu:~/weatherlink$ python3 weewx_weatherlink --startdate=2020-01-01 --enddate=2020-01-15
Use dates: 2020-01-01 00:00:00 - 2020-01-15 00:00:00
1 [1577833200.0] - [1577919600.0]: 2020-01-01 00:00:00 - 2020-01-02 00:00:00
2 [1577919600.0] - [1578006000.0]: 2020-01-02 00:00:00 - 2020-01-03 00:00:00
3 [1578006000.0] - [1578092400.0]: 2020-01-03 00:00:00 - 2020-01-04 00:00:00
4 [1578092400.0] - [1578178800.0]: 2020-01-04 00:00:00 - 2020-01-05 00:00:00
5 [1578178800.0] - [1578265200.0]: 2020-01-05 00:00:00 - 2020-01-06 00:00:00
6 [1578265200.0] - [1578351600.0]: 2020-01-06 00:00:00 - 2020-01-07 00:00:00
7 [1578351600.0] - [1578438000.0]: 2020-01-07 00:00:00 - 2020-01-08 00:00:00
8 [1578438000.0] - [1578524400.0]: 2020-01-08 00:00:00 - 2020-01-09 00:00:00
9 [1578524400.0] - [1578610800.0]: 2020-01-09 00:00:00 - 2020-01-10 00:00:00
10 [1578610800.0] - [1578697200.0]: 2020-01-10 00:00:00 - 2020-01-11 00:00:00
11 [1578697200.0] - [1578783600.0]: 2020-01-11 00:00:00 - 2020-01-12 00:00:00
12 [1578783600.0] - [1578870000.0]: 2020-01-12 00:00:00 - 2020-01-13 00:00:00
13 [1578870000.0] - [1578956400.0]: 2020-01-13 00:00:00 - 2020-01-14 00:00:00
14 [1578956400.0] - [1579042800.0]: 2020-01-14 00:00:00 - 2020-01-15 00:00:00
15 [1579042800.0] - [1579042800]: 2020-01-15 00:00:00 - 2020-01-15 00:00:00
Finding stations:

station id: 92884
Name:       Welsumerveld
Country:    Netherlands
latitude:   52.310936
longitude:  6.0856133


  -- WARNING! --
 Running WeeWX during a wee_import session can lead to abnormal termination of the import.
 If WeeWX must remain running (e.g., so that live data is not lost) run the wee_import session on another machine
 or to a second database and merge the in-use and second database once the import is complete.

Is this correct? [y/n] y
Fetching 1577833200 - 1577919600
Fetching 1577833200 - 1577919600
Fetching 1577919600 - 1578006000
Fetching 1577919600 - 1578006000
Fetching 1578006000 - 1578092400
Fetching 1578006000 - 1578092400
Fetching 1578092400 - 1578178800
Fetching 1578092400 - 1578178800
Fetching 1578178800 - 1578265200
Fetching 1578178800 - 1578265200
Fetching 1578265200 - 1578351600
Fetching 1578265200 - 1578351600
Fetching 1578351600 - 1578438000
Fetching 1578351600 - 1578438000
Fetching 1578438000 - 1578524400
Fetching 1578438000 - 1578524400
Fetching 1578524400 - 1578610800
Fetching 1578524400 - 1578610800
Fetching 1578610800 - 1578697200
Fetching 1578610800 - 1578697200
Fetching 1578697200 - 1578783600
Fetching 1578697200 - 1578783600
Fetching 1578783600 - 1578870000
Fetching 1578783600 - 1578870000
Fetching 1578870000 - 1578956400
Fetching 1578870000 - 1578956400
Fetching 1578956400 - 1579042800
Fetching 1578956400 - 1579042800
Fetching 1579042800 - 1579042800
Fetching 1579042800 - 1579042800
Traceback (most recent call last):
  File "weewx_weatherlink", line 361, in <module>
    main()
  File "weewx_weatherlink", line 340, in main
    writer.writerow(wu_data[0].keys())
IndexError: list index out of range
maarten@ubuntu:~/weatherlink$


Creating another empty csv-file

maarten@ubuntu:~/weatherlink/tmp$ ls -las
total 8
4 drwxrwxr-x 2 maarten maarten 4096 Jul  7 21:56 .
4 drwxrwxr-x 3 maarten maarten 4096 Jul  7 21:47 ..
0 -rw-rw-r-- 1 maarten maarten    0 Jul  7 21:47 davis1594151264.csv
0 -rw-rw-r-- 1 maarten maarten    0 Jul  7 21:49 davis1594151341.csv
0 -rw-rw-r-- 1 maarten maarten    0 Jul  7 21:56 davis1594151771.csv
maarten@ubuntu:~/weatherlink/tmp$


Op dinsdag 7 juli 2020 om 21:33:57 UTC+2 schreef Bastiaan Meelberg:

Bastiaan Meelberg

unread,
Jul 7, 2020, 4:54:33 PM7/7/20
to weewx-development
Somehow the tmp/ dir is not created. I dropped the tmp for now. Can you try again?

Maarten van der Hoeven

unread,
Jul 7, 2020, 5:07:46 PM7/7/20
to weewx-development
Yes, now the csv (although still empty) is created in the 'root'-dir. No need for tmp anymore

maarten@ubuntu:~/weatherlink$ ls -las
total 36
 4 drwxrwxr-x  2 maarten maarten  4096 Jul  7 23:06 .
 4 drwxr-xr-x 24 maarten maarten  4096 Jul  7 21:41 ..
 0 -rw-rw-r--  1 maarten maarten     0 Jul  7 23:06 davis1594155999.csv
 8 -rw-r--r--  1 maarten maarten  7282 Jul  7 21:43 davis-csv.conf
 4 -rw-r--r--  1 maarten maarten  2242 Jul  7 21:31 README.md
16 -rw-r--r--  1 maarten maarten 13259 Jul  7 22:53 weewx_weatherlink


Op dinsdag 7 juli 2020 om 22:54:33 UTC+2 schreef Bastiaan Meelberg:

Maarten van der Hoeven

unread,
Jul 8, 2020, 1:37:41 PM7/8/20
to weewx-development
Hi,

I've been testing with the driver for a couple of days now, and all data is looking fine. I didnt see any strange deviation from the data that comes from your driver, and the data that comes from my WeatherLink IP (set up in another environment).

So, it look good!


Op dinsdag 7 juli 2020 om 23:07:46 UTC+2 schreef Maarten van der Hoeven:

Maarten van der Hoeven

unread,
Jul 8, 2020, 3:10:36 PM7/8/20
to weewx-development
If I change the code to (#2, #0 and #3 are the values in your code), the data is imported okay (except extratemp1). I guess it has something to do with my ISS not having ID=1, but ID=2. An my external temp sensor running on ID=3

Find attached the resulting csv file

        baro_data = weather_data['sensors'][2]['data'] #2
        iss_data = weather_data['sensors'][1]['data'] #0
        indoor_data = weather_data['sensors'][3]['data'] #3


Op dinsdag 7 juli 2020 om 21:33:57 UTC+2 schreef Bastiaan Meelberg:
Hi Maarten,
davis1594235224.csv

Maarten van der Hoeven

unread,
Jul 8, 2020, 3:15:35 PM7/8/20
to weewx-development
I'm sorry, too quick. Previous code-change was lacking external values. With this adjustment, all internal and external data is collected by the import (except extratemp1).

        baro_data = weather_data['sensors'][2]['data'] #2
        iss_data = weather_data['sensors'][4]['data'] #0

        indoor_data = weather_data['sensors'][3]['data'] #3


Find attached the produced cvs, now filled with correct data

Op woensdag 8 juli 2020 om 21:10:36 UTC+2 schreef Maarten van der Hoeven:
davis1594235577.csv

Bastiaan Meelberg

unread,
Jul 8, 2020, 3:22:33 PM7/8/20
to weewx-development
Thanks for testing.

The 'problem' with api v2 is that it delivers a HUGE amount of data. With my setup it works perfect, I can import months at the time.

I think indeed of you different setup it is not working. Maybe a question/answer that the program is showing bit of the data and asks if it is the data the user wants to import.

I added a 'print url' to the latest build, if you can try an import of a short period, lets say 30 min and use the link to download the JSON data in a web-browser. (The link is valid for a few minutes, due to the timestamp in the signature) and post it.

Maarten van der Hoeven

unread,
Jul 8, 2020, 3:53:38 PM7/8/20
to weewx-development
maarten@ubuntu:~/weatherlink$ python3 weewx_weatherlink -s 2020-07-07T12:00 -e 2020-07-07T12:30
Use dates: 2020-07-07 12:00:00 - 2020-07-07 12:30:00
1 [1594116000] - [1594117800]: 2020-07-07 12:00:00 - 2020-07-07 12:30:00
Finding stations:



Op woensdag 8 juli 2020 om 21:22:33 UTC+2 schreef Bastiaan Meelberg:
92884.json

Bastiaan Meelberg

unread,
Jul 8, 2020, 4:09:30 PM7/8/20
to weewx-development
Interesting. I made a small change so the program will show the sensors found. 
It looks like the extra temp is dataset 0 (lets skip that for now), barometer is set 2, inside is set 3 and the remaining data is set 4. So like you figured out, this should give the correct data:

baro_data = weather_data['sensors'][2]['data'
]
iss_data = weather_data[
'sensors'][4]['data']
indoor_data = weather_data[
'sensors'][3]['data']

Maarten van der Hoeven

unread,
Jul 8, 2020, 4:26:40 PM7/8/20
to weewx-development
fetched the latest from github, and changed the datasets to 2,4,3. Valid data downloaded. Output on screen:
Fetching 1594116000 - 1594117800
The following sensors are found:
Product name: WeatherLink LIVE Health
        category:    Health
        sensor type: 504
Product name: Sensor Suite
        category:    Other
        sensor type: 55
Product name: Barometer
        category:    Barometer
        sensor type: 242
Product name: Inside Temp/Hum
        category:    Inside Temp/Hum
        sensor type: 243
Product name: Vantage Pro2 Plus with 24-hr-Fan-Aspirated Radiation shield, includes UV & Solar Radiation Sensors
        category:    ISS
        sensor type: 46


Op woensdag 8 juli 2020 om 22:09:30 UTC+2 schreef Bastiaan Meelberg:

flor...@pre-vost.fr

unread,
Jul 8, 2020, 4:37:13 PM7/8/20
to weewx-development
HI Bastiaan,

If you want to check all values on JSON data for all sensor, you can make a while function with the lenght of sensors like this : length_json = len(data_wl['sensors'])

Maarten van der Hoeven

unread,
Jul 12, 2020, 12:09:14 PM7/12/20
to weewx-development
Strange. I want to use the driver in my 'production'-environment, and got this error. Any clue? As on my 'test'-environment it is running okay.

Jul 12 18:03:16 weewx weewx[907239] INFO __main__: Using configuration file /etc/weewx/weewx.conf
Jul 12 18:03:16 weewx weewx[907239] INFO __main__: Debug is 1
Jul 12 18:03:16 weewx weewx[907239] DEBUG __main__: Initializing engine
Jul 12 18:03:16 weewx weewx[907239] INFO weewx.engine: Loading station type WeatherLinkLiveUDP (user.weatherlinkliveudp)
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__: Caught OSError: [Errno 98] Address already in use
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****  Traceback (most recent call last):
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd", line 148, in main
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****      engine = weewx.engine.StdEngine(config_dict)
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 69, in __init__
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****      self.setupStation(config_dict)
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 92, in setupStation
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****      __import__(driver)
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****    File "/usr/share/weewx/user/weatherlinkliveudp.py", line 50, in <module>
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****      comsocket.bind(('', 22222))
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****  OSError: [Errno 98] Address already in use
Jul 12 18:03:16 weewx weewx[907239] CRITICAL __main__:     ****  Waiting 10 seconds then retrying...


Driver:
maarten@weewx:/usr/share/weewx/user$ ls -las
total 184
  4 drwxr-xr-x  4 root root   4096 Jul 12 18:07 .
  4 drwxr-xr-x 11 root root   4096 Jun  2 11:15 ..
112 -rw-rw-r--  1 root root 112300 May 27 19:54 belchertown.py
  4 -rw-rw-r--  1 root root   1795 Jul 10 11:36 calcdrought.py
  4 -rw-r--r--  1 root root    541 May 25 21:10 extensions.py
  4 -rw-r--r--  1 root root    306 Jun  2 00:16 __init__.py
  4 drwxr-xr-x  7 root root   4096 Jul 12 18:00 installer
  4 -rw-r--r--  1 root root   3857 Jun  3 12:17 lastrain.py
 20 -rw-r--r--  1 root root  19742 May 27 15:25 mqtt.py
  4 drwxr-xr-x  2 root root   4096 Jul 12 18:00 __pycache__
 20 -rw-r--r--  1 root root  16841 Jul 12 18:00 weatherlinkliveudp.py



Conf:
<cut>
    # station_type = Vantage
    station_type = WeatherLinkLiveUDP
<cut>
##############################################################################

[WeatherLinkLiveUDP]
    wll_ip = 192.168.2.33
    poll_interval = 10
    driver = user.weatherlinkliveudp
    extra_id = 3





Op woensdag 8 juli 2020 om 19:37:41 UTC+2 schreef Maarten van der Hoeven:

Bastiaan Meelberg

unread,
Jul 12, 2020, 12:44:41 PM7/12/20
to weewx-development
It is unable to open socket 22222, it looks like an other weewx is running. 

Maarten van der Hoeven

unread,
Jul 12, 2020, 12:45:11 PM7/12/20
to weewx-development
Okay, found it. I also run CumulusMX on my production-box, listening to port 22222. It seems that one application at the time can 'lock' onto a specific port? Maybe CumulusMX claims full ownership of this port, becoming unavailbe for other applications?

Now I've stopped CumulusMX, and weewx (and this driver) runs without troubles.



Op zondag 12 juli 2020 om 18:09:14 UTC+2 schreef Maarten van der Hoeven:
Reply all
Reply to author
Forward
0 new messages