AeriSense is a compact wearable environmental monitoring PCB for a science fair engineering prototype. It monitors asthma-trigger environmental conditions and transmits data wirelessly using an ESP32-WROOM-32D module.
Intended Use
Wearable battery-powered IoT prototype for real-time environmental sensing, demonstration, and data upload to a mobile/cloud workflow. Design priority is reliability, manufacturability, and fast bring-up by beginner-to-intermediate designers.
What the Device Should Do
Measure temperature, humidity, pressure, and VOC/air-quality indicators.
Estimate LiPo battery voltage and state of charge.
Communicate wirelessly over Wi-Fi/BLE from an onboard ESP32-WROOM-32D module antenna.
Charge a single-cell LiPo from USB-C.
Provide status LEDs, boot/reset controls, and an external UART programming/debug interface.
USB-C power-only input with independent 5.1k CC pull-downs.
0603 passives for manufacturable SMT assembly.
Programming pads exposing TX, RX, GND, 3V3, EN, and IO0.
System Architecture
USB-C 5V powers the charger and can power the system through a simple prototype power path. The LiPo feeds the 3.3V LDO. The ESP32-WROOM-32D communicates with the BME688 and MAX17043 over I2C, controls status LEDs, and exposes UART/debug pads.
Hardware Subsystems
Compute/Wireless
ESP32-WROOM-32D module, antenna at PCB top edge, no copper under antenna region during layout.
Environmental Sensing
BME688 placed at right edge near enclosure venting, physically separated from heat-producing power and charging circuitry.
Battery and Charging
Single-cell 3.7V LiPo, 1200-2000mAh target. USB-C 5V feeds MCP73831 charger set to 500mA using a 2k PROG resistor. Charge status LED included.
Regulation
AP2112K-3.3 low-noise LDO supplies ESP32 and sensors from battery/system input. Use required input/output capacitors and 3.3V bulk capacitance for Wi-Fi current bursts.
Debug/User Interface
Reset and boot tactile buttons, power/charge/status LEDs, and external UART programming pads.
I2C: ESP32 SDA/SCL shared by BME688 and MAX17043, one pair of 4.7k pull-ups.
UART/programming pads: TX, RX, GND, 3V3, EN, IO0.
Power and Runtime Expectations
Runtime depends on Wi-Fi duty cycle. For a 1200-2000mAh LiPo, always-on Wi-Fi will be hours; duty-cycled sensing/transmit can be much longer. Firmware should use light/deep sleep where practical.
Power Tree and Power Budget
Preliminary load assumptions:
Table
Rail
Load
Typical
Peak
3.3V
ESP32-WROOM-32D Wi-Fi active
80-240mA
500mA burst
3.3V
BME688
<5mA
<15mA heater-dependent
3.3V
MAX17043
<1mA
<1mA
3.3V
LEDs/debug
2-10mA each when on
20mA budget
Design target: 3.3V regulator and battery path sized for at least 600mA transient load. AP2112K-3.3 is acceptable for low-duty Wi-Fi prototypes but thermal margin must be reviewed if sustained current exceeds roughly 200mA from USB/fully-charged battery input.