Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

M5gotchi

A WiFi-eating Pwnagotchi-style pet for the M5Stack CoreS3.

M5gotchi roams the 2.4 GHz band, randomly deauthenticates nearby access points, and "eats" the WPA/WPA2 four-way handshakes it captures. Its moods and faces are driven by what it catches — it gets excited when it grabs a handshake, intense while hunting, and bored or lonely when the air is quiet. Captured handshakes are written to microSD as standard .pcap files you can open in Wireshark or feed to hashcat/aircrack.

It wears the full Pwnagotchi personality — the complete set of moods (sleep, awake, look‑left/right, intense, cool, happy, excited, grateful, motivated, demotivated, smart, lonely, sad, angry, friend, broken…) each with its own face and voice lines.

⚠️ For authorized testing and education only. Deauthentication is a WiFi attack. Only use M5gotchi on networks you own or have explicit written permission to test. You are responsible for complying with all applicable laws.

What it does

  • Roams the band, channel‑hopping and sniffing in promiscuous mode.
  • Discovers nearby access points from their beacons.
  • Deauths a random discovered AP every few seconds to provoke reconnections.
  • Eats handshakes — detects EAPOL (4‑way handshake) frames, counts them, and saves each to a PCAP file on microSD (/pwn_*.pcap, link type IEEE802.11).
  • Reacts — a Pwnagotchi‑style mood engine turns activity into faces and phrases.

Hardware

  • M5Stack CoreS3 (ESP32‑S3). CoreS3 SE should work too.
  • A microSD card (optional but required to save captured handshakes).

Controls (touchscreen)

The CoreS3 has no physical buttons, so M5.BtnA is emulated on the left third of the screen (M5gotchi enables this explicitly — stock M5Unified leaves it off, which is why touch does nothing in some CoreS3 ports):

  • Hold (long press) the left of the screen — open / close the menu
  • Single tap — select
  • Double tap — next item
  • Triple tap — previous item

Menu: Stats (handshakes eaten, APs seen, deauths, channel, SD status) and About (QR).

Install

Flash the prebuilt binary

Grab M5gotchi-cores3.bin from Releases and flash at offset 0x0.

Put the CoreS3 into download mode first: hold RESET (bottom‑left) ~3 s until the green LED, then release. It appears as a serial port (Espressif 303A:1001).

esptool --chip esp32s3 --port <PORT> --baud 921600 --after hard-reset \
  write-flash 0x0 M5gotchi-cores3.bin

After flashing, short‑press RESET to boot (esptool's reset is a no‑op on the CoreS3 native USB).

Build from source

Requires arduino-cli with the ESP32 core and the M5Unified / M5GFX libraries.

arduino-cli core install esp32:esp32
arduino-cli lib install M5Unified   # pulls M5GFX
arduino-cli compile --fqbn esp32:esp32:m5stack_cores3 m5gotchi

How the mood engine works

Like the original Pwnagotchi, the pet's expression reflects its state:

Situation Mood
Just caught a handshake Excited → Grateful (every 5) → Motivated (every 10)
Sending a deauth burst Intense / Cool
APs around, scanning Looking left/right, Smart, Happy
APs around, long dry spell Demotivated / Sad
No APs nearby Lonely → Bored → Sleep

Credits

  • Inspired by Pwnagotchi by evilsocket.
  • Built on the mood/UI scaffolding of m5-palnagotchi by Vinícius Borriello (MIT), extended from a passive pwnagotchi decoy into an active handshake‑eating pet.
  • Uses M5Unified / M5GFX.

License

MIT — see LICENSE.

About

A WiFi-eating pwnagotchi-style pet for M5Stack CoreS3: roams, deauths, eats WPA handshakes, full mood engine.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages