Table of Contents
Device Overview
The SGP PHANTOM HackerOS is a compact, touchscreen-based cybersecurity multi-tool built on the ESP32-S3 microcontroller. It is designed for security researchers, penetration testers, and enthusiasts.
The device runs HackerOS v3, a custom firmware with a hacker-themed graphical interface offering dozens of tools organized in a scrollable main menu.
WiFi Tools
Scan, deauth, beacon spam, packet sniffing, captive portal phishing, net stress testing
Bluetooth BLE
Scanner, spoofer, distance estimator, BLE destroyer, wireless keyboard bridge
RFID & NFC
Read, write and clone 13.56 MHz MIFARE and NFC cards and tags
BME680 Sensor
Temperature, humidity, pressure, altitude, gas/VOC, smoke detection
USB HID
Keyboard/mouse emulation via OTG, Bad USB payloads, PIN brute-force
Games
Flappy Bird, Pong, Snake, Tetris, Space Invaders, Dice — all on the touchscreen
Hardware Specifications
| Component | Detail |
|---|---|
| MCU | ESP32-S3 — dual-core 240 MHz, Wi-Fi 802.11 b/g/n + BLE 5.0 |
| Board | Waveshare ESP32-S3-Touch-LCD-1.69 |
| Display | 1.69" ST7789 LCD · 240×280 px · SPI interface |
| Touchscreen | CST816T capacitive touch controller · I²C |
| IMU | QMI8658 — 3-axis accelerometer + 3-axis gyroscope · I²C |
| Environmental Sensor I²C | Bosch BME680 — temperature, humidity, pressure, altitude, gas/VOC, smoke |
| RFID / NFC SPI | MFRC522 module — 13.56 MHz MIFARE Classic, Ultralight, NTAG NFC tags |
| Buzzer | Passive piezo · GPIO 42 |
| Battery | Rechargeable LiPo · ADC monitoring on GPIO 1 |
| Power Button | GPIO 40 (SYS_OUT) |
| USB | Native USB-OTG (ESP32-S3) — HID keyboard, mouse, serial |
| Flash | 8 MB (default) / PSRAM: OPI |
🛠️ Stock Firmware = Demo Only
It is provided so you can see the hardware working out of the box and understand what the device is capable of. It is not intended to be the final software you use.
The SGP PHANTOM is a fully open, programmable ESP32-S3 development board with a touchscreen, sensors, and connectivity built in. The HackerOS firmware is just one example of what it can run.
🎯 This device is designed for you to build your own code
Write your own firmware
Use Arduino IDE, ESP-IDF, MicroPython or any ESP32-S3 compatible framework to build your own application from scratch.
Modify the stock code
Take HackerOS as a base and add, remove or change any functionality. All source code is available in the Google Drive folder linked at the top of this page.
Flash any .ino project
Any standard ESP32-S3 Arduino sketch can be uploaded to this device. Use it as a general-purpose embedded platform for any project.
Community & examples
Ready-to-use example sketches (RFID, WiFi, BLE, BME680, display, games, USB HID) are all available in the shared Google Drive folder.
HackerOS_v3.ino from the Google Drive source folder.
What the stock firmware gives you
| Included in demo firmware | Purpose |
|---|---|
| Full working menu with all apps | Shows the display and touch system working |
| RFID cloner & reader | Demonstrates the MFRC522 module integration |
| BME680 gas/temperature readings | Demonstrates connected sensor data |
| WiFi & BLE tools | Demonstrates the ESP32-S3 radio capabilities |
| USB HID keyboard & mouse | Demonstrates OTG USB emulation |
| 6 games + watch faces | Demonstrates animation and touch input |
Apps & Features
4.1 — WiFi Tools
📡 MAC Scanner (WiFi Scan)
Scans all nearby WiFi networks and displays SSID, BSSID (MAC address), RSSI signal strength, and channel. Runs an async scan so the display stays responsive.
📡 Deauth Target
Sends 802.11 deauthentication frames to disconnect devices from a selected access point.
-
Device scans for nearby networks
-
Tap a target network from the list
-
Attack runs continuously — tap the green header to stop
📡 Beacon Spam
Floods the WiFi environment with hundreds of fake network names (SSIDs). Nearby phones and laptops will see their WiFi scanner fill up with ghost networks.
📡 Probe Sniffer
Passively listens for 802.11 probe request frames. Captures the MAC address and the saved SSID name that each nearby device is searching for. Tap CLEAR LOG to reset.
📡 Packet Monitor
Puts the WiFi adapter in promiscuous mode and counts raw packets by type (beacons, deauths, data). Displays a live packet rate graph.
📡 WiFi Recon (Channel Hopper)
Automatically sweeps all 13 WiFi channels while collecting AP information — essentially a full-band reconnaissance sweep.
📡 Net Stresser
Floods a selected WiFi target with authentication and/or association request packets to stress-test router hardware.
| Mode | Description |
|---|---|
AUTH |
Floods with authentication request frames only |
ASSOC |
Floods with association request frames only |
CHAOS |
Both AUTH + ASSOC simultaneously — maximum stress |
Tap FIRE to start. Packet count is shown in real-time. Tap STOP to end.
🎣 Free WiFi — Captive Portal Phishing
Creates an open hotspot named FreeWiFi_Movistar and serves a fake carrier login page. Any
credentials entered by connecting users are captured and stored in the device.
| Action | How |
|---|---|
| Activate | Select from the main menu |
| View captured credentials | Connect to the hotspot, open browser, enter phone 12345678 and password
SGPcard
|
| Stop | Tap STOP SERVER on screen |
4.2 — Bluetooth (BLE) Tools
BLE Hunter
Passively scans for nearby BLE devices. Displays device name, MAC address, and RSSI signal strength in real-time.
BLE Distance Estimator
Estimates physical distance to a BLE device using RSSI. Useful for locating hidden transmitters or tracking signal sources.
BLE Spoof
Broadcasts fake BLE advertisements with a custom device name and UUID. Your device appears as a fake Bluetooth peripheral to nearby scanners.
BLE Destroyer / Goldeneye Jam
Sends a high volume of BLE advertising packets to flood nearby device scanner logs.
Apple Watch Spoof
Broadcasts BLE advertisements mimicking an Apple Watch, triggering proximity popups on nearby iPhones.
BLE Ultimate
Advanced multi-mode BLE attack and analysis tool combining multiple BLE operations.
4.3 — RFID & NFC Multitool EXTERNAL MODULE
The RFID & NFC tool supports 13.56 MHz technology — the global standard for contactless access cards, hotel keys, transit cards, payment cards, and NFC stickers.
Compatible Cards & Tags
| Type | Common Use |
|---|---|
| MIFARE Classic 1K / 4K | Access control, building entry, hotel keys |
| MIFARE Ultralight | Transit tickets, event passes |
| NTAG213 / 215 / 216 | NFC stickers, business cards, smart posters |
| ISO/IEC 14443 Type A | Any standard contactless card |
App Buttons
| Button | Action |
|---|---|
READ UID |
Reads and displays the card's unique identifier (UID) |
READ TXT |
Reads text stored in block 4 of the card |
WRITE TEXT |
Writes a text string to block 4 of the card |
READ CLONE |
Dumps all 64 sectors of the card into device RAM |
PASTE CLONE |
Writes the RAM dump onto a blank writable card |
EMULATE / SAVE |
Opens memory management sub-menu |
How to Clone a Card — Step by Step
-
Open RFID Cloner from the Main Menu
-
Tap READ CLONE — log shows
> MODE: READ CLONE -
Hold the source card near the RFID antenna for ~1 second
-
Log shows
[*] COPIED TO RAM!with a success beep ✅ -
(Optional) Tap EMULATE/SAVE → SAVE TO MEM to persist for later
-
Place a blank writable card near the antenna
-
Tap PASTE CLONE — log shows
[*] Injecting...then[*] DONE!✅
Log Viewer Controls
| Gesture | Action |
|---|---|
| Double tap | Expand/collapse full-screen log |
| Swipe up/down | Scroll through log history |
| Swipe left/right | Return to button view |
4.4 — USB HID Tools
⌨️ Bad USB — Payload Injector
Emulates a USB keyboard and automatically executes pre-programmed keystroke sequences on the connected host. Used for HID injection testing and security awareness demos.
⌨️ OTG BruteForce — PIN Cracker
Automatically tries all numeric PINs from 0000 to 9999 by typing them as a USB
keyboard with Enter after each attempt.
| Control | Description |
|---|---|
START / STOP |
Begin or pause the attack |
TURBO — 30ms delay |
Fastest. May fail on devices with lockout |
NORMAL — 150ms delay |
Recommended for most devices |
SLOW — 500ms delay |
Most reliable on devices with cooldown timers |
RESET |
Restart from PIN 0000 |
FMT:0000 / FMT:NUM |
Toggle zero-padding format |
The display shows the current PIN in large digits, a progress bar, percentage complete, speed (PINs/sec) and estimated time remaining (ETA).
🖱️ USB Mouse
Emulates a USB HID mouse via OTG, allowing you to control cursor movement on any connected device.
4.5 — Remote Control & BLE Bridge
🌐 Remote Control — Web Interface
Creates a WiFi Access Point and hosts a browser-based control panel. Connect from any phone or laptop to control the device remotely.
🌐 SGP Wired — Advanced Dashboard
Hosts a full-featured web dashboard over WiFi for remote access to multiple device features simultaneously.
🔵 BLE Bridge — Wireless Bluetooth Keyboard
Turns HackerOS into a wireless Bluetooth keyboard that can be controlled from any phone browser on the same WiFi network.
-
Launch BLE Bridge from the menu
-
Connect your phone/laptop to WiFi: SSID
HackerOS-BLE· Passwordhacker123 -
Open a browser and go to
192.168.4.1 -
On the target PC, pair via Bluetooth to
HackerOS Keyboard -
Use the web page to type text or send special keys (arrows, Win, Enter)
-
Tap EXIT BRIDGE on device or tap header to stop
4.6 — Watch Faces
Select Watch Faces from the Main Menu to access 10 different clock designs, including analog, digital, and hybrid styles. Time is tracked using the device's uptime timer.
Tap the screen to cycle between watch face designs.
4.7 — Games (Arcade Ops)
Select Arcade Ops from the Main Menu to open the games sub-menu. All games are fully playable on the touchscreen.
| Game | How to Play |
|---|---|
| 🐦 Flappy Drone | Tap to flap — avoid pipes. Touch restarts after crash |
| 🏓 Pong | Touch to move your paddle (right side). First to 5 wins |
| 🐍 Snake | Tap screen quadrants to change direction. Eat red apples to grow |
| 🟦 Tetris | Bottom corners = move left/right. Center tap = rotate piece |
| 👾 Space Invaders | Bottom L/R = move. Tap upper area to shoot |
| 🎲 Digital Dice | Tap anywhere to roll a random 1–6 |
4.8 — BME680 Environmental Sensor BUILT-IN
The Bosch BME680 is a precision multi-parameter environmental sensor. It gives HackerOS the ability to monitor air quality and environmental conditions in real-time.
How the Gas / Smoke Sensor Works
The BME680 heats a metal-oxide element to ~320 °C and measures how its electrical resistance changes when exposed to reducing gases. A high resistance = clean air. A low resistance = smoke, VOCs, alcohol, or chemical fumes present.
Apps that use the BME680
| App | What it shows |
|---|---|
Gas Monitor |
Live gas resistance, VOC index, and air quality status |
Altimeter |
Altitude above sea level calculated from barometric pressure |
Q Labs |
All raw sensor values: temperature, humidity, pressure, gas resistance |
4.9 — Utilities & Other Apps
| App | Description |
|---|---|
| 📷 Camera Detector | Detects hidden surveillance cameras via RF signature scanning |
| 📐 Spirit Level | Digital bubble level using the QMI8658 accelerometer |
| 🌊 Gravity Physics | Tilt the device to move simulated particles under gravity |
| 🖥️ Matrix Rain | Full-screen falling green code animation |
| 💡 Mood Light | Cycling color display for ambient effects |
| ⏱️ Chronos | Precision stopwatch / timer |
| 🔬 Q Labs | Advanced sensor lab — live BME680 readings and experiments |
| ☢️ Biohazard | Animated biohazard alert display |
| 🕵️ Counter Intel | Detects and logs surveillance-related RF signals |
| 🔊 Audio FX | Plays sound effects through the built-in buzzer |
| 📡 Spectre Radar | Radar-style animated WiFi scanning display |
Wiring the Modules
MFRC522 — RFID / NFC SPI
| MFRC522 | ESP32-S3 GPIO |
|---|---|
| SDA (NSS/CS) | GPIO 43 (TX pin) |
| SCK | GPIO 18 |
| MOSI | GPIO 2 |
| MISO | GPIO 17 |
| RST | GPIO 3 |
| 3.3V | 3V3 rail |
| GND | GND |
MFRC522 ESP32-S3 ─────── ──────── SDA ────── GPIO 43 SCK ────── GPIO 18 MOSI ────── GPIO 2 MISO ────── GPIO 17 RST ────── GPIO 3 3.3V ────── 3V3 GND ────── GND
BME680 — Environmental I²C
| BME680 | Connect to |
|---|---|
| SDA | GPIO 11 |
| SCL | GPIO 10 |
| VCC | 3V3 |
| GND | GND |
| SDO | GND → address 0x76 |
| CS | 3V3 → I²C mode |
BME680 ESP32-S3 ────── ──────── SDA ────── GPIO 11 SCL ────── GPIO 10 VCC ────── 3V3 GND ────── GND SDO ────── GND CS ────── 3V3
Programming the Device
What You Need
💻 Arduino IDE 2.x
Download free from arduino.cc/en/software
🔌 USB-C Cable
A data-capable USB-C cable (not charge-only)
📁 Source Code
The HackerOS_v3/ folder with HackerOS_v3.ino
Step 1 — Install ESP32 Board Support
-
Open Arduino IDE → File → Preferences
-
In "Additional Board Manager URLs", add:
-
Go to Tools → Board → Board Manager
-
Search
esp32, install "esp32 by Espressif Systems" version 2.x or 3.x
Step 2 — Board & Settings
Go to Tools → Board → ESP32S3 Dev Module, then configure:
Step 3 — Install Libraries
Go to Sketch → Include Library → Manage Libraries and install all libraries in Section 7.
Step 4 — Open the Project
-
Go to File → Open
-
Navigate to the
HackerOS_v3/folder -
Open
HackerOS_v3.ino
Step 5 — Upload Firmware
-
Connect the device via USB-C
-
If not detected: hold BOOT, press RESET, release BOOT to enter bootloader mode
-
Click the Upload (→) button in Arduino IDE
-
Wait for compilation and upload to complete (~2–3 minutes)
-
The device reboots automatically into HackerOS ✅
Required Libraries
Install from Sketch → Include Library → Manage Libraries:
| Library | Author | Where |
|---|---|---|
Arduino_GFX_Library |
Moon On Our Nation | Library Manager |
MFRC522 |
GithubCommunity | Library Manager |
Adafruit BME680 Library |
Adafruit | Library Manager |
Adafruit Unified Sensor |
Adafruit | Library Manager |
ESP32 BLE Arduino |
Espressif | Included with board package |
WebServer |
Espressif | Included with board package |
DNSServer |
Espressif | Included with board package |
EEPROM |
Espressif | Included with board package |
USBHIDKeyboard |
Espressif (TinyUSB) | Included with board package |
USBHIDMouse |
Espressif (TinyUSB) | Included with board package |
SensorQMI8658.hpp |
SGP PHANTOM | Already in project folder |
Troubleshooting
| Problem | Solution |
|---|---|
| Screen stays dark after upload | Check board set to ESP32S3 Dev Module, USB Mode = USB-OTG |
| Upload fails / port not found | Enter bootloader: hold BOOT → press RESET → release BOOT |
| RFID / NFC module not responding | Check SPI wiring, confirm 3.3V supply — never 5V |
| Card not detected | Only 13.56 MHz cards work. 125 kHz cards (EM4100) are NOT supported |
| BME680 shows 0 or error | Check I²C wiring GPIO 10/11, SDO must be pulled to GND (address 0x76) |
| Gas readings unstable | Normal — BME680 needs ~5 minutes warm-up after cold boot |
| WiFi features not working | Ensure WiFi antenna is connected on the board |
| BLE Bridge not appearing | Enable Bluetooth on target device, search for new devices |
| Games lag or freeze | Reset the device, avoid running other heavy apps in background |
| Battery % seems wrong | ADC calibration varies between LiPo cells — values are approximate |
| Device won't power on | Charge via USB-C for at least 15 minutes before first boot |
| Compilation error: library missing | Install all libraries in Section 7 via Library Manager |
Legal Disclaimer
The SGP PHANTOM HackerOS is designed exclusively for authorized security research, penetration testing, and educational demonstrations on networks, systems, and devices that you own or have explicit written permission to test.
Using this device against systems without authorization is illegal in most jurisdictions, including under:
• Computer Fraud and Abuse Act — USA
• Computer Misuse Act — UK
• Directive 2013/40/EU — European Union
• Local cybersecurity and telecommunications laws
The manufacturer and seller are not responsible for any misuse. By using this device you agree to comply with all applicable laws.
This device is sold as a hardware and firmware development tool for professional use only.