From 360d2d2ad3bd584014683f3579fc2e2348c16852 Mon Sep 17 00:00:00 2001 From: krolyxon Date: Mon, 11 May 2026 11:50:17 +0530 Subject: [PATCH] add Zigbee, Video TX, Rc, USb Wireless Jamming --- README.md | 4 +--- firmware/menu.cpp | 25 +++++++++++++++++++------ firmware/nrf24.cpp | 36 ++++++++++++++++++++++++++++++++---- 3 files changed, 52 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 02572f9..82c5ed8 100644 --- a/README.md +++ b/README.md @@ -45,9 +45,7 @@ ### WiFi Jammer - NRF24-based WiFi interference testing -- Experimental - -> ⚠️ These tools are intended strictly for wireless research, testing, and educational purposes in authorized environments. +- Able to jam 2.4Ghz wifi connections (Not 5G) --- diff --git a/firmware/menu.cpp b/firmware/menu.cpp index 9348c1a..9880b89 100644 --- a/firmware/menu.cpp +++ b/firmware/menu.cpp @@ -12,6 +12,7 @@ #include "ble_mouse.h" #include "sysinfo.h" #include "BleMouse.h" +#include "nfc.h" // ================= MENU DATA ================= extern BleMouse bleMouse; @@ -27,7 +28,8 @@ const char *mainMenuItems[] = { "System Info", "Device Check", "Restart", - "Ble Mouse" + "Ble Mouse", + "NFC Tools" }; Menu mainMenu = {mainMenuItems, sizeof(mainMenuItems) / sizeof(mainMenuItems[0])}; @@ -37,7 +39,12 @@ Menu mainMenu = {mainMenuItems, sizeof(mainMenuItems) / sizeof(mainMenuItems[0]) const char *nrfToolsItems[] = { "BLE Jammer", "Bluetooth Jammer", - "Wifi Jammer" + "Wifi Jammer", + "USB Wireless", + "Video TX", + "Zigbee", + "RC" + }; Menu nrfToolsMenu = {nrfToolsItems, sizeof(nrfToolsItems) / sizeof(nrfToolsItems[0])}; @@ -151,10 +158,10 @@ void launchFeature() case 1: if (!isCC1101Ready()) { - if (!initCC1101()) { - Serial.println("CC1101 failed"); - return; - } + if (!initCC1101()) { + Serial.println("CC1101 failed"); + return; + } } Serial.println("Ready to capture..."); @@ -163,7 +170,10 @@ void launchFeature() delay(5000); stopCapture(); printCapture(); + delay(5000); + replaySignal(); break; + case 2: // startNRFJammer(); //startBleJammer(); @@ -308,6 +318,9 @@ void launchFeature() bleMouse.begin(); ble_mouse_run(); break; + case 10: + pn532_scan_loop(); + break; } } else if (currentMenu == &badusbMenu) diff --git a/firmware/nrf24.cpp b/firmware/nrf24.cpp index 60e260c..7d12051 100644 --- a/firmware/nrf24.cpp +++ b/firmware/nrf24.cpp @@ -9,20 +9,23 @@ extern SPIClass *RADIO_SPI; extern RF24 radio1; extern RF24 radio2; +// ============ CHANNELS ============= const byte bleChannels[] = {2, 26, 80}; - const byte bluetoothChannels[] = { 32, 34, 46, 48, 50, 52, 0, 1, 2, 4, 6, 8, 22, 24, 26, 28, 30, 74, 76, 78, 80 }; - const byte wifiChannels[] = { 12, 17, 22, 27, 32, 37, 42, 47, 52, 57, 62, 67, 72 }; +const byte usbWireless_channels[] = {40, 50, 60}; +const byte videoTransmitter_channels[] = {70, 75, 80}; +const byte zigbee_channels[] = {11, 15, 20, 25}; +const byte rc_channels[] = {1, 3, 5, 7}; void initNRF(RF24 &radio) { @@ -34,9 +37,10 @@ void initNRF(RF24 &radio) radio.setAutoAck(false); radio.stopListening(); radio.setRetries(0, 0); - radio.setPALevel(RF24_PA_MAX); + radio.setPALevel(RF24_PA_MAX, true); radio.setDataRate(RF24_2MBPS); radio.openWritingPipe(0xE7E7E7E7E7LL); + radio.setCRCLength(RF24_CRC_DISABLED); Serial.println("NRF Initialized"); } @@ -216,6 +220,30 @@ void NRFToolsMenu(int index) { sizeof(wifiChannels) / sizeof(wifiChannels[0]) ); break; + case 3: + startJammer( + "USB Wireless", + usbWireless_channels, + sizeof(usbWireless_channels) / sizeof(usbWireless_channels[0]) + ); + break; + case 4: + startJammer( + "Video TX", + videoTransmitter_channels, + sizeof(videoTransmitter_channels) / sizeof(videoTransmitter_channels[0]) + ); + break; + case 5: + break; + startJammer( + "RC", + rc_channels, + sizeof(rc_channels) / sizeof(rc_channels[0]) + ); + break; + case 6: - } + break; } + }