processData(rn, UGateEvent.Type.WIRELESS_DATA_RX_SUCCESS, command,
new RxRawData<Void>(rn, status, rxResponse.getRssi(), null),
failures > 0 ? RS.rbLabel(KEY.LASER_CALIBRATION_FAILED) : RS.rbLabel(KEY.LASER_CALIBRATION_SUCCESS));
} else if (command == Command.SENSOR_GET_READINGS || command == Command.GATE_TOGGLE_OPEN_CLOSE) {
int i = 1;
final RemoteNodeReading rnr = new RemoteNodeReading();
rnr.setRemoteNode(rn);
rnr.setReadDate(new Date());
rnr.setSignalStrength(rxResponse.getRssi());
rnr.setSonarFeet(rxResponse.getData()[++i]);
rnr.setSonarInches(rxResponse.getData()[++i]);
rnr.setMicrowaveCycleCount(rxResponse.getData()[++i]);
rnr.setPirIntensity(rxResponse.getData()[++i]);
rnr.setLaserFeet(rxResponse.getData()[++i]);
rnr.setLaserInches(rxResponse.getData()[++i]);
rnr.setGateState(rxResponse.getData()[++i]);
final RxTxRemoteNodeReadingDTO sr = new RxTxRemoteNodeReadingDTO(rnr, status);
processData(rn, UGateEvent.Type.WIRELESS_DATA_RX_SUCCESS, command, sr,
RS.rbLabel(KEY.SERVICE_RX_READINGS, sr));
} else if (command == Command.SENSOR_GET_SETTINGS) {
// the number of response data and their order is important!!!