반응형

집에 놀고 있는 라즈베리파이가 있어서 
홈킷 카메라로 만들어봤다.
 
라즈베리파이 가격이 올라서
그냥 시중에 파는 홈킷 연동 카메라를 사는게 더 쉬운 방법일 수 있겠지만
 
좀 더 싼 가격에 만드는 재미까지 있으니
해볼만한 것 같다.

1. 준비물

먼저 카메라 만들 재료가 필요하다.

  • 라즈베리파이: 카메라로 쓸거니까 작을 수록 좋다. 난 zero W H를 사용했다.
  • 카메라 모듈: 제로용 카메라 모듈을 따로 판다. 난 알리에서 샀다.
  • 카메라 커넥터: 제로용 커넥터를 따로 판다.
  • 마이크로 SD카드: 라지 OS용. 

난 오래 전에 네이버에서 산 기억이 있어서
결제내역을 살펴봤다.
와 싸다. 
지금은 5000원~10000원 정도 더 줘야 사는 것 같다.
 

알리는 구매 내역을 찾지 못했는데
라즈베리파이 제로 카메라 모듈로 검색하면 많이 나온다.
그 중에 나는 적외선도 되고 성능도 괜찮은 놈으로 골랐다.
카메라는 알리가 더 싸다.
 

9.57US $ 26% OFF|Raspberry Pi Zero Night Camera + 2pcs Ir Led 5mp Camera Module For Raspberry Zero Wide Angle Fish Eye Webcam -

Smarter Shopping, Better Living! Aliexpress.com

www.aliexpress.com


조립은 간단하다.

2. 라즈베리파이 환경 설정

OS 굽기

https://www.raspberrypi.com/software/

Raspberry Pi OS – Raspberry Pi

From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody.

www.raspberrypi.com

위 주소에서 PI Imager 를 받으면 간단히 설치가 가능하다.
먼저 OS에 맞는 PI Imager를 설치하고
설치할 OS(Raspbian)고르고 이미지를 구울 스토리지 고르고 "WRITE"누르면 끝.

WiFi 설정

라즈베리파이 제로에 모니터를 연결하려면 mini HDMI케이블을 써야한다.
집에 있으면 좋지만(이런거 집에 있는 사람이 있을까......)
없으니 터미널 작업을 위해 SSH와 WiFi세팅이 필요하다.
 

  1. 먼저 루트 디렉토리에 "wpa_supplicant.conf" 라는 파일을 만든다.
  2. 에디터를 열고 파일 안에 아래 내용을 붙여넣는다.
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=GB
 
network={
 ssid="와이파이 SSID"
 psk="와이파이 비밀번호"
 key_mgmt=WPA-PSK
}

국가 코드는 KR로 하면 WiFi채널에 따라 안붙을 수 있다고 하니 GB(영국)로 작성했다.
그리고 초록색 부분에 라즈베리파이에 연결하려면 와이파이 정보를 입력해주면 된다.
 

SSH 설정

ssh설정은 더 간단하다.
WiFi설정과 마찬가지로 루트 디렉토리에 확장자 없이 "ssh"라는 빈파일을 만들면 된다.
 
이제 설정이 끝난 SD카드를 라즈베리파이에 꽂고 부팅 ㄱ ㄱ

터미널 접속

공유기에 접속해서 라즈베리파이에 붙은 IP정보를 확인한다.
터미널을 열고 ssh로 라즈베리파이에 연결한다.

ssh pi@192.168.xxx.xxx
pi@192.168.xxx.xxxs password: "비밀번호 입력"

ssh pi@접속할 ip 주소 입력하고 엔터.
비밀번호 입력하고 엔터. 
*라즈베리파이 초기 비밀번호는 "raspberry"
 

라즈베리파이 업데이트

본격적인 설치에 앞서 라즈베리파이 환경을 업데이트한다.
아래 명령어들을 순서대로 실행한다.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get clean
raspi-update

시간이 꽤 걸린다.
완료가 되면 재시작 ㄱ ㄱ

sudo reboot

 

node.js 설치

홈브리지를 위해 node.js를 설치해줘야 한다.
먼저 설치된 버전 확인.
아마도 버전이 너무 낮을 것이다.

node -v

홈 폴더로 이동 후 높은 버전을 설치해준다.
나는 11 버전으로 설치.

cd
wget https://nodejs.org/dist/v11.15.0/node-v11.15.0-linux-armv6l.tar.xz

압축을 풀어준다.

tar -xvf node-v11.15.0-linux-armv6l.tar.xz

아래 폴더로 이동한다.

cd node-v11.15.0-linux-armv6l/

node.js 설치 위치 확인한다.

whereis node

"/usr/local/bin/node" 와 같은 결과가 나온다. 사용자 환경에 따라 조금씩 다를 수 있다.
 
마지막으로 아래 명령어로 잘 설치됐는지 확인한다.

node -v

3. 홈브리지 설치

먼저 라이브러리와 홈브리지 설치한다.

sudo apt-get install libavahi-compat-libdnssd-dev
sudo npm install -g --unsafe-perm homebridge

아래 명령어로 homebridge 파일을 수정해준다.

sudo nano /etc/default/homebridge

nano 창이 열리면 아래 내용을 복사+붙여넣기 한다.

# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-U /var/homebridge

# If you uncomment the following line, homebridge will log more 
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*

"ctrl+x"와 "y"를 입력해서 파일을 저장한다.
 
카메라 플러그인을 설치해준다.

sudo npm install -g homebridge-camera-rpi

홈브리지를 비디오 그룹에 추가해준다.

sudo adduser homebridge video

 
홈브리지를 부팅과 함께 자동실행 시키기 위해 service 등록이 필요하다.

sudo nano /etc/systemd/system/homebridge.service

nano 창이 열리면 아래 내용을 복붙 again.

[Unit]
Description=Node.js HomeKit Server 
After=syslog.target network-online.target

[Service]
Type=simple
User=homebridge
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/local/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process

[Install]
WantedBy=multi-user.target

"ctrl+x"와 "y"를 입력해서 파일을 저장한다.
홈브리지를 시스템 유저로 등록해주고

sudo useradd --system homebridge

홈브리지가 접근할 수 있는 폴더를 하나 만들어준다.

sudo mkdir /var/homebridge

컨피그 파일을 복사해준다.

cp /usr/local/lib/node_modules/homebridge/config-sample.json ~/.homebridge/config.json

컨피그 파일을 수정한다.

sudo nano ~/.homebridge/config.json

nano 창이 열리면 아래 내용을 복사+붙여넣기 한다.

{
 "bridge": {
  "name": "Homebridge",
  "username": "XX:XX:XX:XX:XX:XX",
  "port": 51826,
  "pin": "031-45-154"
 },
 "platforms": [
 {
  "platform": "rpi-camera",
  "cameras": [{"name": "Pi Camera"}]
 }]
}

username에는 MAC주소를 넣는다.
아무렇게나 넣어도 될 것 같긴한데
난 MAC 제네레이터를 이용했다.
https://www.miniwebtool.com/mac-address-generator/

MAC Address Generator

MAC Address Generator - Generate random MAC address.

miniwebtool.com

이전 단계에서 만들어놓은 폴더에 필요한 파일들을 복사하고 권한까지 부여해준다.

sudo cp ~/.homebridge/config.json /var/homebridge
sudo cp -r ~/.homebridge/persist /var/homebridge
sudo chmod -R 0777 /var/homebridge

모든 세팅이 끝났다.
daemon을 다시 올리고
활성화, 홈브리지를 다시 시작해준다.

sudo systemctl daemon-reload.
sudo systemctl enable homebridge.
sudo systemctl start homebridge.
sudo systemctl status homebridge

마지막 status 명령어를 통해서 홈브리지가 제대로 올라왔는지 확인할 수 있다.
잘 설치 됐다면 아래와 같은 화면을 볼 수있다.

3. 홈킷 연결

홈브리지가 제대로 올라왔다면
홈킷을 열고 액세서리 추가 > 추가옵션으로 들어가면
카메라 플랫폼, 카메라 액세서리가 떠 있는걸 볼 수 있다.
선택하고 컨피그에 입력했던 pin 코드("031-45-154")를 입력 해준다.

카메라가 설치된 방을 선택하고 이름까지 붙여주면 모든 설정이 끝난다.

첫번째 카메라(어항)가 라즈베리파이로 붙이 카메라.

생각보다 화질이 괜춘허다.

 
심심할때마다 꺼내서 물멍할거야~~~


 

IR기능도 꽤 괜찮다. 이제 불 안켜고 24시간 물멍 가능.

반응형

+ Recent posts