Skip to the content
4 layers115 × 107 mmIC 001 - Low Cost Audio Sensor, the printed circuit board in 3D

IC 001 - Low Cost Audio Sensor

ryanstevensmith/locust_hardware

The electronics repository for the locust project by Imperial College

Size
115 × 107 mm
Copper layers
4
Thickness
1.6 mm
Parts
174
Nets
133
Pads
621
Tracks, vias
1,333, 292
Pours
5
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
24 Oct 2026
Updated
24 Oct 2026

Overview

IC 001 - Low Cost Audio Sensor is an open-source printed circuit board by ryanstevensmith, from the ryanstevensmith/locust_hardware repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 4-layer board of 115 × 107 mm with 174 parts on 133 nets, routed with 1,333 tracks and 292 vias.

It is built around the ESP32-S3-WROOM-1-N8, TLV320ADC3101IRGER and TPS63000DRC, with the BQ27427YZF, SPV0142LR5H-1 and TL3305AF260QG among its other parts. Its parts include 53 diodes, 31 resistors, 23 capacitors, 8 ICs and 8 connectors. It belongs with the audio and music and sensors and measurement boards and the ESP32 boards of this library.

Main components

9

README

README.md

Locust Hardware

Open hardware for Locust, a low-cost acoustic monitoring sensor developed with Imperial College London. It records audio to a microSD card in the field and can optionally send data over NB-IoT through a plug-in daughter board.

This repository contains the KiCad design files, manufacturing outputs and a firmware flashing tool for the electronics.

IC_001 audio sensor (top) and IC_002 NB-IoT daughter board (bottom), v3.0

Boards

BoardDescriptionLatest release
IC_001 - Low Cost Audio SensorMain board: ESP32-S3 audio recorder with microSD storage and Li-ion battery managementv3.0
IC_002 - Acoustic Nb-IoT Daughter BoardOptional NB-IoT add-on board for sending data off the devicev3.0

IC_001 – Low Cost Audio Sensor

  • MCU: Espressif ESP32-S3-WROOM-1 (N16R8: 16 MB flash, 8 MB PSRAM)
  • Audio chain: Syntiant SPV0142LR5H analogue MEMS microphone → TI OPA1671 preamp → TI TLV320ADC3101 audio ADC (I2S)
  • Storage: microSD card
  • Power: single-cell Li-ion input, TI BQ21080 charger, TI BQ27427 fuel gauge, 2× TI TPS63000 buck-boost regulators, USB-C for charging and programming
  • User interface: 5 buttons and an addressable RGB LED panel for setting the clock, sample rate (8–96 kHz), duty cycle, gain and recording schedule, plus status LEDs
  • Expansion: 2× Qwiic/STEMMA QT (JST-SH, I2C) and a 10-way FFC connector (J6) to IC_002

IC_001 fitted in the enclosure lid IC_001 configuration LED panel

IC_002 – Acoustic NB-IoT Daughter Board

  • Modem: Quectel BC65 NB-IoT module
  • SIM: nano-SIM holder with ESD protection
  • Antenna: edge-mount SMA or U.FL (fit one antenna at a time)
  • Interface: 10-way FFC connector (J3) to IC_001, with level-shifted UART and modem power/reset control

IC_002 fitted in the enclosure chassis

Repository layout

Each board follows the same structure:

text
IC_00X - <Board Name>/
  working/                              KiCad project (in-progress design)
  IC_00X - <Board Name> - Release vX.Y/
    ... - Schematics - vX.Y.pdf
    ... - Layer Drawings - vX.Y.pdf
    ... - vX.Y.step                     3D model of the assembled board
    ... - proj files - vX.Y.zip         KiCad project snapshot for this release
    front.png / back.png                Board renders
    manufacturing files/
      BoM / PnP (JLC and EXT)           Bill of materials and pick-and-place files
      <gerber folders and zip>          Gerbers (RS-274X and X2) and drill files
firmware/                               Pre-built test firmware binaries
uploader/                               Windows flashing tool (Python source)

JLC files are formatted for JLCPCB assembly (LCSC part numbers). EXT files are for any other assembler and list manufacturer and Digi-Key part numbers.

Use the v3.0 releases for new builds. The v1.0 releases are kept for reference.

Building a unit

A complete unit needs:

ItemPart
Main boardIC_001 v3.0
NB-IoT board (optional)IC_002 v3.0
Board-to-board cableMolex 15167-0250 FFC
AntennaKYOCERA AVX 9000440F0-AA12L0150 (U.FL)
Battery3× 18650 cells in parallel (1S3P), see below
EnclosureInjection-moulded enclosure, not included in this repo

Battery

  • 1S3P 18650 pack, 4.2 V fully charged, about 9000 mAh
  • Connector: Molex PicoBlade housing 51021-0300, mates with J3 on IC_001
    • Pin 1: battery +
    • Pin 2: thermistor, 10 kΩ NTC (optional)
    • Pin 3: battery −

⚠️ Check the polarity before connecting. Many off-the-shelf PicoBlade battery leads are wired the other way round.

Flashing firmware

Pre-built test firmware is in firmware/. The firmware source code is not part of this repository.

Windows (updater tool)

  1. Put updater.exe in the same folder as bootloader.bin, partitions.bin and firmware.bin.
  2. Connect IC_001 to your PC with a USB-C data cable.
  3. Run updater.exe. The tool is unsigned, so if Windows SmartScreen warns you, click More info → Run anyway.
  4. Select the board's COM port (check Device Manager if you are unsure which one it is) and click Flash Firmware.
  5. Wait for the success message.

If the board isn't detected, hold BOOT, press RESET, then release BOOT to enter download mode.

Any platform (esptool)

bash
pip install esptool
esptool.py --chip esp32s3 --port <PORT> --baud 460800 write_flash -z \
  0x0 bootloader.bin \
  0x8000 partitions.bin \
  0x10000 firmware.bin

Building the updater from source

bash
cd uploader
pip install -r requirements.txt pyinstaller
pyinstaller updater.spec

The executable is written to uploader/dist/updater.exe.

Design tools

  • ECAD: KiCad. Some parts use a custom SR_* library, which is not included. KiCad stores footprints inside the board file and symbols inside the schematic, so the projects open and can be edited without that library. Library paths use the ${SR_KICAD_LIB} path variable.
  • Gerbers: provided in both standard RS-274X and Gerber X2 formats

License

The hardware designs are released under the CERN Open Hardware Licence Version 2 – Permissive (CERN-OHL-P-2.0).

The updater software in uploader/ is released under the MIT License.

Copyright © 2026 Ryan Smith.

Acknowledgements

Designed by Smith Robotics for Imperial College London.

Parts

174
QtyValueFootprintReferences
40SK6806 - jSR_LED:LED_SK6805_PLCC4_2.4x2.7mm_P1.3mmD1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +24
27TestPointTestPoint:TestPoint_Pad_D1.0mmTP1, TP2, TP10, TP11, TP12, TP13, TP14, TP15, TP16, TP17, TP18, TP19, TP20, TP21, TP22, TP23 +11
1210KResistor_SMD:R_0402_1005MetricR1, R4, R6, R7, R9, R10, R12, R13, R14, R18, R19, R27
12ESD761SR_Package_SON:Texas_DPY0002A_0.6x1mm_P0.65mmD4, D5, D6, D7, D8, D42, D43, D44, D45, D46, D47, D48
11100nFCapacitor_SMD:C_0402_1005MetricC1, C4, C7, C8, C13, C22, C23, C24, C25, C27, C28
1010uFCapacitor_Tantalum_SMD:CP_EIA-3216-18_Kemet-AC2, C3, C5, C6, C16, C17, C18, C20, C21, C26
5TL3305AF260QGSR_Button:SW_SPST_TL3305ASW4, SW5, SW6, SW7, SW8
4BLM15PX221SN1DInductor_SMD:L_0402_1005MetricL1, L3, L4, L6
4M3MountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
30RResistor_SMD:R_0402_1005MetricR2, R3, R30
31MResistor_SMD:R_0402_1005MetricR8, R11, R22
347KResistor_SMD:R_0402_1005MetricR5, R32, R33
2180KResistor_SMD:R_0402_1005MetricR15, R17
21A/6VFuse:Fuse_0603_1608MetricF1, F2
22.2uHInductor_SMD:L_Bourns-SRN4018L2, L5
222RResistor_SMD:R_0402_1005MetricR25, R26
25K1Resistor_SMD:R_0402_1005MetricR23, R24
2FiducialFiducial:Fiducial_1mm_Mask2mmFID1, FID2
2JST_SHSR_Connectors:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalJ7, J8
2SW_PushButton_Switch_SMD:SW_SPST_B3U-1000PSW1, SW2
2TPS63000Package_SON:Texas_DRC0010J_ThermalViasU4, U10
110nCapacitor_SMD:C_0402_1005MetricC14
11M6Resistor_SMD:R_0402_1005MetricR16
11M8Resistor_SMD:R_0402_1005MetricR29
1220RResistor_SMD:R_0402_1005MetricR34
12u2Capacitor_SMD:C_0402_1005MetricC15
14K7Resistor_SMD:R_0402_1005MetricR28
1503398-1892SR_Connectors:503398-1892J4
152207-1060SR_Connectors:52207-1060J6
153261-0371Connector_Molex:Molex_PicoBlade_53261-0371_1x03-1MP_P1.25mm_HorizontalJ3
1BQ21080SR_Package_BGA:Texas_DSBGA-8-1.6mmx1mm_P0.4mmU1
1BQ27427SR_Package_BGA:Texas_DSBGA-9-1.6mmx1.6_P0.5mmU2
1BZT52C6V8LP-7SR_Package_DFN_QFN:X1-DFN1006-2D3
1Conn_01x02_PinConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_HorizontalJ5
1DMP3013SFVPackage_SON:Diodes_PowerDI3333-8Q3
1ESP32-S3-WROOM-1RF_Module:ESP32-S3-WROOM-1U3
1JST_SHSR_Connectors:JST_SH_BM05B-SRSS-TB_1x05-1MP_P1.00mm_VerticalJ2
1LOGOSR_Logos_Images:SRG***
1LOGOSR_Logos_Images:Imperial_4mmx36mmG***
1OPA1671IDBVRPackage_TO_SOT_SMD:TSOT-23-5U13
1SPV0142LR5HSR_Sensor_Audio:SPV0142LR5H-1U5
1TLV320ADC3101IRGERPackage_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.8x2.8mmU11
1USB4115-03-CSR_Connectors:USB_C_Receptacle_GCT_USB4115-03-CJ1

More from ryanstevensmith/locust_hardware

1

Similar boards

  • 6 layers50 × 50 mmVoyager logic, the printed circuit board in 3D

    Voyager logic

    joshajohnson/voyager-logic

    FX3 based logic analyser

    159 parts2
  • 12 layers95.9 × 90.2 mmCiaa acc, the printed circuit board in 3D

    Ciaa acc

    Alli-Ekundayo/scpt-rl

    SCPT-RL trains a cross-attention transformer policy to place PCB components sequentially on a discrete grid. Training has two phases:

    569 partsMIT
  • 2 layers61 × 35 mmEsp32-1pcb, the printed circuit board in 3D

    Esp32-1pcb

    shubhisgonnastealyourcode/FT-32-esp32-s3-dev-board-

    Custom ESP32-S3 Development Board with Header Pins for Display and RGB LED

    44 parts1
  • 4 layers95 × 24.7 mmBP1, the printed circuit board in 3D

    BP1

    EmpiricalEE/uUSB-FP

    The uUSB FP is a versatile panel for the Joulescope JS220 power analyser that enables power measurement of any USB device.

    10 parts1
  • 4 layers90 × 55 mmGshps, the printed circuit board in 3D

    Gshps

    CoolNamesAllTaken/geeps-hardware

    Pronounced Gee-Pee-Ess (hardware).

    111 parts
  • 4 layersVibamix, the printed circuit board in 3D

    Vibamix

    CoolNamesAllTaken/vibamix

    An interactive ePaper nametage for playing "will it blend" with arbitrary groups of people.

    78 parts
  • 4 layers203.8 × 115.3 mmPy dash pcb 7, the printed circuit board in 3D

    Py dash pcb 7

    JungleGim/PyDash_PCB

    The circuit board portion for PyDash

    120 parts

Questions

How big is the IC 001 - Low Cost Audio Sensor PCB?

It measures 115 × 107 mm and has 4 copper layers, 1.6 mm thick.

What parts does the IC 001 - Low Cost Audio Sensor use?

174 parts, built around the ESP32-S3-WROOM-1-N8, TLV320ADC3101IRGER, TPS63000DRC and BQ27427YZF. 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 IC 001 - Low Cost Audio Sensor KiCad files?

From the ryanstevensmith/locust_hardware repository on GitHub, at the commit this page was made from: the board is IC_001 - Low Cost Audio Sensor/working/IC_001 - Low Cost Audio Sensor.kicad_pcb and its schematic IC_001 - Low Cost Audio Sensor/working/IC_001 - Low Cost Audio Sensor.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the IC 001 - Low Cost Audio Sensor design in my own project?

Its repository publishes it under the CERN-OHL-P-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).