I have tried my hand in this device last year with SDR and MQTT. What I 
found is that the device's counter counts up to 127 (or 255 depending on 
the SDR release) then essentially resets back to zero. I did not see any 
code that would compare the incoming value (eg strike count is now 100) to 
the loop value (eg 99) and update the strike count by 1. 

My best guess is that Acurite's base station is doing this math difference 
and showing you the total strikes for the day with the distance of the last 
strike.

What needs to be done here is have a driver/service that will take the raw 
SDR value for lightning strike count and distance, compare it to the last 
reported value, then create a record recording the strike count and 
distance as a separate row in a table (eg lighting_raw_data). Once the 
archive generation starts, you take the sum of the strikes between archive 
periods and average the strike distance. I believe that is what the 
accumulator will do for you.

This is where I gave up on the device. I have it in my "nice to have" notes 
to write this component one day.

An alternative is to look at the AS3925 lightning sensor. You can attach 
that to a Raspberry PI and use Matthew Wall's driver (matthewwall/weewx-as3935: 
weewx service that collects data from as3935 lightning detector (github.com) 
<https://github.com/matthewwall/weewx-as3935>) in a separate weewx instance 
reporting to a separate db. From there you can bind both databases in your 
main weewx install and report the lightning data in your skin. Look up 
multiple database bindings in the docs side of the the weewx documentation.

Hope that helps!

Doug Jenkins
www.largoweather.com



On Monday, March 7, 2022 at 8:42:46 AM UTC-5 Kingsclear Studios wrote:

> Thanks Troy, can confirm it's in place, makes no difference:
>
> [Accumulator]
>     [[lightning_strike_count]]
>         extractor = sum
>     [[lightning_distance]]
>         extractor = min
>         merger = minmax
>
> Lightning Distance is working perfectly, after each artificial strike test 
> (power drill + brushless motor = fake lightning) I get the distance updated 
> properly, with units, my total_strikes count goes up, and I see odd entries 
> like: strike_count: 0.0 - but no delta value(s), I've been trying for ages, 
> it seems to elude me :)
>
> Sample MQTT data flowing to the station as of now:
>
> { "inHumidity": "31.0", "inTemp_C": "23.777777777777775", "strikes_total": 
> "244.0", "lightning_distance_km": "6.437376", "dateTime": "1646660541.0", 
> "inDewpoint_C": "5.625713349750434", "maxSolarRad_Wpm2": 
> "362.7045034071919", "rainRate_cm_per_hour": "0.0", "strikes_count": "0.0", 
> "rain_total": "1.59", "windSpeed_kph": "4.310998666280064", "outTemp_C": 
> "5.888888888888889", "outHumidity": "86.0", "appTemp_C": 
> "3.6810358576208713", "cloudbase_meter": "326.41695917564834", 
> "dewpoint_C": "3.7282050766260766", "heatindex_C": "4.778888888888891", 
> "humidex_C": "5.888888888888889", "windchill_C": "5.888888888888889", 
> "extraTemp1_C": "5.3999999999999995", "extraHumid1": "53.0", "windDir": 
> "225.0", "hourRain_cm": "0.025400000000000023", "rain24_cm": 
> "1.9812000000000007", "dayRain_cm": "0.7112", "usUnits": "16.0" }
> On Monday, March 7, 2022 at 9:02:11 AM UTC-4 [email protected] wrote:
>
>> The only thing I see missing from your weewx.conf would be the 
>> Accumulator section:
>>
>> [Accumulator]
>>     [[lightning_strike_count]]
>>         extractor = sum
>>     [[lightning_distance]]
>>         extractor = min
>>
>> See if adding the Accumulator section in your weewx.conf fixes your issue.
>>
>> -Troy
>>
>> On Sunday, March 6, 2022 at 7:40:30 AM UTC-5 Kingsclear Studios wrote:
>>
>>> Weewx Conf:
>>>
>>> [SDR]
>>>     # This section is for the software-defined radio driver.
>>>
>>>     # The driver to use
>>>     driver = user.sdr
>>>     path = /usr/local/bin
>>>     log_unknown_sensors = True
>>>     log_unmapped_sensors = True
>>>     [[sensor_map]]
>>>         extraTemp1 = temperature.1720.AcuriteTowerPacketV2    # basement
>>>         extraHumid1 = humidity.1720.AcuriteTowerPacketV2
>>>         outTemp = temperature.041D.Acurite5n1PacketV2
>>>         outHumidity = humidity.041D.Acurite5n1PacketV2
>>>         rain_total = rain_total.041D.Acurite5n1PacketV2
>>>         windDir = wind_dir.041D.Acurite5n1PacketV2
>>>         windSpeed = wind_speed.041D.Acurite5n1PacketV2
>>>         inHumidity = humidity.009B.AcuriteLightningPacket    #upstairs 
>>> Humidity
>>>         inTemp = temperature.009B.AcuriteLightningPacket    #upstairs 
>>> Temperature
>>>         strikes_total = strikes_total.009B.AcuriteLightningPacket   
>>>  #Total Lightning Strike Count
>>>         lightning_distance = distance.009B.AcuriteLightningPacket   
>>>  #Storm Distance KM
>>>     [[sensor_type]]
>>>         strikes_total = counter
>>>     [[data_type]]
>>>         strikes_total = delta
>>>     [[Deltas]]
>>>         lightning_strike_count = strikes_total
>>>
>>>
>>> Belchertown Display Settings:
>>>
>>> station_observations = outTemp, outHumidity, heatindex, dewpoint, 
>>> rainRate, windSpeed, windDir, windGust, lightning_strike_count, 
>>> lightning_distance, inTemp, inHumidity, extraTemp1
>>>
>>> Which results in display of "N/A" for lightning strikes.
>>>
>>> I can trigger an artificial strike to get a count, and I do see 
>>> "strikes_total" climbing during this time, so it's recording the event 
>>> itself in the DB/MQTT and sending it, but I cannot seem to get it to 
>>> display in the skin as a "daily" count = or a count based on the 
>>> established reporting period. The 06045M is a counter, it wraps at 255 now, 
>>> so I do understand how it works more or less, just not how to get it to 
>>> display properly in the skin and for charting in the near future.
>>>
>>> I've read dozens of threads, and I can't seem to find a conclusive 
>>> solution - help!!
>>>
>>> Most recently added to [StdCalibrate]: lightning_distance = 
>>> lightning_distance if lightning_strike_count > 0 else None
>>>
>>>
>>> [image: Capture.PNG]
>>>
>>

-- 
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/20048e31-d761-4af9-b7b6-296532f14aa5n%40googlegroups.com.

Reply via email to