1

북유럽 UART 서비스와 TxD/RxD 특성을 사용하여 BLE와 Adafruit Bluefruit LE UART 친구가 통신하는 Android 및 iOS를 타겟팅하는 애플리케이션을 작성하고 있습니다.Delphi FMX BluetoothLE - 글쓰기에 성공하지 못했습니다.

TxGattCharact: TBluetoothGattCharacteristic; 
SelectedDevice: TBluetoothLEDevice; 

TxGattCharact.SetValueAsString(myString, True); // UTF8 required 
if BluetoothLE1.WriteCharacteristic(SelectedDevice, TxGattCharact) then 
    ... // everything just fine 
else 
    Log('Writing Characteristic denied or unsuccessfull'); 

내 문자열을 BLE 규칙으로 최대 20 자로 분할해야했습니다. 시간의 90 %가 작동 중일 때 때때로 WriteCharacteristic이 성공하지 못합니다.

이유를 이해하고이를 방지하기위한 가능한 조치가 있습니까? 다른 문자열을 보내기 전에 BLE 버퍼를 플러시하여 모든 것을 지울 수 있습니까?

내가 나를 위해 재미있을 것 같다 해당 게시물을 발견

답변

0

아무도 ?? BLE를 통한 데이터 흐름에 여전히 심각한 문제가 있습니다.

0

확인할 사항 중 하나는 북유럽 모듈에서 UART가 활성화되어 있다는 것입니다. UART가 때때로 비활성화되어 있기 때문에 비슷한 문제가 발생했습니다. 어쩐지. Nordic Toolbox 앱 (iOS 또는 Android 용)을 사용하여 확인할 수 있습니다. 쓰기를 시도하기 전에 장치가 여전히 연결되어 있는지 확인해야 할 수도 있습니다 (TBluetoothLEDevice.IsConnected 속성 확인).