기본 콘텐츠로 건너뛰기

 

BLE란?

Bluetooth 4.0부터 새롭게 포함된 저전력 통신 기술


말 그대로 저전력 통신기술!

BLE라는 말 그대로 저전력을 최우선시하는 통신 기술로 wibree 라는 이름으로 개발되었으나 블루투스의 명성을 이용해서 빠르게 저변을 확대했다. 사실 기술적으로 블루투스와 BLE는 다른 것인데, BLE가 불루투스의 이름도 쓰며 성장했다. 

블루투스와 BLE의 기술 조합을 기준으로 Classic(BT) 과 Smart(BLE), Smart ready(BT+BLE) 로 분류된다. 

즉, Classic은 기존 블루투기술만 지원하고, Smart는 BLE만 지원하고, Smart Ready는 기존의 BT와 BLE 기술을 모두 지원한다는 뜻이다. 보통 스마트폰이나 웨어러블 기기엔 둘 다 지원되는 원칩을 사용하는데, 굳이 Smart ready라고 표현은 잘 안한다.

장단점

기존 블루투스Classic 에 비해서 전력 소모를 1/10 정도로 낮췄다고 한다. 저전력을 위해 음성 데이터 전송을 지원하지 않고 전송속도도 매우 느리다. 

저전력에 집중!!

                                    [블루투스와 BLE 스펙비교]

BLE 기술 얕게 알아보기

2가지만 기억하자

2가지 모드가 있다. Advertise(Broadcast) Mode와 Connection Mode. 매우 단순하고, 무선 통신을 아는 사람에겐 너무 친숙한 개념이다. 우리 말로 쉽게 표현한다면, 탐색 모드와 전송 모드 정도가 좋을 것 같지만 정식 명칭이 아니므로 영어를 사용하자. 이것만 알아도 큰 그림 그리는 데는 문제가 없다.

Advertise(Broadcast) Mode

두 기기가 무선 통신을 하려면 서로의 존재를 알아야 한다. 누군가는 자신의 존재에 대해서 알리는 신호 Advertising Packet를 보내고 누군가는 그것을 찾아서 연결을 시도하는 과정이 Advertise Mode에서 이루어 진다.

여기서 중요한 것이, BLE에서 Advertising Packet의 특징이 데이터가 매우 작다!

Advertising Packet신호를 하루 종일 일년 12달 자신을 알리는 신호를 쏘고 있는 것이 바로 비콘 Beacon 이다.

비콘은 상대가 받던 말던 Advertising Packet을 쏘기만 하면 되고, 최대 50m거리에서 작동 할 수 있다고 한다. 사용 환경과 제품 성능에 따라 차이가 있지만 작은 버튼 셀 배터리로도 1~2년 동안 사용할 수 있다고 한다.

비콘의 진화와 핵심 기술

비콘(beacon)은 근거리에 있는 스마트 기기를 자동으로 인식하여 필요한 데이터를 전송할 수 있는 무선 통신 장치이다.비콘 위키백과

Advertising Packet에 어떤 데이터를 어떻게 전달하는지에 대해서는 몇몇 회사에서 저마다의 규격을 정하고 이름을 붙였다. 애플에서 만든것이 iBeacon 이고, Radius Networks에서 만든 AltBeacon, 구글에서 공개한 URIBeacon 도 있다. 

물론, Advertising Packet 이 한 종류만 있는 것은 아니고, Scan Request와 Scan Response 로 추가 정보를 주고 받는 기능을 구현 할 수 있다.

Connection Mode

Advertise Mode 에서 알게 된 기기 중에 하나를 선택해서 1:1 로 연결하는 것이 Connection Mode 이다. Connection Mode 로 전환 되고 나서는 서로 타이밍을 맞춰서 데이터를 주고 받으며, 이전 모드에서 진행했던 과정은 더 이상 필요 없다. (Advertising과 Scan)


이미지 - http://microchipdeveloper.com/ble:bm70-ble-connection-states


그 뒤는, 이제 본격 적으로 데이터를 주고 받으면 된다. 어떤 데이터를 주고 받고 어떻게 다루면 되는지는 얕게 여거서는 다루지 않고, 관련 링크를 소개하는 것으로 대신 한다.

데이터 전송 속도가 워낙 느리기 때문에 실제 데이터 통신은 BT Classic을 이용하거나 WiFi기술을 이용하기도 한다.

초간단정리

  1. 블루투스랑 BLE는 원래 전혀 다른 기술이다. 블루투스를 지원한다고, BLE를 지원하는 것은 아니다!
  2. BLE는 저전력이 핵심이다! 데이터 전송 속도도 느리고, 한번에 전달하는 양도 적다!
  3. BLE는 2가지 모드가 있는데, Advertise Mode에서 Advertise Packet 신호만 쏘는 것이 비콘 Beacon이다.
  4. Connection Mode에서는 블루투와 달리 1:1로 연결된다. Peripheral and Central

댓글

이 블로그의 인기 게시물

2 files found with path 'lib/x86_64/libc++_shared.so' from inputs: 오류 해결 방법

안드로이드스튜디오로 앱을 개발하는 과정에서 플러그인, 외부 라이브러리를 추가하다 보면 "2 files found with path 'lib/ x86_64 /libc++_shared.so' from inputs: "과 같은 오류를 만날 수 있다. 'lib/x86_64/libc++_shared.so' 파일이 2개의 라이브러리에서 참조되어 발생하는 문제로 컴파일 환경에 따라 플랫폼 부분은 변경되면 나타날 수 있다 app수준의 build.gradle 파일에 다음과 같이 처리하면 관련 문제를 깔끔하게 처리 가능하다. android { ... packagingOptions { pickFirst 'lib/ x86 /libc++_shared.so' pickFirst 'lib/ x86_64 /libc++_shared.so' pickFirst 'lib/ arm64-v8a /libc++_shared.so' pickFirst 'lib/armeabi-v7a/libc++_shared.so' } ... } * 실제 내 앱소스내 코드임 * 위와 같이 컴파일 환경에서 제공하는 플랫폼별 참조를 전부 한번에 처리하는게 관련 오류를 원천 차단할 수 있는 방법이다.

Visual Studio Xamarin 프로젝트에서 Google Play Services 광고 SDK를 사용하는 방법

1. NuGet 패키지 설치 (패키지 관리자 콘솔 이용)      Install-Package Xamarin.GooglePlayServices.Ads 2.  Google Play Services 추가     - 프로젝트의 Android 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "Google Play 서비스 추가" 선택     - "광고" 카테고리에서 "광고"를 선택하고 확인 버튼 클릭   3. Android 매니페스트 업데이트     - Android 프로젝트의 Properties 폴더에서 AndroidManifest.xml 파일 선택     - manifest 요소에 다음 사용 권한 추가       <uses-permission android:name="android.permission.INTERNET" />     - application 요소 내에 다음 <meta-data> 요소를 추가       <meta-data          android:name="com.google.android.gms.ads.APPLICATION_ID"          android:value="현재 앱의 AdMob ID" /> 4. 레이아웃 파일에 광고 뷰 추가     - 광고를 추가할 레이아웃 파일 (예: activity_main.axml)을 오픈     - AdView를 추가하기 위해 원하는 위치에 <com.google.android.gms.ads.AdView> 요소 추가  <com.google.android.gms.ads.AdView     android:id="@+id/adView" ...

안드로이드용 무료 나스모 공개

■ 구글 플레이 스크린골프 가시면 스윙후에 자기 스윙모습을 보여주는 나스모 아시죠? 그 나스모를 내 핸드폰으로 옮겨놓은 무료 프로그램 입니다. "매직미러"에 대해 알아보세요 - https://play.google.com/store/apps/details?id=com.konestop.magicmirror ** 이제 출시된 앱이라 구글플레이에서 "매직미러" (쌍따옴표안에 넣어 검색) 하면 바로 나옵니다. ** 아래 QR 스캔하시면 구글플레이 바로 갑니다. ■ 앱 설명 스크린골프 가시면 스윙후에 자기 스윙모습을 보여주는 나스모 아시죠? 그 나스모를 내 핸드폰으로 옮겨놓은 무료 프로그램 입니다. 골프에 진심인데 10년째 백돌이인 개발자가 직접 만든 앱입니다. 이제 휴대폰카메라로 녹화 없이도 끊임없이 자기 스윙모습을 타임머신처럼 계속 보여줍니다. 설명이 더 힘든 앱이네요. 직접 써보세요 ■ 앱 기능   - 설치후 처음 시작하는 튜토디얼을 참고하세요.