My issue with p_rain is that the driver uses p_rainrate and my database has
the column p_rainRate (camelCase), which is the WeeWX db style to name
columns, thus I need to configure:
[StdCalibrate]
[[Corrections]]
p_rainRate = p_rainrate
[email protected] schrieb am Freitag, 25. Juli 2025 um 22:57:11 UTC+2:
> I still have the one or the other issue with p_rain, but that's very
> special to my ssetup running ecowitt_http as a driver and GW1000 as a
> service. And I so far couldn't confirm how the lightning detection works
> out with my settings.
>
> Ian Millard schrieb am Freitag, 25. Juli 2025 um 16:36:35 UTC+2:
>
>> @Michael, @Werner, @Vince,
>>
>> I have the WeeWX-Ecowitt_http working flawlessly in driver mode now. So
>> much so that I have confidently moved it across to my live server.
>>
>> There are just a couple of things to mention: -
>>
>> 1. Using the rain column to generates day, week, month etc gives some
>> rather bizarre results as @Michael discovered. The safe way to go is
>> dayRain, weekRain etc which give the expected results.
>> 2. It makes sense to me that if a dedicated Ecowitt database schema is
>> the way to go. If this is the case, the examples of this that are already
>> out there need to come together to agree a standard. The example I quoted
>> in an earlier post of using the hail column for piezo rain, I understand
>> why this was done in the first instance, but surely if we speak about a
>> dedicated schema, piezo rain should be fully supported in its own right?
>>
>> I will be interested in our collective thoughts on this.
>>
>> Thanks,
>> Ian
>>
>> On 21 Jul 2025, at 19:46, 'Werner Krenn' via weewx-user <
>> [email protected]> wrote:
>>
>> I only use these entries in the weewx.conf
>>
>> [StdCalibrate]
>> [[Corrections]]
>> lightning_distance_save = lightning_dist if lightning_dist is not
>> None else None
>> lightning_distance = lightning_dist if lightning_strike_count > 0
>> else None
>> lightning_noise_count = lightning_strike_count if
>> lightning_strike_count > 0 else None
>>
>>
>> [Accumulator]
>> [[lightning_distance]]
>> extractor = last
>> [[lightning_strike_count]]
>> extractor = sum
>> [[lightning_last_det_time]]
>> extractor = last
>> [[lightningcount]]
>> extractor = last
>> [[lightning_noise_count]]
>> extractor = sum
>>
>> Ian Millard schrieb am Montag, 21. Juli 2025 um 20:01:38 UTC+2:
>>
>>> @Werner,
>>>
>>> How do you generate the last non-zero strike distance and time? I have
>>> an X-Type to do that, but maybe you have another way.
>>>
>>> On 17 Jul 2025, at 10:24, 'Werner Krenn' via weewx-user <
>>> [email protected]> wrote:
>>>
>>> lightning_num
>>> is the number of lightning strikes on this day
>>>
>>> lightning_strike_count
>>> is the difference from the previous archive value.
>>> That's the only way I know it, and that's how it is now again.
>>>
>>> I use additionally
>>> [StdCalibrate]
>>> [[Corrections]]
>>> lightning_noise_count = lightning_strike_count if
>>> lightning_strike_count > 0 else None
>>>
>>> [accumulator]
>>> [[lightning_noise_count]]
>>> extractor = sum
>>>
>>> This allows me to display the last recorded number of lightning strikes
>>> per day
>>> without them disappearing after one day.
>>>
>>> [email protected] schrieb am Mittwoch, 16. Juli 2025 um 22:29:28
>>> UTC+2:
>>>
>>>> I've updated ecowitt_http.py (warnings gone), set debug = rain, removed
>>>> the corrections entry for p_rain and here is the log. No
>>>> No more p_rain with the updated setting and the most recent version.
>>>> (And yes, we had an considerable amount of rain here today, ~ 40mm so far
>>>> and counting)
>>>> [image: 2025-07-16 22_26_09-Das Wetter in AT, Salzburg, Hallein, Rif -
>>>> Brave.png]
>>>> By the way:
>>>>
>>>> "lightning_num": "23",
>>>> "lightning_strike_count": "0",
>>>>
>>>> Today 23 strikes were registered. What's the change here, the old
>>>> driver set the lightning_strike_count.
>>>>
>>>>
>>>> Werner Krenn schrieb am Mittwoch, 16. Juli 2025 um 21:13:27 UTC+2:
>>>>
>>>>> Of course, it was meant to be debug at EcowittHttp:
>>>>>
>>>>> [EcowittHttp]
>>>>> debug = rain
>>>>>
>>>>> With the current version, under
>>>>> [[Corrections]]
>>>>> p_rain = hail if hail is not None else None
>>>>> is no longer necessary!
>>>>>
>>>>> [email protected] schrieb am Mittwoch, 16. Juli 2025 um 20:18:00
>>>>> UTC+2:
>>>>>
>>>>>> I've never heard of such an issue nor have I encountered one, but
>>>>>> this one so far with the GW3000
>>>>>>
>>>>>> I have mapped p_rain for piezo_rain with
>>>>>>
>>>>>> [StdCalibrate]
>>>>>> [[Corrections]]
>>>>>> p_rain = hail if hail is not None else None
>>>>>>
>>>>>> With debug = rain WeeWX didn't start, I've set logging to :
>>>>>> debug = 3
>>>>>> [Logging]
>>>>>> version = 1
>>>>>> disable_existing_loggers = False
>>>>>>
>>>>>> # Root logger
>>>>>> [[root]]
>>>>>> level = INFO
>>>>>> handlers = rotate, #console
>>>>>>
>>>>>> # Additional loggers would go in the following section. This is
>>>>>> useful for tailoring logging
>>>>>> # for individual modules.
>>>>>> [[loggers]]
>>>>>> [[[user.ecowitt_http]]]
>>>>>> level = DEBUG
>>>>>>
>>>>>> # Definitions of possible logging destinations
>>>>>> [[handlers]]
>>>>>>
>>>>>> # Log to a set of rotating files
>>>>>> [[[rotate]]]
>>>>>> level = INFO
>>>>>> formatter = verbose
>>>>>> class = logging.handlers.RotatingFileHandler
>>>>>> filename = /home/wusr/weewx-data/log/weewxd.log
>>>>>> maxBytes = 10000000
>>>>>> backupCount = 4
>>>>>>
>>>>>> Werner Krenn schrieb am Mittwoch, 16. Juli 2025 um 18:50:04 UTC+2:
>>>>>>
>>>>>>> Please set
>>>>>>> debug = rain
>>>>>>>
>>>>>>> What is mapped for piezo_rain?
>>>>>>> By the way, this behavior is why I changed the calculation of rain
>>>>>>> and piezo_rain.
>>>>>>>
>>>>>>> Connection issues:
>>>>>>> Have you read about the issue with GW3000 1.0.9 on GitHub?
>>>>>>>
>>>>>>> [email protected] schrieb am Mittwoch, 16. Juli 2025 um 15:40:12
>>>>>>> UTC+2:
>>>>>>>
>>>>>>>> After a failed connection to the GW300, this happened with the
>>>>>>>> piezo rain data:
>>>>>>>> Left: Old Ecowitt Gateway driver with GW2000, Right: ecowitt http
>>>>>>>> driver with GW3000:
>>>>>>>> [image: 2025-07-16 15_34_54-Das Wetter in AT, Salzburg, Hallein,
>>>>>>>> Rif - Brave.png]
>>>>>>>>
>>>>>>>> From the log:
>>>>>>>> 2025-07-16 13:28:17 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:28:16 CEST (1752665296)
>>>>>>>> 2025-07-16 13:28:27 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:28:27 CEST (1752665307)
>>>>>>>> 2025-07-16 13:28:37 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:28:37 CEST (1752665317)
>>>>>>>> 2025-07-16 13:28:47 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:28:47 CEST (1752665327)
>>>>>>>> 2025-07-16 13:29:07 weewxd[19407] ERROR user.ecowitt_http: URL -
>>>>>>>> Failed to get device data on attempt 1 of 3
>>>>>>>> 2025-07-16 13:29:08 weewxd[19407] ERROR user.ecowitt_http: ****
>>>>>>>> <urlopen error timed out>
>>>>>>>> 2025-07-16 13:29:08 weewxd[19407] ERROR user.ecowitt_http: Unable
>>>>>>>> to obtain live sensor data
>>>>>>>> 2025-07-16 13:29:08 weewxd[19407] INFO weewx.engine: Main loop
>>>>>>>> exiting. Shutting engine down.
>>>>>>>> 2025-07-16 13:29:08 weewxd[19407] INFO weewx.engine: Shutting down
>>>>>>>> StdReport thread
>>>>>>>> 2025-07-16 13:29:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> EcowittHttpCollector thread has been terminated
>>>>>>>> 2025-07-16 13:29:09 weewxd[19407] CRITICAL weewxd: Caught
>>>>>>>> WeeWxIOError:
>>>>>>>> 2025-07-16 13:29:09 weewxd[19407] CRITICAL weewxd: ****
>>>>>>>> Waiting 60.0 seconds then retrying...
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewxd: retrying...
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: Loading
>>>>>>>> station type EcowittHttp (user.ecowitt_http)
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> EcowittHttpDriver: version is 0.1.0
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> unit_system: 17
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> device IP address is 10.0.1.84
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: poll
>>>>>>>> interval is 10 seconds
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: rain
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: wind
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: lightning
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: loop
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: sensors
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: catchup
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: parser
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: collector
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: archive
>>>>>>>> debug is not set
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> wn32_indoor: sensor ID decoding will use indoor 'WN32'
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> wn32_outdoor: sensor ID decoding will use outdoor 'WN32P'
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> device firmware update checks will occur every 86400 seconds
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> available device firmware updates will be logged
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> battery state will not be reported for sensors with no signal data
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> unknown fields will be ignored
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http: catchup
>>>>>>>> source: device
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.ecowitt_http:
>>>>>>>> EcowittHttpCollector startup
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: StdConvert
>>>>>>>> target unit is 0x11
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.wxservices:
>>>>>>>> StdWXCalculate will use data binding wx_binding
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: Archive will
>>>>>>>> use data binding wx_binding
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: Record
>>>>>>>> generation will be attempted in 'software'
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: Using archive
>>>>>>>> interval of 300 seconds (software record generation)
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.restx:
>>>>>>>> StationRegistry: Registration not requested.
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.restx: Wunderground:
>>>>>>>> Posting not enabled.
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.restx: PWSweather:
>>>>>>>> Posting not enabled.
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.restx: CWOP: Posting
>>>>>>>> not enabled.
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.restx: WOW: Posting
>>>>>>>> not enabled.
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.restx: AWEKAS: Posting
>>>>>>>> not enabled.
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.mqtt: service version
>>>>>>>> is 0.24
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.mqtt: binding to loop
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.mqtt: data_binding is
>>>>>>>> wx_binding
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.mqtt: topic is
>>>>>>>> weather_test_ws90
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO user.mqtt: data will be
>>>>>>>> uploaded to mqtt://10.0.1.90:1883/
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: 'pyephem'
>>>>>>>> detected, extended almanac data is available
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewxd: Starting up weewx
>>>>>>>> version 5.1.0
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.engine: Using binding
>>>>>>>> 'wx_binding' to database 'weewx-ws90.sdb'
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.manager: Starting
>>>>>>>> backfill of daily summaries
>>>>>>>> 2025-07-16 13:30:09 weewxd[19407] INFO weewx.manager: Daily
>>>>>>>> summaries up to date
>>>>>>>> 2025-07-16 13:30:12 weewxd[19407] INFO user.ecowitt_http: Archive:
>>>>>>>> using 'rain.0x13.val' for rain total
>>>>>>>> 2025-07-16 13:30:12 weewxd[19407] INFO user.ecowitt_http: Archive:
>>>>>>>> using 'piezoRain.0x13.val' for piezo rain total
>>>>>>>> 2025-07-16 13:30:12 weewxd[19407] INFO user.ecowitt_http: Archive:
>>>>>>>> Skipping lightning count of 1.0: no last count
>>>>>>>> 2025-07-16 13:30:12 weewxd[19407] INFO weewx.manager: Added record
>>>>>>>> 2025-07-16 13:28:00 CEST (1752665280) to database 'weewx-ws90.sdb'
>>>>>>>> 2025-07-16 13:30:12 weewxd[19407] INFO weewx.manager: Added record
>>>>>>>> 2025-07-16 13:28:00 CEST (1752665280) to daily summary in
>>>>>>>> 'weewx-ws90.sdb'
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO weewx.engine: Starting main
>>>>>>>> packet loop.
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO user.ecowitt_http: Using
>>>>>>>> 'rain.0x13.val' for rain total
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO user.ecowitt_http: Using
>>>>>>>> 'piezoRain.0x13.val' for piezo rain total
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO user.ecowitt_http: Archive:
>>>>>>>> skipping rain measurement of 600.4: no last rain
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO user.ecowitt_http: Archive:
>>>>>>>> skipping piezo rain measurement of 691.3: no last rain
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO user.ecowitt_http: Archive:
>>>>>>>> Skipping lightning count of 1: no last count
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO user.mqtt: client
>>>>>>>> established for mqtt://10.0.1.90:1883/
>>>>>>>> 2025-07-16 13:30:13 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:30:09 CEST (1752665409)
>>>>>>>> 2025-07-16 13:30:19 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:30:19 CEST (1752665419)
>>>>>>>> 2025-07-16 13:30:30 weewxd[19407] INFO weewx.restx: MQTT: Published
>>>>>>>> record 2025-07-16 13:30:29 CEST (1752665429)
>>>>>>>> [email protected] schrieb am Montag, 14. Juli 2025 um 21:05:17
>>>>>>>> UTC+2:
>>>>>>>>
>>>>>>>>> The warnings shows up once, after the ecowitt_http.py was altered
>>>>>>>>> when a new pycache object is created, only showing up when starting
>>>>>>>>> weewxd
>>>>>>>>> manually. It is console output not being logged.
>>>>>>>>>
>>>>>>>>> vince schrieb am Montag, 14. Juli 2025 um 20:03:48 UTC+2:
>>>>>>>>>
>>>>>>>>>> On Monday, July 14, 2025 at 9:29:24 AM UTC-7 steepleian wrote:
>>>>>>>>>>
>>>>>>>>>> @Werner
>>>>>>>>>> I find it very confusing that hail is used for p_rain.
>>>>>>>>>> My database has columns for p_rain etc from mods I made for
>>>>>>>>>> GW2000 driver.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Agree. I notice that weewx doesn't directly support multiple
>>>>>>>>>> wind nor rain sensors, so folks with a combination if piezo and
>>>>>>>>>> old-style
>>>>>>>>>> spinning/tipping sensors have issues mapping database elements.
>>>>>>>>>>
>>>>>>>>>> Rather than requiring modifying the as-delivered weewx schema,
>>>>>>>>>> I'm wondering if an alternate approach might be to create an
>>>>>>>>>> ecowitt-specific schema and a secondary db for whatever ecowitt
>>>>>>>>>> supports.
>>>>>>>>>> Granted, skins would need to explicitly reference the ecowitt db
>>>>>>>>>> binding,
>>>>>>>>>> but it would make the database mapping issue a non-issue.
>>>>>>>>>>
>>>>>>>>>> FWIW - the purpleair extension I use as well as a couple other
>>>>>>>>>> extensions create these alternate databases on first use, so it's
>>>>>>>>>> not a big
>>>>>>>>>> deal. You might consider taking the same approach for ecowitt
>>>>>>>>>> which has a
>>>>>>>>>> growing list of uniquenesses as they add more and more sensor types
>>>>>>>>>> users
>>>>>>>>>> can purchase.
>>>>>>>>>>
>>>>>>>>>> That said, I do not know offhand if it is possible to have a
>>>>>>>>>> driver's sensor_map use a secondary db rather than the default db.
>>>>>>>>>> That
>>>>>>>>>> might be helpful to be able to do, or even to map each sensor_map
>>>>>>>>>> item to
>>>>>>>>>> the chosen db+element to read from.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>> --
>>> 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 visit
>>> https://groups.google.com/d/msgid/weewx-user/65ac62e1-ca01-48a1-bb84-72ba48e50b59n%40googlegroups.com
>>>
>>> <https://groups.google.com/d/msgid/weewx-user/65ac62e1-ca01-48a1-bb84-72ba48e50b59n%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 visit
>> https://groups.google.com/d/msgid/weewx-user/b2e50c63-665f-4b41-8daa-708c7f9b7ba3n%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/weewx-user/b2e50c63-665f-4b41-8daa-708c7f9b7ba3n%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 visit
https://groups.google.com/d/msgid/weewx-user/329b6029-1873-425f-9dcc-33e0d3656e68n%40googlegroups.com.