
1.Electronics
I-M-Robotics-Lab/STM32-Quadcopter
Quadcopter design based on STM32F411CEU Blackpill flight controller. Compatible with INAV 6.0 firmware.

Graduation thesis topic is the design of a weather monitoring station using NB-IoT technology
WeatherStation is an open-source printed circuit board by hcmusthinhcode2k2, from the hcmusthinhcode2k2/WeatherStation_Thesis repository on GitHub. It is a 4-layer board of 79 × 93 mm with 203 parts on 163 nets, routed with 2,321 tracks and 430 vias.
It is built around the TX 1. Its parts include 84 capacitors, 51 resistors, 17 ICs, 9 diodes and 8 connectors. It belongs with the home automation and IoT boards and the PIC boards of this library.
The weather station model was designed over a 5-month period (March 2024 - August 2024), incorporating components such as PCB, sensors, and mechanical structure. The objective of this project is to develop a station capable of collecting weather data from various sensors and transmitting it to the ThingsBoard server. This enables visualization of the collected data, facilitating effective weather monitoring.
The project benefited from equipment and guidance provided by RPC, the company where I interned from October 2023 to December 2023.



Post-thesis, I built a web application using Next.js, integrating it with the ThingsBoard API for interactive weather data visualization. Supabase is used for backend services, including authentication via GitHub, data management, and real-time updates. The development process was influenced by insights from this YouTube video.

| Qty | Value | Footprint | References |
|---|---|---|---|
| 23 | 100nF | SAMPI:CAP0603 | C1, C6, C12, C16, C17, C25, C27, C34, C41, C42, C46, C47, C58, C61, C66, C70 +7 |
| 17 | 22pF | SAMPI:CAP0603 | C32, C33, C35, C37, C38, C40, C43, C45, C48, C51, C52, C53, C54, C56, C59, C71 +1 |
| 15 | 10uF | SAMPI:CAP0805 | C2, C3, C7, C14, C18, C21, C22, C24, C30, C62, C63, C64, C67, C75, C80 |
| 15 | 1K | SAMPI:RES0603 | R1, R6, R10, R13, R14, R15, R26, R28, R31, R32, R36, R39, R40, R49, R50 |
| 11 | 10K, 1% | SAMPI:RES0603 | R3, R4, R9, R12, R16, R18, R20, R22, R25, R30, R35 |
| 10 | 100pF | SAMPI:CAP0603 | C4, C9, C10, C11, C13, C15, C23, C68, C69, C84 |
| 9 | 2.2uF | SAMPI:CAP0603 | C8, C31, C36, C39, C44, C50, C55, C60, C83 |
| 7 | 100K, 1% | SAMPI:RES0603 | R17, R41, R42, R43, R44, R45, R46 |
| 7 | 220uF | SAMPI:CAP2312-6032 | C19, C20, C26, C49, C57, C65, C72 |
| 6 | 30V/3.6A | SAMPI:SOT23 | Q1, Q2, Q3, Q4, Q5, Q6 |
| 6 | 5.1K, 1% | SAMPI:RES0603 | R2, R5, R23, R24, R47, R48 |
| 4 | 0R | SAMPI:RES0603 | R21, R27, R29, Z1 |
| 4 | LEVEL SHIFT 1-CH | SAMPI:SOT-23-6_MCHP | U8, U9, U15, U16 |
| 3 | 2A/0.5VF | SAMPI:DO-214AC | D1, D2, D8 |
| 2 | 10uH/3A | SAMPI:IND7870 | L2, L4 |
| 2 | 150K, 1% | SAMPI:RES0603 | R37, R38 |
| 2 | 75K, 1% | SAMPI:RES0603 | R7, R34 |
| 2 | 8.2pF | SAMPI:CAP0603 | C28, C29 |
| 2 | DHTP | SAMPI:HDM-2x4x2.0-TH-RA | J6, J7 |
| 2 | LDO 3.3V/300mA | SAMPI:SOT25_DIODES | U5, U10 |
| 1 | 0.9-1.8GHz | SAMPI:AH3G.303 | ANT1 |
| 1 | 100R@100MHz | SAMPI:IND0805 | FT1 |
| 1 | 150R | SAMPI:RES0603 | R33 |
| 1 | 1V8 | SAMPI:TP1MM | TP8 |
| 1 | 2.2uH/3A | SAMPI:IND5852 | L1 |
| 1 | 32.768kHz | SAMPI:SMD4-7015 | X1 |
| 1 | 36K, 1% | SAMPI:RES0603 | R8 |
| 1 | 3V3 | SAMPI:TP1MM | TP4 |
| 1 | 470uF | SAMPI:CAP_ELEC-10.3x10.3-DIA10 | C5 |
| 1 | 47nH | SAMPI:IND0603 | L3 |
| 1 | 53.6K, 1% | SAMPI:RES0603 | R11 |
| 1 | 5V | SAMPI:TP1MM | TP3 |
| 1 | 680K, 1% | SAMPI:RES0603 | R19 |
| 1 | 750mA/6.3V | SAMPI:FUSE1812 | F1 |
| 1 | APP | SAMPI:SW_SMD2_6.0x3.5 | BT2 |
| 1 | APP | SAMPI:LED0603 | D5 |
| 1 | BATTERY | SAMPI:PAD02_2.54TH | BAT1 |
| 1 | BOOST 5V | SAMPI:SOT-23-6_MCHP | U13 |
| 1 | BOOT | SAMPI:TP1MM | TP13 |
| 1 | BUCK 5V | SAMPI:SOT-23-6_MCHP | U1 |
| 1 | BUCK-BOOST 3.8V | SAMPI:PowerVQFN15_TI | U2 |
| 1 | CHARGER & PWR SWITCH | SAMPI:VQFN20-4x4_MCHP | U4 |
| 1 | CHR | SAMPI:LED0603 | D4 |
| 1 | DUST SENSOR CONNECTOR | SAMPI:HDM-6x1.5-SMD-RA | U11 |
| 1 | GND | SAMPI:TP1MM | TP6 |
| 1 | GPS ACTIVE ANTENNA | SAMPI:1575R-A | MD2 |
| 1 | HUMI & TEMP | SAMPI:SHT4x | U12 |
| 1 | IDEAL DIODE | SAMPI:SOT363 | U3 |
| 1 | LDO 1.8V/300mA | SAMPI:SOT25_DIODES | U17 |
| 1 | LOW | SAMPI:LED0603 | D3 |
| 1 | NANOSIM | SAMPI:SIM8051-6-0-14-01-A_GCT | J5 |
| 1 | NB | SAMPI:LED0603 | D7 |
| 1 | NB-IoT MODULE | SAMPI:xE310 | MD1 |
| 1 | PIC32MM MCU | SAMPI:TQFP48-7x7_MCHP | U7 |
| 1 | PRESSURE SENSOR | SAMPI:DPS368 | U14 |
| 1 | PWR MONITOR | SAMPI:DIL04_2.54_MTH | J3 |
| 1 | RESET | SAMPI:SW_SMD2_6.0x3.5 | BT1 |
| 1 | RPDBG | SAMPI:DIL10_1.27_MTH | J4 |
| 1 | RWD | SAMPI:HDM-2x4x2.0-TH-RA | J8 |
| 1 | RX1 | SAMPI:TP1MM | TP12 |
| 1 | SOLAR | SAMPI:PAD02_2.54TH | J2 |
| 1 | SPI Memory | SAMPI:SOIC8_3.9_MCHP | U6 |
| 1 | SYS | SAMPI:LED0603 | D9 |
| 1 | TVS-5CH | SAMPI:SOT363 | D6 |
| 1 | TX1 | SAMPI:TP1MM | TP11 |
| 1 | UFL | SAMPI:U.FL | ANT2 |
| 1 | USB | SAMPI:HDM-4x2.54-TH | J1 |
| 1 | VAUX | SAMPI:TP1MM | TP14 |
| 1 | VBAT | SAMPI:TP1MM | TP5 |
| 1 | VBST | SAMPI:TP1MM | TP10 |
| 1 | VDD | SAMPI:TP1MM | TP7 |
| 1 | VLNA | SAMPI:TP1MM | TP9 |
| 1 | VNB | SAMPI:TP1MM | TP2 |
| 1 | VUSB | SAMPI:TP1MM | TP1 |

I-M-Robotics-Lab/STM32-Quadcopter
Quadcopter design based on STM32F411CEU Blackpill flight controller. Compatible with INAV 6.0 firmware.


Cinetronix/fpv-video-in-v1
KiCad hardware design for an HDMI-to-MIPI CSI bridge board, designed for FPV camera systems.


xpix/XMOTO_TINYAVR
This code is designed for a motor controller and has merged the PID code of Josh Kopel with the code of the Makerbot servo-controller board. This code can be used on some boards by changing some values.



jrowe88/ecoport-bridge
CTA-2045 (EcoPort) bridge for a Rinnai REHP65 heat pump water heater
It measures 79 × 93 mm and has 4 copper layers, 1.6 mm thick.
203 parts, built around the TX 1. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the hcmusthinhcode2k2/WeatherStation_Thesis repository on GitHub, at the commit this page was made from: the board is Hardware/WeatherStation.kicad_pcb and its schematic Hardware/MCU.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask hcmusthinhcode2k2 before reusing the design.