/**

 * NimBLE：GAP 广播名来自 NVS `ble_adv_name`，固件会自动追加后缀 **MP**（便于 App 扫描过滤）。

 * GATT：Primary 16-bit UUID 0xFFE0

 *  - 0xFFE1：UTF-8 JSON 遥控（与 MQTT payload 相同结构）

 *  - 0xFFE2：固件 OTA 二进制流（首字节 opcode：0x01+uint32 LE 总长，0x02+固件数据，0x03 结束并重启；受 menuconfig「APP_BLE_OTA」控制）

 *  - 0xFFE3：心跳 / 告警 / 错误 JSON，Read + Notify（心跳默认 10s，连接成功立即首条；W/E 即时另发）

 *  - 0xFFE4：OTA 过程状态 JSON，Read（最近一次）+ Notify（每步应答；需 enableNotification）

 */

#ifndef LINK_BLE_H

#define LINK_BLE_H



#include "esp_err.h"



esp_err_t link_ble_start(void);

void link_ble_stop(void);

/** 清空 BLE 侧缓冲并中止 OTA/遥控会话（断开或 message_type=2 时） */
void link_ble_session_reset(void);



#endif

