184 lines
4.8 KiB
Markdown
184 lines
4.8 KiB
Markdown
# 蓝牙调试指南 - SerialTest连接问题
|
||
|
||
## 问题描述
|
||
- 电脑端:SerialTest作为蓝牙服务器运行
|
||
- 手机端:Android应用作为客户端
|
||
- 问题:客户端找不到服务器设备
|
||
|
||
## 第一步:检查手机蓝牙设置
|
||
|
||
### 1.1 确保蓝牙可见性
|
||
1. **打开手机设置** → **蓝牙**
|
||
2. **确保蓝牙已开启**
|
||
3. **设置可见性**:
|
||
- 点击"更多设置"或"高级设置"
|
||
- 找到"可见性"或"可发现性"选项
|
||
- 设置为"始终可见"或"可发现"
|
||
|
||
### 1.2 检查配对状态
|
||
1. **查看已配对设备列表**
|
||
2. **如果看到您的电脑设备**:
|
||
- 点击设备名称
|
||
- 选择"取消配对"
|
||
- 重新配对
|
||
|
||
### 1.3 重置蓝牙设置
|
||
1. **清除蓝牙缓存**:
|
||
- 设置 → 应用管理 → 蓝牙
|
||
- 清除数据和缓存
|
||
2. **重启蓝牙**:
|
||
- 关闭蓝牙
|
||
- 等待10秒
|
||
- 重新开启蓝牙
|
||
|
||
## 第二步:检查电脑端SerialTest设置
|
||
|
||
### 2.1 SerialTest配置
|
||
1. **确保SerialTest正确配置**:
|
||
- 选择正确的COM端口
|
||
- 设置波特率(通常9600或115200)
|
||
- 启用蓝牙服务器模式
|
||
|
||
### 2.2 电脑蓝牙设置
|
||
1. **检查电脑蓝牙状态**:
|
||
- 确保蓝牙已开启
|
||
- 设置为"可发现"模式
|
||
2. **查看蓝牙设备**:
|
||
- 控制面板 → 设备和打印机
|
||
- 确认蓝牙适配器正常工作
|
||
|
||
## 第三步:使用应用进行调试
|
||
|
||
### 3.1 扫描测试
|
||
1. **启动Android应用**
|
||
2. **点击"连接蓝牙"按钮**(普通点击,不是长按)
|
||
3. **观察扫描结果**:
|
||
- 查看是否发现您的电脑设备
|
||
- 记录设备名称和MAC地址
|
||
|
||
### 3.2 直接连接测试
|
||
1. **长按"连接蓝牙"按钮**
|
||
2. **输入电脑MAC地址**:`60:E9:AA:30:8B:0A`
|
||
3. **点击连接**
|
||
4. **观察连接状态**
|
||
|
||
### 3.3 查看详细日志
|
||
在Android Studio的Logcat中查看:
|
||
- 过滤标签:`BluetoothManager`
|
||
- 查找扫描和连接相关的日志
|
||
|
||
## 第四步:常见解决方案
|
||
|
||
### 4.1 如果扫描不到设备
|
||
1. **重启蓝牙服务**:
|
||
- 电脑:重启蓝牙适配器
|
||
- 手机:重启蓝牙
|
||
2. **检查距离**:确保设备在10米范围内
|
||
3. **检查干扰**:远离其他蓝牙设备
|
||
|
||
### 4.2 如果连接失败
|
||
1. **重新配对设备**:
|
||
- 在手机蓝牙设置中删除电脑设备
|
||
- 在电脑蓝牙设置中删除手机设备
|
||
- 重新配对
|
||
2. **检查SerialTest状态**:
|
||
- 确保SerialTest正在运行
|
||
- 检查是否有错误信息
|
||
|
||
### 4.3 如果连接成功但无法通信
|
||
1. **检查SerialTest配置**:
|
||
- 确认波特率设置
|
||
- 确认数据格式设置
|
||
2. **测试数据发送**:
|
||
- 使用应用发送测试数据
|
||
- 在SerialTest中查看是否收到数据
|
||
|
||
## 第五步:高级调试
|
||
|
||
### 5.1 使用系统蓝牙设置
|
||
1. **在手机蓝牙设置中手动连接**:
|
||
- 扫描设备
|
||
- 选择您的电脑设备
|
||
- 输入配对码(通常是0000或1234)
|
||
|
||
### 5.2 检查蓝牙协议
|
||
1. **确认SerialTest使用的协议**:
|
||
- SPP(串口协议)
|
||
- RFCOMM
|
||
- 其他协议
|
||
2. **确认应用支持的协议**
|
||
|
||
### 5.3 使用其他蓝牙工具测试
|
||
1. **下载蓝牙调试工具**:
|
||
- nRF Connect(推荐)
|
||
- Bluetooth Scanner
|
||
2. **测试连接**:
|
||
- 扫描设备
|
||
- 尝试连接
|
||
- 查看服务列表
|
||
|
||
## 第六步:应用调试功能
|
||
|
||
### 6.1 增强扫描功能
|
||
应用现在支持:
|
||
- **BLE扫描**:低功耗蓝牙扫描
|
||
- **传统蓝牙扫描**:经典蓝牙扫描
|
||
- **智能检测**:自动检测设备类型
|
||
|
||
### 6.2 连接状态监控
|
||
应用会显示:
|
||
- ✅ **连接成功**:设备已连接
|
||
- ❌ **连接失败**:详细的错误信息
|
||
- 🔍 **服务发现**:发现的服务和特征
|
||
- 📡 **数据通道**:通信通道状态
|
||
|
||
## 第七步:测试步骤
|
||
|
||
### 7.1 基础测试
|
||
1. **启动SerialTest** → 配置服务器
|
||
2. **启动Android应用** → 扫描设备
|
||
3. **连接设备** → 观察状态
|
||
4. **发送测试数据** → 验证通信
|
||
|
||
### 7.2 数据通信测试
|
||
1. **发送ECG测试数据**
|
||
2. **发送心跳包**
|
||
3. **发送设备信息查询**
|
||
4. **观察SerialTest接收情况**
|
||
|
||
## 常见错误及解决方案
|
||
|
||
### 错误1:扫描不到设备
|
||
**解决方案**:
|
||
- 检查设备可见性
|
||
- 重启蓝牙服务
|
||
- 检查距离和干扰
|
||
|
||
### 错误2:连接超时
|
||
**解决方案**:
|
||
- 重新配对设备
|
||
- 检查SerialTest状态
|
||
- 确认MAC地址正确
|
||
|
||
### 错误3:服务发现失败
|
||
**解决方案**:
|
||
- 检查设备协议兼容性
|
||
- 使用系统蓝牙设置连接
|
||
- 查看详细错误日志
|
||
|
||
## 下一步操作
|
||
|
||
1. **按照上述步骤逐一检查**
|
||
2. **记录每个步骤的结果**
|
||
3. **查看Android Studio的Logcat日志**
|
||
4. **如果仍有问题,提供详细的错误信息**
|
||
|
||
## 技术支持
|
||
|
||
如果问题仍然存在,请提供:
|
||
1. **手机型号和Android版本**
|
||
2. **电脑操作系统版本**
|
||
3. **SerialTest版本和配置**
|
||
4. **详细的错误日志**
|
||
5. **扫描和连接过程的截图**
|