Public open-source M5Stack firmware repository for WiFi security testing, SD dashboard control, and captive portal management.
Pre-fight is a public fork of the original Evil-M5Project, refocused as a community repository for M5Stack offensive security tooling and educational experimentation.
This repository includes:
- firmware for M5Stack devices and M5Cardputer
- web dashboard features for SD card health and file browsing
- captive portal and Wi-Fi monitoring tools
- companion Android app code
- utilities for building and flashing
Disclaimer: Use this project only for legal, ethical, and authorized testing. Do not deploy on networks you do not own or have explicit permission to test.
- SD card status dashboard and file browser
- Captive portal setup and monitoring
- Wi-Fi scan / probe detection
- Credential capture / logging
- Remote web interface for device control
- Support for multiple M5Stack boards and firmware variants
- M5Stack Cardputer (recommended)
- M5Stack Core2
- M5Stack Core3
- M5AtomS3
- M5Stack CoreS3
- M5Stick series (limited support)
Evil-Stick-Beta.ino– main firmware with SD dashboard and monitor status pagesEvil-M5Core2-1-5-1.ino,Evil-M5Core3-1-1-9.ino,Evil-Cardputer-v1-5-2.ino– additional firmware variantsandroid-companion-app/– Android companion app sourceutilities/– helper scripts and build prerequisitesSD-Card-File/– example SD files and payload assetsslave/– slave device firmware and auxiliary payloads
- Format an SD card as FAT32.
- Copy the
SD-Card-File/contents into a folder namedevilat the SD card root. - Insert the SD card into your device.
- Download M5Burner from the M5Stack Download Center.
- Connect your M5Stack device.
- Select the firmware file and flash it.
- Open the Arduino IDE or PlatformIO.
- Install board support for ESP32 and M5Stack devices.
- Install required libraries:
Adafruit_NeoPixelArduinoJsonESPpingIniFileM5GFXM5UnifiedTinyGPSPlusesp8266audio
- Set the baud rate to
115200. - Disable PSRAM if required by the target board.
- Upload the firmware to your device.
- Boot the device and use the built-in web server to access the dashboard.
- Open the monitor status page to see Wi-Fi and SD card health information.
- Use the SD browser to inspect and edit files on the SD card.
This repository is released under the MIT License. See the LICENSE file for details.
- This project is intended for research, learning, and authorized testing only.
- Do not use against networks or systems where you do not have permission.
- Always follow local laws and regulations.
- Wigle / wardriving export is implemented in firmware and utilities:
Evil-Cardputer-v1-5-2.inoEvil-M5Core2-1-5-1.inoEvil-M5Core3-1-1-9.inoEvil-CYD-Beta.inoutilities/WigleOpenFinder/utilities/wardriving/
- ESP-NOW messaging support appears in firmware and slave builds:
Evil-Stick-Beta.inoEvil-Cardputer-v1-5-2.inoEvil-M5Core2-1-5-1.inoslave/C5-Slave/slave/slave_unified_C3.ino
- Radar and CSI-style UI features are present in:
Evil-Cardputer-v1-5-2.inoEvil-M5Core2-1-5-1.ino
- Open the built-in web server after boot to access the dashboard.
- Use the monitor status page for Wi-Fi and SD card metrics.
- Use the SD browser page to inspect SD files and folders.
- For Wigle / wardriving export, open the relevant firmware wardriving menu and save logs in
WigleWifi-1.4CSV format. - For ESP-NOW support, check the firmware menu items labeled
ESPNOWorESP-NOWin the target build. - For radar / CSI-style visual features, use the firmware display mode or menu option named
radarorCSI.
Created as a public repository: https://github.com/stackzac22/Pre-fight