Tempest WeatherFlow Lightning

202 views
Skip to first unread message

John Jacklin

unread,
Oct 2, 2024, 8:39:48 AM10/2/24
to weewx-user
Just got back into WeeWX again after freeing up a Raspberry Pi.
I have the Tempest WeatherFlow device and using the river from here


I have it set up and tweaked to my liking here


For the life of me I can't get it to show lightning strikes (It is set up to show strikes on the app)

Here are my settings (with MY-ID being my station ST ID)

[WeatherFlowUDP]
   
    driver = user.weatherflowudp
    log_raw_packets = False
    udp_address = <broadcast>
    # udp_address = 0.0.0.0
    # udp_address = 255.255.255.255
    udp_port = 50222
    udp_timeout = 90
    share_socket = False
   
    #
    # IMPORTANT - please edit in 'your' sensor ID below
    #             (the value 'ST-00000025' here is an example only)
    #
   
    [[sensor_map]]
        outTemp = air_temperature.ST-MY-ID.obs_st
        outHumidity = relative_humidity.ST-MY-ID.obs_st
        pressure = station_pressure.ST-MY-ID.obs_st
        lightning_strikes = lightning_strike_count.ST-MY-ID.obs_st
        avg_distance = lightning_strike_avg_distance.ST-MY-ID.obs_st
        outTempBatteryStatus = battery.ST-MY-ID.obs_st
        windSpeed = wind_speed.ST-MY-ID.rapid_wind
        windDir = wind_direction.ST-MY-ID.rapid_wind
        luxXXX = illuminance.ST-MY-ID.obs_st
        UV = uv.ST-MY-ID.obs_st
        rain = rain_accumulated.ST-MY-ID.obs_st
        windBatteryStatus = battery.ST-MY-ID.obs_st
        radiation = solar_radiation.ST-MY-ID.obs_st
        rxCheckPercent = rssi.ST-MY-ID.device_status

michael.k...@gmx.at

unread,
Oct 2, 2024, 10:42:01 AM10/2/24
to weewx-user
In general, you have to configure the skin of your choice to display lightning events. But, displaying lightning strikes are is a bit different from other observations, since they are discrete events and not continuous. You can e.g. show count per interval, distance, or both combined. Either way, you need to configure your skin as desired, since the skins I know of, don't display these observations out of the box.

John Jacklin

unread,
Oct 3, 2024, 9:57:43 AM10/3/24
to weewx-user

Hi

Thanks for the reply. I was messing with WeeWM a few months ago with exactly the same hardware/software setup and lightning reporting worked out of the box with the sensor map as per my post.

This time it is not doing

michael.k...@gmx.at

unread,
Oct 3, 2024, 10:07:47 AM10/3/24
to weewx-user
What is WeeWM?

John Jacklin

unread,
Oct 3, 2024, 10:10:20 AM10/3/24
to weewx-user
Typo - WeeWX

Dan Roman

unread,
Oct 3, 2024, 11:00:48 AM10/3/24
to weewx-user
Hi John,

I never did quite figure this out so that it works like I expect it to.  I have tried it using the Seasons and Belchertown skins with slightly different results using what I thought were the same methods.  I'll share all my settings with you, it doesn't work exactly as I had hoped, and I have not gone back in to debug it all in quite a while.  If you want to take a look at what I did, maybe you'll find where I went wrong.  I think I need to add some calculations to add things like lightning strikes in the last 3 hours, etc.

For lightning, my graphs seem to work in Seasons but not the current conditions.  In Belchertown the current observations for lightning don't appear to work but the graphs are almost there.  The Belchertown graph lightning count looks like it works but I would like them to report the minimum distance and I'm not sure that is what I am getting.

Before I get into my particular settings, this guy https://weather.sangrephotography.com/ seems to have figured it out. I contacted him to see if he would share his Belchertown skin config file but he didn't answer me and I have not been able to reverse engineer it.  As you can see from his page, he has a section for lightning that includes Time since last lightning strike, Strikes the last 3 hours, Strikes the last hour,  Distance last strike, and Range of last strike.  I would like to figure out how to replicate this.

Here are my settings for the tempest sensor map in the weewx config file:

    [[sensor_map]]
        # This section is for handling data for the Tempest Weather Station
        outTemp = air_temperature.ST-########.obs_st
        outHumidity = relative_humidity.ST- ######## .obs_st
        pressure = station_pressure.ST- ######## .obs_st
        lightning_strikes = lightning_strike_count.ST- ######## .obs_st
        avg_distance = lightning_strike_avg_distance.ST- ########.obs_st
        outTempBatteryStatus = battery.ST- ########.obs_st
        windSpeed = wind_speed.ST- ########.rapid_wind
        windDir = wind_direction.ST- ########.rapid_wind
        luminosity = illuminance.ST- ########.obs_st
        UV = uv.ST- ########.obs_st
        rain = rain_accumulated.ST- ########.obs_st
        radiation = solar_radiation.ST- ########.obs_st
        lightning_distance = distance.ST- ########.evt_strike
        lightning_strike_count = lightning_strike_count.ST- ########.obs_st

And also from weewx.conf, the Belchertown observation list:

            station_observations = barometer, dewpoint, outHumidity, rainWithRainRate, UV, cloud_cover, outTempBatteryStatus, lightning_strike_count, lightning_distance

NOTE:  I removed avg_distance and lightning_strikes from the sample I had because they displayed Invalid Observation.

And again from weewx.conf:

[StdCalibrate]
    [[Corrections]]
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None

and

[Accumulator]
    [[lightning_strikes]]
        extractor = sum
    [[lightning_distance]]
        extractor = min
    [[avg_distance]]
        extractor = avg

Here are some lightning entries for the Seasons skin:

From skin.conf:

[DisplayOptions]

    # This list determines which types will appear in the "current conditions"
    # section, as well as in which order.
    observations_current = outTemp, heatindex, windchill, dewpoint, outHumidity, barometer, windSpeed, rain, rainRate, UV, radiation, lightning_strikes, lightning_distance, lightning_strike_count, avg_distance

    # This list determines which types will appear in the "statistics" and
    # "statistical summary" sections, as well as in which order.
    observations_stats = outTemp, heatindex, windchill, dewpoint, outHumidity, barometer, windSpeed, rain, rainRate, ET, UV, radiation, lightning_strikes, lightning_distance, aqi, outTempBatteryStatus

    # Some observations display a sum rather than min/max values
    obs_type_sum = rain, ET, hail, snow, lightning_strikes

    # Some observations display only the max or min value
    obs_type_max = rainRate, hailRate, snowRate, UV
    obs_type_min = lightning_distance

    plot_groups = barometer, tempdew, tempfeel, hum, wind, winddir, windvec, rain, ET, UV, radiation, lightning, lightningdistance, volt, hilow

    [[day_images]]
        x_label_format = %H:%M
        bottom_label_format = %x %X
        time_length = 97200 # 27 hours

         [[[daylightning]]]
            yscale = None, None, 1
            plot_type = bar
            [[[[lightning_strike_count]]]]
                aggregate_type = sum
                aggregate_interval = hour
                label = Lightning (hourly total)

        [[[daylightningdistance]]]
            yscale = 0, 25, 5
            line_type = None
            marker_type = box
            marker_size = 2
#            plot_type = bar
            [[[[lightning_distance]]]]
#                aggregate_type = min
#                aggregate_interval = hour
                label = Lightning Distance
      
 
Here are some lightning entries for the Belchertown skin:

From graph.conf:

    [[lightning]]
        title = Lightning
        [[[lightning_strike_count]]]
            name = Count
            yAxis = 0
            yAxis_min = 0
#            yAxis_tickInterval = 25
            yAxis_label = "Number of Strikes"
            type = column
        [[[lightning_distance]]]
            name = Distance
            yAxis = 1
            yAxis_min = 0
            yAxis_tickInterval = 5
            yAxis_label = "Distance (miles)"
            lineWidth = 0
            [[[[marker]]]]
                enabled = true
                radius = 3

For all the graphs I only included the day version and not week, month, year as they are basically all the same.

Good luck and let me know if you have any suggestions!

Dan

John Jacklin

unread,
Oct 4, 2024, 12:29:25 AM10/4/24
to weewx-user
Many many thanks - I will take a look 9when I get a free moment)
Reply all
Reply to author
Forward
0 new messages