Skip to the content
PCBKitNew board
6 layers153.3 × 53 mmSCAN, the printed circuit board in 3D

Welcome to the SCAN repository! Below, you will find all the necessary information, from hardware design to software documentation.

Size
153.3 × 53 mm
Copper layers
6
Thickness
1.6 mm
Parts
186
Nets
141
Pads
636
Tracks, vias
1,192, 706
Pours
54
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
10 Mar 2025
Updated
13 Mar 2025

Overview

SCAN is an open-source printed circuit board by jjsprandel, from the jjsprandel/SCAN_PCB repository on GitHub. It is a 6-layer board of 153.3 × 53 mm with 186 parts on 141 nets, routed with 1,192 tracks and 706 vias.

It is built around the ESP32-C6-WROOM-1-N8, PCF8574T and BQ25798RQMR, with the CYPD3177-24LQXQT, ESD-122-G-04 and CSD17581Q3A among its other parts. Its parts include 64 capacitors, 62 resistors, 12 diodes, 9 transistors and 6 ICs. It belongs with the ESP32 and RISC-V boards of this library.

Main components

12

README

README.md

Project Logo

Welcome to the SCAN repository! Below, you will find all the necessary information, from hardware design to software documentation.


GitHub Workflows Status 🔧

Here are the current statuses of our GitHub workflows:

Workflow NameStatus
CI - BuildBuild Status
Docker - Test BuildDeployment Status
  • CI - Build: Ensures the project builds successfully.
  • CI - Tests: Runs all unit and integration tests to ensure everything is working as expected.
  • Docker - Test Build: Attempts Docker Build upon changes to the Dockerfile.

Table of Contents 📚


💡 Overview

SCAN is a low-cost, IoT-driven kiosk system designed to provide real-time analytics based on check-in and check-out information. By integrating NFC-based authentication, real-time data processing, and a user-friendly interface, SCAN provides users with a near-effortless check-in experience and provides facilities with actionable insights for improving operations. SCAN is able to track attendance and provide detailed analytics on occupancy trends, peak usage hours, and visit durations. These insights are accessible to administrator and facility managers via SCAN’s web application, which can provide them with the necessary statistics to allocate resources efficiently, optimize staffing, and improve user experiences.


🔧 Hardware Design

📡 Schematic

Below is the schematic of the hardware design:

Schematic

Key Features:

  • Feature 1
  • Feature 2
  • Feature 3

Additional hardware files can be found in the hardware directory.

🔌 PCB Design

Here's the PCB design layout:

PCB

Important Notes:

  • Note about the PCB.
  • Power considerations.
  • Any important design choices.

💻 Software

💾 Firmware Overview

The firmware is designed to work with the hardware for controlling the device. You can find the code here.

Key Libraries Used:

  • Library 1
  • Library 2
📦 Installation Guide

Follow these steps to install the firmware:

  1. Step 1
  2. Step 2
  3. Step 3

Detailed instructions are available in the installation guide.


🔨 Build Instructions

🛠️ Build Setup

To build the project, follow these steps:

  1. Clone the repository:
    bash
    git clone https://github.com/jjsprandel/SCAN.git
  2. Connect your ESP32 to your computer using USB-C. The Docker container is designed to automatically recognize the device and use port 4000 to communicate to the ESP32 for flashing.
  3. Reopen Visual Studio Code in Container. This step requires having the Docker VS Code extension installed on your host machine.
  4. Within the container, on first run, configure the ESP-IDF extension from the list of commands that come with the ESP-IDF extension. 4a. Select "Use existing setup." 4b. The extension should automatically find the right tool paths and folders. Select the configuration option with the auto-filled paths.
  5. Compile the firmware:
    bash
    idf.py build
    5a. Alternatively, click the wrench button at the bottom of VS Code to build.
  6. Flash the firmware:
    bash
    idf.py --port 'rfc2217://host.docker.internal:4000?ign_set_control' flash
    6a. Alternatively, click the lightning button at the bottom of VS Code to flash.

Tips:


📑 Documentation

📝 API Documentation
📚 Additional Resources
  • Project Wiki: Explore the project wiki for more in-depth articles.
  • User Manual: Comprehensive user guide for operation.

🔌 Dependencies

This project has the following dependencies that need to be installed:

Hardware Dependencies:

Software Dependencies:

  • USB Drivers: For proper communication with the hardware, ensure that the appropriate USB drivers are installed.

  • Docker Desktop: Required to run the ESP-IDF containerized environment.

Development Tools:


⚙️ License

SCAN © 2025 is licensed under Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-nd/4.0/ or see the LICENSE file.

Parts

186
QtyValueFootprintReferences
1410uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC7, C8, C9, C23, C24, C26, C27, C29, C30, C32, C34, C35, C36, C37
110.1uCapacitor_SMD:C_0402_1005MetricC2, C10, C11, C14, C20, C21, C22, C43, C44, C53, C54
90Resistor_SMD:R_0805_2012MetricR10, R11, R12, R19, R26, R28, R29, R52, R53
810kResistor_SMD:R_0805_2012MetricR7, R25, R27, R54, R58, R59, R60, R61
6REDSCAN_footprints:TP_5010TP1, TP2, TP3, TP4, TP5, TP6
50.01Resistor_SMD:R_2010_5025MetricR5, R6, R21, R22, R46
55kResistor_SMD:R_0603_1608MetricR31, R33, R35, R36, R37
4CSD17581Q3ASCAN_footprints:TRANS_CSD17581Q3AQ1, Q2, Q3, Q4
4MountingHole_PadMountingHole:MountingHole_3.2mm_M3_ISO7380_PadH1, H2, H3, H4
30.1uCapacitor_SMD:C_0603_1608MetricC57, C59, C64
3100kResistor_SMD:R_0402_1005MetricR8, R9, R18
310uCapacitor_SMD:C_0805_2012MetricC1, C6, C56
310uCapacitor_SMD:C_0603_1608MetricC25, C28, C33
312VDiode_SMD:D_SOD-523D1, D2, D7
31kResistor_SMD:R_0603_1608MetricR32, R38, R48
31kResistor_SMD:R_0402_1005MetricR41, R43, R51
31uCapacitor_SMD:C_0805_2012MetricC4, C5, C62
31uCapacitor_SMD:C_0402_1005MetricC3, C50, C51
333uCapacitor_Tantalum_SMD:CP_EIA-7343-31_Kemet-DC38, C39, C40
34.7uCapacitor_SMD:C_0603_1608MetricC17, C52, C55
340VDiode_SMD:D_SOD-523D3, D4, D6
3WS2812BLED_SMD:LED_WS2812B_PLCC4_5.0x5.0mm_P3.2mmD11, D12, D13
20Resistor_SMD:R_0603_1608MetricR17, R62
20.01uCapacitor_SMD:C_0402_1005MetricC15, C16
210kResistor_SMD:R_0402_1005MetricR4, R39
21nFCapacitor_SMD:C_0402_1005MetricC12, C13
21uCapacitor_SMD:C_0603_1608MetricC42, C45
22.2kResistor_SMD:R_0805_2012MetricR2, R3
222uCapacitor_SMD:C_0805_2012MetricC61, C63
2294Resistor_SMD:R_0603_1608MetricR13, R14
22kResistor_SMD:R_0805_2012MetricR44, R45
2390pCapacitor_SMD:C_0603_1608MetricC46, C47
247nCapacitor_SMD:C_0402_1005MetricC18, C19
249.9kResistor_SMD:R_0402_1005MetricR30, R42
2BLACKSCAN_footprints:TP_5011TP8, TP9
10Resistor_SMD:R_0402_1005MetricR40
11.0uSCAN_footprints:SPM6530L1
1100Resistor_SMD:R_0603_1608MetricR20
1100kResistor_SMD:R_0603_1608MetricR55
1100kResistor_SMD:R_0805_2012MetricR47
1100nCapacitor_SMD:C_0402_1005MetricC49
110kSCAN_footprints:103AT2RT1
118kResistor_SMD:R_0603_1608MetricR15
118pCapacitor_SMD:C_0603_1608MetricC60
11N4148WDiode_SMD:D_SOD-123D10
11nCapacitor_SMD:C_0402_1005MetricC31
12.2kResistor_SMD:R_0402_1005MetricR16
12.2uCapacitor_SMD:C_0805_2012MetricC58
12.4kResistor_SMD:R_0603_1608MetricR34
122.1kResistor_SMD:R_0402_1005MetricR50
1220kResistor_SMD:R_0603_1608MetricR56
13.3kResistor_SMD:R_0603_1608MetricR1
13.3uCapacitor_SMD:C_1210_3225MetricC48
130.1kResistor_SMD:R_0402_1005MetricR24
130kResistor_SMD:R_0603_1608MetricR57
14.7uSCAN_footprints:WE-LHMI_7030_705048L2
147.5kResistor_SMD:R_0402_1005MetricR49
147nFCapacitor_SMD:C_0402_1005MetricC41
15.23kResistor_SMD:R_0402_1005MetricR23
1BC847BDW1Package_TO_SOT_SMD:SOT-363_SC-70-6Q6
1BOOTSCAN_footprints:SW_SPST_PTS647_Sx38SW2
1BQ25798RQMRSCAN_footprints:IC_BQ25798RQMRU2
1BSL308PESCAN_footprints:PG-TSOP6-6-4_INFQ8
1Batt_ConnectorSCAN_footprints:TE_282856-2J2
1BuzzerBuzzer_Beeper:Buzzer_12x9.5RM7.6BZ1
1CP2102N-A02-xQFN28Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.35x3.35mmU4
1CSD17575Q3SCAN_footprints:TRANS_CSD17575Q3Q5
1CYPD3177-24LQXQTSCAN_footprints:QFN50P400X400X60-25N-DU3
1Conn_01x10SCAN_footprints:CONN_SD-43650-001_10_MOLJ4
1ESD122SCAN_footprints:DMY0003AU8
1ESP32-C6-WROOM-1-N8SCAN_footprints:ESP32-C6-WROOM-1-N8U1
1GPIO_BREAKOUTConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_HorizontalJ9
1GREENLED_SMD:LED_0603_1608MetricD5
1IRF9358TRPBFSCAN_footprints:SO8_IRF9358TRPBF_INFQ7
1KeypadConnector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_HorizontalJ8
1NTR4503NT1GSCAN_footprints:SOT23_318-08_ONSQ9
1NZH10C-115SCAN_footprints:SODFL3516X120ND8
1NetTie_2SCAN_footprints:custom_net_tieNT1
1PCF8574SCAN_footprints:DIP794W45P254L1969H508Q16U7
1PIR_CONNECTORConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_HorizontalJ5

The 176 most common of 186 parts.

Questions

How big is the SCAN PCB?

It measures 153.3 × 53 mm and has 6 copper layers, 1.6 mm thick.

What parts does the SCAN use?

186 parts, built around the ESP32-C6-WROOM-1-N8, PCF8574T, BQ25798RQMR and CYPD3177-24LQXQT. 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 SCAN KiCad files?

From the jjsprandel/SCAN_PCB repository on GitHub, at the commit this page was made from: the board is hardware_design/kicad_project/SCAN.kicad_pcb and its schematic hardware_design/PERIPHERALS_PCB/NFC.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the SCAN design in my own project?

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

More from jjsprandel/SCAN_PCB

1
  • 2 layers100 × 70 mmSCAN mainboard, the printed circuit board in 3D

    SCAN mainboard

    jjsprandel/SCAN_PCB

    Welcome to the SCAN repository! Below, you will find all the necessary information, from hardware design to software documentation.

    58 parts1

Similar boards

  • 2 layers72.2 × 45.2 mmBettery, the printed circuit board in 3D

    Bettery

    nkulis/bettery

    86 partsMIT
  • 4 layers105 × 95 mmCarrier, the printed circuit board in 3D

    Carrier

    mp911de/airgrep

    A portable ADS-B / FLARM receiver

    220 parts
  • 2 layers67.8 × 62.5 mmUSBCPowerPCB, the printed circuit board in 3D

    USBCPowerPCB

    lhr-solar/USBCPowerPCB

    USB Type-C to 12V and 5V

    106 parts
  • 2 layers220 × 120 mmHot Plate, the printed circuit board in 3D

    Hot Plate

    sergioibarra98/Hot-Plate

    105 partsMIT
  • 4 layers74.6 × 102.1 mmFPGA DevBoard, the printed circuit board in 3D

    FPGA DevBoard

    Benny-Chippers/Enchanted_Rocks

    The dev board PCB for the MacroController project

    68 partsMIT
  • 4 layers96.4 × 66.4 mmButton box, the printed circuit board in 3D

    Button box

    robin7331/eufy-remote-control

    This repository contains both the software and hardware files for the Eufy Make Remote Control Button Box project.

    30 parts7