|
@@ -26,17 +26,14 @@ local function ble_callback(ble_device, ble_event, ble_param)
|
|
|
if ble_event == ble.EVENT_SCAN_INIT then
|
|
if ble_event == ble.EVENT_SCAN_INIT then
|
|
|
log.info("ble", "scan init")
|
|
log.info("ble", "scan init")
|
|
|
elseif ble_event == ble.EVENT_SCAN_REPORT then
|
|
elseif ble_event == ble.EVENT_SCAN_REPORT then
|
|
|
- if #blDataTable < 20 then
|
|
|
|
|
- log.info("信息采集中")
|
|
|
|
|
- blDataTable[#blDataTable + 1] = ble_param.adv_addr:toHex() -- 插入字符串
|
|
|
|
|
|
|
+ if #blDataTable < 40 then
|
|
|
|
|
+ --log.info("信息采集中")
|
|
|
|
|
+ blDataTable[#blDataTable + 1] = ble_param.adv_addr:toHex() -- 插入字符串
|
|
|
else
|
|
else
|
|
|
- log.info("信息输出中")
|
|
|
|
|
- local json_data = json.encode(blDataTable)
|
|
|
|
|
- log.info("json", json_data)
|
|
|
|
|
-
|
|
|
|
|
- ---- 发布消息通知其他模块
|
|
|
|
|
- --sys.publish("BLE_SCAN_DONE")
|
|
|
|
|
-
|
|
|
|
|
|
|
+ --log.info("信息输出中")
|
|
|
|
|
+ --local json_data = json.encode(blDataTable)
|
|
|
|
|
+ --log.info("json", json_data)
|
|
|
|
|
+ ble_device:scan_stop()
|
|
|
end
|
|
end
|
|
|
log.info("ble", "scan report", ble_param.rssi, ble_param.adv_addr:toHex(), ble_param.data:toHex())
|
|
log.info("ble", "scan report", ble_param.rssi, ble_param.adv_addr:toHex(), ble_param.data:toHex())
|
|
|
-- 解析广播数据, 日志很多, 按需使用
|
|
-- 解析广播数据, 日志很多, 按需使用
|
|
@@ -68,7 +65,7 @@ function ble_scan()
|
|
|
sys.wait(100)
|
|
sys.wait(100)
|
|
|
-- 扫描模式
|
|
-- 扫描模式
|
|
|
sys.wait(1000)
|
|
sys.wait(1000)
|
|
|
- ble_device:scan_create(0,1000,100) -- 使用默认参数, addr_mode=0, scan_interval=100, scan_window=100
|
|
|
|
|
|
|
+ ble_device:scan_create(0,100,100) -- 使用默认参数, addr_mode=0, scan_interval=100, scan_window=100
|
|
|
-- ble_device:scan_create(0, 10, 10) -- 使用自定义参数
|
|
-- ble_device:scan_create(0, 10, 10) -- 使用自定义参数
|
|
|
sys.wait(100)
|
|
sys.wait(100)
|
|
|
log.info("开始扫描")
|
|
log.info("开始扫描")
|