CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·주식한당 ·MaClien ·방탄소년당 ·일본산당 ·소시당 ·개발한당 ·자전거당 ·이륜차당 ·AI당 ·안드로메당 ·소셜게임한당 ·골프당 ·바다건너당 ·걸그룹당 ·곰돌이당 ·나스당 ·콘솔한당 ·가상화폐당 ·키보드당 ·클다방 ·패스오브엑자일당 ·리눅서당 ·퐁당퐁당 ·물고기당 ·전기자전거당 ·노젓는당 ·디아블로당 ·찰칵찍당 ·라즈베리파이당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·사과시계당 ·육아당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·방송한당 ·PC튜닝한당 ·그림그린당 ·소풍간당 ·심는당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·위스키당 ·와인마신당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

라즈베리파이당

라즈베리파이를 사용하는 사람들의 모임입니다!

우분투 Ubuntu
라즈베리파이에서 우분투 2

1
밝은달사랑
3,515
2020-11-20 00:48:28 121.♡.146.253

본업이 IT와는 너무도 먼지라 그나마 조금 써봤다고 우분투를 라즈베리파이4에 설치해서 사용하고 있었는데...

사용한지 한 1년쯤 된거 같은데 오늘에서야 블루투스가 작동을 안하는 것을 알았습니다.

아마도 제가 못 찾았던 것이겠지만 아무리 찾아도 블루투스를 작동시키는 방법이 없더라구요.

아니 정확하게는 작동은 하는데 매번 명령어를 입력을 해줘야하더라구요.

그래서 한참을 찾아서 최종적으로 적용한 결과를 공유합니다.

비 IT인의 홈자동화를 위해서 화이팅입니다.


1. pi-bluetooth

이걸로 해결되시면 이걸로 해결을 보십시오.(저에겐 해당사항이 없었습니다.)

sudo apt install pi-bluetooth ->(snap으로 설치하라고 뜨면 아마도 안되지 싶습니다. 제가 그랬습니다.)

sudo nano /boot/firmware/nobtcfg.txt

-------------------------------------------------------------

#cmdline=nobtcmd.txt     -> 주석처리

cmdline=btcfg.txt              -> 추가
-------------------------------------------------------------


2. hciattach

sudo hciattach /dev/ttyAMA0 bcm43xx 921600

위의 명령어를 입력하면 블루투스 장치가 로드됩니다만...

라즈베리파이3에서도 같은 명령어를 사용하는데서 뭔가 올드한 느낌이 들어서 저는 다음 방법을 적용했습니다.

다만 이 명령어를 부팅시에 1번만 실행하면 종료할 때까지 무난한게 동작한다는 점에서 적용하기는 편할겁니다.

잘 찾아보면 부팅시에 실행하는 방법도 있습니다.


3. battach

비록 성공하지는 못했으나 pi-bluetooth 설치하고 뒤져본 결과 라즈베리파이4 기준으로 아래 명령어를 실행하는 것으로 보입니다.

sudo btattach -B /dev/ttyAMA0 -P bcm -S 3000000

문제는 이 명령어가 백그라운드에서 돌아가지 않는다는 겁니다.

IT인분들께서는 그게 뭐가 문제지 싶겠지만 비IT인에게는 아주 큰 문제이지요.

명령어 뒤에 & 붙여주시면 백그라운드에서 돌아간다고 합니다.(★★ ★ )

힘들게 올린 블루투스를 다운시킬 필요가 있을까 싶지만 또 세상일은 모르는 것이니까.

pidof -x btattach  -> PID확인

sudo kill -9 PID     -> 프로세서 강제종료

그러면 이걸 잘 조합해서 서비스를 등록하면 됩니다.

구글링을 하면 init.d 말고 service를 등록해서 적용하면 된다고 하는데 왜인지 죽어도 안됩니다...

그래서 home assistant를 설치하면서 줏은 서비스를 살짝 수정해서 작성했습니다.

cd /etc/init.d
sudo nano btdl-daemon

-----------------------------------------------------------------------------------------------------------------

#!/bin/sh
### BEGIN INIT INFO
# Provides: Bluetooth Driver Load
# Required-Start: $local_fs $network $named $time $syslog
# Required-Stop: $local_fs $network $named $time $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Bluetooth
### END INIT INFO

# /etc/init.d Service Script for Bluetooth
BTDL_BIN="btattach -B /dev/ttyAMA0 -P bcm -S 3000000 &"
RUN_AS="당신의 ID"
PID_DIR="/var/run/btdl"

start() {
create_piddir
if [ -f $PID_FILE ] && kill -0 $(cat $PID_FILE) 2> /dev/null; then
echo 'Service already running' >&2
return 1
fi
echo -n 'Starting service… ' >&2
local CMD="$BTDL_BIN pidof -x btattach>$PID_FILE"
su -s /bin/bash -c "$CMD" $RUN_AS
if [ $? -ne 0 ]; then
echo "Failed" >&2
else
echo 'Done' >&2
fi
}

stop() {
if [ ! -f "$PID_FILE" ] || ! kill -0 $(cat "$PID_FILE") 2> /dev/null; then
echo 'Service not running' >&2
return 1
fi
echo -n 'Stopping service… ' >&2
kill $(cat "$PID_FILE")
while ps -p $(cat "$PID_FILE") > /dev/null 2>&1; do sleep 1;done;
rm -f $PID_FILE
echo 'Done' >&2
}

install() {
echo "Installing Bluetooth Driver Load Daemon (btdl-daemon)"
update-rc.d btdl-daemon defaults
create_piddir
}

uninstall() {
echo "Are you really sure you want to uninstall this service? The INIT script will"
echo -n "also be deleted! That cannot be undone. [yes|No] "
local SURE
read SURE
if [ "$SURE" = "yes" ]; then
stop
remove_piddir
update-rc.d -f btdl-daemon remove
rm -fv "$0"
echo "Bluetooth Driver Load Daemon has been removed. Bluetooth Driver Loader is still installed."
fi
}

create_piddir() {
if [ ! -d "$PID_DIR" ]; then
mkdir -p $PID_DIR
chown $RUN_AS "$PID_DIR"
fi
}

remove_piddir() {
if [ -d "$PID_DIR" ]; then
if [ -e "$PID_FILE" ]; then
rm -fv "$PID_FILE"
fi
rmdir -v "$PID_DIR"
fi
}

case "$1" in
start)
start
;;
stop)
stop
;;
install)
install
;;
uninstall)
uninstall
;;
restart)
stop
start
;;
*)
echo "Usage: $0 {start|stop|restart|install|uninstall}"
esac
-----------------------------------------------------------------------------------------------------------------

sudo chmod +x /etc/init.d/btdl-daemon

sudo service btdl-daemon install

sudo service btdl-daemon start

등록한 서비스에 군살이 많은 것 같기는 합니다만 이건 확실히 동작하니까요.

IT와 관련하여 해결할 능력이 부족한 우리 비IT인들에게는 확실한게 최곱니다.


제 사용환경은 라즈베리파이4 우분투 18.04.5 LTS 입니다.
우분투 18.04.5 LTS 환경에서는 검증되었으나 다른 시스템에서는 다를 수도 있습니다.

출처 : me
밝은달사랑 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [2] 을 클릭하면 간단한 회원메모를 할 수 있습니다.
Realtime
IP 75.♡.156.182
11-20 2020-11-20 02:59:14
·
우분투 20.04 이후부터는 다음 명령어들로 해결 되더군요.

sudo apt install -y \
bluez \
bluetooth \
bluez-tools \
pi-bluetooth
sudo systemctl enable bluetooth.service
sudo systemctl start bluetooth.service
sudo usermod -aG bluetooth ubuntu
sledk
IP 121.♡.245.160
11-20 2020-11-20 17:00:19
·
18.04.5 파이버전 단점이 블루투스랑 와이파이 호환성이 너무 떨어진다는거죠. 터미널에서는 와이파이 연결되어있는데 연결이 안되어있다고 상단바에서 알려주니 ㅎㅎ.. 그래서 20.04로 이주한 이후에는 아무런 탈 없이 잘 쓰고 있네요
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB
업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.