This text contains informations about…
-parts
-Description (size and what you can do with it)
-the antenna
-where the development started
-the screen
-BME 280
-wirering
-the programm
Parts:
xiao esp32c3, bme280, antenna, 0,96 Zoll OLED display
Description
Its a casing for the xiao esp32c3, the xiao rp2040 and other small microcontrollers and it is 8cm or 3.15 inch long, wide and tall.
!!!Please note that the Xiao RP2040 doesn't have built-in Wi-Fi or Bluetooth capabilities!!!
It also has space for the 0,96 Zoll OLED Display Module 128 x 64 Pixel I2C Display.
Inside theres a lot of space for a pcb and nearly everey electronic componend you could ever imagine. In the back theres also a hole for a sd card reader and one on the top for a small button. and in the top there is also space for a little Bambolab fan
In my version I used the xiao esp32c3, the display module and the bme280 to create a small weather station. At the beginning of the project i thought about using it with wifi and created a small hole with the diametar of 7mm in the back to fit the antenna into but i had some problems with the wifi so my programm doesnt use wifi at the moment.
Antenna
This is how it looks like with and without the antenna attached. I've got it from an old wifi router
Where the development started: (on breadboards and tinker cad)
Display:
0,96 Zoll OLED Display Module 128 x 64 Pixel I2C Display (ssd1306 lib)
This is how it looks when it's turned on:
“Room stats” is the Heading
(I planned to show the time there )
First thing is temp for temperature,
pre stands for atmospheric pressure
and hum stands for humidity.
Bme 280:
The BME 280 is a cheap and small sensor
to measure temperature, humidity
and air preassure.
It has four pins and is running with 3.3v.
Wirering:
!!! It could be a bit different for other microcontrollers !!!
The micropython programm (for the seed xiao esp32c3) :
from machine import Pin, I2C
from time import sleep
import bme280
from ssd1306 import SSD1306_I2C
i2c=I2C(0,sda=Pin(6), scl=Pin(7), freq=400000)
oled = SSD1306_I2C(128, 64, i2c)
bme = bme280.BME280(i2c=i2c)
while True:
oled.fill(0)
temperature = bme.values[0]
pressure = bme.values[1]
humidity = bme.values[2]
oled.text("Room stats:", 8, 0)
oled.text("temp: "+temperature, 8, 18)
oled.text("pre : "+pressure, 8, 34)
oled.text("hum : "+humidity, 8, 51)
oled.show()
sleep(30)
The author marked this model as their own original creation.