gw1000 driver: minor logging bug?

90 views
Skip to first unread message

Graham Eddy

unread,
May 26, 2023, 2:29:03 AM5/26/23
to WeeWX User
for a couple of weeks i have been getting gw1000 driver rebooting after three no-responses. old gw1000 unit seems otherwise fine; tried different power source, tried rebooting everything occasionally; still failed, sometimes after few mins, sometimes 2 hours, 5 hours, sometimes a couple of days. anyway: decided to replace old gw1000 unit with new gw2000 unit

pointed driver at IP address of gw2000 unit, fired it up, all works fine. we’ll see if i get intermittent failures over next few days…
looking at the logs closely, i think there is a small bug: it reports station model as None (as in “None address is 192.168.37.58:45000”).
tracing the logic in the driver, it sends a CMD_READ_FIRMWARE_VERSION request and gets response “GW2000C_V2.2.3” (reported in hex) but reports it as None

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Initializing weewx version 4.10.2

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Using Python 3.9.2 (default, Feb 28 2021, 17:03:44) #012[GCC 10.2.1 20210110]

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Located at /usr/bin/python3

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Platform Linux-6.1.21-v8+-aarch64-with-glibc2.31

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Locale is 'en_AU.UTF-8'

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Using configuration file /home/weewx/gw1000.conf

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: Debug is 3

May 26 15:33:31 ironbark weewx-gw1000[350660] INFO __main__: PID file is /run/weewx/gw1000.pid

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG __main__: Initializing engine

May 26 15:33:31 ironbark weewx-gw1000[350663] INFO weewx.engine: Loading station type GW1000 (user.gw1000)

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: Sending packet 'FF FF 26 03 29' to '192.168.37.58:45000'

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: Received response 'FF FF 26 09 94 3C C6 44 FC A3 A8'

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: Sending packet 'FF FF 50 03 53' to '192.168.37.58:45000'

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: Received response 'FF FF 50 12 0E 47 57 32 30 30 30 43 5F 56 32 2E 32 2E 33 BB'

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: Sending packet 'FF FF 30 03 33' to '192.168.37.58:45000'

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: Received response 'FF FF 30 0B 00 01 64 70 D1 4B 27 01 54'

May 26 15:33:31 ironbark weewx-gw1000[350663] INFO user.gw1000: field map is {'co2': 'co2', 'co2_24h_avg': 'co2_24h_avg', 'dateTime': 'datetime', 'daymaxwind': 'daymaxwind', 'dayRain': 'rainday', 'dewpoint': 'dewpoint', 'extraHumid1': 'humid1', 'extraHumid2': 'humid2', 'extraHumid3': 'humid3', 'extraHumid4': 'humid4', 'extraHumid5': 'humid5', 'extraHumid6': 'humid6', 'extraHumid7': 'humid7', 'extraHumid8': 'humid8', 'extraHumid17': 'humid17', 'extraTemp1': 'temp1', 'extraTemp2': 'temp2', 'extraTemp3': 'temp3', 'extraTemp4': 'temp4', 'extraTemp5': 'temp5', 'extraTemp6': 'temp6', 'extraTemp7': 'temp7', 'extraTemp8': 'temp8', 'extraTemp9': 'temp9', 'extraTemp10': 'temp10', 'extraTemp11': 'temp11', 'extraTemp12': 'temp12', 'extraTemp13': 'temp13', 'extraTemp14': 'temp14', 'extraTemp15': 'temp15', 'extraTemp16': 'temp16', 'extraTemp17': 'temp17', 'heatindex': 'heatindex', 'hourRain': 'rainhour', 'inHumidity': 'inhumid', 'inTemp': 'intemp', 'leafWet1': 'leafwet1', 'leafWet2': 'leafwet2', 'leafWet3': 'leafwet3', 'leafWet4': 'leafwet4', 'leafWet5': 'leafwet5', 'leafWet6': 'leafwet6', 'leafWet7': 'leafwet7', 'leafWet8': 'leafwet8', 'leak1': 'leak1', 'leak2': 'leak2', 'leak3': 'leak3', 'leak4': 'leak4', 'lightning_distance': 'lightningdist', 'lightning_last_det_time': 'lightningdettime', 'lightning_strike_count': 'lightning_strike_count', 'lightningcount': 'lightningcount', 'luminosity': 'light', 'monthRain': 'rainmonth', 'outHumidity': 'outhumid', 'outTemp': 'outtemp', 'pm2_5': 'pm251', 'pm2_51_24h_avg': 'pm251_24h_avg', 'pm2_52': 'pm252', 'pm2_52_24h_avg': 'pm252_24h_avg', 'pm2_53': 'pm253', 'pm2_53_24h_avg': 'pm253_24h_avg', 'pm2_54': 'pm254', 'pm2_54_24h_avg': 'pm254_24h_avg', 'pm2_55': 'pm255', 'pm2_55_24h_avg': 'pm255_24h_avg', 'pm10_0': 'pm10', 'pm10_0_24h_avg': 'pm10_24h_avg', 'pressure': 'absbarometer', 'radiation': 'uv', 'rain': 'rain', 'rainRate': 'rainrate', 'relbarometer': 'relbarometer', 'soilMoist1': 'soilmoist1', 'soilMoist2': 'soilmoist2', 'soilMoist3': 'soilmoist3', 'soilMoist4': 'soilmoist4', 'soilMoist5': 'soilmoist5', 'soilMoist6': 'soilmoist6', 'soilMoist7': 'soilmoist7', 'soilMoist8': 'soilmoist8', 'soilMoist9': 'soilmoist9', 'soilMoist10': 'soilmoist10', 'soilMoist11': 'soilmoist11', 'soilMoist12': 'soilmoist12', 'soilMoist13': 'soilmoist13', 'soilMoist14': 'soilmoist14', 'soilMoist15': 'soilmoist15', 'soilMoist16': 'soilmoist16', 'soilTemp1': 'soiltemp1', 'soilTemp2': 'soiltemp2', 'soilTemp3': 'soiltemp3', 'soilTemp4': 'soiltemp4', 'soilTemp5': 'soiltemp5', 'soilTemp6': 'soiltemp6', 'soilTemp7': 'soiltemp7', 'soilTemp8': 'soiltemp8', 'soilTemp9': 'soiltemp9', 'soilTemp10': 'soiltemp10', 'soilTemp11': 'soiltemp11', 'soilTemp12': 'soiltemp12', 'soilTemp13': 'soiltemp13', 'soilTemp14': 'soiltemp14', 'soilTemp15': 'soiltemp15', 'soilTemp16': 'soiltemp16', 'stormRain': 'rainevent', 'totalRain': 'raintotals', 'UV': 'uvi', 'weekRain': 'rainweek', 'wh24_batt': 'wh24_batt', 'wh24_sig': 'wh24_sig', 'wh25_batt': 'wh25_batt', 'wh25_sig': 'wh25_sig', 'wh26_batt': 'wh26_batt', 'wh26_sig': 'wh26_sig', 'wh31_ch1_batt': 'wh31_ch1_batt', 'wh31_ch1_sig': 'wh31_ch1_sig', 'wh31_ch2_batt': 'wh31_ch2_batt', 'wh31_ch2_sig': 'wh31_ch2_sig', 'wh31_ch3_batt': 'wh31_ch3_batt', 'wh31_ch3_sig': 'wh31_ch3_sig', 'wh31_ch4_batt': 'wh31_ch4_batt', 'wh31_ch4_sig': 'wh31_ch4_sig', 'wh31_ch5_batt': 'wh31_ch5_batt', 'wh31_ch5_sig': 'wh31_ch5_sig', 'wh31_ch6_batt': 'wh31_ch6_batt', 'wh31_ch6_sig': 'wh31_ch6_sig', 'wh31_ch7_batt': 'wh31_ch7_batt', 'wh31_ch7_sig': 'wh31_ch7_sig', 'wh31_ch8_batt': 'wh31_ch8_batt', 'wh31_ch8_sig': 'wh31_ch8_sig', 'wh35_ch1_batt': 'wh35_ch1_batt', 'wh35_ch1_sig': 'wh35_ch1_sig', 'wh35_ch2_batt': 'wh35_ch2_batt', 'wh35_ch2_sig': 'wh35_ch2_sig', 'wh35_ch3_batt': 'wh35_ch3_batt', 'wh35_ch3_sig': 'wh35_ch3_sig', 'wh35_ch4_batt': 'wh35_ch4_batt', 'wh35_ch4_sig': 'wh35_ch4_sig', 'wh35_ch5_batt': 'wh35_ch5_batt', 'wh35_ch5_sig': 'wh35_ch5_sig', 'wh35_ch6_batt': 'wh35_ch6_batt', 'wh35_ch6_sig': 'wh35_ch6_sig', 'wh35_ch7_batt': 'wh35_ch7_batt', 'wh35_ch7_sig': 'wh35_ch7_sig', 'wh35_ch8_batt': 'wh35_ch8_batt', 'wh35_ch8_sig': 'wh35_ch8_sig', 'wh40_batt': 'wh40_batt', 'wh40_sig': 'wh40_sig', 'wh41_ch1_batt': 'wh41_ch1_batt', 'wh41_ch1_sig': 'wh41_ch1_sig', 'wh41_ch2_batt': 'wh41_ch2_batt', 'wh41_ch2_sig': 'wh41_ch2_sig', 'wh41_ch3_batt': 'wh41_ch3_batt', 'wh41_ch3_sig': 'wh41_ch3_sig', 'wh41_ch4_batt': 'wh41_ch4_batt', 'wh41_ch4_sig': 'wh41_ch4_sig', 'wh45_batt': 'wh45_batt', 'wh45_sig': 'wh45_sig', 'wh51_ch1_batt': 'wh51_ch1_batt', 'wh51_ch1_sig': 'wh51_ch1_sig', 'wh51_ch2_batt': 'wh51_ch2_batt', 'wh51_ch2_sig': 'wh51_ch2_sig', 'wh51_ch3_batt': 'wh51_ch3_batt', 'wh51_ch3_sig': 'wh51_ch3_sig', 'wh51_ch4_batt': 'wh51_ch4_batt', 'wh51_ch4_sig': 'wh51_ch4_sig', 'wh51_ch5_batt': 'wh51_ch5_batt', 'wh51_ch5_sig': 'wh51_ch5_sig', 'wh51_ch6_batt': 'wh51_ch6_batt', 'wh51_ch6_sig': 'wh51_ch6_sig', 'wh51_ch7_batt': 'wh51_ch7_batt', 'wh51_ch7_sig': 'wh51_ch7_sig', 'wh51_ch8_batt': 'wh51_ch8_batt', 'wh51_ch8_sig': 'wh51_ch8_sig', 'wh51_ch9_batt': 'wh51_ch9_batt', 'wh51_ch9_sig': 'wh51_ch9_sig', 'wh51_ch10_batt': 'wh51_ch10_batt', 'wh51_ch10_sig': 'wh51_ch10_sig', 'wh51_ch11_batt': 'wh51_ch11_batt', 'wh51_ch11_sig': 'wh51_ch11_sig', 'wh51_ch12_batt': 'wh51_ch12_batt', 'wh51_ch12_sig': 'wh51_ch12_sig', 'wh51_ch13_batt': 'wh51_ch13_batt', 'wh51_ch13_sig': 'wh51_ch13_sig', 'wh51_ch14_batt': 'wh51_ch14_batt', 'wh51_ch14_sig': 'wh51_ch14_sig', 'wh51_ch15_batt': 'wh51_ch15_batt', 'wh51_ch15_sig': 'wh51_ch15_sig', 'wh51_ch16_batt': 'wh51_ch16_batt', 'wh51_ch16_sig': 'wh51_ch16_sig', 'wh55_ch1_batt': 'wh55_ch1_batt', 'wh55_ch1_sig': 'wh55_ch1_sig', 'wh55_ch2_batt': 'wh55_ch2_batt', 'wh55_ch2_sig': 'wh55_ch2_sig', 'wh55_ch3_batt': 'wh55_ch3_batt', 'wh55_ch3_sig': 'wh55_ch3_sig', 'wh55_ch4_batt': 'wh55_ch4_batt', 'wh55_ch4_sig': 'wh55_ch4_sig', 'wh57_batt': 'wh57_batt', 'wh57_sig': 'wh57_sig', 'wh65_batt': 'wh65_batt', 'wh65_sig': 'wh65_sig', 'wh68_batt': 'wh68_batt', 'wh68_sig': 'wh68_sig', 'windchill': 'windchill', 'windDir': 'winddir', 'windGust': 'gustspeed', 'windSpeed': 'windspeed', 'ws80_batt': 'ws80_batt', 'ws80_sig': 'ws80_sig', 'yearRain': 'rainyear'}

May 26 15:33:31 ironbark weewx-gw1000[350663] INFO user.gw1000: driver version is 0.4.0

May 26 15:33:31 ironbark weewx-gw1000[350663] INFO user.gw1000: None address is 192.168.37.58:45000

May 26 15:33:31 ironbark weewx-gw1000[350663] INFO user.gw1000: poll interval is 20 seconds

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: max tries is 3, retry wait time is 10 seconds

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: broadcast address is b'255.255.255.255':46000, broadcast timeout is 5 seconds

May 26 15:33:31 ironbark weewx-gw1000[350663] DEBUG user.gw1000: socket timeout is 2 seconds


i can live with this :-) but maybe add it to the list for checking.
cheers
⊣GE⊢

gjr80

unread,
May 26, 2023, 3:57:06 AM5/26/23
to weewx-user
You might want to upgrade your driver, support for the GW2000 was introduced in v0.5.0.

Gary

Graham Eddy

unread,
May 26, 2023, 4:40:01 AM5/26/23
to WeeWX User
hello gary,
happy to try the beta in production: my new gw2000 unit gave three no-response weewx reboot error again after 45 mins, before updating driver :-(

with 0.5.0b5 in place i get the right model identified now, but it now gripes (benignly?) about rain_data_struct code \x7B:

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Initializing weewx version 4.10.2

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Using Python 3.9.2 (default, Feb 28 2021, 17:03:44) #012[GCC 10.2.1 20210110]

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Located at /usr/bin/python3

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Platform Linux-6.1.21-v8+-aarch64-with-glibc2.31

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Locale is 'en_AU.UTF-8'

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Using configuration file /home/weewx/gw1000.conf

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: Debug is 3

May 26 18:10:19 ironbark weewx-gw1000[363797] INFO __main__: PID file is /run/weewx/gw1000.pid

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG __main__: Initializing engine

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO weewx.engine: Loading station type GW1000 (user.gw1000)

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Sending packet 'FF FF 26 03 29' to 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Received response 'FF FF 26 09 94 3C C6 44 FC A3 A8'

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Sending packet 'FF FF 50 03 53' to 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Received response 'FF FF 50 12 0E 47 57 32 30 30 30 43 5F 56 32 2E 32 2E 33 BB'

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Sending packet 'FF FF 30 03 33' to 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Received response 'FF FF 30 0B 00 01 64 70 F6 0A 27 01 38'

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Sending packet 'FF FF 3C 03 3F' to 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Received response 'FF FF 3C 01 5B 00 FF FF FF FF FF 00 01 FF FF FF FF FF 00 02 00 01 00 25 83 04 03 00 00 CC A1 10 04 04 FF FF FF FF 00 00 05 FF FF FF FF 00 00 06 FF FF FF FF 00 00 07 FF FF FF FF 00 00 08 FF FF FF FF 00 00 09 FF FF FF FF 00 00 0A FF FF FF FF 00 00 0B FF FF FF FF 00 00 0C FF FF FF FF 00 00 0D FF FF FF FF 00 00 0E 00 00 CE 57 0F 04 0F 00 00 DB 63 0F 00 10 00 00 DA E3 0F 04 11 FF FF FF FF 1F 00 12 FF FF FF FF 1F 00 13 FF FF FF FF 1F 00 14 FF FF FF FF 1F 00 15 FF FF FF FF 1F 00 16 00 00 00 04 04 04 17 00 00 00 4C 04 04 18 FF FF FF FF 0F 00 19 FF FF FF FF 0F 00 1A 00 00 D3 17 04 04 1B FF FF FF FF 0F 00 1C FF FF FF FF 0F 00 1D FF FF FF FF 0F 00 1E FF FF FF FF 0F 00 1F FF FF FF FF FF 00 20 FF FF FF FF FF 00 21 FF FF FF FF FF 00 22 FF FF FF FF FF 00 23 FF FF FF FF FF 00 24 FF FF FF FF FF 00 25 FF FF FF FF FF 00 26 FF FF FF FF FF 00 27 00 00 3C EC 06 04 28 FF FF FF FF FF 00 29 FF FF FF FF FF 00 2A FF FF FF FF FF 00 2B FF FF FF FF FF 00 2C FF FF FF FF FF 00 2D FF FF FF FF FF 00 2E FF FF FF FF FF 00 2F FF FF FF FF FF 00 30 FF FF FF FF FF 00 79'

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO user.gw1000: Legacy WH40 detected, WH40 battery state data will be ignored

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO user.gw1000: GatewayDriver: version is 0.5.0b5

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO user.gw1000: GatewayDriver: GW2000 address is 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO user.gw1000: GatewayDriver: poll interval is 20 seconds

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: GatewayDriver: max tries is 3, retry wait time is 10 seconds

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: GatewayDriver: broadcast address is 255.255.255.255:46000, broadcast timeout is 5 seconds

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: GatewayDriver: socket timeout is 2 seconds

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: GatewayDriver: field map is {'co2': 'co2', 'co2_24h_avg': 'co2_24h_avg', 'dateTime': 'datetime', 'daymaxwind': 'daymaxwind', 'dayRain': 't_rainday', 'dewpoint': 'dewpoint', 'extraHumid1': 'humid1', 'extraHumid2': 'humid2', 'extraHumid3': 'humid3', 'extraHumid4': 'humid4', 'extraHumid5': 'humid5', 'extraHumid6': 'humid6', 'extraHumid7': 'humid7', 'extraHumid8': 'humid8', 'extraHumid17': 'humid17', 'extraTemp1': 'temp1', 'extraTemp2': 'temp2', 'extraTemp3': 'temp3', 'extraTemp4': 'temp4', 'extraTemp5': 'temp5', 'extraTemp6': 'temp6', 'extraTemp7': 'temp7', 'extraTemp8': 'temp8', 'extraTemp9': 'temp9', 'extraTemp10': 'temp10', 'extraTemp11': 'temp11', 'extraTemp12': 'temp12', 'extraTemp13': 'temp13', 'extraTemp14': 'temp14', 'extraTemp15': 'temp15', 'extraTemp16': 'temp16', 'extraTemp17': 'temp17', 'heatindex': 'heatindex', 'inHumidity': 'inhumid', 'inTemp': 'intemp', 'leafWet1': 'leafwet1', 'leafWet2': 'leafwet2', 'leafWet3': 'leafwet3', 'leafWet4': 'leafwet4', 'leafWet5': 'leafwet5', 'leafWet6': 'leafwet6', 'leafWet7': 'leafwet7', 'leafWet8': 'leafwet8', 'leak1': 'leak1', 'leak2': 'leak2', 'leak3': 'leak3', 'leak4': 'leak4', 'lightning_distance': 'lightningdist', 'lightning_last_det_time': 'lightningdettime', 'lightning_strike_count': 'lightning_strike_count', 'lightningcount': 'lightningcount', 'luminosity': 'light', 'monthRain': 't_rainmonth', 'outHumidity': 'outhumid', 'outTemp': 'outtemp', 'p_dayRain': 'p_rainday', 'p_monthRain': 'p_rainmonth', 'p_rain': 'p_rain', 'p_rainRate': 'p_rainrate', 'p_stormRain': 'p_rainevent', 'p_weekRain': 'p_rainweek', 'p_yearRain': 'p_rainyear', 'pm2_5': 'pm251', 'pm2_51_24h_avg': 'pm251_24h_avg', 'pm2_52': 'pm252', 'pm2_52_24h_avg': 'pm252_24h_avg', 'pm2_53': 'pm253', 'pm2_53_24h_avg': 'pm253_24h_avg', 'pm2_54': 'pm254', 'pm2_54_24h_avg': 'pm254_24h_avg', 'pm2_55': 'pm255', 'pm2_55_24h_avg': 'pm255_24h_avg', 'pm10_0': 'pm10', 'pm10_0_24h_avg': 'pm10_24h_avg', 'pressure': 'absbarometer', 'radiation': 'uv', 'rain': 't_rain', 'rainRate': 't_rainrate', 'relbarometer': 'relbarometer', 'soilMoist1': 'soilmoist1', 'soilMoist2': 'soilmoist2', 'soilMoist3': 'soilmoist3', 'soilMoist4': 'soilmoist4', 'soilMoist5': 'soilmoist5', 'soilMoist6': 'soilmoist6', 'soilMoist7': 'soilmoist7', 'soilMoist8': 'soilmoist8', 'soilMoist9': 'soilmoist9', 'soilMoist10': 'soilmoist10', 'soilMoist11': 'soilmoist11', 'soilMoist12': 'soilmoist12', 'soilMoist13': 'soilmoist13', 'soilMoist14': 'soilmoist14', 'soilMoist15': 'soilmoist15', 'soilMoist16': 'soilmoist16', 'soilTemp1': 'soiltemp1', 'soilTemp2': 'soiltemp2', 'soilTemp3': 'soiltemp3', 'soilTemp4': 'soiltemp4', 'soilTemp5': 'soiltemp5', 'soilTemp6': 'soiltemp6', 'soilTemp7': 'soiltemp7', 'soilTemp8': 'soiltemp8', 'soilTemp9': 'soiltemp9', 'soilTemp10': 'soiltemp10', 'soilTemp11': 'soiltemp11', 'soilTemp12': 'soiltemp12', 'soilTemp13': 'soiltemp13', 'soilTemp14': 'soiltemp14', 'soilTemp15': 'soiltemp15', 'soilTemp16': 'soiltemp16', 'stormRain': 't_rainevent', 'totalRain': 't_raintotals', 'UV': 'uvi', 'weekRain': 't_rainweek', 'wh24_batt': 'wh24_batt', 'wh24_sig': 'wh24_sig', 'wh25_batt': 'wh25_batt', 'wh25_sig': 'wh25_sig', 'wh26_batt': 'wh26_batt', 'wh26_sig': 'wh26_sig', 'wh31_ch1_batt': 'wh31_ch1_batt', 'wh31_ch1_sig': 'wh31_ch1_sig', 'wh31_ch2_batt': 'wh31_ch2_batt', 'wh31_ch2_sig': 'wh31_ch2_sig', 'wh31_ch3_batt': 'wh31_ch3_batt', 'wh31_ch3_sig': 'wh31_ch3_sig', 'wh31_ch4_batt': 'wh31_ch4_batt', 'wh31_ch4_sig': 'wh31_ch4_sig', 'wh31_ch5_batt': 'wh31_ch5_batt', 'wh31_ch5_sig': 'wh31_ch5_sig', 'wh31_ch6_batt': 'wh31_ch6_batt', 'wh31_ch6_sig': 'wh31_ch6_sig', 'wh31_ch7_batt': 'wh31_ch7_batt', 'wh31_ch7_sig': 'wh31_ch7_sig', 'wh31_ch8_batt': 'wh31_ch8_batt', 'wh31_ch8_sig': 'wh31_ch8_sig', 'wh32_batt': 'wh32_batt', 'wh32_sig': 'wh32_sig', 'wh40_batt': 'wh40_batt', 'wh40_sig': 'wh40_sig', 'wh41_ch1_batt': 'wh41_ch1_batt', 'wh41_ch1_sig': 'wh41_ch1_sig', 'wh41_ch2_batt': 'wh41_ch2_batt', 'wh41_ch2_sig': 'wh41_ch2_sig', 'wh41_ch3_batt': 'wh41_ch3_batt', 'wh41_ch3_sig': 'wh41_ch3_sig', 'wh41_ch4_batt': 'wh41_ch4_batt', 'wh41_ch4_sig': 'wh41_ch4_sig', 'wh45_batt': 'wh45_batt', 'wh45_sig': 'wh45_sig', 'wh51_ch1_batt': 'wh51_ch1_batt', 'wh51_ch1_sig': 'wh51_ch1_sig', 'wh51_ch2_batt': 'wh51_ch2_batt', 'wh51_ch2_sig': 'wh51_ch2_sig', 'wh51_ch3_batt': 'wh51_ch3_batt', 'wh51_ch3_sig': 'wh51_ch3_sig', 'wh51_ch4_batt': 'wh51_ch4_batt', 'wh51_ch4_sig': 'wh51_ch4_sig', 'wh51_ch5_batt': 'wh51_ch5_batt', 'wh51_ch5_sig': 'wh51_ch5_sig', 'wh51_ch6_batt': 'wh51_ch6_batt', 'wh51_ch6_sig': 'wh51_ch6_sig', 'wh51_ch7_batt': 'wh51_ch7_batt', 'wh51_ch7_sig': 'wh51_ch7_sig', 'wh51_ch8_batt': 'wh51_ch8_batt', 'wh51_ch8_sig': 'wh51_ch8_sig', 'wh51_ch9_batt': 'wh51_ch9_batt', 'wh51_ch9_sig': 'wh51_ch9_sig', 'wh51_ch10_batt': 'wh51_ch10_batt', 'wh51_ch10_sig': 'wh51_ch10_sig', 'wh51_ch11_batt': 'wh51_ch11_batt', 'wh51_ch11_sig': 'wh51_ch11_sig', 'wh51_ch12_batt': 'wh51_ch12_batt', 'wh51_ch12_sig': 'wh51_ch12_sig', 'wh51_ch13_batt': 'wh51_ch13_batt', 'wh51_ch13_sig': 'wh51_ch13_sig', 'wh51_ch14_batt': 'wh51_ch14_batt', 'wh51_ch14_sig': 'wh51_ch14_sig', 'wh51_ch15_batt': 'wh51_ch15_batt', 'wh51_ch15_sig': 'wh51_ch15_sig', 'wh51_ch16_batt': 'wh51_ch16_batt', 'wh51_ch16_sig': 'wh51_ch16_sig', 'wh55_ch1_batt': 'wh55_ch1_batt', 'wh55_ch1_sig': 'wh55_ch1_sig', 'wh55_ch2_batt': 'wh55_ch2_batt', 'wh55_ch2_sig': 'wh55_ch2_sig', 'wh55_ch3_batt': 'wh55_ch3_batt', 'wh55_ch3_sig': 'wh55_ch3_sig', 'wh55_ch4_batt': 'wh55_ch4_batt', 'wh55_ch4_sig': 'wh55_ch4_sig', 'wh57_batt': 'wh57_batt', 'wh57_sig': 'wh57_sig', 'wh65_batt': 'wh65_batt', 'wh65_sig': 'wh65_sig', 'wh68_batt': 'wh68_batt', 'wh68_sig': 'wh68_sig', 'windchill': 'windchill', 'windDir': 'winddir', 'windGust': 'gustspeed', 'windSpeed': 'windspeed', 'wn34_ch1_batt': 'wn34_ch1_batt', 'wn34_ch1_sig': 'wn34_ch1_sig', 'wn34_ch2_batt': 'wn34_ch2_batt', 'wn34_ch2_sig': 'wn34_ch2_sig', 'wn34_ch3_batt': 'wn34_ch3_batt', 'wn34_ch3_sig': 'wn34_ch3_sig', 'wn34_ch4_batt': 'wn34_ch4_batt', 'wn34_ch4_sig': 'wn34_ch4_sig', 'wn34_ch5_batt': 'wn34_ch5_batt', 'wn34_ch5_sig': 'wn34_ch5_sig', 'wn34_ch6_batt': 'wn34_ch6_batt', 'wn34_ch6_sig': 'wn34_ch6_sig', 'wn34_ch7_batt': 'wn34_ch7_batt', 'wn34_ch7_sig': 'wn34_ch7_sig', 'wn34_ch8_batt': 'wn34_ch8_batt', 'wn34_ch8_sig': 'wn34_ch8_sig', 'wn35_ch1_batt': 'wn35_ch1_batt', 'wn35_ch1_sig': 'wn35_ch1_sig', 'wn35_ch2_batt': 'wn35_ch2_batt', 'wn35_ch2_sig': 'wn35_ch2_sig', 'wn35_ch3_batt': 'wn35_ch3_batt', 'wn35_ch3_sig': 'wn35_ch3_sig', 'wn35_ch4_batt': 'wn35_ch4_batt', 'wn35_ch4_sig': 'wn35_ch4_sig', 'wn35_ch5_batt': 'wn35_ch5_batt', 'wn35_ch5_sig': 'wn35_ch5_sig', 'wn35_ch6_batt': 'wn35_ch6_batt', 'wn35_ch6_sig': 'wn35_ch6_sig', 'wn35_ch7_batt': 'wn35_ch7_batt', 'wn35_ch7_sig': 'wn35_ch7_sig', 'wn35_ch8_batt': 'wn35_ch8_batt', 'wn35_ch8_sig': 'wn35_ch8_sig', 'ws80_batt': 'ws80_batt', 'ws80_sig': 'ws80_sig', 'ws90_batt': 'ws90_batt', 'ws90_sig': 'ws90_sig', 'yearRain': 't_rainyear'}

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.engine.StdTimeSynch

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.engine.StdTimeSynch

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: No services in service group data_services

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.engine.StdConvert

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO weewx.engine: StdConvert target unit is 0x1

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.engine.StdConvert

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.engine.StdCalibrate

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.engine.StdCalibrate

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.engine.StdQC

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.engine.StdQC

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.wxservices.StdWXCalculate

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.wxservices: Calculations for LOOP packets: {'pressure': 'prefer_hardware', 'altimeter': 'prefer_hardware', 'appTemp': 'prefer_hardware', 'barometer': 'prefer_hardware', 'cloudbase': 'prefer_hardware', 'dewpoint': 'prefer_hardware', 'heatindex': 'prefer_hardware', 'humidex': 'prefer_hardware', 'inDewpoint': 'prefer_hardware', 'maxSolarRad': 'prefer_hardware', 'rainRate': 'prefer_hardware', 'windchill': 'prefer_hardware', 'windrun': 'prefer_hardware', 'windDir': 'software', 'windGustDir': 'software'}

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.wxservices: Calculations for archive records: {'pressure': 'prefer_hardware', 'altimeter': 'prefer_hardware', 'appTemp': 'prefer_hardware', 'barometer': 'prefer_hardware', 'cloudbase': 'prefer_hardware', 'dewpoint': 'prefer_hardware', 'ET': 'software', 'heatindex': 'prefer_hardware', 'humidex': 'prefer_hardware', 'inDewpoint': 'prefer_hardware', 'maxSolarRad': 'prefer_hardware', 'rainRate': 'prefer_hardware', 'windchill': 'prefer_hardware', 'windrun': 'prefer_hardware', 'windDir': 'software', 'windGustDir': 'software'}

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Sending packet 'FF FF 27 03 2A' to 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.manager: Daily summary version is 4.0

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.wxservices.StdWXCalculate

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdWXXTypes

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdWXXTypes

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdPressureCooker

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdPressureCooker

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdRainRater

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdRainRater

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Received response 'FF FF 27 00 6D 01 00 BE 06 36 08 26 AD 09 26 AD 02 00 51 07 63 0A 00 A0 0B 00 00 0C 00 00 15 00 00 00 00 16 00 00 17 00 2A 00 50 4D 00 65 51 00 BE 4E 00 6D 2C 2A 30 36 62 00 00 00 03 61 64 70 61 EB 60 0C 19 00 0A 0E 00 00 10 00 00 11 00 1D 12 00 00 01 F5 13 00 00 08 E6 0D 00 00 70 00 E6 31 00 1A 00 20 00 17 00 1C 01 EC 01 DF 06 56'

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdDelta

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdDelta

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.engine.StdArchive

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO weewx.engine: Archive will use data binding wx_binding

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO weewx.engine: Record generation will be attempted in 'software'

May 26 18:10:19 ironbark weewx-gw1000[363800] INFO weewx.engine: Using archive interval of 300 seconds (software record generation)

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Use LOOP data in hi/low calculations: 1

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Finished loading service weewx.engine.StdArchive

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG weewx.engine: Loading service weewx.restx.StdStationRegistry

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Sending packet 'FF FF 57 03 5A' to 192.168.37.58:45000

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Received response 'FF FF 57 00 29 0E 00 00 10 00 00 00 00 11 00 00 00 1D 12 00 00 01 F5 13 00 00 08 E6 0D 00 00 0F 00 70 88 00 00 00 7A 01 7B 00 DF'

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Unknown field address '7B' detected. Remaining data '00' ignored.

May 26 18:10:19 ironbark weewx-gw1000[363800] DEBUG user.gw1000: Parsed data: {'intemp': 19.0, 'inhumid': 54, 'absbarometer': 990.1, 'relbarometer': 990.1, 'outtemp': 8.1, 'outhumid': 99, 'winddir': 160, 'windspeed': 0.0, 'gustspeed': 0.0, 'light': 0.0, 'uv': 0.0, 'uvi': 0, 'pm251': 8.0, 'pm251_24h_avg': 10.1, 'pm252': 19.0, 'pm252_24h_avg': 10.9, 'soilmoist1': 42, 'soilmoist3': 54, 'lightningcount': 3, 'lightningdettime': 1685086699, 'lightningdist': 12, 'daymaxwind': 1.0, 't_rainrate': 0.0, 't_rainday': 0.0, 't_rainweek': 2.9, 't_rainmonth': 50.1, 't_rainyear': 227.8, 't_rainevent': 0.0, 'temp17': 23.0, 'humid17': 49, 'pm10': 2.6, 'pm10_24h_avg': 3.2, 'pm255': 2.3, 'pm255_24h_avg': 2.8, 'co2': 492, 'co2_24h_avg': 479, 't_rainhour': 11.2, 'day_reset': 0, 'week_reset': 0, 'annual_reset': 0, 'rain_source': 1, 'datetime': 1685088619}


hopefully my no-response errors go away with new unit hardware and its new network i/f (ether rather than wlan) and yet another USB power source being tried
⊣GE⊢

--
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 weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/4c12bf60-4121-4f54-b119-015eb9e38aadn%40googlegroups.com.

gjr80

unread,
May 26, 2023, 6:03:06 AM5/26/23
to weewx-user
v0.5.0b5 has been released for close on a year, it would essentially have been v0.5.0 but never got around to releasing it. It should be stable.

The unknown field 7B log entry can be safely ignored, explanation at last para in this post. It will not be logged when you set debug = 0. v0.6.0 (based on more recent API documentation) successfully decodes field 7B, once I get some documentation fixed v0.6.0 will be released.

Gary

Graham Eddy

unread,
May 28, 2023, 3:28:26 AM5/28/23
to WeeWX User
v0.5.0b5 is in place and i continue to get timeouts and restarts.
(logging issue is resolved; i am preferring to continue in this thread for situational continuity e.g. logs are all relevant)

in brief, at intermittent times (less than an hour apart to several days apart), i get three no-response exceptions so a crash/restart of driver.
until several weeks ago it worked happily without timeouts.
i have moved to different power source; was on UPS and now is not.
i have replaced old gw1000 unit with new gw2000 unit with no noticeable improvement.
i have changed [GW1000]socket_timout to 10s, then to 6s to avoid unfortunate congruity with polling_interval=10s, with no noticeable change

the only environmental change i can think of was introducing dnsmasq for dns/dhcp into home office network but that was months ago, but i did drop a secondary, non-authoritative dsnmasq server on the weewx server somewhere about this timeframe (hence my idle wonder about dhcp lease interference)

i have now instrumented the driver with lots more debug statements around every step of sending command & receiving response with gw1000, set the [GW1000]socket_timeout back to 2s, and wait to see what i learn from this extra level of detail.
cheers
⊣GE⊢

Graham Eddy

unread,
May 28, 2023, 3:31:05 AM5/28/23
to WeeWX User
i should also have mentioned that this same weewx server also hosts another instance of weewx, using serial vantage driver, that is having no such problems
⊣GE⊢

Graham Eddy

unread,
May 28, 2023, 6:10:52 AM5/28/23
to WeeWX User
the greater detail shows it is timing out on the s.connect() call, after going long periods without such timeouts. i have noticed that we open and close the socket quite rapidly at times, so i wonder if there is some python garbage-collect lag or TCP FIN lag manifesting

i see in python manual

Note

 

close() releases the resource associated with a connection but does not necessarily close the connection immediately. If you want to close the connection in a timely fashion, call shutdown() before close().

so i have experimentally inserted a s.shutdown() call just before the s.connect() call. we’ll see if it makes any difference...
⊣GE⊢

-- 
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 weewx-user+...@googlegroups.com.

Graham Eddy

unread,
May 28, 2023, 8:08:28 AM5/28/23
to WeeWX User
nope, adding s.shutdown() call didn’t help, still timing out

now i’ll try increasing [GW1000]socket_timeout to 59s to see if it blows even that long a period
⊣GE⊢

Graham Eddy

unread,
May 31, 2023, 8:36:58 AM5/31/23
to WeeWX User
with very long timeout periods allowing underlying problems to report themselves, i get occasional flurries of ’No route to host errors’, which cause s.connect to fail after 18-19 secs, followed by similar that then times out after 2-3 secs, then it works. i would describe it as a local networking issue not a gw1000 driver issue

but i did have to insert that extra debug line to report the reason s.connect was failing to pin it down

May 31 20:46:23 ironbark weewx-gw1000[807215] DEBUG user.gw1000: #GE before s.connect ipaddr=b'192.168.37.58' port=45000

May 31 20:46:41 ironbark weewx-gw1000[807215] DEBUG user.gw1000: #GE caught socket.error [Errno 113] No route to host

May 31 20:46:41 ironbark weewx-gw1000[807215] DEBUG user.gw1000: #GE before s.shutdown

May 31 20:46:41 ironbark weewx-gw1000[807215] DEBUG user.gw1000: #GE shutdown failed: 107

May 31 20:46:41 ironbark weewx-gw1000[807215] DEBUG user.gw1000: #GE before s.close

May 31 20:46:41 ironbark weewx-gw1000[807215] DEBUG user.gw1000: Failed attempt 1 to send command 'CMD_GW1000_LIVEDATA': [Errno 113] No route to host


cheers
⊣GE⊢

Reply all
Reply to author
Forward
0 new messages