

Esp32-skimmer detector pro
ESP32 Based Wireless Skimmer Detector
- Size
- 84.2 × 49.8 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 67
- Nets
- 107
- Pads
- 356
- Tracks, vias
- 678, 104
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 22 Aug 2026
- Updated
- 22 Aug 2026
Overview
Esp32-skimmer detector pro is an open-source printed circuit board by planmarks, from the planmarks/Skimmer-Detector-PRO repository on GitHub. It is a 2-layer board of 84.2 × 49.8 mm with 67 parts on 107 nets, routed with 678 tracks and 104 vias.
It is built around the ESP32-C5-WROOM-1U, ESP32-WROOM-32E and FT231XS-R, with the AP7361C-33E, DW01A and FS8205A among its other parts. Its parts include 20 resistors, 15 capacitors, 10 ICs, 7 diodes and 7 switches. It belongs with the radio and wireless boards and the ESP32 and RISC-V boards of this library.
Main components
12ESP32-C5-WROOM-1U
SMD,21.2x18mmSMD,21.2x18mm WiFi Modules ROHSEspressif SystemsWiFi ModulesESP32-WROOM-32E
SMD,18x25.5mmSMD,18x25.5mm WiFi Modules ROHSEspressif SystemsWiFi ModulesFT231XS-R
SSOP-20-150mil-40℃~+85℃ 125uA 5V 8.4mA USB 2.0 USB to UART SSOP-20-150mil USB Converters ROHSFTDIUSB ConvertersAP7361C-33E
SOT-223-40℃~+85℃@(Ta) 1 1A 3.3V 340mV@(1A) 6V 75dB@(1kHz) 80uA Fixed Over Current Protection、Short Circuit Protection、Thermal shutdown、Enable control Positive SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSDiodes IncorporatedVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsDW01A
SOT-23-6L-40℃~+85℃ 1 2.5V 300mV~10V 3uA 4.3V Protection IC Support SOT-23-6L Battery Management ROHSPUOLOPBattery ManagementFS8205A
SOT-23-6-55℃~+150℃ 1.2V 1.5W 2 N-Channel 20V 31.5mΩ@2.5V 466pF 5.7nC@4.5V 58pF 65pF 6A SOT-23-6 MOSFETs ROHSTECH PUBLICMOSFETsMCP73833-FCI/MF
DFN-10-EP(3x3)-40℃~+85℃ 1 1A 3.75V~6V 4.2V 50uA Charging IC Support Support DFN-10-EP(3x3) Battery Management ROHSMicrochip TechnologyBattery ManagementTS3USB221ARSE
UQFN-10(1.5x2)-40℃~+85℃ 12ns 2.3V~3.6V 250ps 2:1 30ns 6pF 6Ω 900MHz USB UQFN-10(1.5x2) Analog Switches - Special Purpose ROHSTexas InstrumentsAnalog Switches - Special PurposeUSBLC6-2SC6
SOT-23-60.35pF、0.8pF 100nA 150W@8/20us 15V 2 5V 6A@8/20us 6V ESD SOT-23-6 ESD and Surge Protection (TVS/ESD) ROHSUMWESD And Surge Protection (TVS/ESD)S8050
SOT-23-55℃~+150℃ 1 NPN 100MHz 100nA 120 25V 300mW 500mA 5V 600mV NPN SOT-23 Bipolar (BJT) ROHShongjiachengBipolar (BJT)1N4148W
SOD-123150mA 1A 1V@50mA 1uA@75V 400mW 4ns 75V Independent SOD-123 Switching Diodes ROHSSTMicroelectronicsSwitching DiodesMMBT2222A
SOT-23-55℃~+150℃ 1 NPN 100 100nA 1V 300MHz 300mW 40V 600mA 6V NPN Standalone SOT-23 Bipolar (BJT) ROHShongjiachengBipolar (BJT)
README
README.mdHermes Skimmer Detector PRO
A pocket-sized, dual-radio detector for wireless ATM & card-skimmer modules.
Hermes PRO is the next-generation successor to Hermes v0.1a. Where the original used a single ESP32 to scan Bluetooth Classic only, PRO pairs two radios — an ESP32-C5 (Bluetooth LE 5 + dual-band Wi-Fi 6) and an ESP32-WROOM-32E (Bluetooth Classic / BR-EDR) — so it can flag the widest possible range of skimmer hardware, old and new, from a single handheld device.
Status: Hardware design (KiCad schematic complete and electrically verified; PCB layout in progress). See
hardware.mdfor the full BOM and design detail. License: MIT
Why two radios?
Card-skimmer modules communicate over whatever cheap wireless chip the builder used — and those span two incompatible Bluetooth worlds:
- Bluetooth Classic (BR/EDR) — used by the classic HC-05/HC-06-style serial modules. Critically, Classic exists only on the original ESP32 silicon. Every newer Espressif chip (C-, S-, H-series) is BLE-only and cannot see these devices.
- Bluetooth Low Energy (BLE) and Wi-Fi — used by newer AT-09 / HM-10 / JDY-style modules and modern skimmer designs.
A single-chip scanner is therefore always half-blind. Hermes PRO solves this by running both radios at once:
| Role | Module | Scans |
|---|---|---|
| Master | ESP32-C5-WROOM-1U | BLE 5 + dual-band Wi-Fi 6 |
| Slave | ESP32-WROOM-32E | Bluetooth Classic (BR/EDR) |
The WROOM runs a headless Bluetooth-Classic inquiry loop and streams results to the C5 over a 3.3 V UART. The C5 merges its own BLE/Wi-Fi findings with the Classic list, de-duplicates by MAC, and drives the display, LEDs, and buzzer. The result is full-spectrum coverage that neither chip could provide alone.
How it works
- Both radios scan continuously for nearby devices.
- Discovered devices are checked against a known-skimmer signature list (module names such as HC-05, HC-06, AT-09, HM-10/11, JDY-08/09/10/31, and ~20+ more).
- The OLED shows a live safe vs. suspicious count; matches trigger a prominent on-screen alert plus LED and buzzer warnings.
- The C5's Wi-Fi 6 radio is reserved for a future companion-app gateway for logging and richer analysis.
Hardware overview
Full details, pinouts, and BOM are in hardware.md. Highlights:
| Subsystem | Part | Notes |
|---|---|---|
| Master MCU | ESP32-C5-WROOM-1U-N8R8 | BLE 5 + Wi-Fi 6; external u.FL antenna |
| Slave MCU | ESP32-WROOM-32E | Bluetooth Classic scanner |
| Display | 0.96" SSD1306 OLED (I²C, 0x3C) | Live scan results |
| Charger | MCP73833 | Single-cell Li-ion, 4.20 V, dual status LEDs |
| Regulator | AP7361C-33E | 3.3 V / 1 A LDO |
| Battery protection | DW01A + FS8205A | Over-charge / discharge / current |
| USB bridge | FT231XS-R | Flashes the WROOM (no native USB) |
| USB mux | TS3USB221A | One USB-C port flashes both MCUs |
| ESD | USBLC6-2SC6 | USB D± protection |
| Power | LiPo 3.7 V (250–500 mAh) + USB-C | Battery-powered, USB-charged |
Indicators: four status LEDs (blue = power/scan, yellow = suspicious, red = skimmer, green = clear), two charge LEDs, and an active buzzer.
One USB-C port, two targets: a USB 2.0 mux with a slide switch (SW7) steers the single data pair to either the C5's native USB or the FT231XS→WROOM path, so both processors flash and the battery charges over one connector.
Repository contents
esp32-skimmer-detector-pro/
├── esp32-skimmer-detector-pro.kicad_pro # KiCad project
├── esp32-skimmer-detector-pro.kicad_sch # Schematic
├── esp32-skimmer-detector-pro.kicad_pcb # PCB layout (in progress)
├── esp32-skimmer-detector-pro.net # Exported netlist
├── esp32-skimmer-detector-pro.stl # Enclosure model
├── hardware.md # BOM + full hardware reference
├── HANDOFF.md # Design handoff notes
└── Datasheets/ # Component datasheetsFirmware (in development)
The firmware is split across the two MCUs:
- ESP32-WROOM-32E (slave): runs the Bluetooth-Classic
discoverAsyncloop; emits one JSON line per scan onSerial2, tagging devicesradioSource:"BT_CLASSIC". - ESP32-C5 (master):
Wire.begin(4,5)for the OLED;Serial1(RX 24 / TX 23) for the inter-processor link; performs BLE/Wi-Fi scans, merges both device lists, and drives the UI.
See the GPIO/firmware map in hardware.md.
Flashing
Both MCUs share the single USB-C port via the mux:
- Set
SW7to select the target (C5 or WROOM). - Flash over USB — the C5 uses its native USB-Serial-JTAG; the WROOM uses the FT231XS bridge with automatic boot/reset.
- A battery must be installed (logic is powered from the regulator, not USB).
Roadmap
- Dual-radio hardware architecture (BLE/Wi-Fi + Bluetooth Classic)
- PCB layout, fabrication, and bring-up
- Merged BLE + Classic firmware with de-duplication
- Expanded / updatable skimmer signature database
- RSSI-based proximity ("getting warmer") guidance
- Wi-Fi companion app for logging and analysis
Responsible use
Hermes is a defensive tool intended to help people check payment terminals and ATMs for tampering, and to support security research and education. It only passively observes wireless device advertisements — it does not connect to, interfere with, or interact with any device.
A positive result indicates a nearby module matching a known skimmer signature; it is not proof of a crime (the same modules appear in countless legitimate gadgets). If you suspect a real skimmer, do not touch or remove it — report it to the establishment and local authorities. Use this device only where you are legally permitted to operate radio scanning equipment.
License
Released under the MIT License, consistent with the original Hermes project.
Hermes PRO — because a skimmer you can't see is one you can't avoid.
Parts
67| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 0.1uF | Capacitor_SMD:C_0805_2012Metric | C2, C5, C7, C9, C11, C13, C14, C15 |
| 7 | 10K | Resistor_SMD:R_0805_2012Metric | R1, R8, R11, R12, R18, R19, R20 |
| 6 | 10uF | Capacitor_SMD:C_0805_2012Metric | C1, C4, C6, C8, C10, C12 |
| 3 | 1K | Resistor_SMD:R_0805_2012Metric | R2, R3, R15 |
| 3 | 330ohm | Resistor_SMD:R_0805_2012Metric | R4, R10, R17 |
| 2 | 4.7K | Resistor_SMD:R_0805_2012Metric | R6, R7 |
| 2 | 5.1K | Resistor_SMD:R_0805_2012Metric | R13, R14 |
| 2 | Green LED | LED_SMD:LED_0805_2012Metric | D2, D6 |
| 2 | Red LED | LED_SMD:LED_0805_2012Metric | D1, D5 |
| 2 | S8050 | SS8050:TRANS_SS8050-G | Q2, Q3 |
| 1 | 100ohm | Resistor_SMD:R_0805_2012Metric | R16 |
| 1 | 1N4148W | Diode_SMD:D_SOD-123 | D7 |
| 1 | 22uF | Capacitor_SMD:C_0805_2012Metric | C3 |
| 1 | 2K | Resistor_SMD:R_0805_2012Metric | R9 |
| 1 | 4K | Resistor_SMD:R_0805_2012Metric | R5 |
| 1 | AP7361C-33E | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U1 |
| 1 | AST0827MW‑03TRQ | AST0827MW‑03TRQ:XDCR_CMT-8503-36-SMT-TR | BZ1 |
| 1 | Battery | Connector_PinHeader_2.00mm:PinHeader_1x02_P2.00mm_Vertical | BT1 |
| 1 | Blue LED | LED_SMD:LED_0805_2012Metric | D3 |
| 1 | C5 BOOT | Button_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2 | SW5 |
| 1 | C5 RESET | Button_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2 | SW6 |
| 1 | DM-OLED096-636 | Display:ER_OLEDM0.91_1x-I2C | U3 |
| 1 | DW01A | Package_TO_SOT_SMD:SOT-23-6 | U7 |
| 1 | ESP32-C5-WROOM-1U | ESP32-C5-Wroom-1U:XCVR_ESP32-C5-WROOM-1U-N8R8 | U10 |
| 1 | ESP32-WROOM-32E | RF_Module:ESP32-WROOM-32E | U5 |
| 1 | FS8205A | FS8205A:SOP65P640X120-8N | U6 |
| 1 | FT231XS-R | FT231XS-R:SOP63P599X175-20N | U9 |
| 1 | MCP73833-FCI/MF | MCP73833-FCIMF:DFN10_3x3MC_MCH | U2 |
| 1 | MMBT2222A | MMBT2222A:SOT95P240X120-3N | Q1 |
| 1 | On-Off | Button_Switch_THT:SW_Slide_SPDT_Angled_CK_OS102011MA1Q | SW3 |
| 1 | Screen switch (GPIO9) | Button_Switch_SMD:SW_SPST_TL3342 | SW1 |
| 1 | TS3USB221A | TS3USB221A:QFN-10-RSE | U11 |
| 1 | USB target select (C5 / WROOM) | Button_Switch_THT:SW_Slide_SPDT_Straight_CK_OS102011MS2Q | SW7 |
| 1 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U8 |
| 1 | USB_C_Receptacle_USB2.0_16P | Connector_USB:USB_C_Receptacle_HCTL_HC-TYPE-C-16P-01A | J2 |
| 1 | WROOM BOOT | Button_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2 | SW4 |
| 1 | WROOM RESET | Button_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2 | SW2 |
| 1 | Yellow LED | LED_SMD:LED_0805_2012Metric | D4 |
The 65 most common of 67 parts.
Questions
How big is the Esp32-skimmer detector pro PCB?
It measures 84.2 × 49.8 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Esp32-skimmer detector pro use?
67 parts, built around the ESP32-C5-WROOM-1U, ESP32-WROOM-32E, FT231XS-R and AP7361C-33E. 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 Esp32-skimmer detector pro KiCad files?
From the planmarks/Skimmer-Detector-PRO repository on GitHub, at the commit this page was made from: the board is Hardware/esp32-skimmer-detector-pro.kicad_pcb and its schematic Hardware/esp32-skimmer-detector-pro.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Esp32-skimmer detector pro design in my own project?
Its repository states no licence, so its author keeps all rights: ask planmarks before reusing the design.
Similar boards
- 2 layers61.3 × 63.3 mm

- 2 layers102.6 × 102.6 mm

- 2 layers90 × 60 mm

PCB MAQUEEN V1
vmfachini/Lumibot
Desenvolvimento de um Hardware Livre, com uso de energia limpa, baseado no micro:bit para criar robôs móveis acessíveis, promovendo ensino de robótica, pensamento computacional e sustentabilidade no Brasil.
44 partsMIT - 2 layers100 × 103.5 mm

- 4 layers85 × 56 mm

- 4 layers50 × 93 mm

- 4 layers63.5 × 57.1 mm

- 2 layers115 × 65 mm

Openmotorbridge radar submcu
schmidtmt/openmotorbridge
The comprehensive technical specification is split into 18 logically organized chapters:
59 parts