SGP Watch

SGP Watch · Complete Manual & Guide
HACKER SMARTWATCH · ESP32-S3

SGP Watch

An Apple-Watch-style watch, but "hacker": 9 faces with real data, and underneath the same educational arsenal of WiFi, Bluetooth, USB-HID, sensors and games. It boots into the watch face; a tap opens the apps.

Waveshare ESP32-S3-Touch-LCD-1.69 9 persistent faces Swipe to change IMU · RTC · battery No BME680/RFID
⚠ EDUCATIONAL USE. Includes security-research functions (WiFi/BLE/USB). Use them only on your own devices and networks, or with permission. See the legal notice.

01Overview

The SGP Watch is the "watch" variant of the SGP Phantom: same board, but the interface boots up as a watch (Apple-Watch aesthetic) and everything else is one tap away. It has no ambient sensor or RFID reader — it's made to be worn.

Boots as a watch

On power-up it shows the last face you chose (it's saved automatically).

9 real faces

Time, date, battery, activity rings, hacker terminal… all with real device data.

Tap = apps

A tap on the face opens the app drawer; swipe to change face.

Legacy v3 mode

It also includes the full original firmware, one button away.

02Hardware / Specifications

Same Waveshare ESP32-S3-Touch-LCD-1.69 board, fully integrated. Unlike the Phantom, the watch doesn't use an ambient sensor or RFID in its interface.

ComponentDetailBus / Address
MCUESP32-S3 (2.4 GHz WiFi + Bluetooth LE), native USB
Display1.69" IPS LCD 240×280, ST7789SPI
TouchCST816T capacitive (tap + gestures)I²C 0x15
IMUQMI8658 accelerometer/gyroscopeI²C 0x6B
RTC clockPCF85063 (keeps the time)I²C 0x51
BuzzerPassive buzzerGPIO 42
BatteryRechargeable Li-Po + levelGPIO 1

03Wiring / Pinout

As a watch, there's nothing to wire: the Waveshare board has the display, touch, IMU, RTC, buzzer, battery and buttons built in. This table is reference only, in case you reprogram or modify it.

FunctionGPIONotes
Power ON / hold41Keep HIGH so it doesn't power off
POWER button40Power on / hold 3 s = off
BOOT button0"Back": app → apps → watch
Battery (ADC)1Battery level
LCD MOSI / SCK7 / 6Display SPI
LCD CS / DC / RST5 / 4 / 8ST7789 control
LCD Backlight15Brightness (PWM)
I²C SDA / SCL11 / 10Touch + IMU + RTC
Touch INT / RST14 / 13CST816T
Buzzer42Tones/effects
Note: for a 3D-printed case/strap, measure the Waveshare 1.69" board (roughly 40×36 mm PCB + display). It's a working watch with no extra components to add.

04Power & controls

Power on

Press POWER. After a rings animation it boots into the last chosen face.

Open apps

Tap the face to open the app drawer.

Change face

Swipe left/right on the watch. Your choice is saved and comes back on power-up.

Back

BOOT goes back: from an app to the drawer, and from the drawer to the watch.

Power off

Hold POWER ~3 seconds.

Set the time

Apps → System → Set Time / Set Date (rollers). The RTC keeps it while there's battery.

05The 9 faces

All of them show real data from the device (RTC, battery, uptime, RAM, radios, IMU tilt). Change between them by swiping, or pick one in Apps → System → Faces.

Activity

Large time + 3 rings: battery (red), minute (green), second (cyan).

Modular

Data grid: date, battery, uptime, free RAM, radio, tilt.

Infograph

Analog face with complications in the corners.

Terminal

Hacker console: time, date, battery, uptime, heap, radio + cursor.

Tactical

Framed military HUD: HH:MM:SS, ZULU, T+, PWR%.

Gold 007

Gold rings + time + "007".

Numerals

Minimal XL time + date + battery.

Binary

Dot matrix: hours/minutes/seconds in binary.

Solar

Day-progress arc (% of the day elapsed).

06How to program it

Just like any ESP32 with the Arduino IDE.

1 · Core & libraries

Install the esp32 by Espressif core (3.x) and these libraries:

LVGL 8.4.0

Exactly 8.4.x, not 9.x.

GFX Library for Arduino

Display driver.

Arduino_DriveBus

CST816T touch.

MFRC522 + Adafruit BME680/280 + BMP280 + Unified Sensor + BusIO

Required by Legacy v3 mode (even though the watch doesn't use RFID/sensor).

lv_conf.h

Included in the sketch folder; if LVGL can't see it, copy it to Arduino/libraries/.

2 · Board settings (Tools)

OptionValue
BoardESP32S3 Dev Module
USB CDC On BootEnabled
Flash Size8MB
Partition SchemeHuge APP (3MB No OTA/1MB SPIFFS)
esp32:esp32:esp32s3:USBMode=default,CDCOnBoot=cdc,FlashSize=8M,PartitionScheme=huge_app

3 · Upload

  1. Open SGP_Watch.ino (all the .h tabs open with it).
  2. Connect via USB-C, pick the Port.
  3. VerifyUpload. If it won't upload: hold BOOT, tap RESET, release.
Golden rule: the folder and the .ino must have the same name and no spaces (that's why it's SGP_Watch with an underscore).

07All functions

Besides the faces, the watch carries the same utility categories as the Phantom (except RFID and the ambient sensor).

System

FacesFace picker (highlights the active one). Also changed by swipe.
SettingsBrightness, sound, timeout, CPU, 007 gold theme, sleep/reboot.
InfoChip, RAM, MAC, uptime, version.
Set Time / Set DateSet the RTC time and date with rollers.
Legacy v3Loads the full original firmware. Exit: hold BOOT ~1.5 s.

WiFi Lab

Scan / Radar / Recon / ProbeNetwork scan, signal radar and probe-request sniffing.
Packets / DeauthPacket monitor and lab de-authentication (on YOUR network).
Beacon / StormBroadcasts one or hundreds of fake WiFi networks.
Stress / Portal / DefenseStress test of your own network, captive portal and deauth-attack detector.
WiFiMot / CSIPresence detection via signal/CSI (WiFi sensing).

Bluetooth (BLE)

Hunter / RangeScans BLE devices and estimates distance.
Spam / GhostAdvertises hundreds of fake BLE devices (educational).
AirPopup / iPopups / Spoof / JBLPlays pairing pop-ups and imitates device advertisements.
Jammer / BLE KBBLE advertising saturation and Bluetooth keyboard/remote.

USB / HID

BadUSB / WiredKeyboard scripts when plugged in via USB.
Mouse / BruteMouse control and HID PIN brute-force demo (educational).
WebCtlRemote control over web from the board's access point.

Sensors (IMU)

Level / Motion / GravityBubble level, motion and gravity with the accelerometer.
Q-Labs / CamDetIMU telemetry and experimental detector.

007 Spy

Gunbarrel / Dossier007 intro and agent file.
Sweep / CipherDevice sweep and phrase encryption.
Destruct / Tripwire / PanicSimulated self-destruct, motion alarm and SOS.

Extras & games

Matrix / Mood / AudioFXMatrix rain, ambient light and sound effects.
Gallery / TimerClassic-clock gallery and stopwatch.
ArcadeFlappy, Pong, Snake, Tetris, Space Invaders, Dice.
SGP Watch · manual for educational use. Open firmware in Arduino (LVGL 8.4 · ESP32-S3). "Watch" variant of the SGP Phantom · Waveshare ESP32-S3-Touch-LCD-1.69 board.
Scroll to Top