# sevenblock_ble_sdk **Repository Path**: leekwallet_enterprise/sevenblockblesdk ## Basic Information - **Project Name**: sevenblock_ble_sdk - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-17 - **Last Updated**: 2026-06-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IJOY BLE SDK & Demo 基于 IJOY ComPro 协议的 BLE 指令调试 App,包含完整组包/解包实现。 ## 模块 - `sdk`:协议层 + BLE 客户端,可复用到其他项目 - `app`:调试 Demo,支持配置 UUID 与发送文档内指令 ## 协议帧格式 ``` STX(0x02) + FLAG(A5 5A 55 AA F0) + COUNT + TYPE + CMD + LEN(2) + DATA + ETX(0x03) + CRC16(2) ``` CRC16 计算范围:`TYPE + CMD + LEN + DATA` ## 已实现指令 | 指令 | 码值 | 说明 | |------|------|------| | 获取随机数 | 0xB101 | 握手,获取 16 字节随机数 | | 获取设备信息 | 0xB102 | SN / 版本 / 电量 | | 设置模式 | 0xB103 | 运动控制(含 MAC),**无响应**,写入即返回 | | 设置设备信息 | 0xB104 | 含 MAC | | SN 加密 | 0xB105 | 16 字节 Payload | | OTA 预检 | 0xB106 | 含 MAC | | 获取气压 | 0xB107 | 气压数据 | | 通知 | 0xB108 | 设备通知 | | 加热控制 | 0xB10B | 0x01 开 / 0x00 关 | | 固件下载 | 0xF101 | 固件段下载 | ## 默认 UUID(BK) - 服务:`0000ff12-0000-1000-8000-00805f9b34fb` - 读/响应:`0000ff02-0000-1000-8000-00805f9b34fb` - 写:`0000ff03-0000-1000-8000-00805f9b34fb` - 主动上报服务:`0000fcc0-0000-1000-8000-00805f9b34fb` - 主动上报特征:`fcc184cf-f7e3-55b4-6c4c-9fd140100a16` ## 构建 ```bash ./gradlew :app:assembleDebug ./gradlew :sdk:test ``` ## 使用 1. 安装 App,授予蓝牙权限 2. 在「设备配置」填写名称过滤和 UUID(可保存) 3. 扫描并点击设备连接 4. 点击【获取随机数】 5. 点击【获取设备信息】 6. 查看底部通信日志(TX/RX/主动上报) 7. 点击【设置模式】进入发送震动指令。 MAC 加密指令(0xB103/B104/B106)依赖随机数。请先在主页点击 **获取随机数 (B101)**,成功后随机数会缓存在当前连接会话中,后续发指令不再重复获取。 **0xB103 为无响应指令**:设备不会通过读特征返回应答,SDK 在 GATT 写入成功后立即返回,不调用 `waitForResponse()`。