diff --git a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D3F0SelfCheckMessageExecutor.java b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D3F0SelfCheckMessageExecutor.java index 6b44b3a2..4b0997f4 100644 --- a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D3F0SelfCheckMessageExecutor.java +++ b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D3F0SelfCheckMessageExecutor.java @@ -67,8 +67,14 @@ public class D3F0SelfCheckMessageExecutor implements Executor { // 检查是否需要对设备的F9P进行冷启动操作 - checkAndSendF9PColdStartCommand(device); - checkAndResetBTGnss(device); + if(device.getDeviceType() == Device.DEVICE_ROVER){ + if(device.getModel() == GnssDevice.MODEL_G505){ + checkAndSendF9PColdStartCommand(device); + } + else{ + checkAndResetBTGnss(device); + } + } // 通知beidou服务设备上线,这里会触发参数同步 GnssStatus lastGnssStatus = dataPersistService.getDeviceState(message.getId()); try { @@ -106,13 +112,9 @@ public class D3F0SelfCheckMessageExecutor implements Executor0 &&device.getAbnormalD341Num()>10){ - startBTResetTask(device); - device.clearNoResultStat(); - } + if(device.getNoFixedAndFloatResult()>0 &&device.getAbnormalD341Num()>10){ + startBTResetTask(device); + device.clearNoResultStat(); + } + else if((device.getWarningcode()&WarningCfg.TYPE_CONT_INVALID_RESULT) !=0){ + startBTHotStartTask(device); + device.clearNoResultStat(); } } @@ -182,7 +184,16 @@ public class D3F0SelfCheckMessageExecutor implements Executor