BME280 Sensor Missing Inside Temp Readings

412 views
Skip to first unread message

wxwatching

unread,
Aug 5, 2021, 5:52:11 PM8/5/21
to weewx-user
I have installed the BME280 sensor and have the drivers installed. I am getting the pressure readings in the Weewx packets, but not inside humidity or temperature. Here's what the config file looks like at present:

[Bme280wx]
    i2c_port = 1
    i2c_address = 0x76
    usUnits = US
    pressureKeys = pressure
    pressure_must_have = outTemp
    humidityKeys = inHumidity
    humidity_must_have = inTemp
    temperatureKeys = inTemp
    temperature_must_have = ""

Sample of syslog output:

Aug  5 17:49:48 raspberrypi weewx[4519] INFO weewx.restx: Wunderground-RF: Published record 2021-08-05 17:49:43 EDT (1628200183)
Aug  5 17:49:48 raspberrypi weewx[4519] INFO weewx.restx: Wunderground-RF: Published record 2021-08-05 17:49:43 EDT (1628200183)
Aug  5 17:49:57 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=024bee2b-a360-4562-9e73-b1c369673601, timestamp=2021-08-05 17:49:57.407220, temp=29.708 °C, pressure=1011.61 hPa, humidity=37.69 % rH)
Aug  5 17:49:57 raspberrypi weewxd: bme280: {u'outTempBatteryStatus': 0, u'rain': 0.0, 'dateTime': 1628200193, u'windDir': 117.0, u'windSpeed': 2.0, u'rain_total': 1.89, 'usUnits': 1}
Aug  5 17:49:57 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=75afbec5-c8b9-4258-843a-2775fb8473a7, timestamp=2021-08-05 17:49:57.444378, temp=29.724 °C, pressure=1011.58 hPa, humidity=37.69 % rH)
Aug  5 17:49:57 raspberrypi weewxd: bme280: {u'outTempBatteryStatus': 0, u'rain': 0.0, 'dateTime': 1628200193, u'windDir': 117.0, u'windSpeed': 2.0, u'rain_total': 1.89, 'usUnits': 1}
Aug  5 17:49:57 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=2e3feab2-2224-49c9-b63e-be2f07e01954, timestamp=2021-08-05 17:49:57.475379, temp=29.724 °C, pressure=1011.58 hPa, humidity=37.69 % rH)
Aug  5 17:49:57 raspberrypi weewxd: bme280: {u'outTempBatteryStatus': 0, u'rain': 0.0, 'dateTime': 1628200193, u'windDir': 117.0, u'windSpeed': 2.0, u'rain_total': 1.89, 'usUnits': 1}
Aug  5 17:49:58 raspberrypi weewx[4519] INFO weewx.restx: Wunderground-RF: Published record 2021-08-05 17:49:53 EDT (1628200193)
Aug  5 17:49:59 raspberrypi weewx[4519] INFO weewx.restx: Wunderground-RF: Published record 2021-08-05 17:49:53 EDT (1628200193)
Aug  5 17:50:07 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=606beb9c-6882-4ebc-a91f-55bda7826f3e, timestamp=2021-08-05 17:50:07.372877, temp=29.795 °C, pressure=1011.59 hPa, humidity=37.20 % rH)
Aug  5 17:50:07 raspberrypi weewxd: bme280: {u'UV': 1, u'lux': 43970, u'outTempBatteryStatus': 0, u'radiation': 43970, 'dateTime': 1628200203, u'windSpeed': 2.0, 'usUnits': 1}
Aug  5 17:50:07 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=f7bc9b5e-9c75-4c33-a6c9-78c351fe8a28, timestamp=2021-08-05 17:50:07.404689, temp=29.795 °C, pressure=1011.53 hPa, humidity=37.19 % rH)
Aug  5 17:50:07 raspberrypi weewxd: bme280: {u'UV': 1, u'lux': 43970, u'outTempBatteryStatus': 0, u'radiation': 43970, 'dateTime': 1628200203, u'windSpeed': 2.0, 'usUnits': 1}
Aug  5 17:50:07 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=aac9f9f0-edb4-44df-92ef-eabcbbf82f27, timestamp=2021-08-05 17:50:07.434998, temp=29.806 °C, pressure=1011.58 hPa, humidity=37.20 % rH)
Aug  5 17:50:07 raspberrypi weewxd: bme280: {u'UV': 1, u'lux': 43970, u'outTempBatteryStatus': 0, u'radiation': 43970, 'dateTime': 1628200203, u'windSpeed': 2.0, 'usUnits': 1}
Aug  5 17:50:08 raspberrypi weewx[4519] INFO weewx.restx: Wunderground-RF: Published record 2021-08-05 17:50:03 EDT (1628200203)
Aug  5 17:50:09 raspberrypi weewx[4519] INFO weewx.restx: Wunderground-RF: Published record 2021-08-05 17:50:03 EDT (1628200203)
Aug  5 17:50:17 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=37565396-6b77-417b-aa34-6b71cf5782aa, timestamp=2021-08-05 17:50:17.331457, temp=29.760 °C, pressure=1011.61 hPa, humidity=37.06 % rH)
Aug  5 17:50:17 raspberrypi weewxd: bme280: {u'pressure': 29.872957020180873, u'outHumidity': 55.0, u'outTempBatteryStatus': 0, 'dateTime': 1628200213, u'outTemp': 84.1, u'windSpeed': 2.0, 'usUnits': 1}
Aug  5 17:50:17 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=5e8a7cfe-37ba-43a5-88c9-bc08aadc9eb9, timestamp=2021-08-05 17:50:17.365674, temp=29.760 °C, pressure=1011.61 hPa, humidity=37.05 % rH)
Aug  5 17:50:17 raspberrypi weewxd: bme280: {u'pressure': 29.872957020180873, u'outHumidity': 55.0, u'outTempBatteryStatus': 0, 'dateTime': 1628200213, u'outTemp': 84.1, u'windSpeed': 2.0, 'usUnits': 1}
Aug  5 17:50:17 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=5bf23958-952e-4c34-891e-84e2cffc5aec, timestamp=2021-08-05 17:50:17.407304, temp=29.765 °C, pressure=1011.62 hPa, humidity=37.06 % rH)
Aug  5 17:50:17 raspberrypi weewxd: bme280: {u'pressure': 29.873202061427115, u'outHumidity': 55.0, u'outTempBatteryStatus': 0, 'dateTime': 1628200213, u'outTemp': 84.1, u'windSpeed': 2.0, 'usUnits': 1}

Any thoughts on why I am not getting the inTemp or inHumidity readings in the packet output?

Regards,
Anthony

gjr80

unread,
Aug 5, 2021, 7:35:35 PM8/5/21
to weewx-user
Hi,

Assume you are running this service? If so field inHumidity will only be added to the loop packet if field inTemp is already in the loop packet. I'm guessing here that the loop packets emitted by your WeeWX driver (eg the SDR driver) don't include the field inTemp so you are relying on the BME280 for inTemp. Since there seems to be some issues with getting the BME280 service to add the field inTemp to the loop packet this could explain the lack of inHumidity (though this does not explain why inTemp is not being populated and it is possible inHumidity is suffering from the same unknown problem). Suggest you change humidity_must_have = inTemp to humidity_must_have = "" to at least rule this cause out for inHumidity.

Also suggest you provide the output of running WeeWX directly as well as a startup log extract, this will make it easier to reconcile the loop packet contents across all WeeWX services not just in the BME280 service. You already seem to have debug = 1 in weewx.conf so leave that as is. Stop WeeWX and then run WeeWX directly. Let it run for an archive interval or two and then post the console output (LOOP: and REC: packets/records) and the log from when you started WeeWX making sure you capture the full WeeWX startup and the subsequent couple of archive intervals. Finally, could you provide a copy of your [Engine] stanza from weewx.conf.

Gary

wxwatching

unread,
Aug 5, 2021, 11:27:49 PM8/5/21
to weewx-user
I am running  wjcarpenter service and this is the output when running WeeWX directly. By the way, it was working yesterday, but now nothing doing. Syslog output and [Engine] stanza from weewx.conf is below:

Aug  5 23:21:28 raspberrypi weewx[1324] INFO __main__: Initializing weewx version 4.5.1
Aug  5 23:21:28 raspberrypi weewx[1324] INFO __main__: Using Python 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0]
Aug  5 23:21:28 raspberrypi weewx[1324] INFO __main__: Platform Linux-5.10.52-v7+-armv7l-with-debian-10.10
Aug  5 23:21:28 raspberrypi weewx[1324] INFO __main__: Locale is 'en_US.UTF-8'
Aug  5 23:21:28 raspberrypi weewx[1324] INFO __main__: Using configuration file /etc/weewx/weewx.conf
Aug  5 23:21:28 raspberrypi weewx[1324] INFO __main__: Debug is 1
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG __main__: Initializing engine
Aug  5 23:21:28 raspberrypi weewx[1324] INFO weewx.engine: Loading station type SDR (user.sdr)
Aug  5 23:21:28 raspberrypi weewx[1324] INFO user.sdr: driver version is 0.78
Aug  5 23:21:28 raspberrypi weewx[1324] INFO user.sdr: sensor map is {u'outTempBatteryStatus': u'battery.0222.AcuriteAtlasPacket', u'outTemp': u'temperature.0222.AcuriteAtlasPacket', u'outHumidity': u'humidity.0222.AcuriteAtlasPacket', u'windSpeed': u'wind_speed.0222.AcuriteAtlasPacket', u'windDir': u'wind_dir.0222.AcuriteAtlasPacket', u'UV': u'uv.0222.AcuriteAtlasPacket', u'rain_total': u'rain_total.0222.AcuriteAtlasPacket', u'radiation': u'lux.0222.AcuriteAtlasPacket', u'strikes_total': u'strike_count.0222.AcuriteAtlasPacket', u'strike_distance': u'strike_distance.0222.AcuriteAtlasPacket', u'lux': u'lux.0222.AcuriteAtlasPacket', u'log_unknown_sensors': u'True', u'log_unmapped_sensors': u'True'}
Aug  5 23:21:28 raspberrypi weewx[1324] INFO user.sdr: deltas is {u'rain': u'rain_total', u'lightning_strike_count': u'strikes_total'}
Aug  5 23:21:28 raspberrypi weewx[1324] INFO user.sdr: startup process 'rtl_433 -M utc -F json'
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG user.sdr: start async reader for stdout-thread
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG user.sdr: start async reader for stderr-thread
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG weewx.engine: Loading service weewx.engine.StdTimeSynch
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG weewx.engine: Finished loading service weewx.engine.StdTimeSynch
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG weewx.engine: Loading service user.bme280wx.Bme280wx
Aug  5 23:21:28 raspberrypi weewxd: bme280: bme280wx configuration {u'i2c_port': u'1', u'i2c_address': u'0x76', u'usUnits': u'US', u'pressureKeys': u'pressure', u'pressure_must_have': u'outTemp', u'humidityKeys': u'inHumidity', u'humidity_must_have': u'', u'temperatureKeys': u'inTemp', u'temperature_must_have': u''}
Aug  5 23:21:28 raspberrypi weewx[1324] INFO user.sdr: shutdown process rtl_433 -M utc -F json
Aug  5 23:21:28 raspberrypi weewx[1324] DEBUG user.sdr: waiting for stdout-thread
Aug  5 23:21:29 raspberrypi weewx[1324] DEBUG user.sdr: waiting for stderr-thread
Aug  5 23:21:29 raspberrypi weewx[1324] DEBUG user.sdr: close stdout
Aug  5 23:21:29 raspberrypi weewx[1324] DEBUG user.sdr: close stderr
Aug  5 23:21:29 raspberrypi weewx[1324] DEBUG user.sdr: kill process
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__: Caught unrecoverable exception:
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****  [Errno 121] Remote I/O error
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****  Traceback (most recent call last):
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd", line 151, in main
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      engine = weewx.engine.StdEngine(config_dict)
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 93, in __init__
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      self.loadServices(config_dict)
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 161, in loadServices
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/share/weewx/user/bme280wx.py", line 61, in __init__
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      self.calibration_params = bme280.load_calibration_params(self.bus, self.address)
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/local/lib/python2.7/dist-packages/bme280/__init__.py", line 153, in load_calibration_params
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      compensation_params.dig_T1 = read.unsigned_short(0x88)
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/local/lib/python2.7/dist-packages/bme280/reader.py", line 40, in unsigned_short
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      return self._bus.read_word_data(self._address, register) & 0xffff
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****    File "/usr/local/lib/python2.7/dist-packages/smbus2/smbus2.py", line 474, in read_word_data
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****      ioctl(self.fd, I2C_SMBUS, msg)
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****  IOError: [Errno 121] Remote I/O error
Aug  5 23:21:29 raspberrypi weewx[1324] CRITICAL __main__:     ****  Exiting.


[Engine]

    # The following section specifies which services should be run and in what order.
    [[Services]]
        prep_services = weewx.engine.StdTimeSynch
        data_services = user.bme280wx.Bme280wx,
        process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, weewx.engine.StdQC, weewx.wxservices.StdWXCalculate
        xtype_services = weewx.wxxtypes.StdWXXTypes, weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater, weewx.wxxtypes.StdDelta
        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

Thanks,
Anthony


wxwatching

unread,
Aug 6, 2021, 7:19:50 AM8/6/21
to weewx-user
I tried running this command and got this output, although it was previously returning packets from my Acurite Atlas:

sudo rtl_433
rtl_433 version 21.05-57-g3c61f600 branch feat-atlas at 202107311123 inputs file rtl_tcp RTL-SDR
Use -h for usage help and see https://triq.org/ for documentation.
Trying conf file at "rtl_433.conf"...
Trying conf file at "/root/.config/rtl_433/rtl_433.conf"...
Trying conf file at "/usr/local/etc/rtl_433/rtl_433.conf"...
Trying conf file at "/etc/rtl_433/rtl_433.conf"...
Registered 161 out of 190 device decoding protocols [ 1-4 8 11-12 15-17 19-23 25-26 29-36 38-60 63 67-71 73-100 102-105 108-116 119 121 124-128 130-149 151-161 163-168 170-175 177-190 ]
usb_claim_interface error -6

I have also run this command and got no return message:

pi@raspberrypi:~ $ sudo modprobe -r dvb_usb_rtl28xxu
pi@raspberrypi:~ $ 

I get these results in spite of having this file /etc/modprobe.d/blacklist.conf with these contents:

blacklist dvb_usb_rtl28xxu
blacklist dvb_usb_rtl28xxu
blacklist rtl2830
blacklist rtl2832
blacklist dvb_usb_rtl2832u

Back to the bme280 driver. Again, this was working, but now I get error when running this script:

import smbus2
import bme280

port = 1
address = 0x76
bus = smbus2.SMBus(port)

calibration_params = bme280.load_calibration_params(bus, address)

# the sample method will take a single reading and return a
# compensated_reading object
data = bme280.sample(bus, address, calibration_params)

# the compensated_reading class has the following attributes
print(data.id)
print(data.timestamp)
print(data.temperature)
print(data.pressure)
print(data.humidity)

# there is a handy string representation too
print(data)


Error when running script:

python3 bme280_test.py
Traceback (most recent call last):
  File "bme280_test.py", line 8, in <module>
    calibration_params = bme280.load_calibration_params(bus, address)
  File "/usr/local/lib/python3.7/dist-packages/bme280/__init__.py", line 153, in load_calibration_params
    compensation_params.dig_T1 = read.unsigned_short(0x88)
  File "/usr/local/lib/python3.7/dist-packages/bme280/reader.py", line 40, in unsigned_short
    return self._bus.read_word_data(self._address, register) & 0xffff
  File "/usr/local/lib/python3.7/dist-packages/smbus2/smbus2.py", line 474, in read_word_data
    ioctl(self.fd, I2C_SMBUS, msg)
OSError: [Errno 121] Remote I/O error

wxwatching

unread,
Aug 6, 2021, 7:23:34 AM8/6/21
to weewx-user
And just in case this helpful, here's my i2c output:

sudo i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- 76 --                         




gjr80

unread,
Aug 6, 2021, 9:59:23 PM8/6/21
to weewx-user
I'm afraid I know little when it comes to troubleshooting i2c issues. So running a python script to access the BME280 independent of WeeWX gives the same error. That would seem to indicate some sort of i2c issue. Sorry, not much help dealing with the latest error, you probably need an i2c experienced user.

With rtl_433 did you still have WeeWX running? Perhaps there was a zombie WeeWX process that still held the USB port used by your sdr. Have a look at the list of running WeeWX processes using something like:

$ ps -aux|grep weewx

and kill any that are still there. Then try rtl_433.

Does WeeWX run without error as a daemon if you disable the BME280 service and just run your sdr driver?

Gary

Greg Troxel

unread,
Aug 7, 2021, 5:52:49 AM8/7/21
to gjr80, weewx-user

gjr80 <gjrod...@gmail.com> writes:

> I'm afraid I know little when it comes to troubleshooting i2c issues. So
> running a python script to access the BME280 independent of WeeWX gives the
> same error. That would seem to indicate some sort of i2c issue. Sorry, not
> much help dealing with the latest error, you probably need an i2c
> experienced user.

Also not an i2c expert, but a datapoint: I have a BME280 hooked up to an
ESP8266 with nodemcu, and sometimes the BME280 goes out to lunch somehow
so I stop getting reports. That leads to a watchdog reset after 15
minutes from not posting to MQTT (cleared in puback callback), but even
on reboot I don't get temp reports. Power cycling does get it working
again.

I was earlier using automatic mode. I switched to forced mode, and I
think I've had a failure since. I have hints that the problem is
provoked by power glitches and static electricity. (The ESP8266 was
powered by an old phone charger, but one that is UL listed.)

I have several other ESP8266 that have Si7021 temperature/humidity
sensors and those have been reliable, flaky power and crazy low humidity
included.

I have been thinking that my particular BME280 is damaged somehow.

So I would suggest that the OP power cycle it and see if that changes
anything.
signature.asc

wxwatching

unread,
Aug 7, 2021, 8:41:48 AM8/7/21
to weewx-user
Ok, solved the problem with remote I/O error with bme280 sensor. Found a wire had come loose. Also the rtl_sdr is back working. However, still not getting the inside temp and humidity to show in WeeWX webpage display. I do see in syslog the following packet:

Aug  7 08:31:34 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=935fa750-4b08-4483-8cf3-b40b5c059717, timestamp=2021-08-07 08:31:34.908185, temp=27.590 °C, pressure=1009.86 hPa, humidity=33.17 % rH)

In weewx.conf the BME280 section has inTemp and inHumidity. Is this correct considering the packet reports temp and humidity and not inTemp and inHumidity?

[Bme280wx]
    i2c_port = 1
    i2c_address = 0x76
    usUnits = US
    pressureKeys = pressure
    pressure_must_have = outTemp
    humidityKeys = inHumidity
    humidity_must_have = ""

gjr80

unread,
Aug 7, 2021, 8:43:31 PM8/7/21
to weewx-user
So if I understand correctly you are basically back to where you started? WeeWX runs without error but no inTemp or inHumidity data is present?

> In weewx.conf the BME280 section has inTemp and inHumidity. Is this correct considering the packet reports temp and humidity and not inTemp and inHumidity?
According to the Bme280wx readme configuration instructions you should set HumidityKeys and TemperatureKeys to the the WeeWX loop packet fields that you want the BME280 humidity and temperature data to appear. So inHumidity and inTemp are appropriate.

As for the way ahead, whilst troubleshooting I think it wise to set pressure_must_have, humidity_must_have and temperature_must_have to "", otherwise you are masking data from the BME280 and it just adds confusion/detracts from the overall picture. I suggest you make those changes to weewx.conf, stop WeeWX if it was running and then run WeeWX directly as per my earlier post. Then capture and post the LOOP:/REC: output mentioned earlier and post the log from startup. Would be helpful if the loop packet capture covers the same period as the log extract - makes it easier to reconcile the fields.

If things are still not working as they should we can put a few extra lines of code in the Bme280wx service to log a few values so we can see exactly what is going on.

Gary

wxwatching

unread,
Aug 8, 2021, 7:47:36 AM8/8/21
to weewx-user
Ok, here's the current section from config file:

[Engine]

    # The following section specifies which services should be run and in what order.
    [[Services]]
        prep_services = weewx.engine.StdTimeSynch
        data_services = user.bme280wx.Bme280wx,
        process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, weewx.engine.StdQC, weewx.wxservices.StdWXCalculate
        xtype_services = weewx.wxxtypes.StdWXXTypes, weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater, weewx.wxxtypes.StdDelta
        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

[Bme280wx]
    i2c_port = 1
    i2c_address = 0x76
    usUnits = US
    pressureKeys = pressure
    pressure_must_have = ""
    humidityKeys = inHumidity
    humidity_must_have = ""
    temperatureKeys = inTemp
    temperature_must_have = ""

New problem now is that the loop apparently hangs and WeeWX quits reporting weather data.

sudo weewxd
LOOP:   2021-08-08 07:36:29 EDT (1628422589) dateTime: 1628422589, lux: 13470, maxSolarRad: None, outTempBatteryStatus: 0, radiation: 106.314127861, rainRate: 0, usUnits: 1, UV: 1, windSpeed: 0.0
LOOP:   2021-08-08 07:36:29 EDT (1628422589) dateTime: 1628422589, lux: 13470, maxSolarRad: None, outTempBatteryStatus: 0, radiation: 106.314127861, rainRate: 0, usUnits: 1, UV: 1, windSpeed: 0.0
LOOP:   2021-08-08 07:36:29 EDT (1628422589) dateTime: 1628422589, lux: 13470, maxSolarRad: None, outTempBatteryStatus: 0, radiation: 106.314127861, rainRate: 0, usUnits: 1, UV: 1, windSpeed: 0.0
LOOP:   2021-08-08 07:36:39 EDT (1628422599) appTemp: 78.5400076483, cloudbase: 229.659363466, dateTime: 1628422599, dewpoint: 70.6, heatindex: 72.06, humidex: 86.4663612495, maxSolarRad: None, outHumidity: 100.0, outTemp: 70.6, outTempBatteryStatus: 0, rainRate: 0, usUnits: 1, windchill: 70.6, windSpeed: 0.0
LOOP:   2021-08-08 07:36:39 EDT (1628422599) appTemp: 78.5400076483, cloudbase: 229.659363466, dateTime: 1628422599, dewpoint: 70.6, heatindex: 72.06, humidex: 86.4663612495, maxSolarRad: None, outHumidity: 100.0, outTemp: 70.6, outTempBatteryStatus: 0, rainRate: 0, usUnits: 1, windchill: 70.6, windSpeed: 0.0
LOOP:   2021-08-08 07:36:39 EDT (1628422599) appTemp: 78.5400076483, cloudbase: 229.659363466, dateTime: 1628422599, dewpoint: 70.6, heatindex: 72.06, humidex: 86.4663612495, maxSolarRad: None, outHumidity: 100.0, outTemp: 70.6, outTempBatteryStatus: 0, rainRate: 0, usUnits: 1, windchill: 70.6, windSpeed: 0.0
LOOP:   2021-08-08 07:36:49 EDT (1628422609) dateTime: 1628422609, maxSolarRad: None, outTempBatteryStatus: 0, rain: None, rainRate: 0, rain_total: 2.07, usUnits: 1, windDir: None, windSpeed: 0.0
LOOP:   2021-08-08 07:36:49 EDT (1628422609) dateTime: 1628422609, maxSolarRad: None, outTempBatteryStatus: 0, rain: 0.0, rainRate: 0, rain_total: 2.07, usUnits: 1, windDir: None, windSpeed: 0.0
LOOP:   2021-08-08 07:36:49 EDT (1628422609) dateTime: 1628422609, maxSolarRad: None, outTempBatteryStatus: 0, rain: 0.0, rainRate: 0, rain_total: 2.07, usUnits: 1, windDir: None, windSpeed: 0.0

And the output from the syslog is:

Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Initializing weewx version 4.5.1
Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Using Python 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0]
Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Platform Linux-5.10.52-v7+-armv7l-with-debian-10.10
Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Locale is 'en_US.UTF-8'
Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Using configuration file /etc/weewx/weewx.conf
Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Debug is 1
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG __main__: Initializing engine
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: Loading station type SDR (user.sdr)
Aug  8 07:36:23 raspberrypi weewx[2566] INFO user.sdr: driver version is 0.78
Aug  8 07:36:23 raspberrypi weewx[2566] INFO user.sdr: sensor map is {u'outTempBatteryStatus': u'battery.0222.AcuriteAtlasPacket', u'outTemp': u'temperature.0222.AcuriteAtlasPacket', u'outHumidity': u'humidity.0222.AcuriteAtlasPacket', u'windSpeed': u'wind_speed.0222.AcuriteAtlasPacket', u'windDir': u'wind_dir.0222.AcuriteAtlasPacket', u'UV': u'uv.0222.AcuriteAtlasPacket', u'rain_total': u'rain_total.0222.AcuriteAtlasPacket', u'radiation': u'lux.0222.AcuriteAtlasPacket', u'strikes_total': u'strike_count.0222.AcuriteAtlasPacket', u'strike_distance': u'strike_distance.0222.AcuriteAtlasPacket', u'lux': u'lux.0222.AcuriteAtlasPacket', u'log_unknown_sensors': u'True', u'log_unmapped_sensors': u'True'}
Aug  8 07:36:23 raspberrypi weewx[2566] INFO user.sdr: deltas is {u'rain': u'rain_total', u'lightning_strike_count': u'strikes_total'}
Aug  8 07:36:23 raspberrypi weewx[2566] INFO user.sdr: startup process 'rtl_433 -M utc -F json'
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG user.sdr: start async reader for stdout-thread
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG user.sdr: start async reader for stderr-thread
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdTimeSynch
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdTimeSynch
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service user.bme280wx.Bme280wx
Aug  8 07:36:23 raspberrypi weewxd: bme280: bme280wx configuration {u'i2c_port': u'1', u'i2c_address': u'0x76', u'usUnits': u'US', u'pressureKeys': u'pressure', u'pressure_must_have': u'', u'humidityKeys': u'inHumidity', u'humidity_must_have': u'', u'temperatureKeys': u'inTemp', u'temperature_must_have': u''}
Aug  8 07:36:23 raspberrypi weewxd: bme280: I2C port: 1
Aug  8 07:36:23 raspberrypi weewxd: bme280: I2C address: 0x76
Aug  8 07:36:23 raspberrypi weewxd: bme280: fallback default units: US
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service user.bme280wx.Bme280wx
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdConvert
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: StdConvert target unit is 0x1
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdConvert
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdCalibrate
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdCalibrate
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdQC
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdQC
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.wxservices.StdWXCalculate
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.manager: Daily summary version is 4.0
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.wxservices.StdWXCalculate
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdWXXTypes
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdWXXTypes
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdPressureCooker
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdPressureCooker
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdRainRater
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdRainRater
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdDelta
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdDelta
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdArchive
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: Archive will use data binding wx_binding
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: Record generation will be attempted in 'hardware'
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: Using archive interval of 60 seconds (specified in weewx configuration)
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Use LOOP data in hi/low calculations: 1
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdArchive
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.restx.StdStationRegistry
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.restx: StationRegistry: Registration not requested.
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.restx.StdStationRegistry
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.restx.StdWunderground
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.restx: WU essentials: {}
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Data for station KNCDUNN5 will be posted
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.restx.StdWunderground
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.restx.StdPWSweather
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.restx: PWSWeather: Data for station KNCDUNN5 will be posted
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.restx.StdPWSweather
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.restx.StdCWOP
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.restx: CWOP: Data for station KG4AGD will be posted
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.restx.StdCWOP
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.restx.StdWOW
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.restx: WOW: Posting not enabled.
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.restx.StdWOW
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.restx.StdAWEKAS
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.restx: AWEKAS: Posting not enabled.
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.manager: Daily summary version is 4.0
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.restx.StdAWEKAS
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdPrint
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdPrint
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Loading service weewx.engine.StdReport
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Finished loading service weewx.engine.StdReport
Aug  8 07:36:23 raspberrypi weewx[2566] INFO __main__: Starting up weewx version 4.5.1
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.engine: Station does not support reading the time
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.manager: Starting backfill of daily summaries
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.manager: Daily summary version is 4.0
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.manager: Daily summaries up to date
Aug  8 07:36:23 raspberrypi weewx[2566] INFO weewx.engine: Starting main packet loop.
Aug  8 07:36:23 raspberrypi weewx[2566] DEBUG weewx.manager: Daily summary version is 4.0
Aug  8 07:36:26 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:29 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:33 raspberrypi weewx[2566] DEBUG user.sdr: lines=[u'{"time" : "2021-08-08 11:36:29", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 0, "battery_ok" : 1, "message_type" : 39, "wind_avg_mi_h" : 0.000, "uv" : 1, "lux" : 13470, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "c222e700810ac322db16"}\n', u'{"time" : "2021-08-08 11:36:29", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 1, "battery_ok" : 1, "message_type" : 39, "wind_avg_mi_h" : 0.000, "uv" : 1, "lux" : 13470, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "c622e700810ac322db1a"}\n', u'{"time" : "2021-08-08 11:36:29", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 2, "battery_ok" : 1, "message_type" : 39, "wind_avg_mi_h" : 0.000, "uv" : 1, "lux" : 13470, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "ca22e700810ac322db1e"}\n']
Aug  8 07:36:33 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'UV': 1, u'lux': 13470, u'outTempBatteryStatus': 0, u'radiation': 13470, 'dateTime': 1628422589, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:33 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=54dfb6fb-2a31-4fbf-8c62-99294a28c2f2, timestamp=2021-08-08 07:36:33.390092, temp=28.094 °C, pressure=1009.87 hPa, humidity=37.42 % rH)
Aug  8 07:36:33 raspberrypi weewxd: bme280: {u'UV': 1, u'lux': 13470, u'outTempBatteryStatus': 0, u'radiation': 13470, 'dateTime': 1628422589, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:33 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'UV': 1, u'lux': 13470, u'outTempBatteryStatus': 0, u'radiation': 13470, 'dateTime': 1628422589, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:33 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=bfb12de0-9f08-4dcb-b75f-5582a7bf8439, timestamp=2021-08-08 07:36:33.462064, temp=28.094 °C, pressure=1009.79 hPa, humidity=37.41 % rH)
Aug  8 07:36:33 raspberrypi weewxd: bme280: {u'UV': 1, u'lux': 13470, u'outTempBatteryStatus': 0, u'radiation': 13470, 'dateTime': 1628422589, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:33 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'UV': 1, u'lux': 13470, u'outTempBatteryStatus': 0, u'radiation': 13470, 'dateTime': 1628422589, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:33 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=31075ae2-5934-4757-846a-3d13f6b1ec6f, timestamp=2021-08-08 07:36:33.508809, temp=28.104 °C, pressure=1009.80 hPa, humidity=37.41 % rH)
Aug  8 07:36:33 raspberrypi weewxd: bme280: {u'UV': 1, u'lux': 13470, u'outTempBatteryStatus': 0, u'radiation': 13470, 'dateTime': 1628422589, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:33 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Published record 2021-08-08 07:36:29 EDT (1628422589)
Aug  8 07:36:34 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Published record 2021-08-08 07:36:29 EDT (1628422589)
Aug  8 07:36:36 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:39 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:43 raspberrypi weewx[2566] DEBUG user.sdr: lines=[u'{"time" : "2021-08-08 11:36:39", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 0, "battery_ok" : 1, "message_type" : 37, "wind_avg_mi_h" : 0.000, "temperature_F" : 70.600, "humidity" : 100, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "c222650088d2e422db84"}\n', u'{"time" : "2021-08-08 11:36:39", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 1, "battery_ok" : 1, "message_type" : 37, "wind_avg_mi_h" : 0.000, "temperature_F" : 70.600, "humidity" : 100, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "c622650088d2e422db88"}\n', u'{"time" : "2021-08-08 11:36:39", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 2, "battery_ok" : 1, "message_type" : 37, "wind_avg_mi_h" : 0.000, "temperature_F" : 70.600, "humidity" : 100, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "ca22650088d2e422db8c"}\n']
Aug  8 07:36:43 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'outHumidity': 100.0, u'outTempBatteryStatus': 0, 'dateTime': 1628422599, u'outTemp': 70.6, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:43 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=02e0b8d9-bffa-4de7-a8b7-88b422469a98, timestamp=2021-08-08 07:36:43.310072, temp=28.125 °C, pressure=1009.78 hPa, humidity=37.38 % rH)
Aug  8 07:36:43 raspberrypi weewxd: bme280: {u'outHumidity': 100.0, u'outTempBatteryStatus': 0, 'dateTime': 1628422599, u'outTemp': 70.6, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:43 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'outHumidity': 100.0, u'outTempBatteryStatus': 0, 'dateTime': 1628422599, u'outTemp': 70.6, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:43 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=6b2484e3-7c77-4af5-b3e9-536bef3aec7c, timestamp=2021-08-08 07:36:43.342067, temp=28.130 °C, pressure=1009.79 hPa, humidity=37.38 % rH)
Aug  8 07:36:43 raspberrypi weewxd: bme280: {u'outHumidity': 100.0, u'outTempBatteryStatus': 0, 'dateTime': 1628422599, u'outTemp': 70.6, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:43 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'outHumidity': 100.0, u'outTempBatteryStatus': 0, 'dateTime': 1628422599, u'outTemp': 70.6, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:43 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=54e69c0c-a40d-4f3c-b884-aa873f0933b8, timestamp=2021-08-08 07:36:43.376732, temp=28.130 °C, pressure=1009.84 hPa, humidity=37.40 % rH)
Aug  8 07:36:43 raspberrypi weewxd: bme280: {u'outHumidity': 100.0, u'outTempBatteryStatus': 0, 'dateTime': 1628422599, u'outTemp': 70.6, u'windSpeed': 0.0, 'usUnits': 1}
Aug  8 07:36:43 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Published record 2021-08-08 07:36:39 EDT (1628422599)
Aug  8 07:36:44 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Published record 2021-08-08 07:36:39 EDT (1628422599)
Aug  8 07:36:46 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:49 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:53 raspberrypi weewx[2566] DEBUG user.sdr: lines=[u'{"time" : "2021-08-08 11:36:49", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 0, "battery_ok" : 1, "message_type" : 38, "wind_avg_mi_h" : 0.000, "wind_dir_deg" : 25.000, "rain_in" : 2.070, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "c22266000065cf22db7b"}\n', u'{"time" : "2021-08-08 11:36:49", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 1, "battery_ok" : 1, "message_type" : 38, "wind_avg_mi_h" : 0.000, "wind_dir_deg" : 25.000, "rain_in" : 2.070, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "c62266000065cf22db7f"}\n', u'{"time" : "2021-08-08 11:36:49", "model" : "Acurite-Atlas", "id" : 546, "channel" : "A", "sequence_num" : 2, "battery_ok" : 1, "message_type" : 38, "wind_avg_mi_h" : 0.000, "wind_dir_deg" : 25.000, "rain_in" : 2.070, "strike_count" : 138, "strike_distance" : 27, "exception" : 0, "raw_msg" : "ca2266000065cf22db83"}\n']
Aug  8 07:36:53 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'outTempBatteryStatus': 0, 'dateTime': 1628422609, u'windDir': 25.0, u'windSpeed': 0.0, u'rain_total': 2.07, 'usUnits': 1}
Aug  8 07:36:53 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=0b956964-09a7-4b7d-aa20-aa1ac8182845, timestamp=2021-08-08 07:36:53.283276, temp=28.089 °C, pressure=1009.80 hPa, humidity=37.49 % rH)
Aug  8 07:36:53 raspberrypi weewxd: bme280: {u'outTempBatteryStatus': 0, u'rain': None, 'dateTime': 1628422609, u'windDir': 25.0, u'windSpeed': 0.0, u'rain_total': 2.07, 'usUnits': 1}
Aug  8 07:36:53 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'outTempBatteryStatus': 0, 'dateTime': 1628422609, u'windDir': 25.0, u'windSpeed': 0.0, u'rain_total': 2.07, 'usUnits': 1}
Aug  8 07:36:53 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=f17509e4-5900-40eb-87d2-a7af41252126, timestamp=2021-08-08 07:36:53.316713, temp=28.084 °C, pressure=1009.80 hPa, humidity=37.49 % rH)
Aug  8 07:36:53 raspberrypi weewxd: bme280: {u'outTempBatteryStatus': 0, u'rain': 0.0, 'dateTime': 1628422609, u'windDir': 25.0, u'windSpeed': 0.0, u'rain_total': 2.07, 'usUnits': 1}
Aug  8 07:36:53 raspberrypi weewx[2566] DEBUG user.sdr: packet={u'outTempBatteryStatus': 0, 'dateTime': 1628422609, u'windDir': 25.0, u'windSpeed': 0.0, u'rain_total': 2.07, 'usUnits': 1}
Aug  8 07:36:53 raspberrypi weewxd: bme280: BME280 data compensated_reading(id=65c200c0-1ca2-4200-a9a9-e781d4a68c30, timestamp=2021-08-08 07:36:53.348244, temp=28.084 °C, pressure=1009.85 hPa, humidity=37.48 % rH)
Aug  8 07:36:53 raspberrypi weewxd: bme280: {u'outTempBatteryStatus': 0, u'rain': 0.0, 'dateTime': 1628422609, u'windDir': 25.0, u'windSpeed': 0.0, u'rain_total': 2.07, 'usUnits': 1}
Aug  8 07:36:53 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Published record 2021-08-08 07:36:49 EDT (1628422609)
Aug  8 07:36:54 raspberrypi weewx[2566] INFO weewx.restx: Wunderground-RF: Published record 2021-08-08 07:36:49 EDT (1628422609)
Aug  8 07:36:56 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:36:59 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:02 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:05 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:08 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:11 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:14 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:17 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:20 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:23 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:26 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:29 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:32 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:35 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:38 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:41 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:44 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:47 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:50 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:53 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:56 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:37:59 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:02 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:05 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:08 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:11 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:14 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:17 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:20 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:23 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:26 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:29 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:32 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:35 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:38 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:41 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]
Aug  8 07:38:44 raspberrypi weewx[2566] DEBUG user.sdr: lines=[]



gjr80

unread,
Aug 8, 2021, 8:49:48 AM8/8/21
to weewx-user
OK. Let's put a bit more logging in bme280wx.py, we'll just look at pressure for now. Move aside your existing /usr/share/weewx/user/bme280wx.py by renaming it as bme280wx_orig.py. Download the attached bme280wx.py and save it in it's place in the /usr/share/weewx/user directory. Leave debug = 1 and restart WeeWX. Post the log including WeeWX startup and the first half dozen loop packets.

Gary
bme280wx.py

Mks Mk

unread,
Aug 8, 2021, 10:30:33 AM8/8/21
to weewx-user
can you try this

[Bme280wx]
    i2c_port = 1
    i2c_address = 0x76
    usUnits = US
    pressureKeys = pressure
    pressure_must_have = outTemp
    humidityKeys = inHumidity
    humidity_must_have = outTemp
    temperatureKeys = inTemp
    temperature_must_have = outTemp

Gazza

unread,
Aug 8, 2021, 7:35:57 PM8/8/21
to weewx-user
I had a similar issue in July last year and it was discussed in these threads:

The  "*_must_have" lines need to contain the value of a valid sensor for the bme280 readings to be added to the loop data. In my setup I use "outTemp" from my rtlsdr in all of these lines and it works fine.


The other Gary

wxwatching

unread,
Aug 14, 2021, 12:30:31 PM8/14/21
to weewx-user
Sorry for the late follow-up. I changed the "must_have" lines to "outTemp" and all is working as expected.

Thanks,
Anthony

Reply all
Reply to author
Forward
0 new messages