{"id":4958,"date":"2026-09-09T08:38:56","date_gmt":"2026-09-09T15:38:56","guid":{"rendered":"https:\/\/www.donluc.com\/?p=4958"},"modified":"2026-09-09T08:38:56","modified_gmt":"2026-09-09T15:38:56","slug":"project-15-environment-bme280-environmental-mk45","status":"publish","type":"post","link":"https:\/\/www.donluc.com\/?p=4958","title":{"rendered":"Project #15: Environment \u2013 BME280 Environmental \u2013 Mk45"},"content":{"rendered":"<div style=\"width: 1200px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-4958-1\" width=\"1200\" height=\"675\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02W.mp4?_=1\" \/><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02W.mp4\">https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02W.mp4<\/a><\/video><\/div>\n<p>&#8212;&#8212;<\/p>\n<p>#DonLucElectronics #DonLuc #BME280 #Environment #FireBeetle2ESP32C6 #ESP32 #Display #IoT #Project #Fritzing #Programming #Electronics #Microcontrollers #Consultant<\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02a.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02a.jpg\" alt=\"BME280 Environmental\" width=\"720\" height=\"610\" class=\"alignnone size-full wp-image-4960\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02a.jpg 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02a-300x254.jpg 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02b.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02b.jpg\" alt=\"BME280 Environmental\" width=\"720\" height=\"480\" class=\"alignnone size-full wp-image-4961\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02b.jpg 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02b-300x200.jpg 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02c.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02c.jpg\" alt=\"BME280 Environmental\" width=\"720\" height=\"480\" class=\"alignnone size-full wp-image-4962\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02c.jpg 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/09\/DL2608Mk02c-300x200.jpg 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><strong>Fermion: ENS160+BME280 Environmental Sensor<\/strong><\/p>\n<p>BME280 is an environmental sensor that integrates onboard temperature sensor, humidity sensor and barometer. The sensor is of high precision, multiple functions, and small size etc. It provides both SPI and I2C interfaces, which make it easy to make a fast prototypes. It can be widely used in environmental monitoring, story height measurement and Internet of Things (IoT) control and so on. Gravity I2C BME280 Environmental Sensor has based on BoSCH newest MEMS sensor. Therefore, the stable and multi-function make BME280 become a good choice in many scenes.<\/p>\n<p><strong>DL2608Mk02<\/strong><\/p>\n<p>1 x FireBeetle 2 ESP32-C6<br \/>\n1 x Fermion: 2.0&#8243; 320&#215;240 IPS TFT LCD<br \/>\n1 x GDL Line 10 CM<br \/>\n1 x Fermion: ENS160+BME280 Environmental Sensor<br \/>\n1 x Lithium Ion Battery &#8211; 1000mAh<br \/>\n1 x USB 3.0 to Type-C Cable<\/p>\n<p><strong>DL2608Mk02p<\/strong><\/p>\n<p><strong>DL2608Mk02p.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/****** Don Luc Electronics \u00a9 ******\r\nSoftware Version Information\r\nProject #15: Environment \u2013 BME280 Environmental \u2013 Mk45\r\n15-45\r\nDL2608Mk02p.ino\r\nDL2608Mk02\r\n1 x FireBeetle 2 ESP32-C6\r\n1 x Fermion: 2.0&quot; 320x240 IPS TFT LCD\r\n1 x GDL Line 10 CM\r\n1 x Fermion: ENS160+BME280 Environmental Sensor\r\n1 x Lithium Ion Battery - 1000mAh\r\n1 x USB 3.0 to Type-C Cable\r\n*\/\r\n\r\n\/\/ Include the Library Code\r\n\/\/ DFRobot Display GDL API\r\n#include &lt;DFRobot_GDL.h&gt;\r\n\/\/ BME280 Environmental\r\n#include &lt;DFRobot_BME280.h&gt;\r\n\r\n\/\/ BME280 Environmental\r\ntypedef DFRobot_BME280_IIC BME;\r\n\/\/ Wire\r\nBME   bme(&amp;Wire, 0x76);\r\n\/\/ Sea Level Pressure\r\n#define SEA_LEVEL_PRESSURE 1015.0f\r\n\/\/ Temperature\r\nfloat   temp = bme.getTemperature();\r\n\/\/ Pressure\r\nuint32_t    press = bme.getPressure();\r\n\/\/ Altitude\r\nfloat alti;\r\n\/\/ Humidity\r\nfloat humi;\r\n\r\n\/\/ Defined ESP32\r\n#define TFT_DC  D2\r\n#define TFT_CS  D6\r\n#define TFT_RST D3\r\n\r\n\/*dc=*\/ \/*cs=*\/ \/*rst=*\/\r\n\/\/ DFRobot Display 240x320\r\nDFRobot_ST7789_240x320_HW_SPI screen(TFT_DC, TFT_CS, TFT_RST);\r\n\r\n\/\/ Software Version Information\r\nString sver = &quot;15-45&quot;;\r\n\r\nvoid loop() {\r\n  \r\n  \/\/ isBME280\r\n  isBME280();\r\n  \r\n  \/\/ isDisplay BME280\r\n  isDisplayBME280();\r\n\r\n  \/\/ Delay 1 Second\r\n  delay( 1000 );\r\n  \r\n}\r\n<\/pre>\n<p><strong>getBME280.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ BME280 Environmental\r\n\/\/ isBME280\r\nvoid isBME280(){\r\n\r\n  \/\/ Temperature\r\n  temp = bme.getTemperature();\r\n  \/\/ Pressure\r\n  press = bme.getPressure();\r\n  \/\/ Altitude\r\n  alti = bme.calAltitude(SEA_LEVEL_PRESSURE, press);\r\n  \/\/ Humidity\r\n  humi = bme.getHumidity();\r\n\r\n}\r\n<\/pre>\n<p><strong>getDisplay.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ DFRobot Display 240x320\r\n\/\/ DFRobot Display 240x320 - UID\r\nvoid isDisplayUID(){\r\n\r\n  \/\/ DFRobot Display 240x320\r\n  \/\/ Text Display\r\n  \/\/ Text Wrap\r\n  screen.setTextWrap(false);\r\n  \/\/ Rotation\r\n  screen.setRotation(3);\r\n  \/\/ Fill Screen =&gt; black\r\n  screen.fillScreen(0x0000);\r\n  \/\/ Text Color =&gt; white\r\n  screen.setTextColor(0xffff);\r\n  \/\/ Font =&gt; Free Mono 9pt\r\n  screen.setFont(&amp;FreeMono9pt7b);\r\n  \/\/ TextSize =&gt; 1.5\r\n  screen.setTextSize(1.5);\r\n  \/\/ Don Luc Electronics\r\n  screen.setCursor(0, 30);\r\n  screen.println(&quot;Don Luc Electronics&quot;);\r\n  \/\/ BME280 Environmental\r\n  screen.setCursor(0, 60);\r\n  screen.println(&quot;BME280 Environmental&quot;);\r\n  \/\/ Version\r\n  screen.setCursor(0, 90);\r\n  screen.println(&quot;Version&quot;);\r\n  screen.setCursor(0, 120);\r\n  screen.println( sver );\r\n\r\n}\r\n\/\/ isDisplay BME280\r\nvoid isDisplayBME280(){\r\n\r\n  \/\/ DFRobot Display 240x320\r\n  \/\/ Text Display\r\n  \/\/ Text Wrap\r\n  screen.setTextWrap(false);\r\n  \/\/ Rotation\r\n  screen.setRotation(3);\r\n  \/\/ Fill Screen =&gt; black\r\n  screen.fillScreen(0x0000);\r\n  \/\/ Text Color =&gt; white\r\n  screen.setTextColor(0xffff);\r\n  \/\/ Font =&gt; Free Mono 9pt\r\n  screen.setFont(&amp;FreeMono9pt7b);\r\n  \/\/ TextSize =&gt; 1.5\r\n  screen.setTextSize(1.5);\r\n  \/\/ BME280 Environmental\r\n  screen.setCursor(0, 30);\r\n  screen.println(&quot;BME280 Environmental&quot;);\r\n  \/\/ Temperature\r\n  screen.setCursor(0, 60);\r\n  screen.print(&quot;Temp: &quot;);\r\n  screen.setCursor(70, 60);\r\n  screen.print( temp );\r\n  screen.setCursor(160, 60);\r\n  screen.println( &quot;\u00b0C&quot; );\r\n  \/\/ Pressure\r\n  screen.setCursor(0, 90);\r\n  screen.print(&quot;Pres: &quot;);\r\n  screen.setCursor(70, 90);\r\n  screen.print( press );\r\n  screen.setCursor(160, 90);\r\n  screen.println( &quot;Pa&quot; );\r\n  \/\/ Altitude\r\n  screen.setCursor(0, 120);\r\n  screen.print(&quot;Alti: &quot;);\r\n  screen.setCursor(70, 120);\r\n  screen.print( alti );\r\n  screen.setCursor(160, 120);\r\n  screen.println( &quot;M&quot; );\r\n  \/\/ Humidity\r\n  screen.setCursor(0, 150);\r\n  screen.print(&quot;Humi: &quot;);\r\n  screen.setCursor(70, 150);\r\n  screen.print( humi );\r\n  screen.setCursor(160, 150);\r\n  screen.println( &quot;%&quot; );\r\n\r\n}\r\n<\/pre>\n<p><strong>setup.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ Setup\r\nvoid setup()\r\n{\r\n \r\n  \/\/ Delay\r\n  delay(100);\r\n\r\n  \/\/ DFRobot Display 128x160\r\n  screen.begin();\r\n\r\n  \/\/ Delay\r\n  delay( 100 );\r\n\r\n  \/\/ BME280 Environmental\r\n  bme.begin();\r\n\r\n  \/\/ Delay\r\n  delay( 100 );\r\n\r\n  \/\/ DFRobot Display 240x320 - UID\r\n  \/\/ Don Luc Electronics\r\n  \/\/ Versioc\r\n  isDisplayUID();\r\n  \r\n  \/\/ Delay\r\n  delay( 5000 );\r\n\r\n}\r\n<\/pre>\n<p>&#8212;&#8212;<\/p>\n<p><strong>People can contact us:<\/strong> https:\/\/www.donluc.com\/?page_id=1927<\/p>\n<p><strong>Consultant, R&#038;D, Electronics, IoT, Teacher and Instructor<\/strong><\/p>\n<ul>\n<li>Programming Language<\/li>\n<li>Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi, Arm, Silicon Labs, Espressif, Etc&#8230;)<\/li>\n<li>IoT<\/li>\n<li>Wireless (Radio Frequency, Bluetooth, WiFi, Etc&#8230;)<\/li>\n<li>Robotics<\/li>\n<li>Automation<\/li>\n<li>Camera and Video Capture Receiver Stationary, Wheel\/Tank , Underwater and UAV Vehicle<\/li>\n<li>Unmanned Vehicles Terrestrial,  Marine and UAV<\/li>\n<li>Machine Learning<\/li>\n<li>Artificial Intelligence (AI)<\/li>\n<li>RTOS<\/li>\n<li>Sensors, eHealth Sensors, Biosensor, and Biometric<\/li>\n<li>Research &#038; Development (R &#038; D)<\/li>\n<li>Consulting<\/li>\n<\/ul>\n<p><strong>Follow Us<\/strong><\/p>\n<p><strong>Luc Paquin \u2013 Curriculum Vitae &#8211; 2026<\/strong><br \/>\nhttps:\/\/www.donluc.com\/luc\/LucPaquinCVEng2026Mk01.pdf<br \/>\nhttps:\/\/www.donluc.com\/luc\/<\/p>\n<p><strong>Web:<\/strong> https:\/\/www.donluc.com\/<br \/>\n<strong>Web:<\/strong> https:\/\/www.jlpconsultants.com\/<br \/>\n<strong>Facebook:<\/strong> https:\/\/www.facebook.com\/neosteam.labs.9\/<br \/>\n<strong>YouTube:<\/strong> https:\/\/www.youtube.com\/@thesass2063<br \/>\n<strong>DFRobot:<\/strong> https:\/\/learn.dfrobot.com\/user-10186.html<br \/>\n<strong>TikTok:<\/strong> https:\/\/www.tiktok.com\/@luc.paquin8<br \/>\n<strong>Hackster:<\/strong> https:\/\/www.hackster.io\/luc-paquin<br \/>\n<strong>LinkedIn:<\/strong> https:\/\/www.linkedin.com\/in\/jlucpaquin\/<\/p>\n<p><strong>Don Luc<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8212;&#8212; #DonLucElectronics #DonLuc #BME280 #Environment #FireBeetle2ESP32C6 #ESP32 #Display #IoT #Project #Fritzing #Programming #Electronics #Microcontrollers #Consultant &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; Fermion: ENS160+BME280 Environmental Sensor BME280 is an environmental sensor that integrates onboard temperature sensor, humidity sensor and barometer. The sensor is of high precision, multiple functions, and small size etc. It provides both SPI and I2C &#8230; <a title=\"Project #15: Environment \u2013 BME280 Environmental \u2013 Mk45\" class=\"read-more\" href=\"https:\/\/www.donluc.com\/?p=4958\" aria-label=\"Read more about Project #15: Environment \u2013 BME280 Environmental \u2013 Mk45\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[106,50,49,317,38,80,59,115,5,287,58,82,10],"tags":[6,92,435,102,4,320,87,19,107,83,85,24,9,84,27,248,33,34,108],"class_list":["post-4958","post","type-post","status-publish","format-standard","hentry","category-environment","category-arduino","category-consultant","category-dfrobot","category-digitalelectronics","category-esp32","category-fritzing","category-e-mentor","category-microcontrollers","category-program","category-arduino-programming","category-program-esp32","category-projects","tag-arduino","tag-battery","tag-bme280-environmental","tag-components","tag-consultant","tag-dfrobot","tag-display","tag-electronics","tag-environment","tag-esp32","tag-fritzing","tag-microcontroller","tag-programming","tag-programming-esp32","tag-projects-2","tag-sensors","tag-technology","tag-video-blog","tag-vlog"],"_links":{"self":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/4958","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4958"}],"version-history":[{"count":1,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/4958\/revisions"}],"predecessor-version":[{"id":4963,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/4958\/revisions\/4963"}],"wp:attachment":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4958"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4958"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4958"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}