
Mixed signal Board Rev D
Akhilesh-design-02/STM32F407-Hardware-Design
4-layer STM32F407 mixed-signal PCB design featuring I2C/I2S/USB interfaces, SGP40 & SHT40 sensors, power plane splits, and star grounding for noise isolation.

Open source hardware to monitor temperature, humidity and VOC in an indoor environment
AMUN is an open-source printed circuit board by Summanuss, from the Summanuss/openairqmonitor repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board of 60 × 40 mm with 47 parts on 61 nets, routed with 337 tracks and 64 vias.
It is built around the STM32L431CCT6TR, SGP40-D-R4 and SHT40-AD1B-R2, with the AZ1117CH-3.3TRG1, SFV12R-1STBE1HLF and SSM3K16FV,L3F among its other parts. Its parts include 14 capacitors, 11 resistors, 5 ICs, 4 connectors and 1 diode. It belongs with the STM32 boards of this library.
Open AirQ Monitor is a very simple STM32 custom PCB with a temperature/humidity sensor and a
VOC sensor. It's goal is to be a consumer / gadget product which you can keep in your bedroom,
rather than a professional industrial solution to monitor ambient parameters.
Given that, I decided to use an LCD TFT RGB display so the firmware application can be more
"fancy" and "nice".
As an hobbistic project, I wanted it to be as cheap and easy to design as possible.
This can be seen as a starting point to build a more advanced product with more functionality,
so feel free to fork the repo and customize it as you like!
| Parameter | Value |
|---|---|
| Input Voltage | 5V |
| Typical Current Draw | TODO (e.g. ~xx mA idle / xx mA peak) |
| Microcontroller / Core | STM32L431CCT6TR |
| Microcontroller / RAM | 64 KB |
| Microcontroller / FLASH | 256 KB |
| VOC Sensor | SGP40-D-R4 |
| Temp/Humidity Sensor | SHT40-AD1B-R2 |
| TFT Display | ER-TFT018-3 |
| Dimensions | 60x40 mm |
| Mounting Holes | M2 |
├── docs/ # Documentation, schematics PDF, and renders
├── fabrication/ # Production files (Gerbers, BOM, Pick & Place)
├── design/ # KiCad project source files
├── exported # .step, BOM, ...
├── LICENSE # License file
└── README.md # Project documentationCheck the docs/ folder.
For the complete pinout check the schematic.
| Pin | Function | Description | Direction |
|---|---|---|---|
| PA1 | SPI_CLK | SPI Clock Signal | Out |
| PA3 | BUTTON_IN | External Button Signal | In |
| PA4 | DC_DISPLAY | Data / Command Display Signal | Out |
| PA5 | RST_DISPLAY | Display Reset Signal | Out |
| PA6 | CS_DISPLAY | Display Chip Select Signal | Out |
| PA7 | SPI_MOSI | Display Serial Data Signal | Out |
| PA8 | BCK_LIGHT_DISPLAY | Display Backlight Signal | Out |
| PA9 | I2C_SCL | SCL Line of I2C bus | Out |
| PA10 | I2C_SDA | SDA Line of I2C bus | In / Out |
| PA11 | SWDIO | Serial Wire Data Signal | In / Out |
| PA14 | SWCLK | Serial Wire Protocol Clock Signal | In |
| PB3 | SWO | Serial Wire Protocol Output Signal | Out |
SWDIO/SWCLK/SWO pins.The chosen manufacturer is AISLER and every constraints in the layout that I used is based on their specifications.
I used the AISLER plugin for KiCad to export all fabrication files. Just for reference, I created them manually in
fabrication directory.
However, I didn't double checked those and a further analysis is suggested.
Also, the PCB was manually assembled by me and no assembly services were used from the manufacturer.
Test firmware written in C is provided here
More information about it are provided in the linked repository.
Distributed under the Apache-2.0 License. See LICENSE for more information.
I would like to thanks my friends which worked on the final firmware product and device enclouse:
| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 100nF | amun_lib:CAPC1608X90N | C1, C2, C3, C4, C5, C17, C18, C19 |
| 5 | 10K | amun_lib:RESC1608X55N | R5, R7, R9, R11, R14 |
| 4 | MountingHole | MountingHole:MountingHole_2.2mm_M2_DIN965 | H1, H2, H3, H4 |
| 2 | 1uF | amun_lib:CAPC1608X90N | C11, C12 |
| 2 | 2.2uF | amun_lib:CAPC1608X90N | C13, C16 |
| 2 | 3V3 | TestPoint:TestPoint_Pad_D1.0mm | 3V3, 3V3 |
| 2 | 5.1K | amun_lib:RESC1608X55N | R12, R13 |
| 1 | 10 | amun_lib:RESC1608X55N | R6 |
| 1 | 100 | amun_lib:RESC1608X60N | R10 |
| 1 | 10uF | amun_lib:GRM18x | C14 |
| 1 | 22uF | amun_lib:GRM18x | C15 |
| 1 | 4.7K | amun_lib:RESC1608X50N | R2 |
| 1 | 5V | TestPoint:TestPoint_Pad_D1.0mm | 5V |
| 1 | AZ1117CH-3.3TRG1 | amun_lib:SOT230P700X180-4N | IC4 |
| 1 | BLM18PG330SH1D | amun_lib:BLM18SP221SN1B | FB2 |
| 1 | BTN | TestPoint:TestPoint_Pad_D1.0mm | BTN |
| 1 | Conn_01x02_Pin | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J3 |
| 1 | Conn_01x06 | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J7 |
| 1 | EL2_52_35J_LFS | amun_lib:EL25235JLFS | S1 |
| 1 | ER-TFT018-3 | amun_lib:ER-TFT018-3 | U2 |
| 1 | GND | TestPoint:TestPoint_Pad_D1.0mm | GND |
| 1 | RC0603FR-134R7L | amun_lib:RESC1608X55N | R1 |
| 1 | SFV12R-1STBE1HLF | amun_lib:SFV12R1STBE1HLF | J6 |
| 1 | SGP40-D-R4 | amun_lib:SON80P244X244X95-7N | IC3 |
| 1 | SHT40-AD1B-R2 | amun_lib:SHT40AD1BR2 | IC2 |
| 1 | SMAJ6.5CA_TR7 | amun_lib:DIOM5127X250N | D2 |
| 1 | SSM3K16FV,L3F | amun_lib:VESM_SOT-723_ | Q2 |
| 1 | STM32L431CCT6TR | amun_lib:QFP50P900X900X160-48N | IC5 |
| 1 | UJ20-C-H-G-MSMT-4B-P16-TR | amun_lib:UJ20CHGMSMT4BP16TR | J1 |
It measures 60 × 40 mm and has 2 copper layers, 1.6 mm thick.
47 parts, built around the STM32L431CCT6TR, SGP40-D-R4, SHT40-AD1B-R2 and AZ1117CH-3.3TRG1. 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 Summanuss/openairqmonitor repository on GitHub, at the commit this page was made from: the board is design/AMUN.kicad_pcb and its schematic design/AMUN.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the Apache-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Akhilesh-design-02/STM32F407-Hardware-Design
4-layer STM32F407 mixed-signal PCB design featuring I2C/I2S/USB interfaces, SGP40 & SHT40 sensors, power plane splits, and star grounding for noise isolation.

leafony/ai05-env-sensors
全センサーは Leafony Bus の 3.3 V・I²C に接続します。基板は 23 × 20 mm、4層、板厚 0.8 mm です。

offgridevices/offgrid-hardware
Open hardware from OffGrid Devices. One folder per board. CERN-OHL-S.

MbFredys/PCB-Mini-Environmental-Sensor
Compact ESP32-C3 environmental-sensor PCB design using BME280 and SGP40 for temperature, humidity, pressure, and VOC-based air-quality sensing.



HearnChristian/atmos-sense
ESP32-based atmospheric sensing node: BME280 environmental sensing and AS3935 lightning detection over I2C, designed for drone integration. KiCad hardware plus firmware.

benjamincrockett/Weather-Feather-Wing
A circuit board incorporating temperature, humidity, atmospheric pressure, and CO2 sensors into an Adafruit Feather Wing form factor with Stemma QT connectors.