智能家庭 / 原创

Unifi Access 控制 Homekit 门锁

Unifi 全家桶就差 Unifi Access 了,怎么能不搞一个呢

可我家只有 August gen4 门锁,也没法安装磁吸门,所以可以考虑使用 Arduino 来控制 Homekit 以来开启门锁

这里使用 Wio Terminal 来实现与 HomeBridge 的联动,详见这篇文章 (http://krunk.cn/post/2021/wio-terminal-控制多个-homekit-设备)

所以这里只需要在这个程序的基础上监听 GPIO 的变化就行了,将 5V 与 GPIO 22 接入 UA-Hub 到 lock-dry (Dry 连接会在开锁期间把 comm 与 no 接通,并且不上电) ,如果对应的 IO 口变成了 HIGH 那么就发送按键指令到 HomeKit 来开锁(别忘了加一个电阻)

安装

所需的配件

  • Wio Terminal
  • Unifi Access (UA-Hub, UA-Pro/UA-Lite)
  • GPIO 排线
  • 一个电阻 (阻值只要能让一个Button能用的阻值都行,大小貌似无所谓)
  • POE 转 USB (可选,目的是让 Arduino 与 UA-Hub 同时供电,可以在断电时一起通过 UPS 维持可用状态)

Wio Terminal 配置

关于 HomeBridge 的设置详见这篇文章,这里就不详细展开了

// WiFi SSID (部分5Ghz AP可能无法连接)
const char* ssid = "KIOT-Terminal";

// WiFi 密码
const char* password = "KIOT-UYDFGW6IdaW";

// HomeBridge地址 不要后斜杠以及ssl
// 如需使用ssl还需要配置公钥
const char* server_ip = "http://10.0.0.86";

以下内容假设这几步已经完成

  • 配置服务器端 HomeBridge 以及插件
  • 配置 Arduino 端 WIFI 密码以及 HB 的 IP 地址

下载下方下载链接中的固件,修改 wifi 信息以及 HB IP,将控制 HomeKit 固件中的配置信息可以都复制过来(互相通用),刷入 Wio Terminal

固件下载

按照下图连线

HomeBridge 配置

需要在 HB 的 Config 的 accessories 中加一句 44100 端口的按键,如果需要其他端口,可以在 Arduino 源码中搜索 44100 然后替换为其他的

	"accessories": [
        {
            "accessory": "KIOTSwitch",
            "name": "Unifi Access Lock",
            "port": 44100
        }
    ]

测试

将从 Arduino 上的两根线相触,如果屏幕显示 Access Granted,那么恭喜你设置成功了,如果显示 Unlock Failed,则代表与 HB 的连接出现问题,有可能是 HB 端口未开启,如果什么显示都没有,那就是 GPIO 没有检测到变化了

HomeKit 配置

将 Unifi Access Lock 按键的 按一下 设置为解锁 HomeKit 锁

GitHub: https://github.com/KrunkZhou/Unifi-Access-HomeKit-Lock/

写于 2021/10/06 · Krunk Zhou

一起聊聊