Skip to the content
2 layers100 × 100 mmSmart air, the printed circuit board in 3D

Devices provision over BLE, publish telemetry/shadow over MQTT, and serve the app through a Cloudflare-fronted Fastify API. See Features below for the full breakdown.

Size
100 × 100 mm
Copper layers
2
Thickness
1.6 mm
Parts
70
Nets
74
Pads
224
Tracks, vias
153, 626
Pours
10
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
13 Mar 2026
Updated
22 Aug 2026

Overview

Smart air is an open-source printed circuit board by meeTeam05, from the meeTeam05/smart-air repository on GitHub, published under the MIT licence. It is a 2-layer board of 100 × 100 mm with 70 parts on 74 nets, routed with 153 tracks and 626 vias.

It is built around the ESP32-S3-DEVKITC-1-N8, EL357N-G and AMS1117, with the SI2300, BAT54C and BZT52C5V1 among its other parts. Its parts include 19 resistors, 11 capacitors, 10 diodes, 7 ICs and 5 connectors. It belongs with the ESP32 boards of this library.

Main components

7

README

README.md

smart-air

ESP32-S3 ESP-IDF 5.4.2 Flutter >=3.10 Node.js 20 License MIT

smart-air is an ESP32-S3 indoor air quality monitor and smart home controller. It combines ESP-IDF firmware, a Fastify + EMQX + TimescaleDB server stack, and a Flutter mobile app to solve device onboarding, telemetry ingestion, remote control, and live state sync in one system.

Smart-Air

Introduction

Devices provision over BLE, publish telemetry/shadow over MQTT, and serve the app through a Cloudflare-fronted Fastify API. See Features below for the full breakdown. See the Hardware section for the board, sensors, and enclosure.

Features

  • Firmware (ESP-IDF v5.4.2): BLE provisioning, Wi-Fi, MQTT over TLS/WSS, HTTPS OTA with rollback/validation, SHT3x (temperature/humidity), GM702B (CO) and GM102B (NO₂) gas sensors, DS3231 RTC with SNTP sync, LVGL on ILI9225 display, 3 relay channels (Fan/Lamp/Filter) with NVS persistence, WS2812 status LED, buzzer, and factory-reset button.
  • Server: Fastify API with PostgreSQL/TimescaleDB, Redis, and EMQX in Docker Compose; Nginx + Cloudflare Tunnel for public ingress; per-device MQTT credentials provisioned through the API; OTA artifact hosting.
  • Realtime: Live device status, shadow, telemetry, OTA progress, and command updates over Server-Sent Events; REST remains canonical for snapshots, history, replay, and command authorization.
  • App (Flutter + Riverpod): JWT auth with refresh-token rotation in secure storage, 5-step BLE provisioning, multi-home/room management with member invites, device dashboard with relay and device-mode controls, real-time sparkline charts, command history, sensor calibration wizard, OTA screen, in-app notifications, and adaptive light/dark theme.

Hardware

Schematic

Schematic

PCB Layout

PCB Front PCB Back

3D Model

PCB Front PCB Back

Assembly

Assembly View A Assembly View B

Assembly View C Assembly View D

Firmware

Config and build

PCB Front PCB Back

Runtime

Runtime

App

Demo

App Demo 1 App Demo 2 App Demo 3 App Demo 4

Contributing

  • For structural work, also read docs/ARCHITECTURE.md, docs/MQTT_PROTOCOL.md, and docs/API_REFERENCE.md.
  • Keep changes narrow, update matching docs when contracts change, and run the narrowest verification for the area you touched.

License

MIT. See LICENSE.md.

Parts

70
QtyValueFootprintReferences
1010KIVS_FOOTPRINTS:R_0603R1, R2, R6, R7, R9, R11, R14, R16, R18, R19
5100nFIVS_FOOTPRINTS:C_0603C3, C4, C7, C10, C11
510K/0603/1%IVS_FOOTPRINTS:R_0603R5, R10, R13, R15, R17
51uFIVS_FOOTPRINTS:C_0603C2, C5, C6, C8, C9
4LEDIVS_FOOTPRINTS:LED_0603_1608MetricD3, D5, D7, D10
4SI2300Package_TO_SOT_SMD:SOT-23Q1, Q2, Q3, Q4
31N4007Diode_SMD:D_SOD-123FD1, D6, D9
3EL357N-GMY_FOOTPRINT:OPTO_EL357N-GU2, U4, U5
3G5NBRelay_THT:Relay_SPST_Omron_G5NBK1, K2, K3
24.7KIVS_FOOTPRINTS:R_0603R20, R21
110uFIVS_FOOTPRINTS:C_0603C1
11KIVS_FOOTPRINTS:R_0603R8
11K/0603/1%IVS_FOOTPRINTS:R_0603R12
1AMS1117IVS_FOOTPRINTS:SOT233U1
1BAT54CIVS_FOOTPRINTS:SOT23-3D8
1BZT52C5V1Diode_SMD:D_SOD-123FD11
1BuzzerIVS_FOOTPRINTS:Buzzer-THT-12x9.5_RM7.6BZ1
1COConnector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalJ3
1CR1220IVS_FOOTPRINTS:BatteryHolder-SMD-CR1220BT1
1Conn_Jack-DCIVS_FOOTPRINTS:BarrelJackDC-Horz-THT-5mmJ2
1ESP32-S3-DevKitCMY_FOOTPRINT:ESP32-S3-DevKitCU6
1LEDLED_SMD:LED_0603_1608MetricD2
1LOGOMY_FOOTPRINT:WarningG***
1LOGOMY_FOOTPRINT:HCMUTEG***
1NO2Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalJ4
1RTC_DS3231MPackage_SO:SOIC-16W_7.5x10.3mm_P1.27mmIC1
1R_PotentiometerPotentiometer_THT:Potentiometer_Bourns_3266Y_VerticalRV1
1SHT31Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalJ5
1Screw_Terminal_01x04MY_FOOTPRINT:HB9500-4PJ1
1~MY_FOOTPRINT:TFT-ILI9225U3

The 64 most common of 70 parts.

Similar boards

  • 2 layers99.4 × 99.3 mmIoT2526 HK2, the printed circuit board in 3D

    IoT2526 HK2

    Chethien1912/IoT-Environmental-Monitoring-System

    ESP32-based IoT environmental monitoring project semester 2 2025-2026 HCMUTE

    78 partsMIT
  • 2 layers96 × 97.3 mmDO AN DKTD, the printed circuit board in 3D

    DO AN DKTD

    PHAP0610/ThaoRDBoard

    All file include and source in this: https://github.com/nguyentrungthao/STM32/tree/dev

    164 parts
  • 2 layers95 × 75 mmBattery predictor, the printed circuit board in 3D

    Battery predictor

    touhidsiddiqueeraj-bit/Multi-Horizon-Hazard-Models-for-Battery-Failure-Prediction

    This study extends an existing multi-horizon hazard classification framework—originally developed for NASA 18650 cells using Histogram-based Gradient Boosting (HGB)—to three additional datasets (CALCE LCO/CX2, Oxford…

    25 parts1
  • 2 layers96 × 74.4 mmMonolith, the printed circuit board in 3D

    Monolith

    luftaquila/monolith

    DIY wireless real-time datalogging platform for Student Formula and Baja.

    138 parts45
  • 2 layers90 × 74 mmFsk energymeter, the printed circuit board in 3D

    Fsk energymeter

    luftaquila/fsk-energymeter

    E-Formula electric energy meter for Formula Student Korea

    92 parts13
  • 2 layers193.3 × 111.3 mmGATEWAY HARDWARE V1, the printed circuit board in 3D

    GATEWAY HARDWARE V1

    kori-thespirit/LoraGatewayDevelopment

    224 partsMIT
  • 6 layers300 × 245 mmAkd safe source gateway, the printed circuit board in 3D

    Akd safe source gateway

    zinedkahitaf-lang/AKD-SAFE-SourceControl

    Infrastructure-Based Active Engineering Safety Platform. Move the safety burden from the worker to the hazard. Engineering prototype - not a certified safety device.

    316 parts
  • 2 layers85 × 90 mmKiCad pcb telemetria, the printed circuit board in 3D

    KiCad pcb telemetria

    thegm-Gabriel/instrumentacao-ElectricCarUFSM

    Projeto Carro Elétrico UFSM-CS

    40 parts

Questions

How big is the Smart air PCB?

It measures 100 × 100 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Smart air use?

70 parts, built around the ESP32-S3-DEVKITC-1-N8, EL357N-G, AMS1117 and SI2300. 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.

Where can I download the Smart air KiCad files?

From the meeTeam05/smart-air repository on GitHub, at the commit this page was made from: the board is hardware/Smart-Air.kicad_pcb and its schematic hardware/Smart-Air.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Smart air design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).