I was able to replicate the problem. Pre V4.6, if windGustDir was missing,
windDir was substituted. That behavior went away with v4.6. This patch
restores it.

Index: bin/weewx/wxxtypes.py
===================================================================
diff --git a/bin/weewx/wxxtypes.py b/bin/weewx/wxxtypes.py
--- a/bin/weewx/wxxtypes.py (revision
279bb450ab801c80a12b8ceadd0144e16c473bea)
+++ b/bin/weewx/wxxtypes.py (date 1644758479921)
@@ -98,11 +98,18 @@
         return ValueTuple(val, 'degree_compass', 'group_direction')

     def calc_windGustDir(self, key, data, db_manager):
-        # Return the current gust direction if windGust is non-zero,
otherwise, None
-        if 'windGust' not in data or 'windGustDir' not in data:
+        """If windGustDir is missing, substitute windDir.
+        Set windGustDir to None if windGust is zero."""
+        if 'windGust' not in data:
             raise weewx.CannotCalculate
         if self.force_null and data['windGust'] == 0:
+            # windGust is zero. Force windGustDir to None
             val = None
+        elif 'windGustDir' not in data:
+            # windGustDir is missing. If available, substitute windDir.
+            if 'windDir' not in data:
+                raise weewx.CannotCalculate
+            val = data['windDir']
         else:
             val = data['windGustDir']
         return ValueTuple(val, 'degree_compass', 'group_direction')

Commit 9dc4da8
<https://github.com/weewx/weewx/commit/9dc4da86a260f01d8792ac93d12871a05bff572d>
.

If you want this right away, you can replace weewx/wxxtypes.py with this
version
<https://raw.githubusercontent.com/weewx/weewx/master/bin/weewx/wxxtypes.py>
.



On Sun, Feb 13, 2022 at 1:38 AM Remy Lavabre <remy.lava...@gmail.com> wrote:

>
> [image: Capture d’écran de 2022-02-13 10-14-16.png]
>
> Same problem for me !
> Since weewx 4.6.x windGustDir is always N/A but the value is correct.
> I never had this problem before with 4.5.x or before... Only since 4.6.x
>
> WindGustDir is always None in loop package values :
>
>
> LOOP:   2022-02-13 10:32:17 CET (1644744737) 'altimeter':
> '30.122934097139712', 'appTemp': '45.455613403122314', 'barometer':
> '30.14900779712183', 'beaufort': '1', 'cloudbase': '3288.4136917377255',
> 'dateTime': '1644744737', 'dayRain': '0.0', 'dewpoint': '41.36', 'ET':
> 'None', 'extraHumid1': '65', 'extraHumid2': '91', 'extraHumid3': 'None',
> 'extraHumid4': 'None', 'extraHumid5': 'None', 'extraHumid6': 'None',
> 'extraHumid7': 'None', 'extraTemp1': '51.980000000000004', 'extraTemp2':
> '51.980000000000004', 'extraTemp3': 'None', 'extraTemp4': 'None',
> 'extraTemp5': 'None', 'extraTemp6': 'None', 'extraTemp7': 'None',
> 'heatindex': '46.88600000000001', 'humidex': '48.74', 'inDewpoint':
> '52.863712008361716', 'inHumidity': '52', 'inTemp': '71.42', 'maxSolarRad':
> '326.89345093846424', 'outHumidity': '76', 'outTemp': '48.74', 'pressure':
> '28.372387999999997', 'rain': '0.0', 'rainRate': '0.0', 'usUnits': '1',
> 'UV': '0', 'windchill': '48.74', *'windDir': '123*', '*windGust':
> '2.4233536729342466', 'windGustDir': 'None',* 'windrun': 'None', *'windSpeed':
> '2.4233536729342466'*
> LOOP:   2022-02-13 10:32:29 CET (1644744749) 'altimeter':
> '30.122934097139712', 'appTemp': '44.055613403122315', 'barometer':
> '30.14900779712183', 'beaufort': '2', 'cloudbase': '3288.4136917377255',
> 'dateTime': '1644744749', 'dayRain': '0.0', 'dewpoint': '41.36', 'ET':
> 'None', 'extraHumid1': '65', 'extraHumid2': '91', 'extraHumid3': 'None',
> 'extraHumid4': 'None', 'extraHumid5': 'None', 'extraHumid6': 'None',
> 'extraHumid7': 'None', 'extraTemp1': '51.980000000000004', 'extraTemp2':
> '51.980000000000004', 'extraTemp3': 'None', 'extraTemp4': 'None',
> 'extraTemp5': 'None', 'extraTemp6': 'None', 'extraTemp7': 'None',
> 'heatindex': '46.88600000000001', 'humidex': '48.74', 'inDewpoint':
> '52.863712008361716', 'inHumidity': '52', 'inTemp': '71.42', 'maxSolarRad':
> '327.35927830102435', 'outHumidity': '76', 'outTemp': '48.74', 'pressure':
> '28.372387999999997', 'rain': '0.0', 'rainRate': '0.0', 'usUnits': '1',
> 'UV': '0', 'windchill': '46.79476438640812', '*windDir': '151',* *'windGust':
> '7.33219829246772', 'windGustDir': 'None',* 'windrun': 'None', *'windSpeed':
> '4.908844619533474'*
> LOOP:   2022-02-13 10:32:41 CET (1644744761) 'altimeter':
> '30.122934097139712', 'appTemp': '44.055613403122315', 'barometer':
> '30.14900779712183', 'beaufort': '2', 'cloudbase': '3288.4136917377255',
> 'dateTime': '1644744761', 'dayRain': '0.0', 'dewpoint': '41.36', 'ET':
> 'None', 'extraHumid1': '65', 'extraHumid2': '91', 'extraHumid3': 'None',
> 'extraHumid4': 'None', 'extraHumid5': 'None', 'extraHumid6': 'None',
> 'extraHumid7': 'None', 'extraTemp1': '51.980000000000004', 'extraTemp2':
> '51.980000000000004', 'extraTemp3': 'None', 'extraTemp4': 'None',
> 'extraTemp5': 'None', 'extraTemp6': 'None', 'extraTemp7': 'None',
> 'heatindex': '46.88600000000001', 'humidex': '48.74', 'inDewpoint':
> '52.863712008361716', 'inHumidity': '52', 'inTemp': '71.42', 'maxSolarRad':
> '327.8246605889759', 'outHumidity': '76', 'outTemp': '48.74', 'pressure':
> '28.372387999999997', 'rain': '0.0', 'rainRate': '0.0', 'usUnits': '1',
> 'UV': '0', 'windchill': '46.79476438640812', '*windDir': '109'*, *'windGust':
> '7.829296481787566', 'windGustDir': 'None'*, 'windrun': 'None', '*windSpeed':
> '4.908844619533474'*
>
>
> Le samedi 12 février 2022 à 19:23:27 UTC+1, asla...@gmail.com a écrit :
>
>> The result with a couple of LOOP records.
>> Both windGust and windGustDir occur in both REC and Loop records.
>>
>> REC:    2022-02-12 19:15:49 CET (1644689749) 'altimeter':
>> '29.447857403881475', 'appTemp': '20.60149362123522', 'barometer':
>> '29.56391226224894', 'cloudbase': '3549.153942263896', 'dateTime':
>> '1644689749', 'delay': '10', 'dewpoint': '28.364486445406747', 'ET':
>> 'None', 'heatindex': '32.36', 'humidex': '32.36', 'inDewpoint':
>> '20.586469406020147', 'inHumidity': '41.0', 'inTemp': '42.620000000000005',
>> 'interval': '10', 'maxSolarRad': '0.0', 'outHumidity': '85.0', 'outTemp':
>> '32.36', 'outTempBatteryStatus': '0', 'pressure': '26.733497683750002',
>> 'ptr': '38208', 'radiation': 'None', 'rain': 'None', 'rainRate': '0.0',
>> 'rainTotal': '104.33999999999999', 'rxCheckPercent': '100', 'status': '0',
>> 'usUnits': '1', 'UV': 'None', 'windchill': '22.558136878652178', 'windDir':
>> '202.5', 'windGust': '15.882287148769064', 'windGustDir': 'None',
>> 'windrun': '2.274224216138293', 'windSpeed': '13.645345296829756'
>> LOOP:   2022-02-12 19:19:05 CET (1644689945) 'altimeter':
>> '29.444663747054953', 'appTemp': '18.256881727966974', 'barometer':
>> '29.56173534294736', 'cloudbase': '3548.394255363211', 'dateTime':
>> '1644689945', 'delay': '3', 'dewpoint': '28.187829067769762', 'ET': 'None',
>> 'heatindex': '32.18', 'humidex': '32.18', 'inDewpoint':
>> '20.586469406020147', 'inHumidity': '41.0', 'inTemp': '42.620000000000005',
>> 'maxSolarRad': '0.0', 'outHumidity': '85.0', 'outTemp': '32.18',
>> 'outTempBatteryStatus': '0', 'pressure': '26.730544685', 'ptr': '38224',
>> 'radiation': 'None', 'rain': 'None', 'rainRate': '0.0', 'rainTotal':
>> '104.33999999999999', 'rxCheckPercent': '100', 'status': '0', 'usUnits':
>> '1', 'UV': 'None', 'windchill': '20.989026611354667', 'windDir': '202.5',
>> 'windGust': '19.68508829706588', 'windGustDir': 'None', 'windrun': 'None',
>> 'windSpeed': '17.448146445126575'
>> LOOP:   2022-02-12 19:20:06 CET (1644690006) 'altimeter':
>> '29.441470085033213', 'appTemp': '22.918881727966976', 'barometer':
>> '29.558469574570985', 'cloudbase': '3548.394255363211', 'dateTime':
>> '1644690006', 'delay': '3', 'dewpoint': '28.187829067769762', 'ET': 'None',
>> 'heatindex': '32.18', 'humidex': '32.18', 'inDewpoint':
>> '20.586469406020147', 'inHumidity': '41.0', 'inTemp': '42.620000000000005',
>> 'maxSolarRad': '0.0', 'outHumidity': '85.0', 'outTemp': '32.18',
>> 'outTempBatteryStatus': '0', 'pressure': '26.72759168625', 'ptr': '38224',
>> 'radiation': 'None', 'rain': '0.0', 'rainRate': '0.0', 'rainTotal':
>> '104.33999999999999', 'rxCheckPercent': '100', 'status': '0', 'usUnits':
>> '1', 'UV': 'None', 'windchill': '24.387120697115183', 'windDir': '180.0',
>> 'windGust': '11.408403444890455', 'windGustDir': 'None', 'windrun': 'None',
>> 'windSpeed': '9.171461592951148'
>>
>> On Saturday, February 12, 2022 at 5:25:08 PM UTC+1 tke...@gmail.com
>> wrote:
>>
>>> Could you do the same again, except this time show the LOOP data as
>>> well?
>>>
>>> I'm not exactly sure what's happening, but my operating theory is that
>>> windGust and windDir never appear in the same LOOP packet. When the
>>> software sees windGust, but no windGustDir, it looks to substitute windDir,
>>> but it's not available. We can tell if this theory is correct by looking at
>>> the LOOP packets.
>>>
>>> On Sat, Feb 12, 2022 at 6:05 AM Tom Keffer <tke...@gmail.com> wrote:
>>>
>>>> Sorry, yes, that's what I meant. If windGustDir is missing, it should
>>>> substitute windDir in its place.
>>>>
>>>> Let me think about this for a bit.
>>>>
>>>> On Sat, Feb 12, 2022 at 5:59 AM Aslak Vaa <asla...@gmail.com> wrote:
>>>>
>>>>> Here is the result from running  weewxd  from the command line:
>>>>>
>>>>> REC:    2022-02-12 14:45:49 CET (1644673549) 'altimeter':
>>>>> '29.559632125170864', 'appTemp': '21.798150800000002', 'barometer':
>>>>> '29.68039690383254', 'cloudbase': '3612.989261474405', 'dateTime':
>>>>> '1644673549', 'delay': '10', 'dewpoint': '27.72361104088051', 'ET': 
>>>>> 'None',
>>>>> 'heatindex': '32.0', 'humidex': '32.0', 'inDewpoint': 
>>>>> '20.331537695862405',
>>>>> 'inHumidity': '40.0', 'inTemp': '42.980000000000004', 'interval': '10',
>>>>> 'maxSolarRad': '123.63840457180561', 'outHumidity': '84.0', 'outTemp':
>>>>> '32.0', 'outTempBatteryStatus': '0', 'pressure': '26.836852640000004',
>>>>> 'ptr': '37776', 'radiation': 'None', 'rain': 'None', 'rainRate': '0.0',
>>>>> 'rainTotal': '104.33999999999999', 'rxCheckPercent': '100', 'status': '0',
>>>>> 'usUnits': '1', 'UV': 'None', 'windchill': '23.361958924222293', 
>>>>> 'windDir':
>>>>> '225.0', 'windGust': '12.079486000472244', 'windGustDir': 'None',
>>>>> 'windrun': '1.7895534815514438', 'windSpeed': '10.737320889308663'
>>>>>
>>>>> Until version 4.6.0 the windGustDir was recorded in the database with
>>>>> a value different from NULL. It seems for me that something is changed.
>>>>> Do you mean that  windGustDir should have the value of windDir
>>>>> (windGust is a speed, not a direction)?
>>>>>
>>>>> On Saturday, February 12, 2022 at 2:41:29 PM UTC+1 tke...@gmail.com
>>>>> wrote:
>>>>>
>>>>>> FO stations do not supply windGustDir, so the software should
>>>>>> substitute windGust in its place.
>>>>>>
>>>>>> Could you please run weewxd directly from the command line
>>>>>> <http://www.weewx.com/docs/usersguide.htm#Running_directly>? Watch
>>>>>> what it prints out for records (marked with "REC:"). What does it show 
>>>>>> for
>>>>>> windGust and windGustDir?
>>>>>>
>>>>>> -tk
>>>>>>
>>>>>> On Sat, Feb 12, 2022 at 4:19 AM Aslak Vaa <asla...@gmail.com> wrote:
>>>>>>
>>>>>>> After upgrating to weewx version 4.6.0/4.6.2 is windGustDir is
>>>>>>> always set to NULL in database (sqlite3).
>>>>>>> Please see results of query from the database and extracts from the
>>>>>>> syslog file.
>>>>>>> I stopped the version 4.5.1 at feb 5 15:02:05, and I started the
>>>>>>> version 4.6.0 same date half an hour later at 15:32:19. The windDir is
>>>>>>> saved as expected, only windGustDir is missing.
>>>>>>> My weatherstation is model WH1080 , and I am using the FineOffsetUSB
>>>>>>> driver.
>>>>>>> Contents of database:
>>>>>>> sqlite3 /var/lib/weewx/weewx.sdb
>>>>>>> SQLite version 3.34.1 2021-01-20 14:10:07
>>>>>>> Enter ".help" for usage hints.
>>>>>>> sqlite> select  dateTime(archive.dateTime, 'unixepoch', 'localtime')
>>>>>>> dateTime,
>>>>>>>    ...>    archive.windSpeed, archive.windDir, archive.windGust,
>>>>>>> archive.windGustDir
>>>>>>>    ...> from archive
>>>>>>>    ...> where archive.datetime >
>>>>>>>    ...>   (select max(archive.dateTime) from archive where
>>>>>>> windGustDir is not null) - 1000
>>>>>>>    ...> limit 10;
>>>>>>> 2022-02-05
>>>>>>> 14:50:00|17.1634447548798|234.745604391204|29.7513266307928|247.5
>>>>>>> 2022-02-05
>>>>>>> 15:00:00|17.6108331252676|221.995376457057|27.2906905936595|247.5
>>>>>>> 2022-02-05 15:14:51|24.3826661861384|202.5|32.6593510383139|
>>>>>>> 2022-02-05 15:24:51|21.2509475934234|247.5|22.8168068897809|
>>>>>>> 2022-02-05 15:34:51|22.8168068897809|180.0|27.2906905936595|
>>>>>>> 2022-02-05 15:40:00|24.3826661861384|225.0|28.1854673344352|
>>>>>>> 2022-02-05
>>>>>>> 15:50:00|19.2987074317309|222.892960584793|34.8962928902532|
>>>>>>> 2022-02-05
>>>>>>> 16:00:00|19.6444166270306|220.208490631264|34.2252103346714|
>>>>>>> 2022-02-05
>>>>>>> 16:10:00|17.3871389400737|226.684593888771|23.4878894453627|
>>>>>>> 2022-02-05
>>>>>>> 16:20:00|13.7673603069355|222.317738592905|25.0537487417202|
>>>>>>> sqlite>
>>>>>>> Extracts from syslog:
>>>>>>> aslak-pi0:~ $ grep '4\.5\.' /var/log/syslog.1 | tail
>>>>>>> Jan 30 09:51:04 aslak-pi0 weewx[952] INFO __main__: Starting up
>>>>>>> weewx version 4.5.1
>>>>>>> Jan 30 19:29:02 aslak-pi0 weewx[976] INFO __main__: Initializing
>>>>>>> weewx version 4.5.1
>>>>>>> Jan 30 19:29:02 aslak-pi0 weewx[979] INFO __main__: Starting up
>>>>>>> weewx version 4.5.1
>>>>>>> Jan 31 19:28:05 aslak-pi0 weewx[965] INFO __main__: Initializing
>>>>>>> weewx version 4.5.1
>>>>>>> Jan 31 19:28:05 aslak-pi0 weewx[968] INFO __main__: Starting up
>>>>>>> weewx version 4.5.1
>>>>>>> Feb  1 20:32:31 aslak-pi0 weewx[1032] INFO __main__: Initializing
>>>>>>> weewx version 4.5.1
>>>>>>> Feb  1 20:32:31 aslak-pi0 weewx[1037] INFO __main__: Starting up
>>>>>>> weewx version 4.5.1
>>>>>>> Feb  2 15:44:42 aslak-pi0 weewx[15495] INFO __main__: Initializing
>>>>>>> weewx version 4.5.1
>>>>>>> Feb  2 15:44:43 aslak-pi0 weewx[15498] INFO __main__: Starting up
>>>>>>> weewx version 4.5.1
>>>>>>> Feb  5 15:02:05 aslak-pi0 weewx[15498] INFO __main__: Terminating
>>>>>>> weewx version 4.5.1
>>>>>>> aslak-pi0:~ $ grep '4\.6\.0' /var/log/syslog.1 | head
>>>>>>> Feb  5 15:32:19 aslak-pi0 weewx[37838] INFO __main__: Initializing
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 15:32:19 aslak-pi0 weewx[37841] INFO __main__: Starting up
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 15:33:45 aslak-pi0 weewx[37841] INFO __main__: Terminating
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 15:35:28 aslak-pi0 weewx[37964] INFO __main__: Initializing
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 15:35:28 aslak-pi0 weewx[37967] INFO __main__: Starting up
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 16:46:50 aslak-pi0 weewx[37967] INFO __main__: Terminating
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 16:46:54 aslak-pi0 weewx[38640] INFO __main__: Initializing
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 16:46:54 aslak-pi0 weewx[38643] INFO __main__: Starting up
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 16:57:25 aslak-pi0 weewx[38643] INFO __main__: Terminating
>>>>>>> weewx version 4.6.0
>>>>>>> Feb  5 16:57:29 aslak-pi0 weewx[38793] INFO __main__: Initializing
>>>>>>> weewx version 4.6.0
>>>>>>> aslak-pi0:~ $
>>>>>>>
>>>>>>> --
>>>>>>> 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/1acfbc59-01a5-44a9-b1a8-bd000823204fn%40googlegroups.com
>>>>>>> <https://groups.google.com/d/msgid/weewx-user/1acfbc59-01a5-44a9-b1a8-bd000823204fn%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 weewx-user+...@googlegroups.com.
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/weewx-user/7e95cedd-6db0-4bd2-9209-babeee3218e1n%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/weewx-user/7e95cedd-6db0-4bd2-9209-babeee3218e1n%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 weewx-user+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/weewx-user/70d09feb-27f0-40ce-909b-5d62c5757f6cn%40googlegroups.com
> <https://groups.google.com/d/msgid/weewx-user/70d09feb-27f0-40ce-909b-5d62c5757f6cn%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 weewx-user+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/CAPq0zEDZsZjXHws7BBa2XvqdiVj7Xo%2BqUyg3wDK874AJq-2s_g%40mail.gmail.com.

Reply via email to