W0rthlessS0ul/nRF24_jammer
GitHub: W0rthlessS0ul/nRF24_jammer
基于 ESP32 与多路 nRF24 射频模块的便携式 2.4GHz 频段干扰器,可对蓝牙、BLE、Wi-Fi、Zigbee 及无人机通信实施定向干扰。
Stars: 607 | Forks: 62
🌟 nRF24 Jammer 🌟
欢迎使用 **nRF24 Jammer** 仓库!🎉 通过这个基于 ESP32 和 nRF24 技术的独特项目,深入探索射频干扰的世界。
## 📚 目录
- [🎯 可能的扩展](#-possible-additions)
- [🚀 你能用它做什么?](#-what-can-you-do-with-this)
- [📋 组件列表](#-list-of-components)
- [🧑🔧 开始焊接!](#-lets-get-started-with-soldering)
- [🛠️ 从源码构建](#-build-from-source)
- [📦 烧录固件](#-flash-firmware)
- [🎮 设备控制](#-device-control)
- [🌐 Web 界面](#-Web-Interface)
- [🔌 串口界面](#-Serial-Interface)
- [🎉 最终效果](#-final-outcome)
- [🙏 致谢](#-acknowledgments)
- [🤝 项目支持者](#-project-supporters)
- [❤️ 支持该项目](#-support-the-project)
- [⭐ Star 历史](#-star-history)
## 🎯 可能的扩展
- **BLE spam**
- **Beacon spam**
- **nRF24 mousejack**
***`如果您有能力协助实现这些功能,请随时提交 pull requests!`***
## 🚀 你能用它做什么?
这款出色的干扰器基于 **ESP32** 架构,并集成了 **可配置数量的 nRF24** 模块。凭借其强大的功能,您可以有效干扰不同技术的信号,包括:
- **Bluetooth** 🔊
- **BLE** 📱
- **无人机** 🚁
- **Wi-Fi** 📶
- **Zigbee**📡
## 📋 组件列表
为了将这个项目变为现实,您需要以下组件:
1. **nRF24L01+PA+LNA 模块** 🛠️
2. **ESP-WROOM-32** ⚙️
3. **16V 电容**,额定容量为 **100µF** 🔋
4. **128x32 或 128x64 OLED 显示屏** 📺 *(可选)*
5. **轻触按钮** 🔘 *(可选)*
## 🧑🔧 开始焊接!
### 连接第一个 nRF24 模块 (**可选**)
| **引脚名称** | **ESP32 GPIO** | **连接** |
|--------------|----------------|----------------------|
| VCC | 3.3V | 电容 (+) |
| GND | GND | 电容 (-) |
| CE | GPIO 16 | |
| CSN | GPIO 15 | |
| SCK | GPIO 14 | |
| MOSI | GPIO 13 | |
| MISO | GPIO 12 | |
| IRQ | | |
### 连接第二个 nRF24 模块 (**可选**)
| **引脚名称** | **ESP32 GPIO** | **连接** |
|--------------|----------------|----------------------|
| VCC | 3.3V | 电容 (+) |
| GND | GND | 电容 (-) |
| CE | GPIO 18 | |
| CSN | GPIO 17 | |
| SCK | GPIO 14 | |
| MOSI | GPIO 13 | |
| MISO | GPIO 12 | |
| IRQ | | |
### 连接第三个 nRF24 模块 (**可选**)
| **引脚名称** | **ESP32 GPIO** | **连接** |
|--------------|----------------|----------------------|
| VCC | 3.3V | 电容 (+) |
| GND | GND | 电容 (-) |
| CE | GPIO 23 | |
| CSN | GPIO 19 | |
| SCK | GPIO 14 | |
| MOSI | GPIO 13 | |
| MISO | GPIO 12 | |
| IRQ | | |
### 连接第四个 nRF24 模块 (**可选**)
| **引脚名称** | **ESP32 GPIO** | **连接** |
|--------------|----------------|----------------------|
| VCC | 3.3V | 电容 (+) |
| GND | GND | 电容 (-) |
| CE | GPIO 5 | |
| CSN | GPIO 4 | |
| SCK | GPIO 14 | |
| MOSI | GPIO 13 | |
| MISO | GPIO 12 | |
| IRQ | | |
### 连接第五个 nRF24 模块 (**可选**)
| **引脚名称** | **ESP32 GPIO** | **连接** |
|--------------|----------------|----------------------|
| VCC | 3.3V | 电容 (+) |
| GND | GND | 电容 (-) |
| CE | GPIO 33 | |
| CSN | GPIO 32 | |
| SCK | GPIO 14 | |
| MOSI | GPIO 13 | |
| MISO | GPIO 12 | |
| IRQ | | |
### OLED 连接 (**可选**)
| **引脚名称** | **ESP32 GPIO** |
|--------------|----------------|
| VCC | 3.3V |
| GND | GND |
| SCL | GPIO 22 |
| SDA | GPIO 21 |
### 按钮连接 (**可选**)
| **按钮动作** | **ESP32 GPIO** |
|--------------|----------------|
| OK | GPIO 25 |
| NEXT (可选) | GPIO 26 |
| PREVIOUS (可选) | GPIO 27 |

###### 在所有配置中,都使用了相同的 SCK、MOSI 和 MISO 引脚。这不是错误——SPI 接口可以共享时钟和数据线,同时通过独立的控制信号(CSN 和 CE)确保正常运行
## 🛠️ 从源码构建
#### 本节**面向贡献者**。如果您是项目的普通用户,可以跳过此部分
1. 在 **VS Code** 中安装 **PlatformIO IDE** 扩展
2. 点击 PlatformIO 图标 → 打开 → 打开项目 → 选择您的项目文件夹
3. 等待所有依赖项安装完成
4. 现在您可以在“PROJECT TASKS”中选择要编译的项目,或者选择“Build all”一次性编译所有类型的固件。
5. 输出的 .bin 文件位于:```project_root/bin/[env_name]```

###### ⚠️ 源码构建重要提示:自 v2.5.0 起,本项目使用了修改版的 RF24 库(参见 /lib)。
## 📦 烧录固件
手动更新
按照以下步骤烧录固件:
1. 从与您的显示屏对应的 **[releases](https://github.com/W0rthlessS0ul/nRF24_jammer/releases)** 部分下载固件
2. 访问 **ESPWebTool**:[ESPWebTool](https://esp.huhn.me/)
3. 按照下表整理文件:
| **地址** | **文件名** |
|-------------|-------------------------------------------|
| 0x1000 | bootloader.bin |
| 0x8000 | partitions.bin |
| 0x10000 | firmware.bin |
4. 点击“Flash”,安装完成后,**重启您的开发板**,即可尽情使用您的干扰器!

OTA 更新
### 此方法仅在您安装了 1.9 或更高版本的固件时才能使用。
按照以下步骤烧录固件:
1. 从与您的显示屏对应的 **[releases](https://github.com/W0rthlessS0ul/nRF24_jammer/releases)** 部分下载固件
2. 打开您的设备并启动网页浏览器
3. 访问 Web 界面地址 **192.168.4.1**
4. 点击“**OTA**”并选择文件“**firmware.bin**”(`⚠️️ 确保不要选择 bootloader 或 partitions 文件`)

## 🎮 设备控制
🟢 1 按键配置
#### 📋 菜单导航
- **短按** → 下一个菜单项
- **长按** → 选择菜单项
#### 📡 杂项干扰器
- **短按** → 频道 +1
- **长按** → 持续频道 +1(每 100ms)
- **双击** → 选择频道
#### 📡 WiFi 攻击
- **短按** → 停止攻击
- **双击** → 在 jam\deauth 之间切换
🔵 2 按键配置
#### 📋 菜单导航
- **Next 按钮** 短按 → 下一个菜单项
- **OK 按钮** 短按 → 选择菜单项
#### 📡 杂项干扰器
- **Next 按钮** 短按 → 频道 +1
- **Next 按钮** 长按 → 持续频道 +1(每 100ms)
- **OK 按钮** 短按 → 选择频道
#### 📡 WiFi 攻击
- **短按** → 停止攻击
- **Next 按钮** → 在 jam\deauth 之间切换
🟣 3 按键配置
#### 📋 菜单导航
- **Next 按钮** 短按 → 下一个菜单项
- **Previous 按钮** 短按 → 上一个菜单项
- **OK 按钮** 短按 → 选择菜单项
#### 📡 杂项干扰器
- **Next 按钮** 短按 → 频道 +1
- **Next 按钮** 长按 → 持续频道 +1(每 100ms)
- **Previous 按钮** 短按 → 频道 -1
- **Previous 按钮** 长按 → 持续频道 -1(每 100ms)
- **OK 按钮** 短按 → 选择频道
#### 📡 WiFi 攻击
- **短按** → 停止攻击
- **Next 按钮** → 在 jam\deauth 之间切换
- **Previous 按钮** → 在 jam\deauth 之间切换
## 🌐 Web 界面
- 要使用 Web 界面,请按照以下列出的步骤操作
1. 激活 **nRF24 jammer**
2. 使用密码 `W0rthlessS0ul` 连接到名为 `jammer` 的 Wi-Fi 网络
3. 打开您的网络浏览器并访问 IP 地址 `192.168.4.1`
4. 现在您可以通过 Web 界面控制您的 nRF24 干扰器了

## 🔌 串口界面
- 要使用串口界面,请按照以下列出的步骤操作
1. 激活 **nRF24 jammer**
2. 通过 USB 将设备连接到 PC 或手机
3. 您可以使用任何串口终端进行控制,例如:[spacehuhn terminal](https://terminal.spacehuhn.com/)
4. 现在输入 **help** 获取命令列表

## 🎉 最终效果

### 正常频谱

### Bluetooth 干扰频谱

### 无人机干扰频谱

### Wi-Fi 干扰频谱

### BLE 干扰频谱

### Zigbee 干扰频谱

### 杂项干扰频谱

## 🙏 致谢
- [smoochiee](https://github.com/smoochiee) - **提供了干扰器的主要逻辑。**
- [samukas81](https://github.com/samukas81) - **提出了宝贵的建议。**
## 🤝 项目支持者
| **支持者** | **贡献**|
|------------------------------------------------|-----------------|
| [@sergey273](https://github.com/sergey2735) | 40.7 ADA |
## ❤️ 支持该项目
如果您想支持这个项目,请考虑为仓库加星或关注我!如果您认可这其中付出的辛勤努力,请我喝杯咖啡将为我提供持续的动力!☕
**BTC 地址:** `bc1qvul4mlxxw5h2hnt8knnxdrxuwgpf4styyk20tm`
**ETH 地址:** `0x5c54eAb2acFE1c6C866FB4b050d8B69CfB1138Af`
**LTC 地址:** `LbdzCsYbxuD341raar6Cg1yKavaDq7fjuV`
**XRP 地址:** `rKLLPzoBGfqY3pAQPwTFPRYaWjpHSwHNDw`
**ADA 地址:** `addr1qyz2aku0ucmxqnl60lza23lkx2xha8zmxz9wqxnrtvpjysgy4mdcle3kvp8l5l7964rlvv5d06w9kvy2uqdxxkcryfqs7pajev`
**DOGE 地址:** `DBzAvD62yQUkP4Cb7C5LuFYQEierF3D3oG`
非常感谢每一笔捐款,这将为本项目的持续开发提供支持!
## ⭐ Star 历史
标签:Beacon Spammer, BLE干扰, DIY电子, ESP32, Mousejack, nRF24, RF干扰, UML, Web控制界面, Wi-Fi干扰, Zigbee干扰, 信号屏蔽, 信号阻断, 客户端加密, 嵌入式开发, 开源硬件, 无人机反制, 无线干扰器, 无线电安全, 物联网安全, 硬件黑客, 自制干扰器, 蓝牙干扰, 频段干扰