목록전체 글 (48)
Flutter 개발 Story
매직 미러는 스마트 미러의 일종으로 거울을 모니터로 사용한 라즈베리로 작동되는 모니터임 - 스마트 미러는 PC모니터나 스마트폰 액정 역할을 하는 거울처럼 보이는 스마트 디스플레이임. 매직 미러 사이트 https://magicmirror.builders/ 매직 미러 설치 방법 bash -c "$(curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)" (설치된 매직 미러는 MagicMirror디렉터리에 들어있음.) 매직미러 실행 방법 cd MagicMirror npm start 매직 미러 실행 정지 방법 ctrl + Q -> 여기서 사용되는 프로세스 관리도구는 pm2임. (pm2 - Node..
BLE Multi connect란 말 그대로 안드로이드 어플리케이션 하나에 여러개의 ble들을 연결하는 것을 의미한다. BLE 연결 관련된 자료는 이전 글에 게시해놨다. BLE Multi connect의 핵심은 큐를 사용하는 것이라고 할 수 있다. BLE와 데이터를 주고 받으려면, characteristic을 읽거나 쓰고, notification을 등록하는 과정이 필요한데, 이 과정들이 동기로 돌아야한다. 즉, 순서대로 코드가 실행되야하는데, 동기화를 하지않으면, 비동기로 이 코드들이 돌아가기때문에 에러가 발생한다. 아래의 예시 코드를 보면서 생각해보자. 안드로이드에서 BLE의 프로세스를 따지면 아래와 같다. 1. BLE와 안드로이드의 연결(페어링) (callback에서 onConnectionStateC..
BLE란 BluetoothLowEnergy의 약자로 저전력 블루투스를 의미한다. BLE와 일반 블루투스(클래식 블루투스)와의 차이는 전력도 있지만, 보낼 수 있는 데이터의 양도 있다. BLE는 블루투스에 비해 적은 양의 데이터를 보낼 수 있지만, 속도는 일반 블루투스에 비해 뒤쳐지지않는다. 또한 BLE와 블루투스 통신 방법에도 크게 차이가 있다. BLE는 GATT이라는 특성을 이용해 통신을 하게 된다. 이를 자세히 알아보자. ATT란? ATT란 AttributeProtocol의 약자로 서버와 클라이언트 사이의 데이터 교환 규칙을 정의하는 역할을 한다. GATT이란? GATT란 GenericAttributeProfile의 약자로 BLE의 데이터 교환을 관리하는 역할을 한다. 디바이스들이 데이터를 발견하고,..