انتقل إلى المحتوى الرئيسي

Bill of Materials

Everything needed to build one device. Prices are rough 2026 street prices; the whole build lands around 35 to 50 USD depending on suppliers.

Two ways to build

This list is the module build: off-the-shelf breakout boards wired together, the most approachable path. There is also an integrated single board in progress that places all of these parts on one PCB with USB-C, on-board charging, and the amplifier; its design and manufacturing outputs are in the main board chapter.

Core electronics

ComponentSpecificationQtyEst. priceNotes
ESP32-S3-N16R816 MB flash, 8 MB octal PSRAM1$8-12DevKitC-1 form factor recommended
MAX98357AI2S DAC and 3 W class D amplifier1$3-5Breakout board
TFT displayOne of the two options below1$4-7Both use the same wiring
MicroSD breakoutSPI interface1$1-2With onboard level shifter
PN532 NFC moduleI2C mode1$5-8The common red 40x43 mm board
DS3231 RTC moduleI2C, with coin cell holder1$2-3Offline schedules and alarm wake; see the coin cell warning
EC11 rotary encoderWith push switch, 20 detents1$1-2Panel mount
Speaker4 ohm, 3 W, full range1$2-440 to 50 mm driver

Display options

The firmware supports two panels, selected at build time (how and why). Both wire to the same pins.

PanelSizeResolutionNotes
ST7735S1.8 inch128x160The default and the most-tested option; the common MSP1803 module has a microSD slot on the back you can use instead of a separate breakout
ST7789V31.47 inch172x320Sharper IPS glass at 2.2x the pixel density, physically smaller; no SD slot, so pair it with a separate microSD breakout. Build with CONFIG_SAFI_LCD_ST7789=y
Verify the exact ESP32-S3 variant

The firmware is sized for the N16R8: 16 MB flash and 8 MB PSRAM. The cheaper N8R2 and N8 variants will not fit the partition layout or the PSRAM working set. The marking is printed on the module can: ESP32-S3-WROOM-1-N16R8.

Power

ComponentSpecificationQtyEst. priceNotes
TP4056 charger moduleUSB-C, 1 A, with protection IC1$1-2Use the 6-pin version that exposes the CHRG status pin
LiPo battery3.7 V, 2000 mAh or larger1$5-10Size 103450 fits the reference enclosure
Slide switchSPDT1$0.50Main power cut

Passives

ComponentValueQtyPurpose
Resistor10 kΩ4SD card CS pull-up, I2C pull-ups, charge status pull-up
Resistor100 kΩ1Battery divider, high side
Resistor27 kΩ1Battery divider, low side
Capacitor100 nF ceramic5Decoupling at each module
Capacitor10 µF2Rail filtering

The divider values matter: 100 kΩ over 27 kΩ scales a full 4.2 V battery to about 0.89 V at the ADC pin, safely inside the ADC range while drawing only 33 µA. The firmware calibration assumes this exact ratio; read wiring before substituting values.

Mechanical and connectors

ItemSpecificationQty
JST-PH 2.0 mm connector2 pin, for the battery1
Pin headers2.54 mm1 strip
Hookup wire or jumpersassorted20+
M2 screws, 6 mmenclosure assembly8
M2 standoffs, 5 mmboard mounting4
Enclosure3D printed, see enclosure1

Optional

ComponentPurpose
Capacitive touch pad, TTP223 module, or bare copper foilThe touch play/pause control on GPIO4
External 2.4 GHz antennaOnly for modules with a U.FL connector, extends WiFi range

Buying advice

  • AliExpress has the best prices with slow shipping; Amazon is faster and pricier; Mouser/DigiKey for guaranteed-genuine parts.
  • For the displays, search 1.8 TFT ST7735 128x160 SPI or 1.47 TFT ST7789 172x320 SPI. Panels with a different controller (such as ILI9163) mostly accept the same init sequence but are untested.
  • For the PN532, boards with mode selection DIP switches make I2C setup obvious: switch 1 ON, switch 2 OFF.
  • Counterfeit TP4056 boards without the DW01 protection IC exist. Prefer the two-chip layout (charger plus protection) unless your battery pack carries its own protection circuit.
  • Every component's datasheet is mirrored in the datasheet library.