diff --git a/usrc/service/app_core.cpp b/usrc/service/app_core.cpp index 3c99cce..7ba4d78 100644 --- a/usrc/service/app_core.cpp +++ b/usrc/service/app_core.cpp @@ -99,11 +99,11 @@ void blelogdump(uint8_t* rx, int32_t len) { return; } - // if (packet->cmd == kzble_report_heart) { - // zble_heart_t* event = (zble_heart_t*)packet->data; - // ZLOGI(TAG, "onBleEvent -> [heart], from:%s, resetFlag:%d, connectedFlag:%d, power:%d", zble_proto_role_2_str(packet->from), event->reset_flag, event->connected_flag, event->power); - // return; - // } + if (packet->cmd == kzble_report_heart) { + zble_heart_t* event = (zble_heart_t*)packet->data; + // ZLOGI(TAG, "onBleEvent -> [heart], from:%s, resetFlag:%d, connectedFlag:%d, power:%d", zble_proto_role_2_str(packet->from), event->reset_flag, event->connected_flag, event->power); + return; + } if (packet->cmd == kzble_report_power_on) { ZLOGI(TAG, "onBleEvent -> [power_on], from:%s", zble_proto_role_2_str(packet->from)); @@ -168,10 +168,13 @@ void AppCore::appsetup() { UIS->chpage(pg_login); osDelay(100); - RCTRL->clearMasterResetFlag(); - RCTRL->clearMasterResetFlag(); - RCTRL->clearMasterResetFlag(); - RCTRL->clearMasterResetFlag(); + for (size_t i = 0;; i++) { + if (i != 0) ZLOGI(TAG, "re start scan %s %d", "AciDisp00000", i); + bool suc = RCTRL->startScan("AciDisp00000", true); + if (suc) { + break; + } + } } #define DEBUG_LIGHT_IO PE2 diff --git a/usrc/service/remote_controler_state_sync_service.cpp b/usrc/service/remote_controler_state_sync_service.cpp index 4f34a66..adb92dc 100644 --- a/usrc/service/remote_controler_state_sync_service.cpp +++ b/usrc/service/remote_controler_state_sync_service.cpp @@ -4,7 +4,7 @@ #include "remote_controler.hpp" using namespace iflytop; - +#define TAG "RemoteControlerStateSyncService" void RemoteControlerStateSyncService::initialize() { m_forceUpdateflagLock.init(); @@ -17,6 +17,7 @@ void RemoteControlerStateSyncService::initialize() { }); bleStateUpdateThread.init("bleStateUpdateThread"); + m_forceUpdateflag = true; } void RemoteControlerStateSyncService::startSync() { @@ -26,7 +27,6 @@ void RemoteControlerStateSyncService::startSync() { bool workState = false; bool forceupdate = false; - RCTRL->setRemoterState(runmode, workState); while (true) { if (!RCTRL->isConnected()) { osDelay(100); @@ -44,7 +44,14 @@ void RemoteControlerStateSyncService::startSync() { workState = PUMPCS->isWorking(); RCTRL->setRemoterState(runmode, workState); } else if (forceupdate) { - RCTRL->setRemoterState(runmode, workState); + for (size_t i = 0; i < 10; i++) { + if (i > 0) { + ZLOGE(TAG, "force update remote state failed, retry %d", i); + osDelay(500); + } + bool suc = RCTRL->setRemoterState(runmode, workState); + if (suc) break; + } } osDelay(500);