Skip to the content
2 layers197 × 249.7 mmNsec badge-2025-panel, the printed circuit board in 3D

Nsec badge-2025-panel

nsec/nsec-badge62

Software from the NorthSec badge

Size
197 × 249.7 mm
Copper layers
2
Thickness
1.6 mm
Parts
375
Nets
492
Pads
2,179
Tracks, vias
3,136, 404
Pours
44
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
3 Jul 2016
Updated
19 May 2026

Overview

Nsec badge-2025-panel is an open-source printed circuit board by nsec, from the nsec/nsec-badge repository on GitHub. It is a 2-layer board of 197 × 249.7 mm with 375 parts on 492 nets, routed with 3,136 tracks and 404 vias.

It is built around the AP2112K-3.3TRG1(MS), HS96L03W2C03 and IR968-8C, with the TPSMF05CT1G, TSOP34838 and TYPE-C-31-M-12 among its other parts. Its parts include 100 capacitors, 56 resistors, 28 ICs, 28 connectors and 16 diodes. It belongs with the lEDs and displays and radio and wireless boards and the ESP32 and RISC-V boards of this library.

Main components

12

README

README.md

NorthSec 2025 badge

Brought to you by the Team badge of NorthSec.

Overview


Hardware

The NorthSec 2025 badge is loosely based on the ESP32-C3 design with an ESP32-C3 microcontroller (ESP32-C3-WROOM-02-N4) which is used to drive several periphery devices:

The badge is powered through a USB-C port or through 3 AAA batteries.

If you wish to hack your badge or create a new one based on the hardware. All the information is available here.

Building the firmware

The firmware is based on the Espressif IoT Development Framework. The build system uses PlatformIO to easily manage the dependencies.

You can install it on Debian / Ubuntu in a python virtualenv with these commands:

bash
sudo apt install python3-virtualenv

virtualenv .venv
. .venv/bin/activate

pip install platformio

The installation procedure for your OS may differ a little, please consult the PlatformIO documentation if you have any difficulties.

Once the installation is complete you can build the firmware:

bash
# Conference firmware
pio run -e conference

# CTF firmware
pio run -e ctf

Flashing

Flash the firmware with this command:

bash
# Conference firmware
pio run -t upload -e conference

# CTF firmware
pio run -t upload -e ctf

If multiple badges are connected, you can select which badge will be flash with the --upload-port <port_name> option:

bash
# Conference firmware
pio run -t upload -e conference --upload-port <port_name>

To improve the upload speed, you can skip the build validation/process with the -t nobuild option:

bash
# Conference firmware
pio run -t upload -t nobuild -e conference

Debugging

To read the logging statements output on the USB serial interface, it is possible to use pio device monitor or idf.py's monitor command.

However, you can use your preferred terminal emulator by pointing it to the /dev/ttyACM0 device. The badge is configured to output at 115200 bauds, without parity, and with one stop bit per character.

Note that electrically resetting the board using the hardware switch will cause the pseudo-terminal device to disappear, making it hard to read the logs emitted during boot.

Pulsing the DTR signal (lowering it for 1 second) will cause the board to reset without affecting the pseudo-terminal device, allowing you to read early-boot messages. This is supported by most terminal emulators.

Credits

NorthSec CTF badge 2025 is brought to you by the teamwork of:

Special thanks to:

Parts

375
QtyValueFootprintReferences
720.1uFCapacitor_SMD:C_0603_1608MetricC10, C10, C10, C10, C11, C11, C11, C11, C12, C12, C12, C12, C13, C13, C13, C13 +56
72SK6812SIDE-A_C5378721footprints:LED-SMD_SK6812SIDE-A_C5378721RGB1, RGB1, RGB1, RGB1, RGB10, RGB10, RGB10, RGB10, RGB11, RGB11, RGB11, RGB11, RGB12, RGB12, RGB12, RGB12 +56
2010KResistor_SMD:R_0603_1608MetricR6, R6, R6, R6, R7, R7, R7, R7, R8, R8, R8, R8, R14, R14, R14, R14 +4
161uFCapacitor_SMD:C_0603_1608MetricC1, C1, C1, C1, C3, C3, C3, C3, C4, C4, C4, C4, C17, C17, C17, C17
165.1KResistor_SMD:R_0603_1608MetricR2, R2, R2, R2, R3, R3, R3, R3, R4, R4, R4, R4, R5, R5, R5, R5
16TS-1187A-B-A-Bfootprints:SW-SMD_4P-L5.1-W5.1-P3.70-LS6.5-TL_H1.5SW1, SW1, SW1, SW1, SW2, SW2, SW2, SW2, SW3, SW3, SW3, SW3, SW4, SW4, SW4, SW4
8100KResistor_SMD:R_0603_1608MetricR1, R1, R1, R1, R13, R13, R13, R13
810uFCapacitor_SMD:C_0805_2012MetricC2, C2, C2, C2, C18, C18, C18, C18
8Conn_01x06footprints:PinSocket_1x06_P2.54mm_VerticalJ6, J6, J6, J6, J7, J7, J7, J7
8FC-2012HRK-620Dfootprints:LED0805-R-RDLED1, LED1, LED1, LED1, LED2, LED2, LED2, LED2
8FiducialFiducialKiKit_FID_B_1, KiKit_FID_B_2, KiKit_FID_B_3, KiKit_FID_B_4, KiKit_FID_T_1, KiKit_FID_T_2, KiKit_FID_T_3, KiKit_FID_T_4
8LANYARD-HOLE-4mmfootprints:LANYARD-HOLE-4mmHOLE1, HOLE1, HOLE1, HOLE1, HOLE2, HOLE2, HOLE2, HOLE2
8MBR120LSFfootprints:SOD-123_L2.8-W1.8-LS3.7-RDD1, D1, D1, D1, D2, D2, D2, D2
8PM254-2-03-S-8_5footprints:HDR-SMD_6P-P2.54-V-F-R2-C3-LS7.0J1, J1, J1, J1, J2, J2, J2, J2
8SolderJumperJumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP1, JP1, JP1, JP1, JP2, JP2, JP2, JP2
40.1uFCapacitor_SMD:C_0805_2012MetricC19, C19, C19, C19
41KResistor_SMD:R_0603_1608MetricR12, R12, R12, R12
42479footprints:BAT_2479BT1, BT1, BT1, BT1
4470Resistor_SMD:R_0603_1608MetricR10, R10, R10, R10
456Resistor_SMD:R_0603_1608MetricR11, R11, R11, R11
4AP2112K-3_3TRG1footprints:SOT-25-5_L2.9-W1.6-P0.95-LS2.8-BLU6, U6, U6, U6
4Bus_PCI_32bit_Universalfootprints:BUS_PCIJ5, J5, J5, J5
4Conn_01x03_Pinfootprints:PinSocket_1x03_P2.54mm_VerticalJ4, J4, J4, J4
4Conn_01x10footprints:PinHeader_1x10_P2.54mm_VerticalJ3, J3, J3, J3
4ESP32-C3-WROOM-02-N4(4MB)footprints:BULETM-SMD_ESPRESSIF_ESP32-C3-WROOM-02-N4-4MBU1, U1, U1, U1
4Fuse_SmallFuse:Fuse_1206_3216Metric_Pad1.42x1.75mm_HandSolderF1, F1, F1, F1
4HS96L03W2C03footprints:OLED-TH_L38.0-W12.0_HS91L02W2C01U7, U7, U7, U7
4IR968-8Cfootprints:LED-TH_L2.9-W2.9-P2.54-FDU4, U4, U4, U4
4MMBT3904Package_TO_SOT_SMD:SOT-23Q1, Q1, Q1, Q1
4SSSS811101footprints:SW-SMD_SSSS811101KEY1, KEY1, KEY1, KEY1
4TPSMF05CT1Gfootprints:SOT-363_L2.0-W1.3-P0.65-LS2.1-BLU3, U3, U3, U3
4TSOP34838footprints:SENSOR-TH_TSOP34838U5, U5, U5, U5
4TYPE-C-31-M-12footprints:USB-C_SMD-TYPE-C-31-M-12U2, U2, U2, U2
3NPTHNPTHKiKit_TO_1, KiKit_TO_2, KiKit_TO_3

The 359 most common of 375 parts.

More from nsec/nsec-badge

9
  • 2 layers89 × 123.4 mmNsec badge-2025, the printed circuit board in 3D

    Nsec badge-2025

    nsec/nsec-badge

    Software from the NorthSec badge

    91 parts62
  • 2 layers47 × 14 mmSao Bandaid, the printed circuit board in 3D

    Sao Bandaid

    nsec/nsec-badge

    Software from the NorthSec badge

    32 parts62
  • 2 layers80 × 20.1 mmNsec ctf sao-2025, the printed circuit board in 3D

    Nsec ctf sao-2025

    nsec/nsec-badge

    Software from the NorthSec badge

    31 parts62
  • 2 layers53 × 38 mmSao Bomb, the printed circuit board in 3D

    Sao Bomb

    nsec/nsec-badge

    Software from the NorthSec badge

    18 parts62
  • 2 layers27.7 × 34.8 mmSao SlotMachine, the printed circuit board in 3D

    Sao SlotMachine

    nsec/nsec-badge

    Software from the NorthSec badge

    16 parts62
  • 2 layers27.7 × 34.8 mmSao SlotMachine v2, the printed circuit board in 3D

    Sao SlotMachine v2

    nsec/nsec-badge

    Software from the NorthSec badge

    8 parts62
  • 2 layers41 × 35.4 mmSao Diamond, the printed circuit board in 3D

    Sao Diamond

    nsec/nsec-badge

    Software from the NorthSec badge

    6 parts62

Similar boards

  • 2 layers50 × 23 mmUSBC 3.3v breadboard power supply, the printed circuit board in 3D

    USBC 3.3v breadboard power supply

    sukhjeetsekhon/KiCad-Projects

    A repository of KiCad projects, PCBs, and modules that I make for fun or utility.

    8 partsMIT
  • 2 layers70.5 × 64 mmEsp32, the printed circuit board in 3D

    Esp32

    ste2425/PSP-Bluetooth

    Formerly PSP-Consolizer, PSP-Bluetooth aims to add Bluetooth controller support to the PSP 1K/2K/3K.

    95 parts108MIT
  • 4 layers100 × 70 mmSEM, the printed circuit board in 3D

    SEM

    Serhio4522/SEM_hitachi-

    Digitization of a Hitachi scanning electron microscope (SEM) — hardware design, FPGA firmware, and analog frontend schematics.

    288 parts1
  • 2 layers61.5 × 55 mmPsycon wearable, the printed circuit board in 3D

    Psycon wearable

    CodeSakshamY/Half-life-HackClub

    custom pcb for my psycon wearable project. designed in easyeda.

    47 parts
  • 2 layers29.7 × 17 mmMyTinny PCB, the printed circuit board in 3D

    MyTinny PCB

    patriq128/MyTtiny

    My own development board based on the chip ATtiny3217.

    19 partsMIT
  • 2 layers65 × 30 mmInfra pHAT, the printed circuit board in 3D

    Infra pHAT

    AnaviTechnology/anavi-infrared

    ANAVI Infrared pHAT is an open source hardware Raspberry Pi pHAT (add-on board) for rapid prototyping of Internet of Things (IoT) powered by free and open source software. It features:

    26 parts22

Questions

How big is the Nsec badge-2025-panel PCB?

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

What parts does the Nsec badge-2025-panel use?

375 parts, built around the AP2112K-3.3TRG1(MS), HS96L03W2C03, IR968-8C and TPSMF05CT1G. 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 Nsec badge-2025-panel KiCad files?

From the nsec/nsec-badge repository on GitHub, at the commit this page was made from: the board is hw/2025/panel/nsec-badge-2025-panel.kicad_pcb and its schematic hw/2025/baseboard-with-esp32/nsec-badge-2025-baseboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Nsec badge-2025-panel design in my own project?

Its repository states no licence, so its author keeps all rights: ask nsec before reusing the design.