mirror of
https://github.com/justcallmekoko/ESP32Marauder.git
synced 2026-01-26 03:05:00 -08:00
Compare commits
18 Commits
nightly_46
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4fb65cd186 | ||
|
|
419dd434e5 | ||
|
|
44f51d2f70 | ||
|
|
c4c652741e | ||
|
|
4ec9d50562 | ||
|
|
014cae1cb0 | ||
|
|
832e99cccd | ||
|
|
1648effcb2 | ||
|
|
a1b02691d0 | ||
|
|
85c4802322 | ||
|
|
4ea8a44931 | ||
|
|
f82b6c5ce3 | ||
|
|
a54a311995 | ||
|
|
e689858891 | ||
|
|
ebcfc9392e | ||
|
|
9173785218 | ||
|
|
64f6b4c582 | ||
|
|
6d2d1d7a0d |
18
.github/workflows/build_parallel.yml
vendored
18
.github/workflows/build_parallel.yml
vendored
@@ -19,23 +19,23 @@ jobs:
|
||||
board:
|
||||
- { name: "Flipper Zero WiFi Dev Board", flag: "MARAUDER_FLIPPER", fbqn: "esp32:esp32:esp32s2:PartitionScheme=min_spiffs,FlashSize=4M,PSRAM=enabled", file_name: "flipper", tft: false, tft_file: "", build_dir: "esp32s2", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Flipper Zero Multi Board S3", flag: "MARAUDER_MULTIBOARD_S3", fbqn: "esp32:esp32:esp32s3:PartitionScheme=min_spiffs,FlashSize=4M", file_name: "multiboardS3", tft: false, tft_file: "", build_dir: "esp32s3", addr: "0x0", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "OG Marauder", flag: "MARAUDER_V4", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "old_hardware", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6", flag: "MARAUDER_V6", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6.1", flag: "MARAUDER_V6_1", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6_1", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Kit", flag: "MARAUDER_KIT", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "kit", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Mini", flag: "MARAUDER_MINI", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "mini", tft: true, tft_file: "User_Setup_marauder_mini.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32 LDDB", flag: "ESP32_LDDB", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "esp32_lddb", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Dev Board Pro", flag: "MARAUDER_DEV_BOARD_PRO", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_dev_board_pro", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "OG Marauder", flag: "MARAUDER_V4", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "old_hardware", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6", flag: "MARAUDER_V6", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6.1", flag: "MARAUDER_V6_1", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6_1", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Kit", flag: "MARAUDER_KIT", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "kit", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Mini", flag: "MARAUDER_MINI", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "mini", tft: true, tft_file: "User_Setup_marauder_mini.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32 LDDB", flag: "ESP32_LDDB", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "esp32_lddb", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Dev Board Pro", flag: "MARAUDER_DEV_BOARD_PRO", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_dev_board_pro", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "M5StickCPlus", flag: "MARAUDER_M5STICKC", fbqn: "esp32:esp32:m5stick-c:PartitionScheme=min_spiffs", file_name: "m5stickc_plus", tft: true, tft_file: "User_Setup_marauder_m5stickc.h", build_dir: "m5stick-c", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "M5StickCPlus 2", flag: "MARAUDER_M5STICKCP2", fbqn: "esp32:esp32:m5stick-c:PartitionScheme=min_spiffs", file_name: "m5stickc_plus2", tft: true, tft_file: "User_Setup_marauder_m5stickcp2.h", build_dir: "m5stick-c", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Rev Feather", flag: "MARAUDER_REV_FEATHER", fbqn: "esp32:esp32:esp32s2:PartitionScheme=min_spiffs,FlashSize=4M,PSRAM=enabled", file_name: "rev_feather", tft: true, tft_file: "User_Setup_marauder_rev_feather.h", build_dir: "esp32s2", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v7", flag: "MARAUDER_V7", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_v7", tft: true, tft_file: "User_Setup_dual_nrf24.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v7", flag: "MARAUDER_V7", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_v7", tft: true, tft_file: "User_Setup_dual_nrf24.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 2432S028", flag: "MARAUDER_CYD_MICRO", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_2432S028", tft: true, tft_file: "User_Setup_cyd_micro.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 2432S024 GUITION", flag: "MARAUDER_CYD_GUITION", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_2432S024_guition", tft: true, tft_file: "User_Setup_cyd_guition.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 2432S028 2 USB", flag: "MARAUDER_CYD_2USB", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_2432S028_2usb", tft: true, tft_file: "User_Setup_cyd_2usb.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 3.5inch", flag: "MARAUDER_CYD_3_5_INCH", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_3_5_inch", tft: true, tft_file: "User_Setup_cyd_3_5_inch.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "M5Cardputer", flag: "MARAUDER_CARDPUTER", fbqn: "esp32:esp32:esp32s3:PartitionScheme=min_spiffs,FlashSize=8M,PSRAM=disabled", file_name: "m5cardputer", tft: true, tft_file: "User_Setup_marauder_m5cardputer.h", build_dir: "esp32s3", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32-C5-DevKitC-1", flag: "MARAUDER_C5", fbqn: "esp32:esp32:esp32c5:FlashSize=8M,PartitionScheme=min_spiffs,PSRAM=enabled", file_name: "esp32c5devkitc1", tft: false, tft_file: "", build_dir: "esp32c5", addr: "0x2000", idf_ver: "3.3.4", nimble_ver: "2.3.6", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32-C5-DevKitC-1", flag: "MARAUDER_C5", fbqn: "esp32:esp32:esp32c5:FlashSize=8M,PartitionScheme=min_spiffs,PSRAM=enabled", file_name: "esp32c5devkitc1", tft: false, tft_file: "", build_dir: "esp32c5", addr: "0x2000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
|
||||
19
.github/workflows/nightly_build.yml
vendored
19
.github/workflows/nightly_build.yml
vendored
@@ -68,24 +68,23 @@ jobs:
|
||||
board:
|
||||
- { name: "Flipper Zero WiFi Dev Board", flag: "MARAUDER_FLIPPER", fbqn: "esp32:esp32:esp32s2:PartitionScheme=min_spiffs,FlashSize=4M,PSRAM=enabled", file_name: "flipper", tft: false, tft_file: "", build_dir: "esp32s2", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Flipper Zero Multi Board S3", flag: "MARAUDER_MULTIBOARD_S3", fbqn: "esp32:esp32:esp32s3:PartitionScheme=min_spiffs,FlashSize=4M", file_name: "multiboardS3", tft: false, tft_file: "", build_dir: "esp32s3", addr: "0x0", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "OG Marauder", flag: "MARAUDER_V4", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "old_hardware", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6", flag: "MARAUDER_V6", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6.1", flag: "MARAUDER_V6_1", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6_1", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Kit", flag: "MARAUDER_KIT", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "kit", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Mini", flag: "MARAUDER_MINI", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "mini", tft: true, tft_file: "User_Setup_marauder_mini.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32 LDDB", flag: "ESP32_LDDB", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "esp32_lddb", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Dev Board Pro", flag: "MARAUDER_DEV_BOARD_PRO", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_dev_board_pro", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "OG Marauder", flag: "MARAUDER_V4", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "old_hardware", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6", flag: "MARAUDER_V6", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v6.1", flag: "MARAUDER_V6_1", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "v6_1", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Kit", flag: "MARAUDER_KIT", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "kit", tft: true, tft_file: "User_Setup_og_marauder.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Mini", flag: "MARAUDER_MINI", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "mini", tft: true, tft_file: "User_Setup_marauder_mini.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32 LDDB", flag: "ESP32_LDDB", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "esp32_lddb", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder Dev Board Pro", flag: "MARAUDER_DEV_BOARD_PRO", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_dev_board_pro", tft: false, tft_file: "", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "M5StickCPlus", flag: "MARAUDER_M5STICKC", fbqn: "esp32:esp32:m5stick-c:PartitionScheme=min_spiffs", file_name: "m5stickc_plus", tft: true, tft_file: "User_Setup_marauder_m5stickc.h", build_dir: "m5stick-c", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "M5StickCPlus 2", flag: "MARAUDER_M5STICKCP2", fbqn: "esp32:esp32:m5stick-c:PartitionScheme=min_spiffs", file_name: "m5stickc_plus2", tft: true, tft_file: "User_Setup_marauder_m5stickcp2.h", build_dir: "m5stick-c", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Rev Feather", flag: "MARAUDER_REV_FEATHER", fbqn: "esp32:esp32:esp32s2:PartitionScheme=min_spiffs,FlashSize=4M,PSRAM=enabled", file_name: "rev_feather", tft: true, tft_file: "User_Setup_marauder_rev_feather.h", build_dir: "esp32s2", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v7", flag: "MARAUDER_V7", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_v7", tft: true, tft_file: "User_Setup_dual_nrf24.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v7", flag: "MARAUDER_V7", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "marauder_v7", tft: true, tft_file: "User_Setup_dual_nrf24.h", build_dir: "d32", addr: "0x1000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 2432S028", flag: "MARAUDER_CYD_MICRO", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_2432S028", tft: true, tft_file: "User_Setup_cyd_micro.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 2432S024 GUITION", flag: "MARAUDER_CYD_GUITION", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_2432S024_guition", tft: true, tft_file: "User_Setup_cyd_guition.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 2432S028 2 USB", flag: "MARAUDER_CYD_2USB", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_2432S028_2usb", tft: true, tft_file: "User_Setup_cyd_2usb.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder CYD 3.5inch", flag: "MARAUDER_CYD_3_5_INCH", fbqn: "esp32:esp32:d32:PartitionScheme=min_spiffs", file_name: "cyd_3_5_inch", tft: true, tft_file: "User_Setup_cyd_3_5_inch.h", build_dir: "d32", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "Marauder v7.1", flag: "MARAUDER_V7_1", fbqn: "esp32:esp32:dfrobot_firebeetle2_esp32e:FlashSize=16M,PartitionScheme=min_spiffs,PSRAM=enabled", file_name: "marauder_v7_1", tft: true, tft_file: "User_Setup_dual_nrf24.h", build_dir: "dfrobot_firebeetle2_esp32e", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "M5Cardputer", flag: "MARAUDER_CARDPUTER", fbqn: "esp32:esp32:esp32s3:PartitionScheme=min_spiffs,FlashSize=8M,PSRAM=disabled", file_name: "m5cardputer", tft: true, tft_file: "User_Setup_marauder_m5cardputer.h", build_dir: "esp32s3", addr: "0x1000", idf_ver: "2.0.11", nimble_ver: "1.3.8", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32-C5-DevKitC-1", flag: "MARAUDER_C5", fbqn: "esp32:esp32:esp32c5:FlashSize=8M,PartitionScheme=min_spiffs,PSRAM=enabled", file_name: "esp32c5devkitc1", tft: false, tft_file: "", build_dir: "esp32c5", addr: "0x2000", idf_ver: "3.3.4", nimble_ver: "2.3.6", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
- { name: "ESP32-C5-DevKitC-1", flag: "MARAUDER_C5", fbqn: "esp32:esp32:esp32c5:FlashSize=8M,PartitionScheme=min_spiffs,PSRAM=enabled", file_name: "esp32c5devkitc1", tft: false, tft_file: "", build_dir: "esp32c5", addr: "0x2000", idf_ver: "3.3.4", nimble_ver: "master", esp_async: "bigbrodude6119/ESPAsyncWebServer", esp_async_ver: "master" }
|
||||
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
|
||||
@@ -169,9 +169,9 @@
|
||||
#define TFT_DC 16 // Data Command control pin
|
||||
#define TFT_RST 5 // Reset pin (could connect to NodeMCU RST, see next line)
|
||||
#define TOUCH_CS -1
|
||||
//#define TFT_MISO 19
|
||||
//#define TFT_MOSI 23
|
||||
//#define TFT_SCLK 18
|
||||
#define TFT_MISO 19
|
||||
#define TFT_MOSI 23
|
||||
#define TFT_SCLK 18
|
||||
//#define TFT_BL 32
|
||||
|
||||
/*
|
||||
|
||||
@@ -599,7 +599,8 @@ void CommandLine::runCommand(String input) {
|
||||
wifi_scan_obj.StartScan(WIFI_SCAN_STATION_WAR_DRIVE, TFT_GREEN);
|
||||
}
|
||||
else {
|
||||
Serial.println("Starting Wardrive. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Wardrive. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -630,7 +631,10 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
|
||||
if (evil_portal_obj.setAP(probe_req_ssids->get(pr_index).essid)) {
|
||||
Serial.println("Starting Karma Attack with " + probe_req_ssids->get(pr_index).essid + ". Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Karma Attack with "));
|
||||
Serial.print(probe_req_ssids->get(pr_index).essid);
|
||||
Serial.print(F(". Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -652,7 +656,8 @@ void CommandLine::runCommand(String input) {
|
||||
if (cmd_sw != -1) {
|
||||
String et_command = cmd_args.get(cmd_sw + 1);
|
||||
if (et_command == "start") {
|
||||
Serial.println("Starting Evil Portal. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Evil Portal. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -661,7 +666,8 @@ void CommandLine::runCommand(String input) {
|
||||
String target_html_name = cmd_args.get(html_sw + 1);
|
||||
evil_portal_obj.target_html_name = target_html_name;
|
||||
evil_portal_obj.using_serial_html = false;
|
||||
Serial.println("Set html file as " + evil_portal_obj.target_html_name);
|
||||
Serial.print(F("Set html file as "));
|
||||
Serial.println(evil_portal_obj.target_html_name);
|
||||
}
|
||||
//else {
|
||||
// evil_portal_obj.target_html_name = "index.html";
|
||||
@@ -678,7 +684,8 @@ void CommandLine::runCommand(String input) {
|
||||
String target_html_name = cmd_args.get(cmd_sw + 2);
|
||||
evil_portal_obj.target_html_name = target_html_name;
|
||||
evil_portal_obj.using_serial_html = false;
|
||||
Serial.println("Set html file as " + evil_portal_obj.target_html_name);
|
||||
Serial.print(F("Set html file as "));
|
||||
Serial.println(evil_portal_obj.target_html_name);
|
||||
}
|
||||
else if (et_command == "sethtmlstr") {
|
||||
evil_portal_obj.setHtmlFromSerial();
|
||||
@@ -697,7 +704,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
}
|
||||
else if (cmd_args.get(0) == SCAN_ALL_CMD) {
|
||||
Serial.println("Scanning for APs and Stations. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Scanning for APs and Stations. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
wifi_scan_obj.StartScan(WIFI_SCAN_AP_STA, TFT_MAGENTA);
|
||||
}
|
||||
else if (cmd_args.get(0) == SCANAP_CMD) {
|
||||
@@ -708,17 +716,20 @@ void CommandLine::runCommand(String input) {
|
||||
#endif
|
||||
|
||||
if (full_sw == -1) {
|
||||
Serial.println("Starting AP scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting AP scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
wifi_scan_obj.StartScan(WIFI_SCAN_TARGET_AP, TFT_MAGENTA);
|
||||
}
|
||||
else {
|
||||
Serial.println("Starting Full AP scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Full AP scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
wifi_scan_obj.StartScan(WIFI_SCAN_TARGET_AP_FULL, TFT_MAGENTA);
|
||||
}
|
||||
}
|
||||
// Raw sniff
|
||||
else if (cmd_args.get(0) == SNIFF_RAW_CMD) {
|
||||
Serial.println("Starting Raw sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Raw sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -728,9 +739,11 @@ void CommandLine::runCommand(String input) {
|
||||
// Scan stations
|
||||
else if (cmd_args.get(0) == SCANSTA_CMD) {
|
||||
if(access_points->size() < 1)
|
||||
Serial.println("The AP list is empty. Scan APs first with " + (String)SCANAP_CMD);
|
||||
Serial.print(F("The AP list is empty. Scan APs first with "));
|
||||
Serial.println(SCANAP_CMD);
|
||||
|
||||
Serial.println("Starting Station scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Station scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -739,7 +752,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// Beacon sniff
|
||||
else if (cmd_args.get(0) == SNIFF_BEACON_CMD) {
|
||||
Serial.println("Starting Beacon sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Beacon sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -748,7 +762,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// SAE sniff
|
||||
else if (cmd_args.get(0) == SNIFF_SAE_CMD) {
|
||||
Serial.println("Starting SAE Commit sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting SAE Commit sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -757,7 +772,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// Probe sniff
|
||||
else if (cmd_args.get(0) == SNIFF_PROBE_CMD) {
|
||||
Serial.println("Starting Probe sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Probe sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -766,7 +782,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// Deauth sniff
|
||||
else if (cmd_args.get(0) == SNIFF_DEAUTH_CMD) {
|
||||
Serial.println("Starting Deauth sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Deauth sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -775,7 +792,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// Pwn sniff
|
||||
else if (cmd_args.get(0) == SNIFF_PWN_CMD) {
|
||||
Serial.println("Starting Pwnagotchi sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Pwnagotchi sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -784,7 +802,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// PineScan sniff
|
||||
else if (cmd_args.get(0) == SNIFF_PINESCAN_CMD) {
|
||||
Serial.println("Starting Pinescan sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Pinescan sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -793,7 +812,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// MultiSSID sniff
|
||||
else if (cmd_args.get(0) == SNIFF_MULTISSID_CMD) {
|
||||
Serial.println("Starting MultiSSID sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting MultiSSID sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -802,7 +822,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// Espressif sniff
|
||||
else if (cmd_args.get(0) == SNIFF_ESP_CMD) {
|
||||
Serial.println("Starting Espressif device sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Espressif device sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -844,7 +865,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// MAC Tracking
|
||||
else if (cmd_args.get(0) == MAC_TRACK_CMD) {
|
||||
Serial.println("Starting MAC Tracker. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting MAC Tracker. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1097,7 +1119,8 @@ void CommandLine::runCommand(String input) {
|
||||
wifi_scan_obj.StartScan(WIFI_ATTACK_RICK_ROLL, TFT_YELLOW);
|
||||
}
|
||||
else if (attack_type == ATTACK_TYPE_FUNNY) {
|
||||
Serial.println("Starting Funny SSID Beacon spam. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Funny SSID Beacon spam. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1105,7 +1128,8 @@ void CommandLine::runCommand(String input) {
|
||||
wifi_scan_obj.StartScan(WIFI_ATTACK_FUNNY_BEACON, TFT_CYAN);
|
||||
}
|
||||
else if (attack_type == ATTACK_TYPE_SAE) {
|
||||
Serial.println("Starting SAE Commit spam. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting SAE Commit spam. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1133,7 +1157,8 @@ void CommandLine::runCommand(String input) {
|
||||
|
||||
// Airtag sniff
|
||||
if (bt_type == "airtag") {
|
||||
Serial.println("Starting Airtag sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Airtag sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1141,7 +1166,8 @@ void CommandLine::runCommand(String input) {
|
||||
wifi_scan_obj.StartScan(BT_SCAN_AIRTAG, TFT_WHITE);
|
||||
}
|
||||
else if (bt_type == "flipper") {
|
||||
Serial.println("Starting Flipper sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Flipper sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1149,7 +1175,8 @@ void CommandLine::runCommand(String input) {
|
||||
wifi_scan_obj.StartScan(BT_SCAN_FLIPPER, TFT_ORANGE);
|
||||
}
|
||||
else if (bt_type == "flock") {
|
||||
Serial.println("Starting Flock sniff. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Flock sniff. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1159,7 +1186,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
// General bluetooth sniff
|
||||
else {
|
||||
Serial.println("Starting Bluetooth scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Bluetooth scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1184,7 +1212,8 @@ void CommandLine::runCommand(String input) {
|
||||
at.selected = false;
|
||||
airtags->set(i, at);
|
||||
}
|
||||
Serial.println("Spoofing Airtag: " + airtags->get(target_mac).mac);
|
||||
Serial.print(F("Spoofing Airtag: "));
|
||||
Serial.println(airtags->get(target_mac).mac);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1192,7 +1221,8 @@ void CommandLine::runCommand(String input) {
|
||||
wifi_scan_obj.StartScan(BT_SPOOF_AIRTAG, TFT_WHITE);
|
||||
}
|
||||
else {
|
||||
Serial.println("Provided index is out of range: " + (String)target_mac);
|
||||
Serial.print(F("Provided index is out of range: "));
|
||||
Serial.println(target_mac);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
@@ -1205,7 +1235,8 @@ void CommandLine::runCommand(String input) {
|
||||
|
||||
if (bt_type == "apple") {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting Sour Apple attack. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Sour Apple attack. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1217,7 +1248,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
else if (bt_type == "windows") {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting Swiftpair Spam attack. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Swiftpair Spam attack. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1229,7 +1261,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
else if (bt_type == "samsung") {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting Samsung Spam attack. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Samsung Spam attack. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1241,7 +1274,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
else if (bt_type == "google") {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting Google Spam attack. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Google Spam attack. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1253,7 +1287,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
else if (bt_type == "flipper") {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting Flipper Spam attack. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Flipper Spam attack. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1265,7 +1300,8 @@ void CommandLine::runCommand(String input) {
|
||||
}
|
||||
else if (bt_type == "all") {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting BT Spam All attack. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting BT Spam All attack. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1286,7 +1322,8 @@ void CommandLine::runCommand(String input) {
|
||||
#ifdef HAS_GPS
|
||||
if (gps_obj.getGpsModuleStatus()) {
|
||||
|
||||
Serial.println("Starting BT Wardrive. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting BT Wardrive. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1306,7 +1343,8 @@ void CommandLine::runCommand(String input) {
|
||||
// Bluetooth CC Skimmer scan
|
||||
else if (cmd_args.get(0) == BT_SKIM_CMD) {
|
||||
#ifdef HAS_BT
|
||||
Serial.println("Starting Bluetooth CC Skimmer scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Bluetooth CC Skimmer scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1351,7 +1389,8 @@ void CommandLine::runCommand(String input) {
|
||||
if (wifi_scan_obj.wifi_connected) {
|
||||
// Ping Scan
|
||||
if (cmd_args.get(0) == PING_CMD) {
|
||||
Serial.println("Starting Ping Scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting Ping Scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1361,7 +1400,8 @@ void CommandLine::runCommand(String input) {
|
||||
|
||||
if (cmd_args.get(0) == ARP_SCAN_CMD) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
Serial.println("Starting ARP Scan. Stop with " + (String)STOPSCAN_CMD);
|
||||
Serial.print(F("Starting ARP Scan. Stop with "));
|
||||
Serial.println(STOPSCAN_CMD);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1469,7 +1509,8 @@ void CommandLine::runCommand(String input) {
|
||||
target_mode = WIFI_SCAN_RDP;
|
||||
|
||||
if (target_mode != 0) {
|
||||
Serial.println("Starting port scan for service " + port_name);
|
||||
Serial.print(F("Starting port scan for service "));
|
||||
Serial.println(port_name);
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.clearScreen();
|
||||
menu_function_obj.drawStatusBar();
|
||||
@@ -1546,7 +1587,7 @@ void CommandLine::runCommand(String input) {
|
||||
if (stations->get(access_points->get(x).stations->get(i)).selected) {
|
||||
Serial.print(" [" + (String)access_points->get(x).stations->get(i) + "] ");
|
||||
Serial.print(sta_mac);
|
||||
Serial.println(" (selected)");
|
||||
Serial.println(F(" (selected)"));
|
||||
count_selected += 1;
|
||||
}
|
||||
else {
|
||||
@@ -1667,7 +1708,8 @@ void CommandLine::runCommand(String input) {
|
||||
for (int i = 0; i < ap_index.size(); i++) {
|
||||
int index = ap_index.get(i).toInt();
|
||||
if (!this->inRange(access_points->size(), index)) {
|
||||
Serial.println("Index not in range: " + (String)index);
|
||||
Serial.print(F("Index not in range: "));
|
||||
Serial.println(index);
|
||||
continue;
|
||||
}
|
||||
if (access_points->get(index).selected) {
|
||||
@@ -1718,7 +1760,8 @@ void CommandLine::runCommand(String input) {
|
||||
for (int i = 0; i < sta_index.size(); i++) {
|
||||
int index = sta_index.get(i).toInt();
|
||||
if (!this->inRange(stations->size(), index)) {
|
||||
Serial.println("Index not in range: " + (String)index);
|
||||
Serial.print(F("Index not in range: "));
|
||||
Serial.println(index);
|
||||
continue;
|
||||
}
|
||||
if (stations->get(index).selected) {
|
||||
@@ -1766,7 +1809,8 @@ void CommandLine::runCommand(String input) {
|
||||
for (int i = 0; i < ss_index.size(); i++) {
|
||||
int index = ss_index.get(i).toInt();
|
||||
if (!this->inRange(ssids->size(), index)) {
|
||||
Serial.println("Index not in range: " + (String)index);
|
||||
Serial.print(F("Index not in range: "));
|
||||
Serial.println(index);
|
||||
continue;
|
||||
}
|
||||
if (ssids->get(index).selected) {
|
||||
@@ -1852,7 +1896,8 @@ void CommandLine::runCommand(String input) {
|
||||
else if (rem_sw != -1) {
|
||||
int index = cmd_args.get(rem_sw + 1).toInt();
|
||||
if (!this->inRange(ssids->size(), index)) {
|
||||
Serial.println("Index not in range: " + (String)index);
|
||||
Serial.print(F("Index not in range: "));
|
||||
Serial.println(index);
|
||||
return;
|
||||
}
|
||||
ssids->remove(index);
|
||||
@@ -1862,41 +1907,4 @@ void CommandLine::runCommand(String input) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
// Join WiFi
|
||||
/*else if (cmd_args.get(0) == JOINWIFI_CMD) {
|
||||
int n_sw = this->argSearch(&cmd_args, "-n"); // name
|
||||
int a_sw = this->argSearch(&cmd_args, "-a"); // access point
|
||||
int s_sw = this->argSearch(&cmd_args, "-s"); // ssid
|
||||
int p_sw = this->argSearch(&cmd_args, "-p");
|
||||
|
||||
String essid = "";
|
||||
String pwx = "";
|
||||
|
||||
if (s_sw != -1) {
|
||||
int index = cmd_args.get(s_sw + 1).toInt();
|
||||
if (!this->inRange(ssids->size(), index)) {
|
||||
Serial.println("Index not in range: " + (String)index);
|
||||
return;
|
||||
}
|
||||
essid = ssids->get(index).essid;
|
||||
} else if (a_sw != -1) {
|
||||
int index = cmd_args.get(a_sw + 1).toInt();
|
||||
if (!this->inRange(access_points->size(), index)) {
|
||||
Serial.println("Index not in range: " + (String)index);
|
||||
return;
|
||||
}
|
||||
essid = access_points->get(index).essid;
|
||||
} else if (n_sw != -1) {
|
||||
essid = cmd_args.get(n_sw + 1);
|
||||
} else {
|
||||
Serial.println("You must specify an access point or ssid");
|
||||
return;
|
||||
}
|
||||
|
||||
if (p_sw != -1) {
|
||||
pwx = cmd_args.get(p_sw + 1);
|
||||
}
|
||||
Serial.println("Attempting to join WiFi with ssid " + (String)essid);
|
||||
wifi_scan_obj.joinWiFi(essid, pwx);
|
||||
}*/
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ extern "C" {
|
||||
memcpy(&AdvData_Raw[i], Name, name_len);
|
||||
i += name_len;
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char *)AdvData_Raw, 7 + name_len));
|
||||
#else
|
||||
AdvData.addData(AdvData_Raw, 7 + name_len);
|
||||
@@ -106,7 +106,7 @@ extern "C" {
|
||||
//AdvData_Raw[i++] = 0x10; // Type ???
|
||||
//esp_fill_random(&AdvData_Raw[i], 3);
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char *)AdvData_Raw, 11));
|
||||
#else
|
||||
AdvData.addData(AdvData_Raw, 11);
|
||||
@@ -140,7 +140,7 @@ extern "C" {
|
||||
AdvData_Raw[i++] = (uint8_t)random(256);
|
||||
AdvData_Raw[i++] = 0x00;
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char *)AdvData_Raw, 21));
|
||||
#else
|
||||
AdvData.addData(AdvData_Raw, 21);
|
||||
@@ -170,7 +170,7 @@ extern "C" {
|
||||
AdvData_Raw[i++] = 0x43;
|
||||
AdvData_Raw[i++] = (model >> 0x00) & 0xFF; // Watch Model / Color (?)
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char *)AdvData_Raw, 15));
|
||||
#else
|
||||
AdvData.addData(AdvData_Raw, 15);
|
||||
@@ -197,7 +197,7 @@ extern "C" {
|
||||
AdvData_Raw[i++] = 0x0A;
|
||||
AdvData_Raw[i++] = (rand() % 120) - 100; // -100 to +20 dBm
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char *)AdvData_Raw, 14));
|
||||
#else
|
||||
AdvData.addData(AdvData_Raw, 14);
|
||||
@@ -249,7 +249,7 @@ extern "C" {
|
||||
AdvData_Raw[i++] = 0x80;
|
||||
|
||||
// Add the constructed Advertisement Data to the BLE advertisement
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char *)AdvData_Raw, i));
|
||||
#else
|
||||
AdvData.addData(AdvData_Raw, i);
|
||||
@@ -261,7 +261,7 @@ extern "C" {
|
||||
case Airtag: {
|
||||
for (int i = 0; i < airtags->size(); i++) {
|
||||
if (airtags->get(i).selected) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
AdvData.addData(std::string((char*)airtags->get(i).payload.data(), airtags->get(i).payloadSize));
|
||||
#else
|
||||
AdvData.addData(airtags->get(i).payload.data(), airtags->get(i).payloadSize);
|
||||
@@ -286,12 +286,17 @@ extern "C" {
|
||||
//// https://github.com/Spooks4576
|
||||
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
class bluetoothScanAllCallback: public NimBLEAdvertisedDeviceCallbacks {
|
||||
|
||||
void onResult(NimBLEAdvertisedDevice *advertisedDevice) {
|
||||
|
||||
extern WiFiScan wifi_scan_obj;
|
||||
|
||||
if (wifi_scan_obj.bt_pending_clear)
|
||||
return;
|
||||
|
||||
wifi_scan_obj.bt_cb_busy = true;
|
||||
|
||||
int buf = 0;
|
||||
|
||||
@@ -299,54 +304,76 @@ extern "C" {
|
||||
|
||||
if ((wifi_scan_obj.currentScanMode == BT_SCAN_AIRTAG) ||
|
||||
(wifi_scan_obj.currentScanMode == BT_SCAN_AIRTAG_MON)) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
//Serial.println("Getting payload length...");
|
||||
//Serial.flush();
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
if (!payLoad) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
#else
|
||||
const std::vector<unsigned char>& payLoad = advertisedDevice->getPayload();
|
||||
size_t len = payLoad.size();
|
||||
#endif
|
||||
|
||||
//Serial.println("Checking for airtag bytes. Len: " + (String)len + "...");
|
||||
//Serial.flush();
|
||||
bool match = false;
|
||||
for (int i = 0; i <= len - 4; i++) {
|
||||
if (payLoad[i] == 0x1E && payLoad[i+1] == 0xFF && payLoad[i+2] == 0x4C && payLoad[i+3] == 0x00) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
if (payLoad[i] == 0x4C && payLoad[i+1] == 0x00 && payLoad[i+2] == 0x12 && payLoad[i+3] == 0x19) {
|
||||
match = true;
|
||||
break;
|
||||
if (len >= 4) {
|
||||
for (size_t i = 0; i <= len - 4; i++) {
|
||||
if (payLoad[i] == 0x1E && payLoad[i+1] == 0xFF && payLoad[i+2] == 0x4C && payLoad[i+3] == 0x00) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
if (payLoad[i] == 0x4C && payLoad[i+1] == 0x00 && payLoad[i+2] == 0x12 && payLoad[i+3] == 0x19) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
int rssi = advertisedDevice->getRSSI();
|
||||
|
||||
if (match) {
|
||||
//Serial.println("Getting RSSI...");
|
||||
//Serial.flush();
|
||||
int rssi = advertisedDevice->getRSSI();
|
||||
|
||||
//Serial.println("Converting MAC to string...");
|
||||
//Serial.flush();
|
||||
String mac = advertisedDevice->getAddress().toString().c_str();
|
||||
mac.toUpperCase();
|
||||
|
||||
//Serial.println("Checking airtags for existing airtag...");
|
||||
//Serial.flush();
|
||||
for (int i = 0; i < airtags->size(); i++) {
|
||||
// Airtag is in list already. Update RSSI
|
||||
//Serial.println("Found existing airtag. Updating...");
|
||||
//Serial.flush();
|
||||
if (mac == airtags->get(i).mac) {
|
||||
AirTag old_airtag = airtags->get(i);
|
||||
old_airtag.rssi = rssi;
|
||||
old_airtag.last_seen = millis();
|
||||
airtags->set(i, old_airtag);
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
//Serial.println("Printing output to serial...");
|
||||
//Serial.flush();
|
||||
Serial.print(rssi);
|
||||
Serial.print(F(" MAC: "));
|
||||
Serial.println(mac);
|
||||
Serial.print(F("Len: "));
|
||||
Serial.print(F("Payload Len: "));
|
||||
Serial.print(len);
|
||||
Serial.print(F(" Payload: "));
|
||||
for (size_t i = 0; i < len; i++) {
|
||||
Serial.printf("%02X ", payLoad[i]);
|
||||
}
|
||||
Serial.println("\n");
|
||||
|
||||
//Serial.println("Creating new airtag for list...");
|
||||
//Serial.flush();
|
||||
AirTag airtag;
|
||||
airtag.mac = mac;
|
||||
airtag.payload.assign(payLoad, payLoad + len);
|
||||
@@ -356,14 +383,15 @@ extern "C" {
|
||||
|
||||
airtags->add(airtag);
|
||||
|
||||
|
||||
if (wifi_scan_obj.currentScanMode != BT_SCAN_AIRTAG_MON) {
|
||||
#ifdef HAS_SCREEN
|
||||
//Serial.println("Printing airtag to display...");
|
||||
//Serial.flush();
|
||||
display_string.concat((String)rssi);
|
||||
display_string.concat(" MAC: ");
|
||||
display_string.concat(mac);
|
||||
uint8_t temp_len = display_string.length();
|
||||
for (uint8_t i = 0; i < 40 - temp_len; i++)
|
||||
int temp_len = display_string.length();
|
||||
for (int i = 0; i < 40 - temp_len; i++)
|
||||
{
|
||||
display_string.concat(" ");
|
||||
}
|
||||
@@ -373,7 +401,7 @@ extern "C" {
|
||||
}
|
||||
}
|
||||
else if (wifi_scan_obj.currentScanMode == BT_SCAN_FLIPPER) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
#else
|
||||
@@ -407,8 +435,10 @@ extern "C" {
|
||||
mac.toUpperCase();
|
||||
|
||||
for (int i = 0; i < flippers->size(); i++) {
|
||||
if (mac == flippers->get(i).mac)
|
||||
if (mac == flippers->get(i).mac) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
int rssi = advertisedDevice->getRSSI();
|
||||
@@ -485,8 +515,10 @@ extern "C" {
|
||||
wifi_scan_obj.copyNimbleMac(advertisedDevice->getAddress(), mac_char);
|
||||
|
||||
if (wifi_scan_obj.currentScanMode != BT_SCAN_WAR_DRIVE_CONT) {
|
||||
if (wifi_scan_obj.seen_mac(mac_char))
|
||||
if (wifi_scan_obj.seen_mac(mac_char)) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Serial.print(F("Device: "));
|
||||
@@ -563,7 +595,7 @@ extern "C" {
|
||||
}
|
||||
}
|
||||
else if (wifi_scan_obj.currentScanMode == BT_SCAN_FLOCK) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
#else
|
||||
@@ -733,10 +765,12 @@ extern "C" {
|
||||
unsigned char mac_char[6];
|
||||
wifi_scan_obj.copyNimbleMac(advertisedDevice->getAddress(), mac_char);
|
||||
|
||||
if (wifi_scan_obj.seen_mac(mac_char))
|
||||
if (wifi_scan_obj.seen_mac(mac_char)) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
#else
|
||||
@@ -962,6 +996,7 @@ extern "C" {
|
||||
int frame_check = wifi_scan_obj.update_mac_entry(mac_char, advertisedDevice->getRSSI(), true);
|
||||
}
|
||||
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
};
|
||||
@@ -971,6 +1006,11 @@ extern "C" {
|
||||
void onResult(const NimBLEAdvertisedDevice* advertisedDevice) override {
|
||||
|
||||
extern WiFiScan wifi_scan_obj;
|
||||
|
||||
if (wifi_scan_obj.bt_pending_clear)
|
||||
return;
|
||||
|
||||
wifi_scan_obj.bt_cb_busy = true;
|
||||
|
||||
int buf = 0;
|
||||
|
||||
@@ -978,24 +1018,33 @@ extern "C" {
|
||||
|
||||
if ((wifi_scan_obj.currentScanMode == BT_SCAN_AIRTAG) ||
|
||||
(wifi_scan_obj.currentScanMode == BT_SCAN_AIRTAG_MON)) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
if (!payLoad) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
#else
|
||||
const std::vector<unsigned char>& payLoad = advertisedDevice->getPayload();
|
||||
size_t len = payLoad.size();
|
||||
#endif
|
||||
|
||||
bool match = false;
|
||||
for (int i = 0; i <= len - 4; i++) {
|
||||
if (payLoad[i] == 0x1E && payLoad[i+1] == 0xFF && payLoad[i+2] == 0x4C && payLoad[i+3] == 0x00) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
if (payLoad[i] == 0x4C && payLoad[i+1] == 0x00 && payLoad[i+2] == 0x12 && payLoad[i+3] == 0x19) {
|
||||
match = true;
|
||||
break;
|
||||
if (len >= 4) {
|
||||
for (size_t i = 0; i <= len - 4; i++) {
|
||||
if (payLoad[i] == 0x1E && payLoad[i+1] == 0xFF && payLoad[i+2] == 0x4C && payLoad[i+3] == 0x00) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
if (payLoad[i] == 0x4C && payLoad[i+1] == 0x00 && payLoad[i+2] == 0x12 && payLoad[i+3] == 0x19) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
int rssi = advertisedDevice->getRSSI();
|
||||
@@ -1011,6 +1060,7 @@ extern "C" {
|
||||
old_airtag.rssi = rssi;
|
||||
old_airtag.last_seen = millis();
|
||||
airtags->set(i, old_airtag);
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -1020,15 +1070,11 @@ extern "C" {
|
||||
Serial.println(mac);
|
||||
Serial.print(F("Len: "));
|
||||
Serial.print(len);
|
||||
Serial.print(F(" Payload: "));
|
||||
for (size_t i = 0; i < len; i++) {
|
||||
Serial.printf("%02X ", payLoad[i]);
|
||||
}
|
||||
Serial.println("\n");
|
||||
|
||||
AirTag airtag;
|
||||
airtag.mac = mac;
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
airtag.payload.assign(payLoad, payLoad + len);
|
||||
airtag.payloadSize = len;
|
||||
#else
|
||||
@@ -1057,7 +1103,7 @@ extern "C" {
|
||||
}
|
||||
}
|
||||
else if (wifi_scan_obj.currentScanMode == BT_SCAN_FLIPPER) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
#else
|
||||
@@ -1091,8 +1137,10 @@ extern "C" {
|
||||
mac.toUpperCase();
|
||||
|
||||
for (int i = 0; i < flippers->size(); i++) {
|
||||
if (mac == flippers->get(i).mac)
|
||||
if (mac == flippers->get(i).mac) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
int rssi = advertisedDevice->getRSSI();
|
||||
@@ -1168,8 +1216,10 @@ extern "C" {
|
||||
wifi_scan_obj.copyNimbleMac(advertisedDevice->getAddress(), mac_char);
|
||||
|
||||
if (wifi_scan_obj.currentScanMode != BT_SCAN_WAR_DRIVE_CONT) {
|
||||
if (wifi_scan_obj.seen_mac(mac_char))
|
||||
if (wifi_scan_obj.seen_mac(mac_char)) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Serial.print(F("Device: "));
|
||||
@@ -1193,22 +1243,6 @@ extern "C" {
|
||||
else {
|
||||
display_string.concat(" | GPS: No Fix");
|
||||
}
|
||||
|
||||
/*#ifdef HAS_SCREEN
|
||||
uint8_t temp_len = display_string.length();
|
||||
for (uint8_t i = 0; i < 40 - temp_len; i++)
|
||||
{
|
||||
display_string.concat(" ");
|
||||
}
|
||||
|
||||
Serial.println();
|
||||
|
||||
while (display_obj.printing)
|
||||
delay(1);
|
||||
display_obj.loading = true;
|
||||
display_obj.display_buffer->add(display_string);
|
||||
display_obj.loading = false;
|
||||
#endif*/
|
||||
|
||||
String wardrive_line = (String)advertisedDevice->getAddress().toString().c_str() + ",,[BLE]," + gps_obj.getDatetime() + ",0," + (String)advertisedDevice->getRSSI() + "," + gps_obj.getLat() + "," + gps_obj.getLon() + "," + gps_obj.getAlt() + "," + gps_obj.getAccuracy() + ",BLE\n";
|
||||
Serial.print(wardrive_line);
|
||||
@@ -1245,7 +1279,7 @@ extern "C" {
|
||||
}
|
||||
}
|
||||
else if (wifi_scan_obj.currentScanMode == BT_SCAN_FLOCK) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
#else
|
||||
@@ -1415,10 +1449,12 @@ extern "C" {
|
||||
unsigned char mac_char[6];
|
||||
wifi_scan_obj.copyNimbleMac(advertisedDevice->getAddress(), mac_char);
|
||||
|
||||
if (wifi_scan_obj.seen_mac(mac_char))
|
||||
if (wifi_scan_obj.seen_mac(mac_char)) {
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
uint8_t* payLoad = advertisedDevice->getPayload();
|
||||
size_t len = advertisedDevice->getPayloadLength();
|
||||
#else
|
||||
@@ -1643,6 +1679,9 @@ extern "C" {
|
||||
|
||||
int frame_check = wifi_scan_obj.update_mac_entry(mac_char, advertisedDevice->getRSSI(), true);
|
||||
}
|
||||
|
||||
wifi_scan_obj.bt_cb_busy = false;
|
||||
|
||||
return;
|
||||
}
|
||||
};
|
||||
@@ -1654,14 +1693,6 @@ WiFiScan::WiFiScan()
|
||||
{
|
||||
}
|
||||
|
||||
/*String WiFiScan::macToString(const Station& station) {
|
||||
char macStr[18]; // 6 pairs of hex digits + 5 colons + null terminator
|
||||
snprintf(macStr, sizeof(macStr), "%02X:%02X:%02X:%02X:%02X:%02X",
|
||||
station.mac[0], station.mac[1], station.mac[2],
|
||||
station.mac[3], station.mac[4], station.mac[5]);
|
||||
return String(macStr);
|
||||
}*/
|
||||
|
||||
void WiFiScan::RunSetup() {
|
||||
if (ieee80211_raw_frame_sanity_check(31337, 0, 0) == 1)
|
||||
this->wsl_bypass_enabled = true;
|
||||
@@ -1733,8 +1764,9 @@ void WiFiScan::RunSetup() {
|
||||
this->ble_initialized = true;
|
||||
|
||||
this->shutdownBLE();
|
||||
|
||||
esp_wifi_init(&cfg);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -2244,7 +2276,7 @@ void WiFiScan::startWiFiAttacks(uint8_t scan_mode, uint16_t color, String title_
|
||||
|
||||
packets_sent = 0;
|
||||
esp_wifi_init(&cfg);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
#endif
|
||||
esp_wifi_set_storage(WIFI_STORAGE_RAM);
|
||||
@@ -2322,6 +2354,8 @@ bool WiFiScan::shutdownWiFi() {
|
||||
|
||||
bool WiFiScan::shutdownBLE() {
|
||||
#ifdef HAS_BT
|
||||
this->bt_cb_busy = false;
|
||||
this->bt_pending_clear = false;
|
||||
if (this->ble_initialized) {
|
||||
Serial.println(F("Shutting down BLE"));
|
||||
pAdvertising->stop();
|
||||
@@ -2329,9 +2363,9 @@ bool WiFiScan::shutdownBLE() {
|
||||
|
||||
pBLEScan->clearResults();
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
//#ifndef HAS_DUAL_BAND
|
||||
NimBLEDevice::deinit();
|
||||
#endif
|
||||
//#endif
|
||||
|
||||
this->_analyzer_value = 0;
|
||||
this->bt_frames = 0;
|
||||
@@ -2524,7 +2558,7 @@ void WiFiScan::StopScan(uint8_t scan_mode)
|
||||
void WiFiScan::getMAC(bool get_sta, uint8_t* mac) {
|
||||
char *buf;
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
#endif
|
||||
esp_wifi_set_storage(WIFI_STORAGE_RAM);
|
||||
@@ -2561,7 +2595,7 @@ bool WiFiScan::mac_cmp(uint8_t addr1[6], uint8_t addr2[6]) {
|
||||
|
||||
#ifdef HAS_BT
|
||||
void WiFiScan::copyNimbleMac(const BLEAddress &addr, unsigned char out[6]) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
const uint8_t* bytes = addr.getNative(); // NimBLE gives MAC as uint8_t[6]
|
||||
#else
|
||||
const ble_addr_t* base_addr = addr.getBase();
|
||||
@@ -3504,7 +3538,7 @@ void WiFiScan::RunEvilPortal(uint8_t scan_mode, uint16_t color)
|
||||
display_obj.setupScrollArea(display_obj.TOP_FIXED_AREA_2, BOT_FIXED_AREA);
|
||||
#endif
|
||||
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_init(&cfg);
|
||||
//esp_wifi_set_country(&country);
|
||||
#endif
|
||||
@@ -3572,7 +3606,7 @@ void WiFiScan::RunAPScan(uint8_t scan_mode, uint16_t color)
|
||||
esp_event_loop_create_default();
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4276,7 +4310,7 @@ void WiFiScan::RunPacketMonitor(uint8_t scan_mode, uint16_t color)
|
||||
|
||||
Serial.println(F("Running packet scan..."));
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4359,7 +4393,7 @@ void WiFiScan::RunEapolScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4429,7 +4463,7 @@ void WiFiScan::RunMimicFlood(uint8_t scan_mode, uint16_t color) {
|
||||
|
||||
packets_sent = 0;
|
||||
esp_wifi_init(&cfg);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4481,7 +4515,7 @@ void WiFiScan::RunPineScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4535,7 +4569,7 @@ void WiFiScan::RunMultiSSIDScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4586,7 +4620,7 @@ void WiFiScan::RunPwnScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -4628,13 +4662,13 @@ void WiFiScan::executeSourApple() {
|
||||
delay(60);
|
||||
pAdvertising->stop();
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
//#ifndef HAS_DUAL_BAND
|
||||
if ((now_time - this->last_sour_apple_update > 1000) || (this->last_sour_apple_update == 0)) {
|
||||
this->last_sour_apple_update = now_time;
|
||||
NimBLEDevice::deinit();
|
||||
this->ble_initialized = false;
|
||||
}
|
||||
#endif
|
||||
//#endif
|
||||
|
||||
#endif
|
||||
}
|
||||
@@ -4683,9 +4717,9 @@ void WiFiScan::executeSpoofAirtag() {
|
||||
delay(10);
|
||||
pAdvertising->stop();
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
//#ifndef HAS_DUAL_BAND
|
||||
NimBLEDevice::deinit();
|
||||
#endif
|
||||
//#endif
|
||||
|
||||
break;
|
||||
}
|
||||
@@ -4715,9 +4749,9 @@ void WiFiScan::executeSwiftpairSpam(EBLEPayloadType type) {
|
||||
delay(10);
|
||||
pAdvertising->stop();
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
//#ifndef HAS_DUAL_BAND
|
||||
NimBLEDevice::deinit();
|
||||
#endif
|
||||
//#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -4835,7 +4869,7 @@ void WiFiScan::executeWarDrive() {
|
||||
// Start a BLE scan
|
||||
if (currentScanMode == WIFI_SCAN_WAR_DRIVE) {
|
||||
#ifdef HAS_BT
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_NIMBLE_2
|
||||
pBLEScan->start(500, false, false); // Scan is in MS
|
||||
#else
|
||||
pBLEScan->start(1, scanCompleteCB, false); // Scan is in Seconds
|
||||
@@ -4954,7 +4988,7 @@ void WiFiScan::RunBeaconScan(uint8_t scan_mode, uint16_t color)
|
||||
if (scan_mode != WIFI_SCAN_WAR_DRIVE) {
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -5029,7 +5063,7 @@ void WiFiScan::RunStationScan(uint8_t scan_mode, uint16_t color)
|
||||
} else {
|
||||
Serial.println(F("Wi-Fi init succeeded with custom config."));
|
||||
}
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -5101,7 +5135,7 @@ void WiFiScan::RunRawScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -5152,7 +5186,7 @@ void WiFiScan::RunDeauthScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -5212,7 +5246,7 @@ void WiFiScan::RunSAEScan(uint8_t scan_mode, uint16_t color) {
|
||||
esp_wifi_init(&cfg2);
|
||||
else
|
||||
esp_wifi_init(&cfg);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -5295,7 +5329,7 @@ void WiFiScan::RunProbeScan(uint8_t scan_mode, uint16_t color)
|
||||
#endif
|
||||
|
||||
esp_wifi_init(&cfg2);
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
esp_wifi_set_country(&country);
|
||||
esp_event_loop_create_default();
|
||||
#endif
|
||||
@@ -5489,7 +5523,7 @@ void WiFiScan::RunBluetoothScan(uint8_t scan_mode, uint16_t color)
|
||||
display_obj.setupScrollArea(display_obj.TOP_FIXED_AREA_2, BOT_FIXED_AREA);
|
||||
#endif
|
||||
if (scan_mode == BT_SCAN_ALL)
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), false);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), false);
|
||||
@@ -5508,7 +5542,7 @@ void WiFiScan::RunBluetoothScan(uint8_t scan_mode, uint16_t color)
|
||||
if ((scan_mode == BT_SCAN_AIRTAG) || (scan_mode == BT_SCAN_AIRTAG_MON))
|
||||
this->clearAirtags();
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), true);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), true);
|
||||
@@ -5557,13 +5591,13 @@ void WiFiScan::RunBluetoothScan(uint8_t scan_mode, uint16_t color)
|
||||
display_obj.setupScrollArea(display_obj.TOP_FIXED_AREA_2, BOT_FIXED_AREA);
|
||||
#endif
|
||||
if (scan_mode != BT_SCAN_WAR_DRIVE_CONT)
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), false);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), false);
|
||||
#endif
|
||||
else
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), true);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), true);
|
||||
@@ -5584,7 +5618,7 @@ void WiFiScan::RunBluetoothScan(uint8_t scan_mode, uint16_t color)
|
||||
display_obj.tft.setTextColor(TFT_BLACK, TFT_DARKGREY);
|
||||
display_obj.setupScrollArea(display_obj.TOP_FIXED_AREA_2, BOT_FIXED_AREA);
|
||||
#endif
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), false);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), false);
|
||||
@@ -5607,7 +5641,7 @@ void WiFiScan::RunBluetoothScan(uint8_t scan_mode, uint16_t color)
|
||||
display_obj.tft.setTextColor(TFT_CYAN, TFT_BLACK);
|
||||
display_obj.setupScrollArea(display_obj.TOP_FIXED_AREA_2, BOT_FIXED_AREA);
|
||||
#endif
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), false);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), false);
|
||||
@@ -5616,7 +5650,7 @@ void WiFiScan::RunBluetoothScan(uint8_t scan_mode, uint16_t color)
|
||||
}
|
||||
else if ((scan_mode == WIFI_SCAN_WAR_DRIVE) ||
|
||||
(scan_mode == WIFI_SCAN_DETECT_FOLLOW)) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_NIMBLE_2
|
||||
pBLEScan->setAdvertisedDeviceCallbacks(new bluetoothScanAllCallback(), true);
|
||||
#else
|
||||
pBLEScan->setScanCallbacks(new bluetoothScanAllCallback(), true);
|
||||
@@ -10753,7 +10787,7 @@ bool WiFiScan::checkHostPort(IPAddress ip, uint16_t port, uint16_t timeout) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
bool WiFiScan::readARP(IPAddress targ_ip) {
|
||||
// Convert IPAddress to ip4_addr_t using IP4_ADDR
|
||||
ip4_addr_t test_ip;
|
||||
@@ -10777,7 +10811,7 @@ bool WiFiScan::checkHostPort(IPAddress ip, uint16_t port, uint16_t timeout) {
|
||||
|
||||
bool WiFiScan::singleARP(IPAddress ip_addr) {
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
void* netif = NULL;
|
||||
tcpip_adapter_get_netif(TCPIP_ADAPTER_IF_STA, &netif);
|
||||
struct netif* netif_interface = (struct netif*)netif;
|
||||
@@ -10809,7 +10843,7 @@ bool WiFiScan::checkHostPort(IPAddress ip, uint16_t port, uint16_t timeout) {
|
||||
String display_string = "";
|
||||
String output_line = "";
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
void* netif = NULL;
|
||||
tcpip_adapter_get_netif(TCPIP_ADAPTER_IF_STA, &netif);
|
||||
struct netif* netif_interface = (struct netif*)netif;
|
||||
@@ -10954,7 +10988,7 @@ void WiFiScan::pingScan(uint8_t scan_mode) {
|
||||
|
||||
if (this->current_scan_ip != IPAddress(0, 0, 0, 0)) {
|
||||
this->current_scan_ip = getNextIP(this->current_scan_ip, this->subnet);
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
if (this->singleARP(this->current_scan_ip)) {
|
||||
#else
|
||||
if (this->isHostAlive(this->current_scan_ip)) {
|
||||
@@ -11152,7 +11186,11 @@ void WiFiScan::main(uint32_t currentTime)
|
||||
#ifdef HAS_BT
|
||||
if (this->ble_scanning) {
|
||||
pBLEScan->stop();
|
||||
this->bt_pending_clear = true;
|
||||
while (bt_cb_busy)
|
||||
delay(100);
|
||||
pBLEScan->clearResults();
|
||||
this->bt_pending_clear = false;
|
||||
this->ble_scanning = false;
|
||||
}
|
||||
else {
|
||||
@@ -11177,7 +11215,7 @@ void WiFiScan::main(uint32_t currentTime)
|
||||
this->pingScan();
|
||||
}
|
||||
else if (currentScanMode == WIFI_ARP_SCAN) {
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
this->fullARP();
|
||||
#endif
|
||||
}
|
||||
@@ -11210,13 +11248,25 @@ void WiFiScan::main(uint32_t currentTime)
|
||||
initTime = millis();
|
||||
|
||||
#ifdef HAS_BT
|
||||
this->bt_pending_clear = true;
|
||||
//Serial.println("Stopping BLE...");
|
||||
//Serial.flush();
|
||||
pBLEScan->stop();
|
||||
delay(5);
|
||||
//Serial.println("Clearing results...");
|
||||
//Serial.flush();
|
||||
while (bt_cb_busy)
|
||||
delay(100);
|
||||
pBLEScan->clearResults();
|
||||
this->bt_pending_clear = false;
|
||||
//Serial.println("Starting BLE...");
|
||||
//Serial.flush();
|
||||
pBLEScan->start(0, scanCompleteCB, false);
|
||||
#endif
|
||||
|
||||
#ifdef HAS_SCREEN
|
||||
//Serial.println("Updating UI...");
|
||||
//Serial.flush();
|
||||
display_obj.tft.fillRect(0,
|
||||
(STATUS_BAR_WIDTH * 2) + 1 + EXT_BUTTON_WIDTH,
|
||||
TFT_WIDTH,
|
||||
@@ -11227,6 +11277,8 @@ void WiFiScan::main(uint32_t currentTime)
|
||||
display_obj.tft.setTextSize(1);
|
||||
display_obj.tft.setTextColor(TFT_WHITE, TFT_BLACK);
|
||||
|
||||
//Serial.println("Printing Airtags to display...");
|
||||
//Serial.flush();
|
||||
for (int y = 0; y < airtags->size(); y++) {
|
||||
float last_seen_sec = (millis() - airtags->get(y).last_seen) / 1000;
|
||||
display_obj.tft.println((String)airtags->get(y).rssi + " " + (String)last_seen_sec + "s " + airtags->get(y).mac);
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <NimBLEDevice.h> // 1.3.8, 2.3.2
|
||||
#endif
|
||||
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
extern "C" {
|
||||
#include "esp_netif.h"
|
||||
#include "esp_netif_net_stack.h"
|
||||
@@ -32,15 +32,15 @@
|
||||
#include "mbedtls/bignum.h"
|
||||
#include "mbedtls/ctr_drbg.h"
|
||||
#include "mbedtls/ecp.h"
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
#include <lwip/etharp.h>
|
||||
#include <lwip/ip_addr.h>
|
||||
#endif
|
||||
#ifdef HAS_DUAL_BAND
|
||||
#ifdef HAS_IDF_3
|
||||
#include "esp_system.h"
|
||||
#include "esp_mac.h"
|
||||
#endif
|
||||
#if defined(HAS_BT) && !defined(HAS_DUAL_BAND)
|
||||
#if defined(HAS_BT) && !defined(HAS_NIMBLE_2)
|
||||
#include "esp_bt.h"
|
||||
#endif
|
||||
#ifdef HAS_SCREEN
|
||||
@@ -223,10 +223,6 @@ extern Settings settings_obj;
|
||||
|
||||
esp_err_t esp_wifi_80211_tx(wifi_interface_t ifx, const void *buffer, int len, bool en_sys_seq);
|
||||
|
||||
//#ifdef HAS_DUAL_BAND
|
||||
// esp_err_t esp_base_mac_addr_set(uint8_t *Mac);
|
||||
//#endif
|
||||
|
||||
#define EMPTY_ENTRY 0
|
||||
#define VALID_ENTRY 1
|
||||
#define TOMBSTONE_ENTRY 2
|
||||
@@ -662,6 +658,10 @@ class WiFiScan
|
||||
|
||||
//LinkedList<ssid>* ssids;
|
||||
|
||||
volatile bool bt_cb_busy = false;
|
||||
volatile bool bt_pending_clear = false;
|
||||
|
||||
|
||||
static MacEntry mac_entries[mac_history_len];
|
||||
static uint8_t mac_entry_state[mac_history_len];
|
||||
|
||||
@@ -742,7 +742,7 @@ class WiFiScan
|
||||
|
||||
wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
wifi_init_config_t cfg2 = { \
|
||||
.event_handler = &esp_event_send_internal, \
|
||||
.osi_funcs = &g_wifi_osi_funcs, \
|
||||
|
||||
@@ -140,6 +140,10 @@
|
||||
#define USE_SD
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
//#define HAS_C5_SD
|
||||
#define HAS_SIMPLEX_DISPLAY
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_V7
|
||||
@@ -157,6 +161,8 @@
|
||||
#define USE_SD
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_V7_1
|
||||
@@ -175,6 +181,7 @@
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_PSRAM
|
||||
//#define HAS_NIMBLE_2
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_REV_FEATHER
|
||||
@@ -207,6 +214,9 @@
|
||||
#define USE_SD
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#define HAS_C5_SD
|
||||
#endif
|
||||
|
||||
#if defined(MARAUDER_V6) || defined(MARAUDER_V6_1)
|
||||
@@ -224,6 +234,9 @@
|
||||
#define USE_SD
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#define HAS_C5_SD
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_CYD_MICRO
|
||||
@@ -243,6 +256,7 @@
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_CYD_TOUCH
|
||||
//#define HAS_NIMBLE_2
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_CYD_2USB
|
||||
@@ -263,6 +277,7 @@
|
||||
#define HAS_GPS
|
||||
#define HAS_CYD_TOUCH
|
||||
#define HAS_CYD_PORTRAIT
|
||||
//#define HAS_NIMBLE_2
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_CYD_3_5_INCH
|
||||
@@ -284,6 +299,7 @@
|
||||
//#define HAS_CYD_TOUCH
|
||||
#define HAS_SEPARATE_SD
|
||||
#define HAS_CYD_PORTRAIT
|
||||
//#define HAS_NIMBLE_2
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_CYD_GUITION
|
||||
@@ -303,6 +319,7 @@
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
//#define HAS_CYD_TOUCH
|
||||
//#define HAS_NIMBLE_2
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_KIT
|
||||
@@ -319,6 +336,9 @@
|
||||
#define USE_SD
|
||||
#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#define HAS_C5_SD
|
||||
#endif
|
||||
|
||||
#ifdef GENERIC_ESP32
|
||||
@@ -332,6 +352,7 @@
|
||||
//#define HAS_SD
|
||||
//#define HAS_TEMP_SENSOR
|
||||
//#define HAS_GPS
|
||||
//#define HAS_NIMBLE_2
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_FLIPPER
|
||||
@@ -378,6 +399,8 @@
|
||||
#define USE_SD
|
||||
//#define HAS_TEMP_SENSOR
|
||||
//#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_DEV_BOARD_PRO
|
||||
@@ -392,6 +415,8 @@
|
||||
#define USE_SD
|
||||
//#define HAS_TEMP_SENSOR
|
||||
#define HAS_GPS
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#endif
|
||||
|
||||
#ifdef XIAO_ESP32_S3
|
||||
@@ -423,6 +448,8 @@
|
||||
#define HAS_DUAL_BAND
|
||||
//#define HAS_PSRAM
|
||||
//#define HAS_TEMP_SENSOR
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_V8
|
||||
@@ -443,6 +470,8 @@
|
||||
#define HAS_DUAL_BAND
|
||||
#define HAS_PSRAM
|
||||
//#define HAS_TEMP_SENSOR
|
||||
#define HAS_NIMBLE_2
|
||||
#define HAS_IDF_3
|
||||
#endif
|
||||
//// END BOARD FEATURES
|
||||
|
||||
@@ -2540,6 +2569,36 @@
|
||||
#define SD_MOSI TFT_MOSI
|
||||
#define SD_SCK TFT_SCLK
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_V4
|
||||
#define SD_MISO TFT_MISO
|
||||
#define SD_MOSI TFT_MOSI
|
||||
#define SD_SCK TFT_SCLK
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_V6
|
||||
#define SD_MISO TFT_MISO
|
||||
#define SD_MOSI TFT_MOSI
|
||||
#define SD_SCK TFT_SCLK
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_V6_1
|
||||
#define SD_MISO TFT_MISO
|
||||
#define SD_MOSI TFT_MOSI
|
||||
#define SD_SCK TFT_SCLK
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_KIT
|
||||
#define SD_MISO TFT_MISO
|
||||
#define SD_MOSI TFT_MOSI
|
||||
#define SD_SCK TFT_SCLK
|
||||
#endif
|
||||
|
||||
#ifdef MARAUDER_MINI
|
||||
#define SD_MISO TFT_MISO
|
||||
#define SD_MOSI TFT_MOSI
|
||||
#define SD_SCK TFT_SCLK
|
||||
#endif
|
||||
#endif
|
||||
//// END STUPID CYD STUFF
|
||||
|
||||
|
||||
@@ -160,10 +160,15 @@ void setup()
|
||||
esp_log_level_set("*", ESP_LOG_NONE);
|
||||
#endif
|
||||
|
||||
#ifndef HAS_DUAL_BAND
|
||||
#ifndef HAS_IDF_3
|
||||
esp_spiram_init();
|
||||
#endif
|
||||
|
||||
Serial.begin(115200);
|
||||
|
||||
while(!Serial)
|
||||
delay(10);
|
||||
|
||||
#ifdef HAS_C5_SD
|
||||
Serial.println("Starting shared SPI for C5 SD configuration...");
|
||||
sharedSPI.begin(SD_SCK, SD_MISO, SD_MOSI);
|
||||
@@ -204,21 +209,30 @@ void setup()
|
||||
delay(10);
|
||||
#endif
|
||||
|
||||
Serial.begin(115200);
|
||||
//Serial.begin(115200);
|
||||
|
||||
while(!Serial)
|
||||
delay(10);
|
||||
//while(!Serial)
|
||||
// delay(10);
|
||||
|
||||
Serial.println("ESP-IDF version is: " + String(esp_get_idf_version()));
|
||||
|
||||
#ifdef HAS_PSRAM
|
||||
if (psramInit()) {
|
||||
Serial.println("PSRAM is correctly initialized");
|
||||
Serial.println(F("PSRAM is correctly initialized"));
|
||||
} else {
|
||||
Serial.println("PSRAM not available");
|
||||
Serial.println(F("PSRAM not available"));
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_SIMPLEX_DISPLAY
|
||||
#if defined(HAS_SD)
|
||||
// Do some SD stuff
|
||||
if(!sd_obj.initSD())
|
||||
Serial.println(F("SD Card NOT Supported"));
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef HAS_SCREEN
|
||||
display_obj.RunSetup();
|
||||
display_obj.tft.setTextColor(TFT_WHITE, TFT_BLACK);
|
||||
@@ -249,7 +263,7 @@ void setup()
|
||||
|
||||
backlightOff();
|
||||
|
||||
Serial.println("Headless Mode enabled");
|
||||
Serial.println(F("Headless Mode enabled"));
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
@@ -257,11 +271,14 @@ void setup()
|
||||
settings_obj.begin();
|
||||
|
||||
buffer_obj = Buffer();
|
||||
#if defined(HAS_SD)
|
||||
// Do some SD stuff
|
||||
if(!sd_obj.initSD())
|
||||
Serial.println(F("SD Card NOT Supported"));
|
||||
|
||||
#ifndef HAS_SIMPLEX_DISPLAY
|
||||
#if defined(HAS_SD)
|
||||
// Do some SD stuff
|
||||
if(!sd_obj.initSD())
|
||||
Serial.println(F("SD Card NOT Supported"));
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
wifi_scan_obj.RunSetup();
|
||||
|
||||
Reference in New Issue
Block a user