내 BLE 애플리케이션은 서버 측 (BLE 칩)에서 계산이 필요하며 연결이 끊어 지거나 시간이 걸립니다.BLE 칩이 계산되는 동안 Android Bluetooth 저에너지 연결 시간 초과
번째 흐름이 같다 :
1- 안드로이드 폰은 BLE 칩 특성 값을 기록한다. 2 칩이이 값을 계산하고 계산을 시작합니다. 3 계산이 시작된 직후 연결이 끊어집니다.
연결 해제를 방지하기 위해 어떤 솔루션을 적용 할 수 있습니까? 내 마음에 두 가지 해결책이 있습니다.
1- 연결 간격 변경 : 현재 Android는 연결 간격으로 7.5 밀리 초를 사용합니다. BLE 칩의 연산에는 시간이 걸리기 때문에 계산 중에는 패킷을 송수신하지 않습니다. 연결 간격을 늘리면 손실 된 패킷 수가 줄어 듭니다. 그러나 Android 전화가 새로운 연결 매개 변수를 수락한다는 보장은 없습니다.
2 별도의 스레드에서 계산 실행 : BLE 칩의 SDK가 멀티 스레딩을 지원하여 계산 프로세스가 진행되는 동안 패킷 수신 및 전송을 중단하고 연결 해제를 방지한다고 생각하지 않습니다. 나는 CSR 칩을 사용하고 그것이 나을 것이라고 생각한다.
제 생각에는 틀린 부분을 수정하십시오.
문제를 해결하기위한 다른 제안이 있으십니까?
미리 감사드립니다.
계산 결과를 확인하기위한 별도의주기가 있어야하며, BLE 칩에 대한 동일 계산에 대해 더 자세히 설명해 주실 수 있습니까? (SO) 코드 시도에 대한 도움을 받으실 수 있습니다. .. 그 게시물을 – user2450263
게시해야합니다. 나는 코드와 관련이 없다고 생각한다. 연결 매개 변수를 사용하여 연결 해제 또는 아이디어를 방지하는 대체 방법을 찾고 있습니다. 감사! – ulusoyca
단일 스레드와 계산이 긴 경우에는 BLE에서 부과하는 실시간 제약 사항에 응답 할 수 있도록 작은 하위 섹션을 작성하기 위해 다시 계산해야합니다. – Ifor