취미생활/DIY

raspberry pi3 B(python + BLE) 사용하기 -1

바위맨 2018. 10. 4. 21:24
반응형

BLE(Bluetooth Low Energy)?

윈도우 환경에서 BLE(Bluetooth Low Energy) 를 사용하려고 시도한다면... 난감한 상황이 온다

놀랍게도. 정말 놀랍게도 BLE를 지원하는 윈도우 운영체제는 윈도우8 이후 부터 이다. 

물론 구글링을 하다보면 

1. BLE in win7

2. BLE in windows7 

3. BLE in windows7 with java

이런 글을 찾아볼 수는 있다. 가~~~ 끔씩... 

그러나 결론부터 이야기한다면, Microsoft에서는 윈도우7 에서 BLE를 공식적으로 지원하지 않는다. 

윈도우7이 출시된 2009년에는 BLE 자체가 없었다. BLE라는 것 자체가 2011년에 생겨난 것이기 때문이다. 

다양한 무선 제품이 생성되는 시점에서 Bluetooth는 서서히 그 사용처가 줄어가고 있었다. 문제는 배터리. 

휴대용 무선 제품에서 배터리의 문제는 절대적이기 때문이었다. 그리고 최종적으로 Gigbee기반의 BLE를 개발하게 된다.
(정확한 출처를 확인해 보려고 했지만 확인 못했습니다. 카더라 통신... )

그럼, 나는 윈도우7을 메인으로 사용하고 있는데 PC환경에서 BLE관련 개발을 진행하고 싶다?! 면 우회적으로 사용을 시도할 수밖에 없다. 

그리고 지금 시도하는 방법은, Rasp3 b의 bluetooth를 이용하는 방법이다. 

우선 raspi 3 b v2를 기본 설정 해준다. 



1. 라즈베리파이 준비

라즈베리안 이미지를 다운받고, 설치한후 ssh를 설정한다. 
id/pass : pi/thjung11


2. 라즈베리 파이를 고정 IP로 설정 + ssh를 on해준다. 

  • 라즈베리파이는 별도로 동작할 수 있는 미니PC에 가깝다. 
  • 사용을 하기 위해서는 키보드 + 마우스 + 모니터가 필요하다. 
  • 그러나 개인이 사용하는 PC에 비하면 턱없이 부족한 성능을 가진다. (한.... 10년전 컴퓨터 정도 될까?)
  • 때문에 SSH와 같이 원격으로 접속할 수 있는 기능을 설정해주면 초기 설정 이후에는 메인PC에서 개발을 진행할 수 있다. 
  • 개인 공유기를 사용하고 있다면  local IP(ex 192.168.0.10) 과 같이 설정해두고 공유기에 연결해 두면, 라즈베리파이에서 인터넷도 자유롭게 사용할 수 있으며, 동시에 ssh도 사용 가능하다 (물론 외부에서는 접속 불가, 공유기에서 추가적으로 설정을 수행해야 한다.)

고정 IP 할당하기 

기존 수정 위치 =  sudo vi /etc/network/interfaces

변경 된 수정 위치 = /etc/dhcpcd.conf 파일의 static IP 부분의 주석을 제거해준다. 

ssh on

$sudo raspi-config


3. BLE + Python에 대한 개발 환경을 설정한다. 

  • 사용하는 디바이스에 따라서 개발 설정 과정이 조금씩 상이하게 나타날 수 있다. 
  • 본 글에서는 라즈베리파이 3 B를 기준으로 환경 설정을 수행한다. 
  • 다음 링크의 설정 방식을 그대로 수행한다. 
  • 주의할 점: bluetooth  관련 설정을 하는 과정에서 vi를 사용하는 과정이 매우 혼란 스럽다. 
                  1글자만 수정하는 경우에도 매우 어렵기 때문에 sudo apt-get install vim 을 수행해서 vim을 통해서 수정입력하다. 
                  (물론 윈도우 텍스트 에디터와 비교하면 한없이 구식 개발 환경이기는 하지만 그나마 나은 환경이다)

    라즈베리파이에서 파이썬 BT/BLE 프로그래밍을 위한 라이브러리 설치





반응형