@halfbrain I purchased this version of BME280
In an attempt to solve the BME280 issue I decided to setup ONLY the BME280
and
Diymall Bme280 Pressure Temperature Sensor Module with IIC I2c for Arduino
It has exactly four pins VCC/GND/SDA/SCL
I have wired this up …
BME280 <==> mDot
SDA <=====>PC_9
SCL <=====>PA_8
I have the Application Mode set as follows:
application.init(APPLICATION_MODE_3);
and the results are the same as before… No Values reported:
I have also attempted by changing the address as both: #define BME280_SENSOR_ADDRESS 0b11101110 /< Sensor address */
and #define BME280_SENSOR_ADDRESS 0b11101100 /< Sensor address */
So we now have three sensors 2 Adafruits and one diymail… ALL with the same behavior on mDot
that does not report values…
@skramer
Does the adafruit BME280 work with their library could you test that?
One thing you could do with the diymail Sensor is to use two pull up resistors.
From the Q&A of the amazon product page:
Question: I2cdetect does not detect my device after wiring this to my pi. do i just wire (scl to scl, etc) directly, or am i missing something?
Answer: You likely need a pull up resistor on the data line, don’t remember the reconended resistance off hand
they recommend 4.7k resistors but you can also use higher ones or something around this 4.7k but not to low.
for example we’ve used 10k resistors on our hardware.
From my experience such i2c issues are always hard to solve without an Oscilloscope.
For me it looks like a Hardware issue because we’ve used the same sensor and connected it according to the offical BME280 Datasheet from Bosch. I don’t know how adafruit and diymall connected the BME280 on their Breakoutboards.
I use 128 flash MCU.
I export (or make update to latest version in web ide) to Keil 5 and build fail. But i use some functions for accelerometer and magnetometer. Now i test board with size as iM-880A (30x22mm) with GPS, accelerometer, magnetometer and altimeter, 128 Mbit external flash, micro-USB and solar power controller. So can’t use large size MCU
If you have a poweranalyzer you could analyze the input power of your node. You should see that most of the time when no measurment task runs and no data is sent via lora the node only uses a few mW Power.
@halfbrain I have some results to report… While waiting for my Analyzer to arrive… I was learning about I2C… and came across I2C_Scanner on mBed.orgI2C Scanner
It compiles and runs correctly… I currently have the following three sensors attached:
a) Max44009
b) BME280 Adafruit
c) MPU9250
I get this back from I2C_Scanner:
device found at address 0xCI2C
device found at address 0x4AI2C
device found at address 0x68I2C
device found at address 0x77
Then I remove all BUT the BME280
and get
I2C device found at address 0x77
so we know BME280 is on Address 0x77…
I edit BME280.h in sensornode project for:
#define BME280_SENSOR_ADDRESS 0b11101110 /< Sensor address */ I I think this is 0x77 and I have also tried #define BME280_SENSOR_ADDRESS 0b11101100 /< Sensor address */
and neither reports values back…
Also tried the other BME280 I have:
It reports back in I2C_Scanner as:
device found at address 0x76
I also tried both addresses for this and neither produces any changing values…
Same negative results … unfortunately…
+++++++++++++++++++
Waiting patiently for Analyzer … thanks