Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

대웅짱님의 블로그

Bluetooth Low Energy 시작 본문

안드로이드/ble통신

Bluetooth Low Energy 시작

대웅짱 2018. 6. 22. 13:45

두 달 동안 인턴으로 일한 회사에서 BLE(Bluetooth Low Energy)센서 관련 앱을 만들었다.


앱 만드는 것도 거의 처음이라 아무것도 모르는 상태에서 하려니까 힘들었다.


BLE가 뭔지도 몰라서 처음엔 Bluetooth통신으로 코딩하다가 아무리 Scan해도 센서가 안 나오길래


이상해서 구글링해보고 다 지우고 다시 만들었었다.


나 같은 사람에게 도움이 되고자 쓴다.


BLE란 간단하게 말해 저전력 블루투스이다.


기존 블루투스 연결방식은 베터리 소모가 크다. 그래서 이를 해결하고자 나온 게 BLE라고 생각하면 된다.


요즘 나오는 위치기반 기기, 웨어러블기기 등과 같은 기기가 BLE를 사용한다.




그럼 안드로이드 기기에서 어떻게 BLE 통신을 할까?


기본적으로 BLE기기들은 전원을 켜면 반경으로 어떠한 신호를 보낸다. 


그렇기에 BLE기기를 Advertiser 또는 Broadcaster라고한다.


이러한 BLE의 신호를 catch할 수 있는 기기를 Observer라고한다. 우리의 Observer는 안드로이드 스마트폰이 되겠다.


BLE신호를 catch하기 위해선 지속해서 Scanning을 해야 한다.


Scanning으로 기기를 발견하면 Connect를 하고 그 후 데이터를 주고받는 방식으로 이루어진다.




앞으로 쓸 글들은 내가 만들었던 앱의 기능 순서대로 쓸 예정이다.


앱의 기능은 BLE스캔 - BLE연결 - BLE기기에 값 쓰기 (여기까지가 기본적인 BLE 통신) - Uart Log출력 (Nordic 라이브러리 참고) - DFU (Nordic 라이브러리 참고)




그리고 가능하다면


-커스텀 리스트뷰를 만들고 그 리스트뷰마다 프로그레스 바를 만들어 진행도가 따로 올라가는 기능


-Firebase Storage와 Realtime Database를 이용해 Storage의 list를 불러와 파일을 다운받는 기능


-윈도우10에서 서브 시스템으로 우분투를 받아 빌드 스크립트를 이용해서 apk 만들기


에 대해 글을 쓰겠다.



아래 사이트를 아주 많이 참고하였다.


https://developer.android.com/guide/topics/connectivity/bluetooth-le.html 


https://github.com/googlesamples/android-BluetoothLeGatt



'안드로이드 > ble통신' 카테고리의 다른 글

Bluetooth Low Energy 스캔  (5) 2018.06.22