Sensors and IOT development boards come in a variety of shapes and sizes. Many generic boards exists that are extremely cost effective against their counter part branded boards. Why is this, is there a difference and should you care?

The post looks at a generic BME280 breakout board vs a Sparkfun BME 280 breakout board and measure these two up against each other.

The cost and layout

From the above figure we can see that there is a major difference in price between these two sensors with the Sparkfun sensor 4x times more expensive than the generic BME sensor. 

The boards are quite different in size with the Sparkfun board more than double the size of the generic board. The Sparkfun board also has more branding and indications on it. 

Board size comparison

The packaging on both boards is also more than adequate with the Sparkfun board giving the product code and description.

Board packaging comparison

Build quality on both boards are also more than adequate with the Sparkfun board having a more superior build, but the generic board still has a good quality build. 

Prototyping with both boards

To start with prototyping nothing else is need for the generic board except your soldering station to solder the headers provided with the board. The Sparkfun board however requires the purchase of seperate header pins or a qwiic connector to get started. Though the quick connector is quite hande when comes to daisy chaining multiple I2C devices, it comes with further costs. 

To get started we assume no knowledge of the BME280 and we started to search for information. Doing a quick search on the internet brings us to a very informative article by Last Minute Engineers taking you exactly through the hookup of the generic BME 280.

From Sparkfun's site under documents you will also get the hookup guide for their sensor. The hookup guide is very extensive, provide much more detail than any other tutorial or hookup guide. It provides details on the I2C and SPI addressing, the libraries used and sample code. There is also a tutorial on I2C, SPI, logic levels and more information on the qwiic connectors.

Using the last minute engineering hookup guide as well as the I2C hookup guide both generic and Sparkfun BME280 sensors are connected in a daisy chain configuration and connected to a ESP32 development board.

BME280 test setup

Now that the setup has been completed, the code needs to be written. From both Hookup guides libraries and sample code is provided. Sparkfun provides their own library for the sensor and this has been used for implementation. 

There is no information on the I2C address of the generic board and it was assumed that all generic boards have the same address. This assumption was successful and the code was loaded onto the ESP32 and measurements came through without any problems on the serial monitor of the Arduino IDE. 

To make a long term comparison data was moved to the Losant platform on 1 minute intervals. Both generic and Sparkfun humidity, pressure and altitude compared quite well as can be seen below:

Humidity Comparison six hours

BME280 Pressure comparison

BME280 Altitude Comparison

Temperatures however provided deviation on higher temperatures which could be seen when the test board was placed outside and received direct morning sun. Various articles has described that due to the close proximity of components on the small generic BME280 component heating affects the BME280 sensor. This can clearly be seen below:

Temperature comparison 3 days

Looking at the temperatures over 30 days where in the first part of the test the boards where placed inside, it can be seen that the temperature effect is not apparent at lower temperature indoors. 

Temperature comparison 30 days


From the tests performed it can be seen that there is not a huge difference between the two sensors. At higher temperatures there is quite a temperature deviation and a possible explanation has been presented though not tested and verified. Both sensors operated for more than 30 days on a breadboard prototyping rig with no failures.

Branded sensors and boards such as Adafruit, Sparkfun, Arduino and DFRobot put a lot of development and man hours into creating not only quality electronics but tons of literature available for free to the public and their clients. These resources provided allow DIY makers globally to learn and use electronics in a way that was not possible a couple of years ago. The above brings the logical conclusion that costs are increased due to inhouse research and development as well as resource creation, documentation and marketing. 

Generic sensors are very cost effective and reasonably reliable. The provide access to electronics to the general public at very affordable prices. This allows learning and human resource development at a fraction of a cost of their branded counterparts making this technology available to a greater part of the public in general. Their exists little to no documentation on these components and for someone just getting started it is difficult and frustrating but not impossible. 

In conclusion I believe it important to support branded suppliers who put a lot of effort into developing new products and bringing them to market with resources, such as the Arduino IDE, and documentation to allow DIY enthusiast, students and creators to learn and develop. Though this might not always be possible I also see the need for generic sensor and board suppliers allowing these type of electronics to be more accessible due to their low cost. In the end I believe a healthy mixture of both is key for sustaining and growing the creator and DIY market.

EcoRobotics strives to bring the Namibian market a healthy combination of these sensors and boards and will continue to expand our collections as we grow and receive the support from our Namibian community. As always the choice is up to you, so what will you choose?

Leave a comment