I recently purchased a BMP280 for a weather station project. I was testing it out and noticed that the temperature and pressure were constantly reading high, in fact, very high. The temperature is always 126 Celsius and the pressure is 187788 Pa. I'm guessing the sensor is bad but want to make sure it is not a code or calibration issue.
Thank you.
BMP280 Constant High Readings
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- Franklin97355
- Posts: 23910
- Joined: Mon Apr 21, 2008 2:33 pm
Re: BMP280 Constant High Readings
Post your code by pasting it between the tags you get when you click the </> button above the reply box and perhaps a picture of the device and how you have it connected including your soldering. We can check it out.
- bearloverhr
- Posts: 4
- Joined: Mon Aug 29, 2016 11:46 am
Re: BMP280 Constant High Readings
I'm using a particle photon and I was using the library example for the BMP280 under Adafruit_BMP280.
The breakout is currently connected to a Switchdoc weather board V.2 but I am in the process of removing it to test it on it's own.
I'll attach a photo in the next post.
The breakout is currently connected to a Switchdoc weather board V.2 but I am in the process of removing it to test it on it's own.
I'll attach a photo in the next post.
Code: Select all
// This #include statement was automatically added by the Particle IDE.
#include "Adafruit_BME280/Adafruit_BME280.h"
// IMPORTANT: When including a library in a firmware app, a sub dir prefix is needed
// before the particular .h file.
#include "Adafruit_BMP280/Adafruit_Sensor.h"
#include "Adafruit_BMP280/Adafruit_BMP280.h"
// #define BMP_CS A2
// #define BMP_SCK A3
// #define BMP_MISO A4
// #define BMP_MOSI A5
Adafruit_BMP280 bmp; // I2C
//Adafruit_BMP280 bmp(BMP_CS); // hardware SPI
//Adafruit_BMP280 bmp(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
Timer timer(5000, checkEnvironment);
// Update to reflect current pressure at sea level
float seaLevelhPa = 1035.7;
void setup() {
Particle.publish("DEBUG", "starting...");
if (bmp.begin()) {
Particle.publish("DEBUG", "starting the environment timer...");
timer.start();
}
else {
Particle.publish("WARN", "Could not find a valid BMP280 sensor, check wiring!");
}
Particle.publish("DEBUG", "started!");
}
void loop() {
}
void checkEnvironment() {
Particle.publish("DEBUG", "checking the environment...");
Particle.publish("environment/temperature", String(bmp.readTemperature()));
//Particle.publish("environment/pressure", String(bmp.readPressure()));
//Particle.publish("environment/altitude", String(bmp.readAltitude(seaLevelhPa)));
}
float cToF(float c) {
return c * 9/5 + 32;
}
float pToHg(float p) {
return p/3389.39;
}
- bearloverhr
- Posts: 4
- Joined: Mon Aug 29, 2016 11:46 am
Re: BMP280 Constant High Readings
I tried to post pics of the solder joints but I had no success. I did notice the SDI pin may have a cold joint. I'll fix it and update.
- Franklin97355
- Posts: 23910
- Joined: Mon Apr 21, 2008 2:33 pm
Re: BMP280 Constant High Readings
Thanks. This site has a 1 meg limit on photos but you can post to a sharing site and post the link here if you can't get the picture size small enough.
- bearloverhr
- Posts: 4
- Joined: Mon Aug 29, 2016 11:46 am
Re: BMP280 Constant High Readings
I touched up the solder points on the board and it seemed to fix the temp value drastically, but the temp remained constant during the whole testing. it was 34 C (a change from 126 C) and never changed. The pressure was still very high and also constant. Today I will be removing the board from the weather shield and test it stand alone (which is what I should have done in the first place, live and learn).
Please be positive and constructive with your questions and comments.