mirror of
https://github.com/justcallmekoko/ESP32Marauder.git
synced 2025-12-07 21:30:55 -08:00
Compare commits
18 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
539ebb93a7 | ||
|
|
56de1b698a | ||
|
|
524d4641ed | ||
|
|
df613f3b9b | ||
|
|
0b26b2d4d3 | ||
|
|
50eb2b0da6 | ||
|
|
771d03d931 | ||
|
|
4f1611083f | ||
|
|
b5eb343c52 | ||
|
|
e7ba169c04 | ||
|
|
a5b3ce9f0a | ||
|
|
eec6c37732 | ||
|
|
5cfb756051 | ||
|
|
31aa12d4ed | ||
|
|
d7fbf21345 | ||
|
|
e027231a43 | ||
|
|
ed5e6bc787 | ||
|
|
2092b0a462 |
@@ -3,7 +3,7 @@
|
||||
<!---[](https://travis-ci.com/justcallmekoko/ESP32Marauder)--->
|
||||
<!---Shields/Badges https://shields.io/--->
|
||||
|
||||
# ESP32 Marauder v0.10.4
|
||||
# ESP32 Marauder v0.10.8
|
||||
<p align="center"><img alt="Marauder logo" src="https://github.com/justcallmekoko/ESP32Marauder/blob/master/pictures/marauder3L.jpg?raw=true" width="300"></p>
|
||||
<p align="center">
|
||||
<b>A suite of WiFi/Bluetooth offensive and defensive tools for the ESP32</b>
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
// Display type - only define if RPi display
|
||||
//#define RPI_DRIVER
|
||||
|
||||
#define CGRAM_OFFSET
|
||||
|
||||
// Only define one driver, the other ones must be commented out
|
||||
//#define ILI9341_DRIVER // OG Marauder
|
||||
//#define ST7735_DRIVER // Marauder Mini // Define additional parameters below for this display
|
||||
@@ -52,10 +54,10 @@
|
||||
|
||||
// For ST7789, ST7735 and ILI9163 ONLY, define the pixel width and height in portrait orientation
|
||||
// #define TFT_WIDTH 80
|
||||
#define TFT_WIDTH 240 // Marauder Mini
|
||||
#define TFT_WIDTH 135 // Marauder Mini
|
||||
// #define TFT_WIDTH 240 // ST7789 240 x 240 and 240 x 320
|
||||
// #define TFT_HEIGHT 160
|
||||
#define TFT_HEIGHT 135 // Marauder Mini
|
||||
#define TFT_HEIGHT 240 // Marauder Mini
|
||||
// #define TFT_HEIGHT 240 // ST7789 240 x 240
|
||||
// #define TFT_HEIGHT 320 // ST7789 240 x 320
|
||||
|
||||
@@ -168,11 +170,11 @@
|
||||
#define TFT_CS 5 // Chip select control pin D8
|
||||
#define TFT_DC 23 // Data Command control pin
|
||||
#define TFT_RST 18 // Reset pin (could connect to NodeMCU RST, see next line)
|
||||
#define TOUCH_CS -1
|
||||
#define TOUCH_CS 10
|
||||
//#define TFT_MISO 19
|
||||
#define TFT_MOSI 15
|
||||
#define TFT_SCLK 13
|
||||
//#define TFT_BL 32
|
||||
#define TFT_BL 10
|
||||
|
||||
/*
|
||||
// ESP32 Marauder
|
||||
|
||||
@@ -213,6 +213,8 @@ void CommandLine::runCommand(String input) {
|
||||
Serial.println(HELP_CLEARAP_CMD_A);
|
||||
Serial.println(HELP_REBOOT_CMD);
|
||||
Serial.println(HELP_UPDATE_CMD_A);
|
||||
Serial.println(HELP_LS_CMD);
|
||||
Serial.println(HELP_LED_CMD);
|
||||
|
||||
// WiFi sniff/scan
|
||||
Serial.println(HELP_SIGSTREN_CMD);
|
||||
@@ -268,6 +270,34 @@ void CommandLine::runCommand(String input) {
|
||||
menu_function_obj.changeMenu(menu_function_obj.current_menu);
|
||||
#endif
|
||||
}
|
||||
// LED command
|
||||
else if (cmd_args.get(0) == LED_CMD) {
|
||||
int hex_arg = this->argSearch(&cmd_args, "-s");
|
||||
int pat_arg = this->argSearch(&cmd_args, "-p");
|
||||
#ifdef PIN
|
||||
if (hex_arg != 0) {
|
||||
String hexstring = cmd_args.get(hex_arg + 1);
|
||||
int number = (int)strtol(&hexstring[1], NULL, 16);
|
||||
int r = number >> 16;
|
||||
int g = number >> 8 & 0xFF;
|
||||
int b = number & 0xFF;
|
||||
//Serial.println(r);
|
||||
//Serial.println(g);
|
||||
//Serial.println(b);
|
||||
led_obj.setColor(r, g, b);
|
||||
led_obj.setMode(MODE_CUSTOM);
|
||||
}
|
||||
#else
|
||||
Serial.println("This hardware does not support neopixel")
|
||||
#endif
|
||||
}
|
||||
// ls command
|
||||
else if (cmd_args.get(0) == LS_CMD) {
|
||||
if (cmd_args.size() > 1)
|
||||
sd_obj.listDir(cmd_args.get(1));
|
||||
else
|
||||
Serial.println("You did not provide a dir to list");
|
||||
}
|
||||
// Channel command
|
||||
else if (cmd_args.get(0) == CH_CMD) {
|
||||
// Search for channel set arg
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "Web.h"
|
||||
#include "SDInterface.h"
|
||||
#include "settings.h"
|
||||
#include "LedInterface.h"
|
||||
|
||||
#ifdef HAS_SCREEN
|
||||
extern MenuFunctions menu_function_obj;
|
||||
@@ -22,6 +23,7 @@ extern WiFiScan wifi_scan_obj;
|
||||
extern Web web_obj;
|
||||
extern SDInterface sd_obj;
|
||||
extern Settings settings_obj;
|
||||
extern LedInterface led_obj;
|
||||
extern LinkedList<AccessPoint>* access_points;
|
||||
extern LinkedList<ssid>* ssids;
|
||||
extern LinkedList<Station>* stations;
|
||||
@@ -36,6 +38,8 @@ const char PROGMEM REBOOT_CMD[] = "reboot";
|
||||
const char PROGMEM UPDATE_CMD[] = "update";
|
||||
const char PROGMEM HELP_CMD[] = "help";
|
||||
const char PROGMEM SETTINGS_CMD[] = "settings";
|
||||
const char PROGMEM LS_CMD[] = "ls";
|
||||
const char PROGMEM LED_CMD[] = "led";
|
||||
|
||||
// WiFi sniff/scan
|
||||
const char PROGMEM SIGSTREN_CMD[] = "sigmon";
|
||||
@@ -76,6 +80,8 @@ const char PROGMEM HELP_CLEARAP_CMD_A[] = "clearlist -a/-c/-s";
|
||||
const char PROGMEM HELP_REBOOT_CMD[] = "reboot";
|
||||
const char PROGMEM HELP_UPDATE_CMD_A[] = "update -s/-w";
|
||||
const char PROGMEM HELP_SETTINGS_CMD[] = "settings [-s <setting> enable/disable>]/[-r]";
|
||||
const char PROGMEM HELP_LS_CMD[] = "ls <directory>";
|
||||
const char PROGMEM HELP_LED_CMD[] = "led -s <hex color>/-p <rainbow>";
|
||||
|
||||
// WiFi sniff/scan
|
||||
const char PROGMEM HELP_SIGSTREN_CMD[] = "sigmon";
|
||||
|
||||
@@ -33,6 +33,9 @@ void LedInterface::main(uint32_t currentTime) {
|
||||
else if (this->current_mode == MODE_SNIFF) {
|
||||
this->sniffLed();
|
||||
}
|
||||
else if (this->current_mode == MODE_CUSTOM) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
this->ledOff();
|
||||
}
|
||||
@@ -46,19 +49,21 @@ uint8_t LedInterface::getMode() {
|
||||
return this->current_mode;
|
||||
}
|
||||
|
||||
void LedInterface::setColor(int r, int g, int b) {
|
||||
strip.setPixelColor(0, strip.Color(r, g, b));
|
||||
strip.show();
|
||||
}
|
||||
|
||||
void LedInterface::sniffLed() {
|
||||
strip.setPixelColor(0, strip.Color(0, 0, 255));
|
||||
strip.show();
|
||||
this->setColor(0, 0, 255);
|
||||
}
|
||||
|
||||
void LedInterface::attackLed() {
|
||||
strip.setPixelColor(0, strip.Color(255, 0, 0));
|
||||
strip.show();
|
||||
this->setColor(255, 0, 0);
|
||||
}
|
||||
|
||||
void LedInterface::ledOff() {
|
||||
strip.setPixelColor(0, strip.Color(0, 0, 0));
|
||||
strip.show();
|
||||
this->setColor(0, 0, 0);
|
||||
}
|
||||
|
||||
void LedInterface::rainbow() {
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#define MODE_RAINBOW 1
|
||||
#define MODE_ATTACK 2
|
||||
#define MODE_SNIFF 3
|
||||
#define MODE_CUSTOM 4
|
||||
|
||||
extern Settings settings_obj;
|
||||
extern Adafruit_NeoPixel strip;
|
||||
@@ -41,6 +42,7 @@ class LedInterface {
|
||||
void main(uint32_t currentTime);
|
||||
|
||||
void setMode(uint8_t);
|
||||
void setColor(int r, int g, int b);
|
||||
uint8_t getMode();
|
||||
|
||||
|
||||
|
||||
@@ -69,6 +69,28 @@ bool SDInterface::initSD() {
|
||||
}
|
||||
}
|
||||
|
||||
void SDInterface::listDir(String str_dir){
|
||||
if (this->supported) {
|
||||
File dir = SD.open(str_dir);
|
||||
while (true)
|
||||
{
|
||||
File entry = dir.openNextFile();
|
||||
if (! entry)
|
||||
{
|
||||
break;
|
||||
}
|
||||
//for (uint8_t i = 0; i < numTabs; i++)
|
||||
//{
|
||||
// Serial.print('\t');
|
||||
//}
|
||||
Serial.print(entry.name());
|
||||
Serial.print("\t");
|
||||
Serial.println(entry.size());
|
||||
entry.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SDInterface::addPacket(uint8_t* buf, uint32_t len) {
|
||||
if ((this->supported) && (this->do_save)) {
|
||||
buffer_obj.addPacket(buf, len);
|
||||
|
||||
@@ -39,6 +39,7 @@ class SDInterface {
|
||||
|
||||
bool initSD();
|
||||
|
||||
void listDir(String str_dir);
|
||||
void addPacket(uint8_t* buf, uint32_t len);
|
||||
void openCapture(String file_name = "");
|
||||
void runUpdate();
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
//#define ESP32_LDDB
|
||||
//#define MARAUDER_DEV_BOARD_PRO
|
||||
|
||||
#define MARAUDER_VERSION "v0.10.5"
|
||||
#define MARAUDER_VERSION "v0.10.8"
|
||||
|
||||
//// POWER MANAGEMENT
|
||||
#ifdef MARAUDER_M5STICKC
|
||||
@@ -92,7 +92,7 @@
|
||||
//#define MENU_FONT &FreeMonoBold9pt7b
|
||||
//#define MENU_FONT &FreeSans9pt7b
|
||||
//#define MENU_FONT &FreeSansBold9pt7b
|
||||
#define BUTTON_ARRAY_LEN 10
|
||||
#define BUTTON_ARRAY_LEN 11
|
||||
#define STATUS_BAR_WIDTH (TFT_HEIGHT/16)
|
||||
#define LVGL_TICK_PERIOD 6
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
//#define MENU_FONT &FreeMonoBold9pt7b
|
||||
//#define MENU_FONT &FreeSans9pt7b
|
||||
//#define MENU_FONT &FreeSansBold9pt7b
|
||||
#define BUTTON_ARRAY_LEN 10
|
||||
#define BUTTON_ARRAY_LEN 11
|
||||
#define STATUS_BAR_WIDTH 16
|
||||
#define LVGL_TICK_PERIOD 6
|
||||
|
||||
@@ -202,7 +202,7 @@
|
||||
//#define MENU_FONT &FreeMonoBold9pt7b
|
||||
//#define MENU_FONT &FreeSans9pt7b
|
||||
//#define MENU_FONT &FreeSansBold9pt7b
|
||||
#define BUTTON_ARRAY_LEN 10
|
||||
#define BUTTON_ARRAY_LEN 11
|
||||
#define STATUS_BAR_WIDTH 16
|
||||
#define LVGL_TICK_PERIOD 6
|
||||
|
||||
@@ -259,7 +259,7 @@
|
||||
//#define MENU_FONT &FreeMonoBold9pt7b
|
||||
//#define MENU_FONT &FreeSans9pt7b
|
||||
//#define MENU_FONT &FreeSansBold9pt7b
|
||||
#define BUTTON_ARRAY_LEN 10
|
||||
#define BUTTON_ARRAY_LEN 11
|
||||
#define STATUS_BAR_WIDTH 16
|
||||
#define LVGL_TICK_PERIOD 6
|
||||
|
||||
@@ -326,7 +326,7 @@
|
||||
//#define MENU_FONT &FreeMonoBold9pt7b
|
||||
//#define MENU_FONT &FreeSans9pt7b
|
||||
//#define MENU_FONT &FreeSansBold9pt7b
|
||||
#define BUTTON_ARRAY_LEN 10
|
||||
#define BUTTON_ARRAY_LEN 11
|
||||
#define STATUS_BAR_WIDTH (TFT_HEIGHT/16)
|
||||
#define LVGL_TICK_PERIOD 6
|
||||
|
||||
@@ -481,6 +481,10 @@
|
||||
//// END SD DEFINITIONS
|
||||
|
||||
//// SCREEN STUFF
|
||||
#ifdef MARAUDER_DEV_BOARD_PRO
|
||||
#define HAS_BT
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_MINI
|
||||
#define HAS_SCREEN
|
||||
#define HAS_BT
|
||||
|
||||
@@ -345,13 +345,13 @@ void loop()
|
||||
#ifdef HAS_SCREEN
|
||||
menu_function_obj.main(currentTime);
|
||||
#endif
|
||||
#ifndef MARAUDER_FLIPPER
|
||||
led_obj.main(currentTime);
|
||||
#endif
|
||||
//cli_obj.main(currentTime);
|
||||
}
|
||||
if (wifi_scan_obj.currentScanMode == OTA_UPDATE)
|
||||
web_obj.main();
|
||||
#ifndef MARAUDER_FLIPPER
|
||||
led_obj.main(currentTime);
|
||||
#endif
|
||||
if (wifi_scan_obj.currentScanMode == OTA_UPDATE)
|
||||
web_obj.main();
|
||||
#ifdef HAS_SCREEN
|
||||
delay(1);
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user