Skip to content

Latest commit

 

History

History
88 lines (66 loc) · 2.22 KB

homekit-integration.md

File metadata and controls

88 lines (66 loc) · 2.22 KB

Table of Content

Integrate OpenIPC into HomeKit

Currently OpenIPC doesn't have native HomeKit support yet, integration is made by 3rd party package go2rtc, thanks @gtxaspec for adding this package into OpenIPC

Hardware requirement

Since the compiled binary file will 3.3MB in size, flash chip size should be 16MB at least, DDR size should be 128MB at least

Compile go2rtc package

Install go and upx first

apt update
apt install golang upx
  • Method 1: Compile the whole firmware

Edit board config file in firmware/br-ext-chip-xxxx/configs directory, add the following line to enable the go2rtc package

BR2_PACKAGE_GO2RTC=y

then run

make distclean
make all BOARD=board_config_name
  • Method2: Compile the package only

make distclean
make br-go2rtc-rebuild BOARD=board_config_name

The compiled go2rtc binary file will located at firmware/output/per-package/go2rtc/target/usr/bin, default config file at firmware/output/per-package/go2rtc/target/etc

Edit config file

Put config file go2rtc.yaml into /etc/ directory, example config:

log:
  level: info  # default level
  api: trace
  exec: debug
  ngrok: info
  rtsp: warn
  streams: error
  webrtc: fatal

rtsp:
  listen: ":8553"

webrtc:
  candidates:
    - stun:8555

streams:
  openipc: rtsp://admin:[email protected]/stream=0

homekit:
  openipc:                   # same stream ID from streams list
    pin: 19550224           # custom PIN, default: 19550224
    name: openipc-ssc30kq      # custom camera name, default: generated from stream ID
    device_id: openipc       # custom ID, default: generated from stream ID

Run go2rtc

/usr/bin/go2rtc -config /etc/go2rtc.yaml &

Open the Home app on your Apple device, click the + button on the top-right corner, the OpenIPC camera should appear there automatically, enter the pin numbers in the config file to pair with it.

Autorun on startup

Add the following lines into /etc/rc.local

/usr/bin/go2rtc -config /etc/go2rtc.yaml &

Limitations

  • No HomeKit Secure Video support yet
  • No motion sensor support yet
  • No two-way audio support yet