# bluetooth

23개의 포스트
post-thumbnail

[Flutter]BLE - 3. 블루투스 기기 연결과 해제

들어가며 >지난번까지는 ESP32 디바이스의 Advertising, 플러터 앱에서 BLE 디바이스를 검색하는 것까지 했습니다. 이번에는 검색을 했으니, 연결을 해보도록 하겠습니다. UI 구성 >디바이스의 목록이 화면에 뜨죠? 각 목록을 옆으로 스와이프해서 연결할 수 있도록 할겁니다. 제가 제작한 화면은 아래와 같아요. >로직상의 에러때문에 연결 후 바로 연결할 수 있는 장비가 없다고 표시되고 있지만, 조만간 수정하겠습니다. >fl

2023년 7월 25일
·
0개의 댓글
·
post-thumbnail

[Flutter]BLE - 2. 블루투스 기기 검색

들어가며 >지난번에서는 디바이스의 블루투스 기능활성화여부에 따른 라우팅까지 했었습니다. 이제는 본격적으로 블루투스 기기 검색과 ESP32와 Arduino IDE를 이용하여 Advertising할 수 있도록 하는 방법을 알아보겠습니다. startScan & scanResults >Start버튼을 클릭하면 제가 ESP32로 만든 BLE 장치를 검색해야 합니다. 제가 만든 BLE 장치의 코드를 잠깐 보겠습니다. >해당 코드는 Arduino IDE를 이용하여 제작하였습니다. 이렇게 실행시키면 ESP32는 BLE장치처럼 Advertising을 할 수 있습니다. 이제 앱에서 해당 기기를 찾아야 합니다. 저는 우선, 장치

2023년 7월 11일
·
0개의 댓글
·
post-thumbnail

[Flutter]BLE - 1. 블루투스 상태 확인

들어가며 >이번학기에 대학교에서 BLE에 대해서 공부하게 되었습니다. 처음에는 이론시험만 치룰 줄 알았는데, 세상에 BLE와 관련된 모바일 앱을 만드는게 과제였습니다. 교수님께서 예제 앱을 주셨는데, 아쉽게도 Android 프로젝트더군요. 그래서 직접 허락을 구하고 Flutter를 이용해서 제작하기로 하였습니다. 이러쿵 저러쿵 서론이 길었지만, 이 시리즈는 저의 완성품을 토대로 Flutter 프로젝트에서 Bluetooth 앱을 만드는 법을 정리한 시리즈입니다. Bluetooth >Bluetooth는 근거리 무선통신 방식입니다. 이전과 달리 현대의 Bluetooth 기술은 굉장히 엄청난 수준까지 발전하였고, 멀지 않은 미래의 IoT 세상을 만드는 중요한 기술입니다. 하지만, 제가 이번 글에서 다룰 주인공은 BLE입니다. BLE >BLE란 (Bluetooth Low Energe)를 의미합니다. 말 그대로 저전력 블루투스라는 의미에요. 이 기

2023년 7월 3일
·
0개의 댓글
·
post-thumbnail

Bluetooth 장치를 이용할 때 문제가 발생한다면?

Windows를 사용하는 사용자가 Bluetooth 장치를 이용할 때 문제가 발생한다면? 안녕하세요 5yattree입니다. 오늘은 Windows를 사용하는 사용자들이 Bluetooth 장치를 이용하다가 작동상 문제가 있을 때 어떤 것들을 살펴보면 좋을지 기본적인 점검 방법과 방향성에 대해서 가이드를 제공하여 볼까합니다. Bluetooth를 사용하다가 난처한 경우가 있으신 분들이 계시다면 이 글을 통해서 조금이나마 도움이 되기를 바랍니다. 그럼 시작하겠습니다. Ⅰ. Bluetooth 란? Bluetooth는 스마트폰, 노트북, 이어폰, 헤드폰 등의 여러 휴대기기를 서로 연결하여 정보를 교환하는 근거리 무선 기술의 표준입니다. 블루투스는 2,400~2,483.5 MHz 주파수 대역을 이용하여 장치와 연결하고 상호간

2023년 6월 22일
·
0개의 댓글
·

Bluetooth dongle

rtlbt/rtl8761bufw.bin 부재 <img src="https://velog.velcdn.com/images/everglow83/post/5c258017-1905-48d5-87e8-e7a292f8a06f/image.png

2023년 6월 3일
·
0개의 댓글
·
post-thumbnail

Osnabrück Food Box Project

2022 2학기 독일 Hochschule Osnabrueck에서 교환학생을 하며 경험한 블루투스 통신을 통한 잠금장치 시스템 구현 프로젝트임 > ## 프로젝트 소개 프로젝트 명: EPS FOOD BOX PROJECT 프로젝트 기관: Hochschule Osnabrück 기간: 2022.09-2023.01 프로젝트 주제: Hochschule Osnabrück의 자체 브랜드 맥주 Campus Bier의 pick and collect 판매 시스템을 위해 제작된 무인 택배함의 잠금 시스템 구현 팀명: Komoco Box 팀인원: 3명 팀내 역할: 기술 리더 프로젝트 요구사항: 기능적 요구사항 모바일 디바이스로 잠금해제 요청이 가능해야 한다. 잠금해제 요청을 위해 웹사이트를 이용해야 한다. 잠금장치는 중앙 서버를 통해 제어되어야 한다. 잠금해제 요청시 박스에 붙은 QR코드를 통해 알맞은 Food

2023년 4월 28일
·
0개의 댓글
·

Bluetooth in iOS

친한 후배 덕분에 블루투스 기기와 연동하여 데이터를 표시하는 프로젝트를 진행했었습니다. 학습했던 것을 간단하게 정리해보려고 합니다. CoreBluetooth Core Bluetooth 프레임 워크는 BLE(Bluetooth Low Energy)와 BR/EDR 무선 통신 기술을 장비한 블루투스와 애플리케이션이 통신하는데 필요한 다양한 클래스를 제공합니다. Central과 Peripheral 블루투스 통신에서 중요한 것은 Central(중앙장치)와 Peripheral(주변장치)입니다. 데이터를 받아오고 처리하는 기기가 Cental의 역할을 맡게되고 데이터를 측정하고 Central로 데이터를 전송하는 기기를 Peripheral 이라 합니다. 예를 들어 블루투스 안마기와 안마기 관련 앱이

2023년 4월 24일
·
0개의 댓글
·
post-thumbnail

[IoT] 쌩초보 ESP32 연결해보기 (WiFi Scan)- macOS

선정 이유 러닝 시 발이 지면에 닿는 부분을 확인하기 위하여 신발 밑창에 압력 센서를 설치하기로 했다. 신발 안에 보드를 넣기 위해서 ESP8266과 ESP32을 고민하다가 GPIO 핀 갯수가 많고 Bluetooth 연결이 가능한 ESP32를 선택하였다. 연결 방법 ESP32는 Arduino IDE를 사용한다. 따라서 https://www.arduino.cc/en/software 에서 운영체제에 맞게 설치하도록 하자. 상단바의 Arduino IDE를 클릭해서 Preferences로 들어간다. 하단에 보면 Additional boards manager URLs가 있는데 여기에 다음을 입력한다. Arduino IDE - Preferences![](https://velog.velcdn.c

2023년 2월 4일
·
0개의 댓글
·
post-thumbnail

[Linux] K380 Bluetooth 키보드 Fn 고정 활성화

&emsp;Logitech K380 키보드는 기본 설정으로 F1 ~ F12 키가 Fn 을 눌렸을 때 입력되게 만들어져 있다. 그래서 이름 변경(F2) 나 새로고침(F5) 을 하기 위해서 Fn 키를 눌러야 하는 번거로움이 있다. &emsp;가장 큰 문제는 키보드 자체적으로 Fn 키를 고정 시킬 수 있는 방법이 없다는 것이다. 그래서 소프트웨어적으로 Fn 키 고정 명령을 쏴줘야 하는데 이게 사람 환장하게 만든다. Logitech 공식 홈페이지에서 이를 위한 소프트웨어인 Logi Options+ 를 제공해주는데 Windows 와 macOS 만 지원해주고 Linux 에선 지원을 안 해준다. 그래서 Linux 에서는 아예 손을 떼고 있다가 최근에 이를 해결할 방법을 찾게 되어 그 방법을 기술해보려 한다. ---- ![](https://velog.velcdn.com/images/mythos/post/f3a68d56-c9d

2023년 1월 22일
·
4개의 댓글
·
post-thumbnail

ubuntu 20.04 bluetooth headphones no sound

ubuntu에서 usb허브에 블루투스 동글 꽂아놓고 무선 블루투스 이어폰을 쓰다가 예기치못하게 연결이 끊어지고 다시 연결하면 연결은 되었지만, 소리가 들리지 않을 때가 있다. 'ubuntu 20.04 bluetooth headphones no sound' 이런 키워드가 구글 연관검색어로 뜨는 것을 보니 다른 사람들도 흔히 겪는 문제인가보다 https://superuser.com/questions/1546367/no-sound-on-bluetooth-headphone-in-ubuntu-20-04 https://askubuntu.com/questions/1232159/ubuntu-20-04-no-sound-out-of-bluetooth-headphones/1243890#1243890 내가 했을때 해결한 건 위에서 발견한 이 코드인데 ![](https://velog.velcdn.com/images/yellofi/post/d8c8291b-4eeb-4421-9e5d-13dc52

2022년 10월 7일
·
0개의 댓글
·
post-thumbnail

[Linux] Fedora 35 Logitech K380 블루투스 페어링

&emsp;Fedora 에서 Logitech K380 블루투스 키보드를 페어링하기 위해 장치를 검색해도 나타나지 않는 문제가 있다. 현재 삽화에서는 필자가 이미 페어링을 한 상태이므로 정상적으로 나타나지만 처음에는 무슨 짓을 해도 잡히질 않는다. 위 문제는 다음의 명령어를 입력하여 해결할 수 있다: &emsp;pair 명령을 입력하여 키보드와 페어링을 시도하면 Passkey 입력을 요구하는데 이때에는 화면에 보이는 번호를 K380 키보드에서 순서대로 입력하면 된다. &emsp;Pairing successful

2022년 10월 6일
·
0개의 댓글
·
post-thumbnail

🪢유선유죄 무선무죄📡

이더넷Ethernet "이더넷에는 한 가지 중대한 결점이 있다. 바로 통신선이 필요하다는 점이다." 컴퓨터 네트워크 기술의 하나. 일반적으로 LAN, MAN 및 WAN에서 가장 많이 활용되는 기술 규격. reference) 트위스티드 페어 케이블 (이더넷 케이블Ethernet Cable, 일명 랜 케이블, 랜 선)& 이더넷이 사용된 CAT 5E 노트북 연결 > ## 무선 통신 "다행히도 이더넷의 결점을 해결할 방법, 그것은 무선 통신을 이용하는 것이다." 👉 무선 전자기파를 사용하여 데이터를

2022년 8월 4일
·
0개의 댓글
·

안드로이드 블루투스 연결 삽질기록

삽질기록 IOException: read failed, socket might closed 오류 상황 : 1. blDevice 찾아서 Const에 저장 Const.blSocket = Const.blDevice.socket() Const.socket connect() Const.socket에 데이터 write Const.socket close() 데이터 다시 write 하려면, Const.blSocket = Const.blDevice.socket() Const.blSocket.connet() 한마디로, 처음에 blDevice를 Const에 저장해놓고, 데이터 write 할때마다 동일한 device의 소켓을 찾아서 connect ->write -> close 함. 그런데 이렇게 하니까 재연결 할때 계속 에러가났다. 이렇게 한 이유?: 데이터 송수신을 끝낸 후 소켓을 close 안하면

2022년 6월 26일
·
0개의 댓글
·
post-thumbnail

Android BLE 파헤치기 _ Auto Connect 편

서론 나는 현재 회사에서 블루투스 SDK 관련 업무를 맡고 있다. 그래서 블루투스 관련 문서를 많이 보는 편인데, 안드로이드 공식 사이트에 나와있는 블루투스 관련 설명이 하나같이 다 불친절하다고 느꼈다. 사실 문서만이 아니다. 실제로 API를 사용해보면 에러 코드가 별 다른 구분 없이 다 동일한 코드로 떨어진다던가, 블루투스 전송 시 API 레벨에서 일련의 큐 구조와 같은 메시지 관리 로직이 없어 성공, 실패 등등의 응답이 떨어지기 전에 전송하면 문제가 발생한다던가 ... 사실 이러한 내용들은 난 공식 문서에서 알려줘야 하는 부분이라고 생각하는데, 공식 문서에는 하나같이 내용들이 부실하며, 그냥 단순한 코드 스니펫만 줄줄 나와있다. 그래서 답답했던 나머지 내가 여태껏 안드로이드의 Bluetooth

2022년 5월 2일
·
0개의 댓글
·
post-thumbnail

[Linux, Windows] 노트북 Bluetooth 이어폰, 헤드폰 소리 끊김 현상

왜인지 모르겠으나 필자가 사용하는 Lenovo Yoga Slim 7i Carbon 노트북(운영체제 Fedora Linux 35, Windows 11 둘 다) 에서 Bluetooth 헤드폰 혹은 이어폰을 통해 음악을 재생하면 연결이 불안정하고, 소리가 뚝뚝 끊기는 현상이 발생했다. 그냥 저냥 쓰다가 너무 짜증나서 해결 방법을 찾아 적어 놓으려 한다. 해결 방법 (Linux) 설정 ▶ 소리 ▶ 출력 ▶ 설정 으로 들어가서 HSP/HFP A2DP, codec mSBC 에서 Sink, codec AAC 로 변경 해결 방법 (Windows 11) ![](https://images

2022년 1월 25일
·
0개의 댓글
·

Bluetooth Pairing

이 글은 bluetooth.com에서 운영하는 블로그중 Pairing과정에 대한 설명을 담은 5편의 블로그 시리즈물을 번역한것입니다. 블로그에서 다루는 내용이 부족하신 분은 블루투스 스펙문서를 다운받아 심층적인 분석을 하시기 바라며, 번역된 내용이 잘 이해가 안되시는 분들은 원문을 참조 하시기 바랍니다. Bluetooth Pairing Part 1 – Pairing Feature Exchange (블루투스 페어링 Part 1 - 페어링 기능 교환) 원본링크 : https://www.bluetooth.com/blog/bluetooth-pairing-part-1-pairing-feature-exchange/ Bluetooth® Core 사양에는 컨트롤러, 호스트 및 애플리케이션의 세 가지 주요 아키텍처 계층이 있습니다. 호스트 계층

2021년 9월 17일
·
1개의 댓글
·

4 Tips to Make Android BLE Actually Work (번역)

출처: https://punchthrough.com/android-ble-development-tips/ Tip 1: Target a minimum API level of 21 > 구글은 Android 5.0(Lollipop, API level 21)이후부터 그 이전의 많은 문제들을 해결 개발자 친화적 APIs인 BluetoothLeScanner와 ScanFilter와 전체적으로 안정적 기능을 제공 Tip 2: Don’t perform BLE operations in rapid-fire succession > 이전 작동에 대하여 안드로이드 기기로부터 들었을때 오직 단 하나씩 수행시켜야 함 이것은 특별히 큰 payload가 전송되는 read and write 작동을 위해서나, service discovery 및 새로운 MTU를 요청하는 setup tasks를 연결하는 경우에 필요함 Tip 3: Handle error codes in the BluetoothGat

2021년 6월 14일
·
0개의 댓글
·

React Native BLE library 비교 (react-native-ble-plx VS react-native-ble-manager)

배경 > React Native를 통해 bluetooth를 사용하고자 하는 경우, 가장 대표적으로 알려져 있는 2가지 라이브러리를 비교해보고 알아보고자 한다. react-native-ble-plx (이하 'plx') 깃허브 공식문서 react-native-ble-manager (이하 'manager') 깃허브 공식문서 BLE 개념 이해 > - classic Bluetooth 기술 이후 약 10여년 전에 저전력으로 동일한 기능을 수행할 수 있는 Bluetooth Low E

2021년 6월 4일
·
0개의 댓글
·

BLE 개발 관련 내용 정리

BLE 개발 관련 내용 정리 딱 알아야 할 것만 알고 넘어가자! BLE를 비롯한 네트워크 분야는 전산학이 탄생한 이후 70여년 동안 끊임없이 발전하며 고인물들의 학문이 돼버렸다. 그러므로 우리는 이번 글에서 BLE에 대해서 딱 알아야 할 내용만 간단하게 알아보고자 한다. 시험보려고 공부하는 게 아니지않는가? 개발하려고 공부하는거지! 학습목표 BLE 통신 방법과 프로토콜 구조에 대해서 학습한다. BLE 개발을 위한 라이브러리를 분석한다. 1. BLE 통신방법 BLE 통신방법은 'Subscription-Notification' 방식으로 이뤄진다. 유튜브를 생각하면 아주 쉽게 이해할 수 있다. 우리는 보통 유튜브를 아래와 같이 이용한다. Advertising : 유튜브

2021년 5월 7일
·
10개의 댓글
·

Serial Communication using Python Linux through BLE with Arduino HC-06

Bluetooth connection Bluetooth settings Turn on PC and Bluetooth module. Update HC-06 BLE name and pin numbers(Search about HC-06 command) Connect to the bluetooth with Linux settings. If you want to do this part on Python, search about pybluez module. Get bluetooth address Get address of the module from settings. BLE Or you can find address wit

2020년 11월 26일
·
0개의 댓글
·