Raspberry Pi에서 bleacon으로 iBeacon하기

3868 단어 RaspberryPiBLENode.js

소개



과거에 RASPBERRY PI를 IBEACON화 (1) 라는 것을 썼는데, 오이타 시간이 경과해 bluez도 빌드 불필요로 도입할 수 있게 된 것 같다.
데비안 Package: bluez (4.99-2) 참조.

이 기사는 기본적으로 BLE 대응의 어댑터 접속이 끝난 상태로, bluez 도입이 끝나고, node.js의 bleacon를 사용하는 곳으로부터 스타트합니다.
bleacon에서는 광고에 bleno를 센트럴에 noble을 이용하고 있는 것 같다.

Raspberry Pi에서 iBeacon 수신 (Node.js + bleacon) 가 잘 정리되어 있으므로, 이쪽을 참조하면 좋을지도.

하려고



우선 bluez가 움직이고 있는지 hciconfig를 이용해 확인한다.
UP RUNNING이 되어 있으면 OK.
pi@raspberrypi2 ~/bleacon $ hciconfig
hci0:   Type: BR/EDR  Bus: USB
        BD Address: <MAC_ADDRESS>  ACL MTU: 310:10  SCO MTU: 64:8
        UP RUNNING PSCAN
        RX bytes:2757 acl:6 sco:0 events:201 errors:0
        TX bytes:2565 acl:1 sco:0 commands:185 errors:0

몇몇 근육에서는 고명한 한 줄에 iBeacon 할 수 있는 부호를 이용한다.
measurePower의 값을 조정하는 것으로 캘리브레이션할 수 있는 것 같기 때문에, 조금 살펴본다.

bleacon.js
bleacon = require('bleacon');

var uuid = 'E86367B8D8A84BE082DE4653A7333113';
var major = 0;
var minor = 0;
var measuredPower = -59;

bleacon.startAdvertising(uuid, major, minor, measuredPower);

Android에서 찾아보기



iPhone에서도 좋지만 이번에는 Android에서 확인해 보았습니다.
앱은 Bluetooth LE Scanner을 사용했습니다. 뭐든지 좋다고 생각한다.

기본 좋은 느낌이지만 조금 불안정한 생각도 한다.
「방에 들어오면」이라고 하는 트리거로 하기 위해서는 좀 더 정밀도가 높지 않으면 안되겠지? 라는 인상이었다.
앞으로 포장해 간다.

IMMEDIATE



Raspberry Pi가 설치한 방의 PC 테이블에 Android 단말기를 놓았을 때.



NEAR



Raspberry Pi가 설치된 방 출구 부근.



FAR



Raspberry Pi가 설치되어 있는 방에서 나와 떠났을 때.



사이고에게



bleacon은 한 줄로 iBeacon화할 수 있는 것이 정말 대단하다.
그리고, 자신이 BLE로 사용하는 UUID를 별로 이해하지 않기 때문에, 추기에서는 bleacon의 사용법을 보강해 갈 예정.

좋은 웹페이지 즐겨찾기