orion-rf360d2d2
add Zigbee, Video TX, Rc, USb Wireless Jamming
+52 −13
3 files changed
- M README.md +1 −3
- M firmware/menu.cpp +19 −6
- M firmware/nrf24.cpp +32 −4
| @@ -45,9 +45,7 @@ | |||
| 45 | 45 | ||
| 46 | 46 | ### WiFi Jammer | |
| 47 | 47 | - NRF24-based WiFi interference testing | |
| 48 | − | - Experimental | |
| 49 | − | ||
| 50 | − | > ⚠️ These tools are intended strictly for wireless research, testing, and educational purposes in authorized environments. | |
| 48 | + | - Able to jam 2.4Ghz wifi connections (Not 5G) | |
| 51 | 49 | ||
| 52 | 50 | --- | |
| 53 | 51 | ||
| @@ -12,6 +12,7 @@ | |||
| 12 | 12 | #include "ble_mouse.h" | |
| 13 | 13 | #include "sysinfo.h" | |
| 14 | 14 | #include "BleMouse.h" | |
| 15 | + | #include "nfc.h" | |
| 15 | 16 | ||
| 16 | 17 | // ================= MENU DATA ================= | |
| 17 | 18 | extern BleMouse bleMouse; | |
| @@ -27,7 +28,8 @@ const char *mainMenuItems[] = { | |||
| 27 | 28 | "System Info", | |
| 28 | 29 | "Device Check", | |
| 29 | 30 | "Restart", | |
| 30 | − | "Ble Mouse" | |
| 31 | + | "Ble Mouse", | |
| 32 | + | "NFC Tools" | |
| 31 | 33 | }; | |
| 32 | 34 | ||
| 33 | 35 | Menu mainMenu = {mainMenuItems, sizeof(mainMenuItems) / sizeof(mainMenuItems[0])}; | |
| @@ -37,7 +39,12 @@ Menu mainMenu = {mainMenuItems, sizeof(mainMenuItems) / sizeof(mainMenuItems[0]) | |||
| 37 | 39 | const char *nrfToolsItems[] = { | |
| 38 | 40 | "BLE Jammer", | |
| 39 | 41 | "Bluetooth Jammer", | |
| 40 | − | "Wifi Jammer" | |
| 42 | + | "Wifi Jammer", | |
| 43 | + | "USB Wireless", | |
| 44 | + | "Video TX", | |
| 45 | + | "Zigbee", | |
| 46 | + | "RC" | |
| 47 | + | ||
| 41 | 48 | }; | |
| 42 | 49 | ||
| 43 | 50 | Menu nrfToolsMenu = {nrfToolsItems, sizeof(nrfToolsItems) / sizeof(nrfToolsItems[0])}; | |
| @@ -151,10 +158,10 @@ void launchFeature() | |||
| 151 | 158 | ||
| 152 | 159 | case 1: | |
| 153 | 160 | if (!isCC1101Ready()) { | |
| 154 | − | if (!initCC1101()) { | |
| 155 | − | Serial.println("CC1101 failed"); | |
| 156 | − | return; | |
| 157 | − | } | |
| 161 | + | if (!initCC1101()) { | |
| 162 | + | Serial.println("CC1101 failed"); | |
| 163 | + | return; | |
| 164 | + | } | |
| 158 | 165 | } | |
| 159 | 166 | ||
| 160 | 167 | Serial.println("Ready to capture..."); | |
| @@ -163,7 +170,10 @@ void launchFeature() | |||
| 163 | 170 | delay(5000); | |
| 164 | 171 | stopCapture(); | |
| 165 | 172 | printCapture(); | |
| 173 | + | delay(5000); | |
| 174 | + | replaySignal(); | |
| 166 | 175 | break; | |
| 176 | + | ||
| 167 | 177 | case 2: | |
| 168 | 178 | // startNRFJammer(); | |
| 169 | 179 | //startBleJammer(); | |
| @@ -308,6 +318,9 @@ void launchFeature() | |||
| 308 | 318 | bleMouse.begin(); | |
| 309 | 319 | ble_mouse_run(); | |
| 310 | 320 | break; | |
| 321 | + | case 10: | |
| 322 | + | pn532_scan_loop(); | |
| 323 | + | break; | |
| 311 | 324 | } | |
| 312 | 325 | } | |
| 313 | 326 | else if (currentMenu == &badusbMenu) | |
| @@ -9,20 +9,23 @@ extern SPIClass *RADIO_SPI; | |||
| 9 | 9 | extern RF24 radio1; | |
| 10 | 10 | extern RF24 radio2; | |
| 11 | 11 | ||
| 12 | + | // ============ CHANNELS ============= | |
| 12 | 13 | const byte bleChannels[] = {2, 26, 80}; | |
| 13 | − | ||
| 14 | 14 | const byte bluetoothChannels[] = { | |
| 15 | 15 | 32, 34, 46, 48, 50, 52, | |
| 16 | 16 | 0, 1, 2, 4, 6, 8, | |
| 17 | 17 | 22, 24, 26, 28, 30, | |
| 18 | 18 | 74, 76, 78, 80 | |
| 19 | 19 | }; | |
| 20 | − | ||
| 21 | 20 | const byte wifiChannels[] = { | |
| 22 | 21 | 12, 17, 22, 27, 32, | |
| 23 | 22 | 37, 42, 47, 52, 57, | |
| 24 | 23 | 62, 67, 72 | |
| 25 | 24 | }; | |
| 25 | + | const byte usbWireless_channels[] = {40, 50, 60}; | |
| 26 | + | const byte videoTransmitter_channels[] = {70, 75, 80}; | |
| 27 | + | const byte zigbee_channels[] = {11, 15, 20, 25}; | |
| 28 | + | const byte rc_channels[] = {1, 3, 5, 7}; | |
| 26 | 29 | ||
| 27 | 30 | void initNRF(RF24 &radio) | |
| 28 | 31 | { | |
| @@ -34,9 +37,10 @@ void initNRF(RF24 &radio) | |||
| 34 | 37 | radio.setAutoAck(false); | |
| 35 | 38 | radio.stopListening(); | |
| 36 | 39 | radio.setRetries(0, 0); | |
| 37 | − | radio.setPALevel(RF24_PA_MAX); | |
| 40 | + | radio.setPALevel(RF24_PA_MAX, true); | |
| 38 | 41 | radio.setDataRate(RF24_2MBPS); | |
| 39 | 42 | radio.openWritingPipe(0xE7E7E7E7E7LL); | |
| 43 | + | radio.setCRCLength(RF24_CRC_DISABLED); | |
| 40 | 44 | Serial.println("NRF Initialized"); | |
| 41 | 45 | ||
| 42 | 46 | } | |
| @@ -216,6 +220,30 @@ void NRFToolsMenu(int index) { | |||
| 216 | 220 | sizeof(wifiChannels) / sizeof(wifiChannels[0]) | |
| 217 | 221 | ); | |
| 218 | 222 | break; | |
| 223 | + | case 3: | |
| 224 | + | startJammer( | |
| 225 | + | "USB Wireless", | |
| 226 | + | usbWireless_channels, | |
| 227 | + | sizeof(usbWireless_channels) / sizeof(usbWireless_channels[0]) | |
| 228 | + | ); | |
| 229 | + | break; | |
| 230 | + | case 4: | |
| 231 | + | startJammer( | |
| 232 | + | "Video TX", | |
| 233 | + | videoTransmitter_channels, | |
| 234 | + | sizeof(videoTransmitter_channels) / sizeof(videoTransmitter_channels[0]) | |
| 235 | + | ); | |
| 236 | + | break; | |
| 237 | + | case 5: | |
| 238 | + | break; | |
| 239 | + | startJammer( | |
| 240 | + | "RC", | |
| 241 | + | rc_channels, | |
| 242 | + | sizeof(rc_channels) / sizeof(rc_channels[0]) | |
| 243 | + | ); | |
| 244 | + | break; | |
| 245 | + | case 6: | |
| 219 | 246 | ||
| 220 | − | } | |
| 247 | + | break; | |
| 221 | 248 | } | |
| 249 | + | } | |