From 8e935936bc1436852d4ce68efe86e619f33bdcc7 Mon Sep 17 00:00:00 2001 From: Danila Bogdan Date: Sat, 11 Apr 2026 17:01:16 +0300 Subject: [PATCH 1/6] Add project page for bogdan.danila2510 - Home Environment Station ez --- .../project/2026/bogdan.danila2510/index.md | 99 +++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md new file mode 100644 index 00000000000..dba005c36a3 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md @@ -0,0 +1,99 @@ +# Home Environment Station +A touchscreen dashboard that monitors temperature, humidity, light and air quality in real time + +:::info + +**Author**: Bogdan Danila \ +**GitHub Project Link**: https://github.com/bgdanila/home-enviroment-system + +::: + +## Description + +The Home Environment Station is built around an STM32 Nucleo-U545RE-Q that reads data from multiple sensors: BME280 for temperature and humidity, TSL2561 for ambient light, MQ135 for air quality, and HC-SR501 for motion. Everything is shown on a 2.4" TFT LCD touchscreen where you can swipe between sensor pages. Values are color-coded green (optimal), orange (caution) or red (critical) so you can tell at a glance if something is off. An ESP8266 handles WiFi for remote logging, and a buzzer + RGB LED give alerts when things go out of range. + +## Motivation + +I wanted to build something that actually uses all the protocols we learned (SPI, I2C, ADC, PWM) together in one project, and have a nice UI on top of it. Air quality is something that affects you every day but you never really see the numbers. This project let me combine that practical idea with learning Embassy async, writing display drivers from scratch, and figuring out touch input on a real board. + +## Architecture + +The STM32 talks to everything through different interfaces: + +- **SPI Bus (shared)**: the ST7789 display and XPT2046 touch controller both sit on SPI1. Display runs at 16 MHz, touch at 1 MHz, switched via software chip selects. +- **I2C Bus**: BME280 (temperature + humidity) and TSL2561 (light) share the same I2C bus with different addresses. +- **ADC**: MQ135 air quality sensor gives an analog voltage that gets read through the STM32's ADC. +- **PWM**: drives the buzzer and RGB LED for alerts. +- **GPIO**: HC-SR501 PIR sensor outputs a digital high when it detects motion. +- **UART**: ESP8266 WiFi module for sending data remotely. + +The firmware uses Embassy's async executor. The main loop polls touch input, detects swipe gestures, and handles page transitions. Sensor tasks will run concurrently and update shared state. + +**Component Connections:** + +| Component | Interface | STM32 Pins | +|-----------|-----------|------------| +| ST7789 Display | SPI1 (16 MHz) | MOSI: PA7, SCK: PA5, MISO: PA6, CS: PC9, DC: PC6, RST: PC7 | +| XPT2046 Touch | SPI1 (1 MHz, shared) | CS: PA8, IRQ: PB10 | +| BME280 Sensor | I2C | SDA / SCL (TBD) | +| TSL2561 Sensor | I2C | SDA / SCL (shared with BME280) | +| MQ135 Sensor | ADC | Analog input (TBD) | +| HC-SR501 PIR | GPIO | Digital input (TBD) | +| ESP8266 WiFi | UART | TX / RX (TBD) | +| Buzzer | PWM | TBD | +| RGB LED | PWM x3 | TBD | + +## Log + +### Week 5 - 11 May + +### Week 12 - 18 May + +### Week 19 - 25 May + +## Hardware + +The core is an STM32 Nucleo-U545RE-Q running at 160 MHz (PLL from HSI). The display is a 2.4" TFT with an ST7789V controller and XPT2046 resistive touch, both sharing SPI1 with separate chip selects. For sensors I'm using a BME280 (temp + humidity over I2C), TSL2561 (light over I2C), MQ135 (air quality, analog), and HC-SR501 (PIR motion, digital GPIO). An ESP8266 NodeMCU handles WiFi over UART. Alerts come from a passive buzzer and an RGB LED, both driven by PWM. All the small stuff (breadboard, wires, resistors, LEDs) came from a component kit. + +### Schematics + +Place your KiCAD or similar schematics here in SVG format. + +### Bill of Materials + +| Device | Usage | Price | +|--------|--------|-------| +| [STM32 Nucleo-U545RE-Q](https://www.st.com/en/evaluation-tools/nucleo-u545re-q.html) | The microcontroller | [105 RON](https://ro.mouser.com/ProductDetail/STMicroelectronics/NUCLEO-U545RE-Q?qs=tlsG%2FOw5FFjl20PI4ypAag%3D%3D) | +| [2.4" TFT LCD Touchscreen (ST7789V + XPT2046)](https://www.emag.ro/display-tft-spi-2-4-inch-240x320-lcd-cu-touchscreen-driver-st7789v-arduino-emg178/pd/DXZMBSYBM/) | Display + touch for the dashboard UI | [54.86 RON](https://www.emag.ro/display-tft-spi-2-4-inch-240x320-lcd-cu-touchscreen-driver-st7789v-arduino-emg178/pd/DXZMBSYBM/) | +| [Set 3x BME280](https://www.emag.ro/set-3x-senzor-temperatura-si-umiditate-presiune-atmosferica-bme280-modul-digital-i2c-spi-3-3v-5v-compatibil-arduino-si-raspberry-pi-pentru-statie-meteo-diy-et000011/pd/DNBHJ53BM/) | Temperature, humidity, pressure (I2C) | [76.74 RON](https://www.emag.ro/set-3x-senzor-temperatura-si-umiditate-presiune-atmosferica-bme280-modul-digital-i2c-spi-3-3v-5v-compatibil-arduino-si-raspberry-pi-pentru-statie-meteo-diy-et000011/pd/DNBHJ53BM/) | +| [TSL2561 (GY-2561)](https://www.emag.ro/modul-senzor-de-luminozitate-tsl2561-0-1-40k-lux-3v-0-6ma-gy-2561-dh000007/pd/DJ8QQL3BM/) | Light sensor, 0.1 to 40k+ lux (I2C) | [29.84 RON](https://www.emag.ro/modul-senzor-de-luminozitate-tsl2561-0-1-40k-lux-3v-0-6ma-gy-2561-dh000007/pd/DJ8QQL3BM/) | +| [MQ-135](https://www.emag.ro/modul-senzor-de-calitate-a-aerului-mq-135-calitate-a-aerului-detectie-co2-amoniac-fum-benzen-iesire-digitala-si-analogica-30-mm-x-20-mm-albastru-au4/pd/DR2G1QYBM/) | Air quality, detects CO2/NH3/benzene (analog) | [28.62 RON](https://www.emag.ro/modul-senzor-de-calitate-a-aerului-mq-135-calitate-a-aerului-detectie-co2-amoniac-fum-benzen-iesire-digitala-si-analogica-30-mm-x-20-mm-albastru-au4/pd/DR2G1QYBM/) | +| [HC-SR501 PIR](https://www.emag.ro/detector-de-miscare-hc-sr501-pir-compatibil-cu-arduino-infrarosu-33-mm-x-25-mm-x-25-mm-verde-d1/pd/D52G1QYBM/) | Motion detection | [23.27 RON](https://www.emag.ro/detector-de-miscare-hc-sr501-pir-compatibil-cu-arduino-infrarosu-33-mm-x-25-mm-x-25-mm-verde-d1/pd/D52G1QYBM/) | +| [ESP8266 NodeMCU V3](https://www.emag.ro/modul-esp8266-wifi-usb-c-30pin-nodemcu-v3-arduino-ch340-suport-pentru-esp32-alimentare-5v-12v-64kb-sram-4mb-flash-wifi-802-11-b-g-n-securitate-wpa-wpa2-11-porturi-i-o-1-port-analogic-compatibil-pentru/pd/D9DHMQYBM/) | WiFi for remote logging | [39.14 RON](https://www.emag.ro/modul-esp8266-wifi-usb-c-30pin-nodemcu-v3-arduino-ch340-suport-pentru-esp32-alimentare-5v-12v-64kb-sram-4mb-flash-wifi-802-11-b-g-n-securitate-wpa-wpa2-11-porturi-i-o-1-port-analogic-compatibil-pentru/pd/D9DHMQYBM/) | +| [Electronics Kit (Duueyct)](https://www.emag.ro/set-componente-electronice-duueyct-breadboard-830-puncte-rezistenta-de-lunga-durata-usor-de-manevrat-cu-cutie-de-depozitare-perfect-de-transportat-compatibil-arduino-uno-r3-si-raspberry-pi-multicolor-/pd/D8KWPG3BM/) | Breadboard, wires, resistors, LEDs, buzzer | [65.50 RON](https://www.emag.ro/set-componente-electronice-duueyct-breadboard-830-puncte-rezistenta-de-lunga-durata-usor-de-manevrat-cu-cutie-de-depozitare-perfect-de-transportat-compatibil-arduino-uno-r3-si-raspberry-pi-multicolor-/pd/D8KWPG3BM/) | + +## Software + +| Library | Description | Usage | +|---------|-------------|-------| +| [embassy-stm32](https://github.com/embassy-rs/embassy) | Embassy HAL for STM32 | GPIO, SPI, I2C, ADC, PWM drivers | +| [embassy-executor](https://github.com/embassy-rs/embassy) | Async task executor | Runs sensor and UI tasks concurrently | +| [embassy-time](https://github.com/embassy-rs/embassy) | Timers and delays | Splash screen, polling intervals, debouncing | +| [embassy-sync](https://github.com/embassy-rs/embassy) | Sync primitives | Mutex for the shared SPI bus | +| [embassy-embedded-hal](https://github.com/embassy-rs/embassy) | Shared bus abstractions | SpiDeviceWithConfig for display/touch multiplexing | +| [mipidsi](https://github.com/almindor/mipidsi) | MIPI display driver | ST7789 init, orientation, color inversion | +| [embedded-graphics](https://github.com/embedded-graphics/embedded-graphics) | 2D graphics library | Text, shapes, dots on the dashboard | +| [embedded-hal](https://github.com/rust-embedded/embedded-hal) | HAL traits | SpiDevice for XPT2046 touch transfers | +| [defmt](https://github.com/knurling-rs/defmt) | Logging framework | Debug output over RTT | +| [panic-probe](https://github.com/knurling-rs/defmt) | Panic handler | Shows panics via probe-rs | +| [cortex-m](https://github.com/rust-embedded/cortex-m) | Cortex-M support | Critical sections, inline asm | + +## Links + +1. [Embassy async framework](https://embassy.dev/) +2. [Embedded Rust 101 course labs](https://embedded-rust-101.wyliodrin.com/docs/fils_en/lab/01) +3. [mipidsi docs](https://docs.rs/mipidsi/latest/mipidsi/) +4. [embedded-graphics docs](https://docs.rs/embedded-graphics/latest/embedded_graphics/) +5. [Nucleo-U545RE-Q user manual](https://www.st.com/resource/en/user_manual/um3062-stm32u5-nucleo64-board-mb1841-stmicroelectronics.pdf) +6. [BME280 datasheet](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf) +7. [TSL2561 datasheet](https://ams.com/documents/20143/36005/TSL2561_DS000110_3-00.pdf) From e860a8cecb86dc6b8f2d894bbdf77ff1025a9207 Mon Sep 17 00:00:00 2001 From: Danila Bogdan George Date: Sat, 11 Apr 2026 18:51:17 +0300 Subject: [PATCH 2/6] Update index.md --- .../project/2026/bogdan.danila2510/index.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md index dba005c36a3..9da4d468996 100644 --- a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md @@ -45,11 +45,14 @@ The firmware uses Embassy's async executor. The main loop polls touch input, det ## Log -### Week 5 - 11 May +# Week 2 - 4 + Documentation for both software and hardware part of the project. -### Week 12 - 18 May +# Week 5 - 6 + Ordered all the hardware. Soldered the TSL2561 Sensor and the MQ135 Sensor. Debugged the STM32 Nucleo-U545RE-Q and prepared it for the project. -### Week 19 - 25 May +# Week 7 + Connected the ST7789 Display to the STM32 Nucleo-U545RE-Q. Sorted out visual and touchscreen part. Tweaked the UI and swiping animations (between the sensor values) with static values before starting to add the sensors. ## Hardware From d6a9e1a32251bb252ff919cbb09a64fc45eda8b2 Mon Sep 17 00:00:00 2001 From: Danila Bogdan George Date: Sat, 11 Apr 2026 22:13:44 +0300 Subject: [PATCH 3/6] Update index.md --- .../version-fils_en/project/2026/bogdan.danila2510/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md index 9da4d468996..c6448c5d457 100644 --- a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md @@ -91,6 +91,7 @@ Place your KiCAD or similar schematics here in SVG format. | [panic-probe](https://github.com/knurling-rs/defmt) | Panic handler | Shows panics via probe-rs | | [cortex-m](https://github.com/rust-embedded/cortex-m) | Cortex-M support | Critical sections, inline asm | + ## Links 1. [Embassy async framework](https://embassy.dev/) @@ -100,3 +101,4 @@ Place your KiCAD or similar schematics here in SVG format. 5. [Nucleo-U545RE-Q user manual](https://www.st.com/resource/en/user_manual/um3062-stm32u5-nucleo64-board-mb1841-stmicroelectronics.pdf) 6. [BME280 datasheet](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf) 7. [TSL2561 datasheet](https://ams.com/documents/20143/36005/TSL2561_DS000110_3-00.pdf) +8. From e2b5073c7ee2f093fe11f052a47e9a3b7a071e90 Mon Sep 17 00:00:00 2001 From: Danila Bogdan George Date: Sun, 12 Apr 2026 21:27:41 +0300 Subject: [PATCH 4/6] Updated the link to classroom repo --- .../version-fils_en/project/2026/bogdan.danila2510/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md index c6448c5d457..74c006e24e3 100644 --- a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md @@ -4,7 +4,7 @@ A touchscreen dashboard that monitors temperature, humidity, light and air quali :::info **Author**: Bogdan Danila \ -**GitHub Project Link**: https://github.com/bgdanila/home-enviroment-system +**GitHub Project Link**: https://github.com/UPB-PMRust-Students/project-2026-bgdanila-1 ::: From 013faaa459c279b3569b682d4f739b516d213b38 Mon Sep 17 00:00:00 2001 From: bgdanila Date: Fri, 24 Apr 2026 11:09:28 +0300 Subject: [PATCH 5/6] Project Documentation Student: Bogdan Danila 1221EA Project Name: Home Environment Station Checklist Please make sure that you have done all these actions: [x] I have used WSL2 or a Linux VM to add my project description [x] I have created a folder with my curs.upb.ro username (not name) in versioned_docs/version-fils_en/project/2026 [x] I have followed the template found in versioned_docs/version-fils_en/project/2026/template.md [x] I have created a index.md file in versioned_docs/version-fils_en/project/2026/bogdan.danila2510 [x] I have added to index.md the link to the GitHub repository where my project's source code is stored [x] the merge request contains only the markdown and image files [ ] all the images are in webp format or svg format and are less that 1024x768 [x] there are no source files in the merge request [x] I have run ./build_website.sh with no errors [x] Architecture Signed-off-by: Bogdan Danila --- .../project/2026/bogdan.danila2510/index.md | 87 +++++++++++++++---- .../2026/bogdan.danila2510/kicadproject.svg | 1 + 2 files changed, 72 insertions(+), 16 deletions(-) create mode 100644 website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md index 74c006e24e3..be6e8d216f7 100644 --- a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/index.md @@ -20,7 +20,7 @@ I wanted to build something that actually uses all the protocols we learned (SPI The STM32 talks to everything through different interfaces: -- **SPI Bus (shared)**: the ST7789 display and XPT2046 touch controller both sit on SPI1. Display runs at 16 MHz, touch at 1 MHz, switched via software chip selects. +- **SPI Bus (shared)**: the ST7789 display and XPT2046 touch controller both sit on SPI1. Display runs at 20 MHz, touch at 1 MHz, switched via software chip selects. - **I2C Bus**: BME280 (temperature + humidity) and TSL2561 (light) share the same I2C bus with different addresses. - **ADC**: MQ135 air quality sensor gives an analog voltage that gets read through the STM32's ADC. - **PWM**: drives the buzzer and RGB LED for alerts. @@ -33,26 +33,80 @@ The firmware uses Embassy's async executor. The main loop polls touch input, det | Component | Interface | STM32 Pins | |-----------|-----------|------------| -| ST7789 Display | SPI1 (16 MHz) | MOSI: PA7, SCK: PA5, MISO: PA6, CS: PC9, DC: PC6, RST: PC7 | -| XPT2046 Touch | SPI1 (1 MHz, shared) | CS: PA8, IRQ: PB10 | -| BME280 Sensor | I2C | SDA / SCL (TBD) | -| TSL2561 Sensor | I2C | SDA / SCL (shared with BME280) | -| MQ135 Sensor | ADC | Analog input (TBD) | -| HC-SR501 PIR | GPIO | Digital input (TBD) | -| ESP8266 WiFi | UART | TX / RX (TBD) | -| Buzzer | PWM | TBD | -| RGB LED | PWM x3 | TBD | +| ST7789 Display | SPI1 (20 MHz) | MOSI: PA7 (D11), SCK: PA5 (D13), MISO: PA6 (D12), CS: PC9 (D10), DC: PC6 (D9), RST: PC7 (D8), LED: 3V3 | +| XPT2046 Touch | SPI1 (1 MHz, shared) | T_CLK: PA5 (D13), T_DIN: PA7 (D11), T_DO: PA6 (D12), T_CS: PA8 (D7), T_IRQ: PB10 (D6) | +| BME280 Sensor | I2C1 (shared) | SCL: PB6 (D15), SDA: PB7 (D14), VCC: 3V3 | +| TSL2561 Sensor | I2C1 (shared) | SCL: PB6 (D15), SDA: PB7 (D14), INT: not connected | +| MQ135 Sensor | ADC1 + GPIO | AOUT: PA0 (A0), DOUT: PA10 (D2), VCC: 5V | +| HC-SR501 PIR | GPIO input | OUT: PB5 (D4), VCC: 5V | +| ESP8266 WiFi (NodeMCU) | USART1 TX (one-way) | STM32 PA9 (TX) -> NodeMCU D5 (GPIO14 RX), common GND | +| Passive Buzzer | PWM (planned) | PB4 (D5), via series resistor to buzzer | +| RGB LED | PWM x3 (planned) | PA1 (A1), PA2 (D1), PA3 (D0), each color through resistor | + +### System Schematic (Text) + +```text ++---------------------+ +--------------------------------------+ +| 5V / 3V3 / GND rails|------>| STM32 NUCLEO-U545RE-Q (central node) | ++---------------------+ +--------------------------------------+ + | + +-------------------------------+-------------------------------+ + | | | | | + v v v v v ++----------------+ +-------------+ +-------------+ +-------------+ +--------------+ +| ST7789 + | | BME280 | | TSL2561 | | MQ-135 | | HC-SR501 PIR | +| XPT2046 LCD | | Temp/Hum/P | | Light | | Air quality | | Motion | +| SPI1 + GPIO | | I2C1 | | I2C1 | | ADC + GPIO | | GPIO input | ++----------------+ +-------------+ +-------------+ +-------------+ +--------------+ + | | | | | + +---------------+---------------+---------------+---------------+ + | + v + +----------------------+ + | ESP8266 NodeMCU v0.1| + | UART RX + common GND| + +----------------------+ + | + +-----------------+-----------------+ + | | + v v + +-------------------+ +-------------------+ + | Passive buzzer | | RGB LED | + | PWM output (PB4) | | PWM R/G/B | + +-------------------+ +-------------------+ + +HARDWARE CONNECTIONS (pin-level): + LCD+Touch: PA5/PA6/PA7, PC9, PC6, PC7, PA8, PB10 + BME280: PB6 (SCL), PB7 (SDA), 3V3, GND + TSL2561: PB6 (SCL), PB7 (SDA), 3V3, GND + MQ-135: PA0 (AOUT), PA10 (DOUT), 5V, GND + PIR: PB5 (OUT), 5V, GND + ESP8266: PA9 (USART1_TX) -> D5 (GPIO14 RX), GND <-> GND + Buzzer (planned): PB4 (PWM) -> buzzer + + RGB LED (planned): PA1/PA2/PA3 (PWM) -> R/G/B +``` ## Log -# Week 2 - 4 - Documentation for both software and hardware part of the project. +# Week 2 - 4 + +Documentation for both software and hardware part of the project. Set up the Rust embedded toolchain and prepared the STM32 workflow. # Week 5 - 6 - Ordered all the hardware. Soldered the TSL2561 Sensor and the MQ135 Sensor. Debugged the STM32 Nucleo-U545RE-Q and prepared it for the project. + +Ordered all the hardware. Soldered the TSL2561 sensor and the MQ135 sensor. Debugged the STM32 Nucleo-U545RE-Q and prepared it for the project. # Week 7 - Connected the ST7789 Display to the STM32 Nucleo-U545RE-Q. Sorted out visual and touchscreen part. Tweaked the UI and swiping animations (between the sensor values) with static values before starting to add the sensors. + +Connected the ST7789 display to the STM32 Nucleo-U545RE-Q. Sorted out visual and touchscreen parts. Tweaked the UI and swipe animations with static values before adding all sensors. + +# Week 8 + +Integrated BME280, TSL2561, and PIR into the runtime UI, then added the ESP8266 NodeMCU web dashboard path over UART JSON streaming. + +# Week 9 + +Improved refresh responsiveness and synchronized motion behavior between board display and web dashboard. Finalized project documentation updates and KiCad schematic integration. ## Hardware @@ -60,13 +114,13 @@ The core is an STM32 Nucleo-U545RE-Q running at 160 MHz (PLL from HSI). The disp ### Schematics -Place your KiCAD or similar schematics here in SVG format. +![KiCad schematic](./kicadproject.svg) ### Bill of Materials | Device | Usage | Price | |--------|--------|-------| -| [STM32 Nucleo-U545RE-Q](https://www.st.com/en/evaluation-tools/nucleo-u545re-q.html) | The microcontroller | [105 RON](https://ro.mouser.com/ProductDetail/STMicroelectronics/NUCLEO-U545RE-Q?qs=tlsG%2FOw5FFjl20PI4ypAag%3D%3D) | +| [STM32 Nucleo-U545RE-Q](https://www.st.com/en/evaluation-tools/nucleo-u545re-q.html) | The microcontroller | [125 RON](https://ro.mouser.com/ProductDetail/STMicroelectronics/NUCLEO-U545RE-Q?qs=tlsG%2FOw5FFjl20PI4ypAag%3D%3D) | | [2.4" TFT LCD Touchscreen (ST7789V + XPT2046)](https://www.emag.ro/display-tft-spi-2-4-inch-240x320-lcd-cu-touchscreen-driver-st7789v-arduino-emg178/pd/DXZMBSYBM/) | Display + touch for the dashboard UI | [54.86 RON](https://www.emag.ro/display-tft-spi-2-4-inch-240x320-lcd-cu-touchscreen-driver-st7789v-arduino-emg178/pd/DXZMBSYBM/) | | [Set 3x BME280](https://www.emag.ro/set-3x-senzor-temperatura-si-umiditate-presiune-atmosferica-bme280-modul-digital-i2c-spi-3-3v-5v-compatibil-arduino-si-raspberry-pi-pentru-statie-meteo-diy-et000011/pd/DNBHJ53BM/) | Temperature, humidity, pressure (I2C) | [76.74 RON](https://www.emag.ro/set-3x-senzor-temperatura-si-umiditate-presiune-atmosferica-bme280-modul-digital-i2c-spi-3-3v-5v-compatibil-arduino-si-raspberry-pi-pentru-statie-meteo-diy-et000011/pd/DNBHJ53BM/) | | [TSL2561 (GY-2561)](https://www.emag.ro/modul-senzor-de-luminozitate-tsl2561-0-1-40k-lux-3v-0-6ma-gy-2561-dh000007/pd/DJ8QQL3BM/) | Light sensor, 0.1 to 40k+ lux (I2C) | [29.84 RON](https://www.emag.ro/modul-senzor-de-luminozitate-tsl2561-0-1-40k-lux-3v-0-6ma-gy-2561-dh000007/pd/DJ8QQL3BM/) | @@ -74,6 +128,7 @@ Place your KiCAD or similar schematics here in SVG format. | [HC-SR501 PIR](https://www.emag.ro/detector-de-miscare-hc-sr501-pir-compatibil-cu-arduino-infrarosu-33-mm-x-25-mm-x-25-mm-verde-d1/pd/D52G1QYBM/) | Motion detection | [23.27 RON](https://www.emag.ro/detector-de-miscare-hc-sr501-pir-compatibil-cu-arduino-infrarosu-33-mm-x-25-mm-x-25-mm-verde-d1/pd/D52G1QYBM/) | | [ESP8266 NodeMCU V3](https://www.emag.ro/modul-esp8266-wifi-usb-c-30pin-nodemcu-v3-arduino-ch340-suport-pentru-esp32-alimentare-5v-12v-64kb-sram-4mb-flash-wifi-802-11-b-g-n-securitate-wpa-wpa2-11-porturi-i-o-1-port-analogic-compatibil-pentru/pd/D9DHMQYBM/) | WiFi for remote logging | [39.14 RON](https://www.emag.ro/modul-esp8266-wifi-usb-c-30pin-nodemcu-v3-arduino-ch340-suport-pentru-esp32-alimentare-5v-12v-64kb-sram-4mb-flash-wifi-802-11-b-g-n-securitate-wpa-wpa2-11-porturi-i-o-1-port-analogic-compatibil-pentru/pd/D9DHMQYBM/) | | [Electronics Kit (Duueyct)](https://www.emag.ro/set-componente-electronice-duueyct-breadboard-830-puncte-rezistenta-de-lunga-durata-usor-de-manevrat-cu-cutie-de-depozitare-perfect-de-transportat-compatibil-arduino-uno-r3-si-raspberry-pi-multicolor-/pd/D8KWPG3BM/) | Breadboard, wires, resistors, LEDs, buzzer | [65.50 RON](https://www.emag.ro/set-componente-electronice-duueyct-breadboard-830-puncte-rezistenta-de-lunga-durata-usor-de-manevrat-cu-cutie-de-depozitare-perfect-de-transportat-compatibil-arduino-uno-r3-si-raspberry-pi-multicolor-/pd/D8KWPG3BM/) | +| **Total** | **Complete hardware cost** | **442.97 RON** | ## Software diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg new file mode 100644 index 00000000000..8ecd1b19a59 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg @@ -0,0 +1 @@ +123456123456ABCDABCDDate: 2026-04-24KiCad E.D.A. 10.0.1Rev: Size: A4Id: 1/1Title: Danila Bogdan Project SchematicFile: kicadproject.kicad_schSheet: /1234BME280123456J6CN81234567891011121314151617181920212223242526272829303132333435363738J1CN712345678J5CN9H1MountingHoleH2MountingHoleH3MountingHole12345TSL2561123HC-SR501.1234567891011121314ST7789V+XPT20461234RGB_LED123456789101112131415J812345678J4CN612345678910J3CN51234MQ13512PASSIVE_BUZZER123456789101112131415J71234567891011121314151617181920212223242526272829303132333435363738J2CN10NCNCPC0PA4PC1PA7UARTESP8266 WIFIVREFPVCCPA10PA9GNDI2CNCSCLGNDSDANCVCCSCKLEDVCCPWMGNDSDO(MISO)DCADC + GPIOVCCSDI(MOSI)GNDPC6DOUTAOUTPC9PA5GNDOUTPA2PA6PB4PC8PA3PA8PC7NCPC12AGNDPB8VBUSSPI + GPIOSTM32 Nucleo-U545RE-QPB2GNDPB1PB6PB10PB3PB5PB7GNDCSPB15PB14PB13PA11PA12NCNCT_DINRGBT_CSGPIORESETGNDPWMPC2INTVCCVBATT_CLKPC13SCLGNDSDAVCCI2CT_TRQT_DONCVINGNDGNDNCPC3PA1VDDGNDPC15PH1PH0PB0PA15PA14GNDPA13PA0NCNCBOOT0D5PC10PC14PC11PD2+5VE5VIOREF+3V3NRSTGNDMechanicalJ3CN512345678910J5CN912345678 \ No newline at end of file From cd6ed92ee031022e8e6a5d15aaecdb1d09902a0f Mon Sep 17 00:00:00 2001 From: bgdanila Date: Sat, 25 Apr 2026 00:09:06 +0300 Subject: [PATCH 6/6] Resize KiCad schematic SVG to 1024x723 for checklist Made-with: Cursor --- .../project/2026/bogdan.danila2510/kicadproject.svg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg index 8ecd1b19a59..08f8bd41cc0 100644 --- a/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg +++ b/website/versioned_docs/version-fils_en/project/2026/bogdan.danila2510/kicadproject.svg @@ -1 +1 @@ -123456123456ABCDABCDDate: 2026-04-24KiCad E.D.A. 10.0.1Rev: Size: A4Id: 1/1Title: Danila Bogdan Project SchematicFile: kicadproject.kicad_schSheet: /1234BME280123456J6CN81234567891011121314151617181920212223242526272829303132333435363738J1CN712345678J5CN9H1MountingHoleH2MountingHoleH3MountingHole12345TSL2561123HC-SR501.1234567891011121314ST7789V+XPT20461234RGB_LED123456789101112131415J812345678J4CN612345678910J3CN51234MQ13512PASSIVE_BUZZER123456789101112131415J71234567891011121314151617181920212223242526272829303132333435363738J2CN10NCNCPC0PA4PC1PA7UARTESP8266 WIFIVREFPVCCPA10PA9GNDI2CNCSCLGNDSDANCVCCSCKLEDVCCPWMGNDSDO(MISO)DCADC + GPIOVCCSDI(MOSI)GNDPC6DOUTAOUTPC9PA5GNDOUTPA2PA6PB4PC8PA3PA8PC7NCPC12AGNDPB8VBUSSPI + GPIOSTM32 Nucleo-U545RE-QPB2GNDPB1PB6PB10PB3PB5PB7GNDCSPB15PB14PB13PA11PA12NCNCT_DINRGBT_CSGPIORESETGNDPWMPC2INTVCCVBATT_CLKPC13SCLGNDSDAVCCI2CT_TRQT_DONCVINGNDGNDNCPC3PA1VDDGNDPC15PH1PH0PB0PA15PA14GNDPA13PA0NCNCBOOT0D5PC10PC14PC11PD2+5VE5VIOREF+3V3NRSTGNDMechanicalJ3CN512345678910J5CN912345678 \ No newline at end of file +123456123456ABCDABCDDate: 2026-04-24KiCad E.D.A. 10.0.1Rev: Size: A4Id: 1/1Title: Danila Bogdan Project SchematicFile: kicadproject.kicad_schSheet: /1234BME280123456J6CN81234567891011121314151617181920212223242526272829303132333435363738J1CN712345678J5CN9H1MountingHoleH2MountingHoleH3MountingHole12345TSL2561123HC-SR501.1234567891011121314ST7789V+XPT20461234RGB_LED123456789101112131415J812345678J4CN612345678910J3CN51234MQ13512PASSIVE_BUZZER123456789101112131415J71234567891011121314151617181920212223242526272829303132333435363738J2CN10NCNCPC0PA4PC1PA7UARTESP8266 WIFIVREFPVCCPA10PA9GNDI2CNCSCLGNDSDANCVCCSCKLEDVCCPWMGNDSDO(MISO)DCADC + GPIOVCCSDI(MOSI)GNDPC6DOUTAOUTPC9PA5GNDOUTPA2PA6PB4PC8PA3PA8PC7NCPC12AGNDPB8VBUSSPI + GPIOSTM32 Nucleo-U545RE-QPB2GNDPB1PB6PB10PB3PB5PB7GNDCSPB15PB14PB13PA11PA12NCNCT_DINRGBT_CSGPIORESETGNDPWMPC2INTVCCVBATT_CLKPC13SCLGNDSDAVCCI2CT_TRQT_DONCVINGNDGNDNCPC3PA1VDDGNDPC15PH1PH0PB0PA15PA14GNDPA13PA0NCNCBOOT0D5PC10PC14PC11PD2+5VE5VIOREF+3V3NRSTGNDMechanicalJ3CN512345678910J5CN912345678 \ No newline at end of file