안드로이드에서 'BLE Scanner' 앱을 사용하여 PETRONE 연결하기.

786 views
Skip to first unread message

Sanghyo Lee

unread,
Oct 31, 2017, 12:34:31 AM10/31/17
to byr...@googlegroups.com


1. "BLE 스캐너"앱을 Android 앱스토에서 다운 받으세요.


    https://play.google.com/store/apps/details?id=com.macdom.ble.blescanner




2. 처음 실행을 하시면 주변의 블루투스 장치들을 검색합니다.




    "PETRONE 6504" 우측의 CONNECT 버튼을 눌러 해당 기체와 연결합니다.




3. PETRONE 6504와 연결한 후 "CUSTOM SERVICE" 좌측의 v 모양 꺽쇠를 누르시면 하위 속성을 보실 수 있습니다.




    여기에서 드론이 보내는 데이터를 받으려면 상단의 "C320DF01-"로 시작하는 UUID 우측의 'N' 버튼을 누르셔야 합니다. 해당 버튼을 누르시면 버튼이 파란색에서 녹색으로 바뀝니다.




4. 드론에 펌웨어 정보를 요청해보겠습니다.

    3번 화면의 아래쪽에 있는 "C320DF02-"로 시작하는 속성 우측의 'W' 버튼을 누르시면 데이터를 입력할 수 있는 창이 나타납니다. 이 창의 중앙 콤보박스에서 'Text'를 'Byte Array'로 변경하시고, 아래에 '9001000000' 값을 입력합니다. 여기에서 처음 1바이트 '90'은 DataType의 'UpdateLookupTarget'을 의미합니다. 그리고 뒤의 '01000000' 은 드론 메인 펌웨어를 가리킵니다. 이 값 대신 '02000000'을 넣으시면 드론 통신 펌웨어의 정보를 읽어옵니다.


    DataType: https://byrobot.github.io/documents/kr/products/petrone/protocol/03_datatype/





5. OK 버튼을 누르면 드론으로부터 수신 받은 데이터가 "C320DF01-"로 시작하는 UUID 값 아래에 나타납니다.




    여기에서는 "Hex: 910101000000012700110608"이란 값을 받았습니다. 이 값을 분할하면 다음과 같습니다.


    DataType: 91 -> 0x91 -> 145

    modeUpdate: 01 -> 0x01 -> 1

    DeviceType: 01000000 -> 0x00000001 -> 1

    ImageType:  01 -> 0x01 -> 1

    ImageVersion: 2700 -> 0x0027 -> 39

    year: 11 -> 0x11 -> 17

    month: 06 -> 0x06 -> 6

    day: 08 -> 0x08 -> 8




여기까지 'BLE Scanner'라는 안드로이드 앱을 사용하여 페트론과 연결하고, 페트론 메인 펌웨어의 정보를 읽어보았습니다.
Reply all
Reply to author
Forward
0 new messages