If this could be helpful, using a SDR with rtl_433 I get packets like this:
$ rtl_433 -f 868330000 -G 4 -v time : 2021-05-24 22:10:03 model : AmbientWeather-WH31E id : 202 Channel : 1 Battery : 0 Temperature: 22.5 C Humidity : 255 % Extra Data: cd00000000 Integrity : CRC Il giorno lunedì 24 maggio 2021 alle 21:55:03 UTC+2 [email protected] ha scritto: > Hi Lang, > thank you for answering. So, the configuration file is named > 'piscina.conf' because I am using WeeWX in multi mode, and each station has > its personal configuration file. In the specific case, I'm using the WN30 > sensor for measuring a pole water temperature. Here is the complete log: > May 24 21:44:31 raspberrypi weewx-piscina[2019]: engine: Initializing > weewx version 3.9.2 > May 24 21:44:31 raspberrypi weewx-piscina[2019]: engine: Using Python > 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0] > May 24 21:44:31 raspberrypi weewx-piscina[2019]: engine: Platform > Linux-5.4.51+-armv6l-with-debian-10.4 > May 24 21:44:31 raspberrypi weewx-piscina[2019]: engine: Locale is > 'en_GB.UTF-8' > May 24 21:44:31 raspberrypi weewx-piscina[2019]: engine: pid file is > /var/run/weewx-piscina.pid > May 24 21:44:31 raspberrypi weewx-piscina[2023]: engine: Using > configuration file /etc/weewx/piscina.conf > May 24 21:44:31 raspberrypi weewx-piscina[2023]: engine: Debug is 1 > May 24 21:44:31 raspberrypi weewx-piscina[2023]: engine: Initializing > engine > May 24 21:44:31 raspberrypi weewx-piscina[2023]: engine: Loading station > type GW1000 (user.gw1000) > May 24 21:44:34 raspberrypi weewx-piscina[2023]: gw1000: Failed to obtain > response to attempt 1 to send command 'CMD_READ_STATION_MAC': timed out > May 24 21:44:44 raspberrypi weewx-piscina[2023]: 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': 'pm10', > 'pm10_24h_avg': 'pm10_24h_avg', 'pressure': 'absbarometer', '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', 'uvradiation': 'uv', 'weekRain': > 'rainweek', '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 24 21:44:44 raspberrypi weewx-piscina[2023]: gw1000: driver version is > 0.3.1 > May 24 21:44:44 raspberrypi weewx-piscina[2023]: gw1000: GW1000 address is > 192.168.0.25:45000 > May 24 21:44:44 raspberrypi weewx-piscina[2023]: gw1000: poll interval is > 20 seconds > May 24 21:44:44 raspberrypi weewx-piscina[2023]: gw1000: max tries is 3, > retry wait time is 10 seconds > May 24 21:44:44 raspberrypi weewx-piscina[2023]: gw1000: broadcast address > is 255.255.255.255:46000, socket timeout is 2 seconds > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdTimeSynch > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdTimeSynch > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdConvert > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: StdConvert target > unit is 0x10 > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdConvert > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdCalibrate > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdCalibrate > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdQC > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdQC > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.wxservices.StdWXCalculate > May 24 21:44:44 raspberrypi weewx-piscina[2023]: wxcalculate: The > following values will be calculated: barometer=software, > windchill=prefer_hardware, dewpoint=prefer_hardware, > appTemp=prefer_hardware, rainRate=prefer_hardware, windrun=prefer_hardware, > heatindex=prefer_hardware, maxSolarRad=prefer_hardware, > humidex=prefer_hardware, pressure=prefer_hardware, > inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardware, > cloudbase=prefer_hardware > May 24 21:44:44 raspberrypi weewx-piscina[2023]: wxcalculate: The > following algorithms will be used for calculations: altimeter=aaNOAA, > maxSolarRad=RS > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.wxservices.StdWXCalculate > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdArchive > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Archive will use > data binding wx_binding > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Record generation > will be attempted in 'software' > May 24 21:44:44 raspberrypi weewx-piscina[2023]: engine: Using archive > interval of 300 seconds (software record generation) > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Use LOOP data in > hi/low calculations: 1 > May 24 21:44:45 raspberrypi weewx-piscina[2023]: gw1000: Invalid response > to attempt 1 to send command 'CMD_READ_SENSOR_ID_NEW': Invalid command code > in API response. Expected '60' (0x3C), received '99' (0x63). > May 24 21:44:45 raspberrypi weewx-piscina[2023]: manager: Daily summary > version is 2.0 > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Using binding > 'wx_binding' to database 'piscina.sdb' > May 24 21:44:45 raspberrypi weewx-piscina[2023]: manager: Starting > backfill of daily summaries > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdArchive > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.restx.StdStationRegistry > May 24 21:44:45 raspberrypi weewx-piscina[2023]: restx: StationRegistry: > Registration not requested. > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.restx.StdStationRegistry > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.restx.StdWunderground > May 24 21:44:45 raspberrypi weewx-piscina[2023]: restx: Wunderground: > Posting not enabled. > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.restx.StdWunderground > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.restx.StdPWSweather > May 24 21:44:45 raspberrypi weewx-piscina[2023]: restx: PWSweather: > Posting not enabled. > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.restx.StdPWSweather > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.restx.StdCWOP > May 24 21:44:45 raspberrypi weewx-piscina[2023]: restx: CWOP: Posting not > enabled. > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.restx.StdCWOP > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.restx.StdWOW > May 24 21:44:45 raspberrypi weewx-piscina[2023]: restx: WOW: Posting not > enabled. > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.restx.StdWOW > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.restx.StdAWEKAS > May 24 21:44:45 raspberrypi weewx-piscina[2023]: restx: AWEKAS: Posting > not enabled. > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.restx.StdAWEKAS > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdPrint > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdPrint > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Loading service > weewx.engine.StdReport > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Finished loading > service weewx.engine.StdReport > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Starting up weewx > version 3.9.2 > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Station does not > support reading the time > May 24 21:44:45 raspberrypi weewx-piscina[2023]: engine: Starting main > packet loop. > May 24 21:44:55 raspberrypi weewx-piscina[2023]: gw1000: Invalid response > to attempt 2 to send command 'CMD_READ_SENSOR_ID_NEW': Invalid command code > in API response. Expected '60' (0x3C), received '99' (0x63). > May 24 21:45:05 raspberrypi weewx-piscina[2023]: gw1000: Invalid response > to attempt 3 to send command 'CMD_READ_SENSOR_ID_NEW': Invalid command code > in API response. Expected '60' (0x3C), received '99' (0x63). > May 24 21:45:05 raspberrypi weewx-piscina[2023]: gw1000: Failed to obtain > response to command 'CMD_READ_SENSOR_ID_NEW' after 3 attempts > May 24 21:45:05 raspberrypi weewx-piscina[2023]: gw1000: IP address > specified in 'weewx.conf', re-discovery was not attempted > May 24 21:45:05 raspberrypi weewx-piscina[2023]: gw1000: Unable to obtain > live sensor data > May 24 21:45:05 raspberrypi weewx-piscina[2023]: gw1000: Next update in 20 > seconds > May 24 21:45:05 raspberrypi weewx-piscina[2023]: engine: Main loop > exiting. Shutting engine down. > May 24 21:45:06 raspberrypi weewx-piscina[2023]: gw1000: Gw1000Collector > thread has been terminated > May 24 21:45:06 raspberrypi weewx-piscina[2023]: engine: Caught > WeeWxIOError: Failed to obtain response to command 'CMD_READ_SENSOR_ID_NEW' > after 3 attempts > May 24 21:45:06 raspberrypi weewx-piscina[2023]: **** Waiting 60 > seconds then retrying... > > And here the configuration file (piscina.conf): > > # WEEWX CONFIGURATION FILE > # > # Copyright (c) 2009-2015 Tom Keffer <[email protected]> > # See the file LICENSE.txt for your rights. > > > ############################################################################## > > # This section is for general configuration information. > > # Set to 1 for extra debug info, otherwise comment it out or set to zero > debug = 1 > > # Root directory of the weewx data file hierarchy for this station > WEEWX_ROOT = /home/weewx > > # How long to wait before timing out a socket (FTP, HTTP) connection > socket_timeout = 200 > > # Do not modify this. It is used when installing and updating weewx. > version = 3.9.2 > > loop_on_init = 1 > > > ############################################################################## > > # This section is for information about the station. > > [Station] > > # Description of the station location > location = Termometro acqua piscina > > # Latitude and longitude in decimal degrees > latitude = 41.446295 > longitude = 12.622721 > > # Altitude of the station, with unit it is in. This is downloaded from > # from the station if the hardware supports it. > altitude = 10, meter # Choose 'foot' or 'meter' for unit > > # Set to type of station hardware. There must be a corresponding stanza > # in this file with a 'driver' parameter indicating the driver to be > used. > station_type = GW1000 > > # If you have a website, you may specify an URL > #station_url = http://www.example.com > > # The start of the rain year (1=January; 10=October, etc.). This is > # downloaded from the station if the hardware supports it. > rain_year_start = 1 > > # Start of week (0=Monday, 6=Sunday) > week_start = 0 > > > ############################################################################## > > # This section is for uploading data to Internet sites > > [StdRESTful] > > [[StationRegistry]] > # To register this weather station with weewx, set this to true > register_this_station = false > > [[AWEKAS]] > # This section is for configuring posts to AWEKAS. > > # If you wish to do this, set the option 'enable' to true, > # and specify a username and password. > # To guard against parsing errors, put the password in quotes. > enable = false > username = replace_me > password = replace_me > > [[CWOP]] > # This section is for configuring posts to CWOP. > > # If you wish to do this, set the option 'enable' to true, > # and specify the station ID (e.g., CW1234). > enable = false > station = replace_me > > # If this is an APRS (radio amateur) station, uncomment > # the following and replace with a passcode (e.g., 12345). > #passcode = replace_me (APRS stations only) > > [[PWSweather]] > # This section is for configuring posts to PWSweather.com. > > # If you wish to do this, set the option 'enable' to true, > # and specify a station and password. > # To guard against parsing errors, put the password in quotes. > enable = false > station = replace_me > password = replace_me > > [[WOW]] > # This section is for configuring posts to WOW. > > # If you wish to do this, set the option 'enable' to true, > # and specify a station and password. > # To guard against parsing errors, put the password in quotes. > enable = false > station = replace_me > password = replace_me > > [[Wunderground]] > # This section is for configuring posts to the Weather Underground. > > # If you wish to do this, set the option 'enable' to true, > # and specify a station (e.g., 'KORHOODR3') and password. > # To guard against parsing errors, put the password in quotes. > enable = false > station = replace_me > password = replace_me > > # Set the following to True to have weewx use the WU "Rapidfire" > # protocol. Not all hardware can support it. See the User's Guide. > rapidfire = False > > > ############################################################################## > > # This section specifies what reports, using which skins, to generate. > > [StdReport] > > # Where the skins reside, relative to WEEWX_ROOT > SKIN_ROOT = skins > > # Where the generated reports should go, relative to WEEWX_ROOT > HTML_ROOT = public_html/piscina > > # The database binding indicates which data should be used in reports. > data_binding = wx_binding > > # Each of the following subsections defines a report that will be run. > > [[StandardReport]] > # See the customizing guide to change the units, plot types and > line > # colors, modify the fonts, display additional sensor data, and > other > # customizations. Many of those changes can be made here by > overriding > # parameters, or by modifying templates within the skin itself. > > # The StandardReport uses the 'Standard' skin, which contains the > # images, templates and plots for the report. > skin = Standard > [[[Units]]] > [[[[Groups]]]] > group_altitude = meter > group_speed2 = km_per_hour2 > group_pressure = mbar > group_rain = mm > group_rainrate = mm_per_hour > group_temperature = degree_C > group_degree_day = degree_C_day > group_speed = km_per_hour > > [[FTP]] > # FTP'ing the results to a webserver is treated as just another > report, > # albeit one with an unusual report generator! > skin = Ftp > > # If you wish to use FTP, uncomment and fill out the next four > lines. > # Use quotes around passwords to guard against parsing errors. > user = xxx > password = xxx > server = xxx > path = xxx > > # Set to True for an FTP over TLS (FTPS) connection. Not all > servers > # support this. > secure_ftp = False > > # To upload files from something other than what HTML_ROOT is set > # to above, specify a different HTML_ROOT here. > #HTML_ROOT = public_html > > # Most FTP servers use port 21 > port = 21 > > # Set to 1 to use passive mode, zero for active mode > passive = 1 > > [[RSYNC]] > # rsync'ing to a webserver is treated as just another report > skin = Rsync > > # If you wish to use rsync, you must configure passwordless ssh > using > # public/private key authentication from the user account that > weewx > # runs as to the user account on the remote machine where the files > # will be copied. > # > # The server, user, and path determine where files will be sent. > # The server is the server name, such as www.threefools.org > # The user is the username, such as weewx > # The path is the destination directory, such as > /var/www/html/weather > # Be sure that the user has write permissions on the destination! > #server = replace_me > #user = replace_me > #path = replace_me > > # Rsync can be configured to remove files from the remote server if > # they don't exist under HTML_ROOT locally. USE WITH CAUTION: if > you > # make a mistake in the remote path, you could could > unintentionally > # cause unrelated files to be deleted. Set to 1 to enable remote > file > # deletion, zero to allow files to accumulate remotely. > delete = 0 > > > ############################################################################## > > # This service acts as a filter, converting the unit system coming from > # the hardware to a unit system in the database. > > [StdConvert] > > # The target_unit affects only the unit system in the database. Once > # chosen it cannot be changed without converting the entire database. > # Modification of target_unit after starting weewx will result in > # corrupt data - the database will contain a mix of US and METRIC data. > # > # The value of target_unit does not affect the unit system for > # reporting - reports can display US, Metric, or any combination of > units. > # > # In most cases, target_unit should be left as the default: US > # > # In particular, those migrating from a standard wview installation > # should use US since that is what the wview database contains. > > # DO NOT MODIFY THIS VALUE UNLESS YOU KNOW WHAT YOU ARE DOING! > target_unit = METRIC # Options are 'US', 'METRICWX', or 'METRIC' > > > ############################################################################## > > # This section can adjust data using calibration expressions. > > [StdCalibrate] > > [[Corrections]] > # For each type, an arbitrary calibration expression can be given. > # It should be in the units defined in the StdConvert section. > # Example: > foo = foo + 0.2 > > > ############################################################################## > > # This section is for quality control checks. If units are not specified, > # values must be in the units defined in the StdConvert section. > > [StdQC] > > [[MinMax]] > barometer = 26, 32.5, inHg > outTemp = -40, 120, degree_F > inTemp = 10, 120, degree_F > outHumidity = 0, 100 > inHumidity = 0, 100 > windSpeed = 0, 120, mile_per_hour > pressure = 24, 34.5, inHg > > > ############################################################################## > > # This section controls the origin of derived values. > > [StdWXCalculate] > > ignore_zero_wind = False > > [[Calculations]] > # Derived quantities are calculated by this service. Possible > values are: > # hardware - use the value provided by hardware > # software - use the value calculated by weewx > # prefer_hardware - use value provide by hardware if available, > # otherwise use value calculated by weewx > > pressure = prefer_hardware > barometer = prefer_hardware > altimeter = prefer_hardware > windchill = prefer_hardware > heatindex = prefer_hardware > dewpoint = prefer_hardware > inDewpoint = prefer_hardware > rainRate = prefer_hardware > > > ############################################################################## > > # For hardware that supports it, this section controls how often the > # onboard clock gets updated. > > [StdTimeSynch] > > # How often to check the weather station clock for drift (in seconds) > clock_check = 14400 > > # How much it can drift before we will correct it (in seconds) > max_drift = 5 > > > ############################################################################## > > # This section is for configuring the archive service. > > [StdArchive] > > # If the station hardware supports data logging then the archive > interval > # will be downloaded from the station. Otherwise, specify it (in > seconds). > archive_interval = 300 > > # If possible, new archive records are downloaded from the station > # hardware. If the hardware does not support this, then new archive > # records will be generated in software. > # Set the following to "software" to force software record generation. > record_generation = software > > # Whether to include LOOP data in hi/low statistics > loop_hilo = True > > # The data binding used to save archive records > data_binding = wx_binding > > > ############################################################################## > > # This section binds a data store to a database. > > [DataBindings] > > [[wx_binding]] > # The database must match one of the sections in [Databases]. > # This is likely to be the only option you would want to change. > database = archive_sqlite > # The name of the table within the database > table_name = archive > # The manager handles aggregation of data for historical summaries > manager = weewx.wxmanager.WXDaySummaryManager > # The schema defines the structure of the database. > # It is *only* used when the database is created. > schema = schemas.wview.schema > > > ############################################################################## > > # This section defines various databases. > > [Databases] > > # A SQLite database is simply a single file > [[archive_sqlite]] > database_type = SQLite > database_name = piscina.sdb > > # MySQL > [[archive_mysql]] > database_type = MySQL > database_name = piscina > > > ############################################################################## > > # This section defines defaults for the different types of databases. > > [DatabaseTypes] > > # Defaults for SQLite databases > [[SQLite]] > driver = weedb.sqlite > # Directory in which the database files are located > SQLITE_ROOT = %(WEEWX_ROOT)s/archive > > # Defaults for MySQL databases > [[MySQL]] > driver = weedb.mysql > # The host where the database is located > host = localhost > # The user name for logging in to the host > user = weewx > # The password for the user name (quotes guard against parsing > errors) > password = weewx > > > ############################################################################## > > # This section configures the internal weewx engine. > > [Engine] > > [[Services]] > # This section specifies the services that should be run. They are > # grouped by type, and the order of services within each group > # determines the order in which the services will be run. > prep_services = weewx.engine.StdTimeSynch > data_services = user.gw1000.Gw1000Service > process_services = weewx.engine.StdConvert, > weewx.engine.StdCalibrate, weewx.engine.StdQC, > weewx.wxservices.StdWXCalculate > archive_services = weewx.engine.StdArchive > restful_services = weewx.restx.StdStationRegistry, > weewx.restx.StdWunderground, weewx.restx.StdPWSweather, > weewx.restx.StdCWOP, weewx.restx.StdWOW, weewx.restx.StdAWEKAS > report_services = weewx.engine.StdPrint, weewx.engine.StdReport > > > ############################################################################## > > # Options for extension 'GW1000' > [Accumulator] > > # Start GW1000 driver extractors > [[daymaxwind]] > extractor = last > [[lightning_distance]] > extractor = last > [[lightning_strike_count]] > extractor = sum > [[lightningcount]] > extractor = last > [[lightning_last_det_time]] > extractor = last > [[stormRain]] > extractor = last > [[hourRain]] > extractor = last > [[dayRain]] > extractor = last > [[weekRain]] > extractor = last > [[monthRain]] > extractor = last > [[yearRain]] > extractor = last > [[totalRain]] > extractor = last > [[pm2_51_24h_avg]] > extractor = last > [[pm2_52_24h_avg]] > extractor = last > [[pm2_53_24h_avg]] > extractor = last > [[pm2_54_24h_avg]] > extractor = last > [[pm2_55_24h_avg]] > extractor = last > [[pm10_24h_avg]] > extractor = last > [[co2_24h_avg]] > extractor = last > [[wh40_batt]] > extractor = last > [[wh26_batt]] > extractor = last > [[wh25_batt]] > extractor = last > [[wh65_batt]] > extractor = last > [[wh31_ch1_batt]] > extractor = last > [[wh31_ch2_batt]] > extractor = last > [[wh31_ch3_batt]] > extractor = last > [[wh31_ch4_batt]] > extractor = last > [[wh31_ch5_batt]] > extractor = last > [[wh31_ch6_batt]] > extractor = last > [[wh31_ch7_batt]] > extractor = last > [[wh31_ch8_batt]] > extractor = last > [[wh35_ch1_batt]] > extractor = last > [[wh35_ch2_batt]] > extractor = last > [[wh35_ch3_batt]] > extractor = last > [[wh35_ch4_batt]] > extractor = last > [[wh35_ch5_batt]] > extractor = last > [[wh35_ch6_batt]] > extractor = last > [[wh35_ch7_batt]] > extractor = last > [[wh35_ch8_batt]] > extractor = last > [[wh41_ch1_batt]] > extractor = last > [[wh41_ch2_batt]] > extractor = last > [[wh41_ch3_batt]] > extractor = last > [[wh41_ch4_batt]] > extractor = last > [[wh45_batt]] > extractor = last > [[wh51_ch1_batt]] > extractor = last > [[wh51_ch2_batt]] > extractor = last > [[wh51_ch3_batt]] > extractor = last > [[wh51_ch4_batt]] > extractor = last > [[wh51_ch5_batt]] > extractor = last > [[wh51_ch6_batt]] > extractor = last > [[wh51_ch7_batt]] > extractor = last > [[wh51_ch8_batt]] > extractor = last > [[wh51_ch9_batt]] > extractor = last > [[wh51_ch10_batt]] > extractor = last > [[wh51_ch11_batt]] > extractor = last > [[wh51_ch12_batt]] > extractor = last > [[wh51_ch13_batt]] > extractor = last > [[wh51_ch14_batt]] > extractor = last > [[wh51_ch15_batt]] > extractor = last > [[wh51_ch16_batt]] > extractor = last > [[wh55_ch1_batt]] > extractor = last > [[wh55_ch2_batt]] > extractor = last > [[wh55_ch3_batt]] > extractor = last > [[wh55_ch4_batt]] > extractor = last > [[wh57_batt]] > extractor = last > [[wh68_batt]] > extractor = last > [[ws80_batt]] > extractor = last > [[wh40_sig]] > extractor = last > [[wh26_sig]] > extractor = last > [[wh25_sig]] > extractor = last > [[wh65_sig]] > extractor = last > [[wh31_ch1_sig]] > extractor = last > [[wh31_ch2_sig]] > extractor = last > [[wh31_ch3_sig]] > extractor = last > [[wh31_ch4_sig]] > extractor = last > [[wh31_ch5_sig]] > extractor = last > [[wh31_ch6_sig]] > extractor = last > [[wh31_ch7_sig]] > extractor = last > [[wh31_ch8_sig]] > extractor = last > [[wh35_ch1_sig]] > extractor = last > [[wh35_ch2_sig]] > extractor = last > [[wh35_ch3_sig]] > extractor = last > [[wh35_ch4_sig]] > extractor = last > [[wh35_ch5_sig]] > extractor = last > [[wh35_ch6_sig]] > extractor = last > [[wh35_ch7_sig]] > extractor = last > [[wh35_ch8_sig]] > extractor = last > [[wh41_ch1_sig]] > extractor = last > [[wh41_ch2_sig]] > extractor = last > [[wh41_ch3_sig]] > extractor = last > [[wh41_ch4_sig]] > extractor = last > [[wh45_sig]] > extractor = last > [[wh51_ch1_sig]] > extractor = last > [[wh51_ch2_sig]] > extractor = last > [[wh51_ch3_sig]] > extractor = last > [[wh51_ch4_sig]] > extractor = last > [[wh51_ch5_sig]] > extractor = last > [[wh51_ch6_sig]] > extractor = last > [[wh51_ch7_sig]] > extractor = last > [[wh51_ch8_sig]] > extractor = last > [[wh51_ch9_sig]] > extractor = last > [[wh51_ch10_sig]] > extractor = last > [[wh51_ch11_sig]] > extractor = last > [[wh51_ch12_sig]] > extractor = last > [[wh51_ch13_sig]] > extractor = last > [[wh51_ch14_sig]] > extractor = last > [[wh51_ch15_sig]] > extractor = last > [[wh51_ch16_sig]] > extractor = last > [[wh55_ch1_sig]] > extractor = last > [[wh55_ch2_sig]] > extractor = last > [[wh55_ch3_sig]] > extractor = last > [[wh55_ch4_sig]] > extractor = last > [[wh57_sig]] > extractor = last > [[wh68_sig]] > extractor = last > [[ws80_sig]] > extractor = last > > > ############################################################################## > > # Options for extension 'GW1000' > [GW1000] > # This section is for the GW1000 API driver. > > # How often to poll the GW1000 API, default is every 20 seconds: > poll_interval = 20 > > # The driver to use: > driver = user.gw1000 > > > ############################################################################## > > #examples of json > #{"time" : "2019-09-13 15:44:52", "brand" : "OS", "model" : "THGR810", > "id" : 254, "channel" : 1, "battery" : "OK", "temperature_C" : 27.800, > "humidity" : 40} > #{"time" : "2019-09-13 15:45:01", "brand" : "OS", "model" : "THGR810", > "id" : 71, "channel" : 2, "battery" : "OK", "temperature_C" : 27.200, > "humidity" : 46} > > > > > Il giorno lunedì 24 maggio 2021 alle 21:35:59 UTC+2 > [email protected] ha scritto: > >> The WN30 is just an extra temperature sensor and belongs to the WH31 >> extra sensor group - only it measures only temperature and not humidity. >> As it is primarily meant for measuring water temperature, humidity will >> be always 100% and therefore measuring it makes little sense. >> >> But it works just like other WH31 extra T/H sensors. I have one in my >> collection of WH31 sensors and weewx processes it without any problem. >> >> Is there a special reason why your weewx configuration file is named >> piscina.conf and not weewx.conf ? >> Has weewx been told to use piscina.conf instead of weewx.conf (default) >> in the respective files ? >> >> Can you please provide a *complete* syslog starting from the weewx >> launch until it either terminates itself or you do so by issuing the stop >> command !? >> Also, your weewx.conf (piscina.conf) would be helpful (you can/should >> remove passwords and API-keys if you use any there) >> >> If you so far only started the driver, can you just configure weewx as in >> the GW1000 driver description in the weewx.conf file >> (/etc/weewx/weewx.conf), >> and start weewx - and provide the logs and the weewx.conf file !? >> >> Then we can have a better understanding what going on and what's >> potential going wrong here. >> On 24.05.2021 20:36, [email protected] wrote: >> >> Hi everyone, >> I am trying to use WeeWX with a GW1000 hardware (this >> <https://www.froggit.de/product_info.php?info=p410_dp1500-wi-fi-wetterserver-usb-dongle.html>) >> >> that is receiving data from a WN30 temperature sensor (this >> <https://www.froggit.de/product_info.php?language=en&info=p480_dp30-multi-kanal-temperatur-funksensor-mit-wasserfestem-kabelfuehler.html>). >> >> I installed the hardware and connected to the WiFi, and by the smartphone >> app everything seems fine: in fact I can see live data from there. >> Now, I want to use the GW1000 driver >> <https://github.com/gjr80/weewx-gw1000>for reading its data with WeeWX. >> I correctly followed the instruction and installed the driver on WeeWX >> 3.9.2, but I am having some troubles. >> In particular, I am getting the following error: >> gw1000: Invalid response to attempt 1 to send command >> 'CMD_READ_SENSOR_ID_NEW': Invalid command code in API response. Expected >> '60' (0x3C), received '99' (0x63) >> This is what the test-driver returns: >> $ PYTHONPATH=/home/weewx/bin python -m user.gw1000 --test-driver >> Using configuration file /etc/weewx/piscina.conf >> debug level is '1' >> >> IP address to be obtained by discovery >> Port number set to default port number >> >> Interrogating GW1000 at 192.168.0.25:45000 >> >> Traceback (most recent call last): >> File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main >> "__main__", fname, loader, pkg_name) >> File "/usr/lib/python2.7/runpy.py", line 72, in _run_code >> exec code in run_globals >> File "/home/weewx/bin/user/gw1000.py", line 5906, in <module> >> main() >> File "/home/weewx/bin/user/gw1000.py", line 5900, in main >> direct_gw100.process_options() >> File "/home/weewx/bin/user/gw1000.py", line 4833, in process_options >> self.test_driver() >> File "/home/weewx/bin/user/gw1000.py", line 5647, in test_driver >> for pkt in driver.genLoopPackets(): >> File "/home/weewx/bin/user/gw1000.py", line 2057, in genLoopPackets >> raise weewx.WeeWxIOError(e) >> weewx.WeeWxIOError: Failed to obtain response to command >> 'CMD_READ_SENSOR_ID_NEW' after 3 attempts >> >> Any ideas?? >> Thank you! >> >> -- >> You received this message because you are subscribed to the Google Groups >> "weewx-user" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/weewx-user/2f6e835e-dbcd-4d71-bcee-cf431475ccd4n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/weewx-user/2f6e835e-dbcd-4d71-bcee-cf431475ccd4n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/8a21de0f-262a-4032-ae19-a057cbadaca3n%40googlegroups.com.
