That is correct. Some of these BMP/BME280 breakout boards have a voltage regulator to allow higher input voltages. The board in this video is obviously NOT one of those. 3.3V for this one.
Thanks for the video. I'm curious, is this sensor sensitive and fast enough to measure air speed differences when blowing on it through a small tube glued to the hole on the sensor? And also the tube itself will have a small hole to make it possible to blow through, like if when playing a flute. I'd like to use it for MIDI controller, but I'm not sure if it won't be too slow or not enough sensitive (not detecting enough levels of blowing).
I want to use this with a small OLED display, which requires pins A4 and A5 as output pins. Is there any way to assign these pins alternately to input and output in the sketch, or can I/must I use different pins for each device?
You can plug up to 255 devices on those 2 pins. As long as they have different addresses, they will all show up. But you will have trouble plugging in 2 of the same screen for example, as they are going to have the same 'unique' address. (This can also be changed by changing a resistor on the screen / peripheral) I've personally made several devices using a screen (usually SCL SDA) and the BMP180 (the old version of this altitude chip) also SCL SDA, and it works fine. I've had 4 SCL SDA devices running at the same time on an arduino nano before, all off pins A4 and A5. The only thing i'd say is be careful how much power you are drawing from the pins overall. But definitely a display and this module will be fine.
@@nataliesilsbury1888 generally speaking you can only have 128 devices, unless you have 10 bit addresses. bit zero is used for read and write. the other 7 bits form the device address.
BMP280 power supply is from 1.71V to 3.6V, which is mentioned in datasheet. I came here to make it clear, BMP280 do not have to withstand 5V at all... I thought that arduino tutorials are supposed to explain more. I want to learn about how to acces data to make it work for STM32F1 M3 MCUs. By using Arduino you can not learn much like this, that is why I use Atollic TrueStudio. ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMP280-DS001-18.pdf PAGE 7 power supply Vdd
There is an error in the INO program. I was getting gibberish as an output until I changed your line of code from "Serial.begin(57600); " to "Serial.begin(9600); "then I could read the text but the data is not changing. it just shows 0C, 32F, etc... even if I blow on the sensor, the data isn't moving. I'm using Arduino Uno Mega and the A4 & A5 ports wired as you instruct. Why aren't the other CSB SDO ports used? Sorry I am a newbie to this...
I just discovered it was a problem with my knock off Arduino Mega board. I guess you get what you pay for... all is working fine! Thanks for a great video, just note the Baud rate correction I noted earlier! THANKS!
This sensor can also use the SPI connection, which will allow multiple sensors to share the bus. You can see tutorials on using SPI by Googling for them, and you'll need an SPI library for the Arduino. I believe that on this sensor, SCL=SCLK, SDA=MOSI, SDO=MISO, CSB=SS. You use a different Arduino pin for each sensor's SS line, but the others are common.
This module should not be used without level converter. The VCC for the sensor is max 3.3V, see www.makerfabs.com/desfile/files/BMP280-3.3-SCH.jpg and www.bosch-sensortec.com/bst/products/all_products/bmp280 There is no provision for level shifting on the module. If you apply 5V you are unduly overstressing the module and reduce its lifetime. I love your english accent but the accuracy of the contents leaves to be desired.
hey when I click on "ADD.zip library..."I am getting the following error: Arduino: 1.8.1 (Windows 7), Board: "Arduino/Genuino Uno" Specified folder/zip file does not contain a valid library Specified folder/zip file does not contain a valid library Specified folder/zip file does not contain a valid library please help....
Hi Aidan, thanks for taking the time to post this video - very helpful. Once I had figured the baud rate issue I finally got data on the Serial Monitor but it was unchanging with a very high altitude and zero pressure/temp. Admittedly, I haven't soldered the connections yet and I am hoping that this might solve the problem (solder is in the post!). I used the Sparkfun Library as per your video but I have BMP280 sensor, the Library seems to be for the BME290 but I don' think this is an issue? Am I doing anything fundamentally wrong (I am very much a newbie). Best wishes Phil
Phil Cox I've found that these cheap eBay chips aren't all that reliable with their namings, but if you've got the same chip as the one I have in the video then the library will work. Don't forget to change the I2CAddress as per the video, and I would definitely recommend soldering the pins on, as I don't believe it will work properly until you've done that. When I buy these sorts of chips off eBay I usually buy 2-3 of them even if I only need one. That way you can test between them to see if one of them are faulty. Cheers
Thanks Aidan, I'm hoping it's the solder too. The chip should be ok as I bought it from a recommended UK firm, not ebay. Incidentally, the Sparkfun library was the only one that worked (to a degree) compared to Adafruit and a couple of others I tried.Really appreciate the reply.Best wishes,Phil
Good morning (or evening), I managed to get the sensor to work so thought I would share my experiance. I gave up trying to get the thing to work on I2C and wired the Arduino for SPI, changed the two lines of code in the sketch to switch over to SPI: //For SPI enable the following and dissable the I2C section //mySensor.settings.commInterface = SPI_MODE; //mySensor.settings.chipSelectPin = 10; And it worked a treat (not forgeting to select the Baud rate to that of the Sketch). I'm convinced this would have worked before soldering but I've soldered anyway to rule this issue out. The altitude is reading 243ft on average and I think this may have something to do with the pressure reading at my location so I will do some sums. All this can be accounted for and factored into the results as long as I know what I am dealing with. My only grumble is the % relative humidity is reading zero so ssome more research required. Next bit of the project is to add an SD card so I can record the data from the balloon flight. Thanks for your help again, much apprecited. Best wishes Phil
Le Kev Hi Le, if you have the same sensor that I have in this video then it doesn't have humidity detection. As for the labelling I'm really not sure if it's correct or if the manufacturer just put a random one on there
the card is the same for bmp and bme, so they use that "e/p" on the stencil. . the sensor itself can be either. also, most of them arent real bosch bmp or bme, theyre just clones that dont necessarily work very well.
Hi Aidan - great video, thanks for this and greetings from across the broder in South Wales :) ! Quick question if I may... the BMP280 data sheet I've been reading says max V supply is 4.5V, can I ask why you don't sue the 3.3V supply from the Arduino UNO rather than the 5V supply please? I have one of these being delivered tomorrow and will follow your tutorial much closer then! Thanks
Hey John, glad I could help! From what I've read both from Adafruit and from other people's projects, the BMP280 sensor can take both 3.3 and 5V. I've had it running off 5V for a whole day without any problems. I guess it just depends on what projects you're planning on using it with. Let me know how you go!
Hi Aidan - I followed your vid and eventually managed to get my BMP280 working, though the altitude is not correct for where I am. Do you know how this can be calibrated or if it needs some default value in order to show the correct altitude?
Hi John, how far off is the value you're getting from actual? I was getting around 137m and my sea level altitude for my location is around 143m. I'm not too sure if this sensor will be able to get much more accurate than this.
To get a more accurate altitude, you need to examine the inputs to the calculation. Altitude is determined as an offset from a reference. In most of the libraries, they assume a default sea level air pressure and a default outside temperature (usually 15C). This is enough for general approximation but if you need to be more accurate then find a better sea level pressure reference. For the UK our national measurement institute is the National Physical Laboratory in Teddington, they have an online barometer resource.npl.co.uk/pressure/pressure.html. You then need to give the outside temperature (not the indoor). With those two parameters, you should get a far more accurate reading. Also worth noting, I have had issues with cheaper sensors that are not Bosch BMP/BME280 but Chinese compatibles, the readings are close enough for most uses but have a bias in the pressure readings that means that they drift a lot more than the specification suggests that they will. Hope that helps, thanks for the great video Aidan
Hi Farid, are you sure you've got all the cables connected properly? Do you have another Arduino/BMP280 sensor to test with to see if it one of them was faulty?
Aidan Beale all cable are correctly connected to its pin. I have another uno, but no bmp280. I used i2cdetect.ino and MultiSpeedi2cScanner.ino, upload to uno, the result is no i2c device detected. Could it be my BMP280 is broken? But I tested it with voltmeter, everything is fine.
Why does everyone just make the same video using the same libraries? or more importantly, why does everyone use arduino for everything? I just want to know how to program it and not install a library.
I'm trying to make a project that uses a BMP280. It's an 8051 based processor and I've made a bit-bang i2c interface but I'm unsure of how to program this sensor, it's more advanced than what I've interfaced with before (DS3231 & EEPROM) and I don't feel like the datasheet clearly expresses the proper steps involved.
Its is because when you lift it, the value is slightly changing and because in the serial monitor, they round it off and show you, that's why the number remains the same. maybe if you go to the next floor or something, then you might see a change.
@@DichillDichill does it say that the sensor wasn't identified pls check the wiring? I had the same problem I think i didn't solder the pin properly or maybe i burnt it
As Aidan said, he was using the BMP280 which does not have the humidity sensor. The BME280 is identical to the BMP280 but adds an additional humidity sensor
There are many different versions of this sensor. If you are using the BMP280-3.3 then you cannot just connect it to the 5V - you need to use an Arduino with 3,3V
3.3 VOLTS ONLY
5 VOLTS WILL DAMAGE
That is correct. Some of these BMP/BME280 breakout boards have a voltage regulator to allow higher input voltages. The board in this video is obviously NOT one of those. 3.3V for this one.
the sensor gets the 3.3V from the arduino board, but the I2C lines operates at which voltage level? Can they damage the sensor? Thanks
@@fabricio.ferrari Not knowing what board you have; I would think it would be the typical I2C 3.3V. If so; no problem.
whew that was close thanks 😳
FUCK
Very crisp and clear video.
Thanks for the video.
I'm curious, is this sensor sensitive and fast enough to measure air speed differences when blowing on it through a small tube glued to the hole on the sensor? And also the tube itself will have a small hole to make it possible to blow through, like if when playing a flute.
I'd like to use it for MIDI controller, but I'm not sure if it won't be too slow or not enough sensitive (not detecting enough levels of blowing).
I want to use this with a small OLED display, which requires pins A4 and A5 as output pins. Is there any way to assign these pins alternately to input and output in the sketch, or can I/must I use different pins for each device?
You can plug up to 255 devices on those 2 pins. As long as they have different addresses, they will all show up. But you will have trouble plugging in 2 of the same screen for example, as they are going to have the same 'unique' address. (This can also be changed by changing a resistor on the screen / peripheral)
I've personally made several devices using a screen (usually SCL SDA) and the BMP180 (the old version of this altitude chip) also SCL SDA, and it works fine.
I've had 4 SCL SDA devices running at the same time on an arduino nano before, all off pins A4 and A5.
The only thing i'd say is be careful how much power you are drawing from the pins overall. But definitely a display and this module will be fine.
@@nataliesilsbury1888 generally speaking you can only have 128 devices, unless you have 10 bit addresses. bit zero is used for read and write. the other 7 bits form the device address.
Дай тобі Господь Бог здоров'я, добра людино.
You can also use the I2C-SENSOR-LIB library found in the arduino IDE library manager. Great video! Your use of red for gnd bothered me to no end haha.
David Jackowski Thanks for the tip! Yeah I didn't realise until after I'd uploaded that I had the red wire haha
BMP280 power supply is from 1.71V to 3.6V, which is mentioned in datasheet. I came here to make it clear, BMP280 do not have to withstand 5V at all...
I thought that arduino tutorials are supposed to explain more. I want to learn about how to acces data to make it work for STM32F1 M3 MCUs. By using Arduino you can not learn much like this, that is why I use Atollic TrueStudio.
ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMP280-DS001-18.pdf PAGE 7 power supply Vdd
YES DO NOT Put 5V to these They fry
Can you tell me how to get the readings from 2 BMP280s using one Arduino?
(I know that I would need a Multiplexer but is there any other solution?)
thanx for a good video. to the point and clearly understandable.
There is an error in the INO program. I was getting gibberish as an output until I changed your line of code from "Serial.begin(57600); " to "Serial.begin(9600); "then I could read the text but the data is not changing. it just shows 0C, 32F, etc... even if I blow on the sensor, the data isn't moving. I'm using Arduino Uno Mega and the A4 & A5 ports wired as you instruct. Why aren't the other CSB SDO ports used? Sorry I am a newbie to this...
I just discovered it was a problem with my knock off Arduino Mega board. I guess you get what you pay for... all is working fine! Thanks for a great video, just note the Baud rate correction I noted earlier! THANKS!
There's nothing wrong with your clone. The issue is that the baud rate wasn't matching the one used on the serial monitor.
Gerald Schaefer I had the same error, plus it stops running after sending this to the serial monitor:
Starting BME280... result of .begin (): 0x
An "uno mega"?
This sensor seems pretty cool. Ill be soldering this in a bit. :P
Hi Aidan; I need to have three sensors on the same bus... Any thoughts/suggestions? TY (to subtract differences between temps and pressures)
This sensor can also use the SPI connection, which will allow multiple sensors to share the bus. You can see tutorials on using SPI by Googling for them, and you'll need an SPI library for the Arduino. I believe that on this sensor, SCL=SCLK, SDA=MOSI, SDO=MISO, CSB=SS. You use a different Arduino pin for each sensor's SS line, but the others are common.
This module should not be used without level converter. The VCC for the sensor is max 3.3V, see www.makerfabs.com/desfile/files/BMP280-3.3-SCH.jpg and www.bosch-sensortec.com/bst/products/all_products/bmp280
There is no provision for level shifting on the module.
If you apply 5V you are unduly overstressing the module and reduce its lifetime.
I love your english accent but the accuracy of the contents leaves to be desired.
thought the same. when finished watching checked datasheet's absolute maximum ratings.
Hi i just tried it but i am getting a negative numper of pressure and nan m for altitude can you help me;
new to arduino ....please.what is the gui used to program the nano??
perhaps a link to DL . ? thanks
how to read the vacuum using pirani gauge and arduino?
hey when I click on "ADD.zip library..."I am getting the following error:
Arduino: 1.8.1 (Windows 7), Board: "Arduino/Genuino Uno"
Specified folder/zip file does not contain a valid library
Specified folder/zip file does not contain a valid library
Specified folder/zip file does not contain a valid library
please help....
Hi Aidan, thanks for taking the time to post this video - very helpful.
Once I had figured the baud rate issue I finally got data on the Serial Monitor but it was unchanging with a very high altitude and zero pressure/temp. Admittedly, I haven't soldered the connections yet and I am hoping that this might solve the problem (solder is in the post!). I used the Sparkfun Library as per your video but I have BMP280 sensor, the Library seems to be for the BME290 but I don' think this is an issue?
Am I doing anything fundamentally wrong (I am very much a newbie).
Best wishes
Phil
Phil Cox I've found that these cheap eBay chips aren't all that reliable with their namings, but if you've got the same chip as the one I have in the video then the library will work. Don't forget to change the I2CAddress as per the video, and I would definitely recommend soldering the pins on, as I don't believe it will work properly until you've done that. When I buy these sorts of chips off eBay I usually buy 2-3 of them even if I only need one. That way you can test between them to see if one of them are faulty.
Cheers
Thanks Aidan, I'm hoping it's the solder too. The chip should be ok as I bought it from a recommended UK firm, not ebay. Incidentally, the Sparkfun library was the only one that worked (to a degree) compared to Adafruit and a couple of others I tried.Really appreciate the reply.Best wishes,Phil
Good morning (or evening), I managed to get the sensor to work so thought I would share my experiance.
I gave up trying to get the thing to work on I2C and wired the Arduino for SPI, changed the two lines of code in the sketch to switch over to SPI:
//For SPI enable the following and dissable the I2C section
//mySensor.settings.commInterface = SPI_MODE;
//mySensor.settings.chipSelectPin = 10;
And it worked a treat (not forgeting to select the Baud rate to that of the Sketch). I'm convinced this would have worked before soldering but I've soldered anyway to rule this issue out.
The altitude is reading 243ft on average and I think this may have something to do with the pressure reading at my location so I will do some sums. All this can be accounted for and factored into the results as long as I know what I am dealing with.
My only grumble is the % relative humidity is reading zero so ssome more research required. Next bit of the project is to add an SD card so I can record the data from the balloon flight.
Thanks for your help again, much apprecited.
Best wishes
Phil
@Aidam, is there Humidity option on this sensor? I see in the back it displays Gy-B11e/p 280? does it mean it is both BME and BMP ?
Le Kev Hi Le, if you have the same sensor that I have in this video then it doesn't have humidity detection. As for the labelling I'm really not sure if it's correct or if the manufacturer just put a random one on there
Aidan thanks, it s really misleading marketing all over ebay. I just reorder bme280, 4x price vs bmp..
the card is the same for bmp and bme, so they use that "e/p" on the stencil. . the sensor itself can be either. also, most of them arent real bosch bmp or bme, theyre just clones that dont necessarily work very well.
Hi Aidan - great video, thanks for this and greetings from across the broder in South Wales :) ! Quick question if I may... the BMP280 data sheet I've been reading says max V supply is 4.5V, can I ask why you don't sue the 3.3V supply from the Arduino UNO rather than the 5V supply please? I have one of these being delivered tomorrow and will follow your tutorial much closer then! Thanks
Hey John, glad I could help! From what I've read both from Adafruit and from other people's projects, the BMP280 sensor can take both 3.3 and 5V. I've had it running off 5V for a whole day without any problems. I guess it just depends on what projects you're planning on using it with. Let me know how you go!
Hi Aidan - I followed your vid and eventually managed to get my BMP280 working, though the altitude is not correct for where I am. Do you know how this can be calibrated or if it needs some default value in order to show the correct altitude?
Hi John, how far off is the value you're getting from actual? I was getting around 137m and my sea level altitude for my location is around 143m. I'm not too sure if this sensor will be able to get much more accurate than this.
To get a more accurate altitude, you need to examine the inputs to the calculation. Altitude is determined as an offset from a reference. In most of the libraries, they assume a default sea level air pressure and a default outside temperature (usually 15C). This is enough for general approximation but if you need to be more accurate then find a better sea level pressure reference. For the UK our national measurement institute is the National Physical Laboratory in Teddington, they have an online barometer resource.npl.co.uk/pressure/pressure.html. You then need to give the outside temperature (not the indoor). With those two parameters, you should get a far more accurate reading. Also worth noting, I have had issues with cheaper sensors that are not Bosch BMP/BME280 but Chinese compatibles, the readings are close enough for most uses but have a bias in the pressure readings that means that they drift a lot more than the specification suggests that they will. Hope that helps, thanks for the great video Aidan
Thanks man! Appreciate it!
I want a blood pressur sensor module and a blood glucose sensor module PLEASE
great vid strait to the point good for newbies like me thanks.
Is there a reason data writers use micro print
Fantastic vid man, thanks a lot for sharing your knowledge!
hi , can you please provide the resources for using the same device in SPI mode ??
Aidan Beale I tried this with both 0x76 and 0x77 on arduino uno, but it stuck on Starting BME280... : 0x
what is wrong?
Hi Farid, are you sure you've got all the cables connected properly? Do you have another Arduino/BMP280 sensor to test with to see if it one of them was faulty?
Aidan Beale all cable are correctly connected to its pin. I have another uno, but no bmp280. I used i2cdetect.ino and MultiSpeedi2cScanner.ino, upload to uno, the result is no i2c device detected. Could it be my BMP280 is broken? But I tested it with voltmeter, everything is fine.
i want measure Humidity by this sensor. How must I do?
You can't.
Why does everyone just make the same video using the same libraries? or more importantly, why does everyone use arduino for everything?
I just want to know how to program it and not install a library.
I'm trying to make a project that uses a BMP280. It's an 8051 based processor and I've made a bit-bang i2c interface but I'm unsure of how to program this sensor, it's more advanced than what I've interfaced with before (DS3231 & EEPROM) and I don't feel like the datasheet clearly expresses the proper steps involved.
why not open one of those libraries and look at the instructions? its not like theyre encrypted or anything, its just c code.
Does anybody know if anyone has made a video or any kind of tutorial using this sensor and SPI? I don't want to use I2C for my project. Thanks.
Could you use a smaller font please? Damn !
Weird..... My altitude stays in the same number even thought im lifting it up and down
Its is because when you lift it, the value is slightly changing and because in the serial monitor, they round it off and show you, that's why the number remains the same.
maybe if you go to the next floor or something, then you might see a change.
@@VANTABL4CK Its my sensor thats broken. It cant read the temp, humidity, pressure, and the altitude
@@DichillDichill does it say that the sensor wasn't identified pls check the wiring?
I had the same problem I think i didn't solder the pin properly or maybe i burnt it
@@VANTABL4CK I didnt soldered it
@@Dichill use 3.3v for the Vcc
outdated video. code is not similar now
Do you play minecraft.
tnx man, u really helped me
VERY USEFULL! THANK YOU!
how u conect it to 5v?????
there are diferrent versions of the board and some can work with 5v
@@IAmRedNez This doesn`t seem to be the 5v board. I think he is connecting 5v to the 3.3v poor board :((
@@sergiourquijo4000 maybe, good thing these boards are dirt cheap
i want to ask that why the Humidity value is zero.
As Aidan said, he was using the BMP280 which does not have the humidity sensor. The BME280 is identical to the BMP280 but adds an additional humidity sensor
nice vid, helpful
Thanks! Glad I could help
Thanks for breaking my BMP280, it simply fries if you put 5v.
There are many different versions of this sensor. If you are using the BMP280-3.3 then you cannot just connect it to the 5V - you need to use an Arduino with 3,3V
Thanks m8