최대 처리량을 달성하기 위해 OnCharacteristicWrite 콜백 조건을 기반으로 다음 패킷을 동 기적으로 쓰려고합니다. 하지만 몇 가지 이유 때문에 1-2 초가 지난 후 매우 초기에 OnCharacteristicWrite 콜백을 트리거하는 것을 멈추고 패킷을 재전송한다고해서 결코 호출되지 않습니다. 패킷 당 지연을 추가하면 잘 작동하지만 최대 처리량을 달성하기 위해 지연을 추가하고 싶지는 않습니다.몇 초 후 Android BLE 콜백 OnWriteCallback이 중지됩니다.
지연을 추가하지 않고 최대 처리량을 얻을 수있는 방법이 있습니까?
또한 정확하게 연결 간격마다 여러 패킷을 보내는 것은 (그리고 내가 주변 장치를 통해 얻을 수있는 방법이 있습니까?) 의미합니까?
어떤 Android 기기/OS 버전이 있습니까? – Emil
Android 4.4.2 kitkat –
@Emil 또한 내 BLE 버전은 4.2입니다. 하지만 conn 간격마다 여러 개의 패킷을 보내는 방법을 얻지 못하고 있습니다. onCharacteristicWrite 콜백이 각 패킷에 대해 수신되는 시점을 기준으로 패킷을 하나씩 보내고 있습니다. 그러나 특정 기간 (onCharacteristicWrite 콜백 상태 0 성공으로 약 300 패킷 이후) 콜백이 갑자기 멈추고 패킷 재송신시에도 결코 트리거되지 않습니다. 따라서 모든 패킷을 콜백 상태 0으로 성공적으로 쓰는 두 개의 패킷 사이에 8ms의 지연을 추가하고 있지만 실제로 처리량이 낮아집니다. 이것을 구현하는 더 좋은 방법이 있습니까? –