homebridge-electromagnetic-lock

中文文档
2.0.2发布于 2026/11/04MITCommonJS零依赖

Homebridge插件控制电磁锁通过树莓派GPIO线

中文使用文档
文档目录8 节
  1. 安全的行为
  2. 需求
  3. 安装
  4. 配置
  5. 升级
  6. 从2.0.1
  7. 从1.倍
  8. 故障排除

主桥电磁锁

通过树莓派GPIO线控制电磁锁并暴露它 Apple Home作为一个锁机制。

2.0.2版本使用了一个Homebridge动态平台,它是为 Homebridge 2与Node.js 22.12或24。

安全的行为

  • 在安全状态下直接请求GPIO线,包括请求 继电器校验。
  • 配置完成后,锁自动恢复到安全状态 开启持续时间。
  • Homebridge和HomeKit状态一起更新。
  • GPIO故障显示为卡住锁定而不是主桥崩溃。
  • 在关闭期间,插件在释放控件之前写入安全值 GPIO线。

测试继电器逻辑不连接锁定电源。硬件设计 必须在树莓派断电或GPIO线时提供安全状态 被释放。

需求

  • Homebridge 2.倍
  • node . js 22.12。X或24.x
  • Raspberry Pi OS / Debian with libgpiodX开发包
  • 一个适合树莓派3.3 V GPIO的中继接口

在Debian 12 /树莓派操作系统上:

sudo apt update
sudo apt install -y build-essential gpiod libgpiod-dev

Homebridge业务用户必须具有访问权限 /dev/gpiochip*。 在标准的树莓派操作系统安装中,这通常意味着加入 这个 gpio 组:

sudo usermod -aG gpio homebridge
sudo hb-service restart

安装

sudo npm install -g homebridge-electromagnetic-lock

Homebridge用户界面也可以通过搜索安装包 homebridge-electromagnetic-lock。

配置

新安装应使用动态平台:

{
  "platform": "ElectromagneticLock",
  "name": "Lock",
  "lockPin": 18,
  "gpioChip": 0,
  "activeLow": true,
  "unlockingDuration": 2
}
  • name: Apple Home显示的配件名称。
  • lockPin: BCM GPIO / libgpiod行号,不是物理头引脚。
  • gpioChip: libgpiod芯片号;正常情况下 0。
  • activeLow: true 当GPIO值为0时激活继电器。
  • unlockingDuration:自动重新锁定前的秒数,取值范围为1 ~ 3600。

例如,树莓派物理头引脚12是BCM GPIO 18,所以配置 "lockPin": 18。

升级

从2.0.1

旧的附件配置在2.0.2中仍然受支持,因此存在 安装继续启动:

{
  "accessory": "ElectromagneticLock",
  "name": "Lock",
  "lockPin": 18,
  "gpioChip": 0,
  "activeLow": true,
  "unlockingDuration": 2
}

要使用动态平台,请将该块从 accessories 然后加上 新建街区 platforms. 不要让两个配置都处于激活状态,因为两者都 将尝试保留相同的GPIO线。

从1.倍

版本2更改了后端 rpi-gpio/sysfs to libgpiod。这个 lockPin 选项现在是BCM GPIO行号,而不是物理标头 销。例如,将物理引脚12替换为 "lockPin": 18。

故障排除

  • 确认芯片与线路的配合 gpioinfo。
  • 确认Homebridge业务用户可以访问 /dev/gpiochip*。
  • 安装 libgpiod-dev 在安装NPM包之前,因为原生的 GPIO绑定是本地编译的。
  • 在调试模式下运行Homebridge并查找插件的GPIO初始化 消息。

版本与发布记录

homebridge-electromagnetic-lock 共发布 5 个版本,首次发布于 2023/09/01;过去 12 个月发布了 2 个版本。

版本发布日期距今
2.0.2latest2026/11/041 天前
2.0.12026/06/104 个月前
1.0.22023/09/023 年前
1.0.12023/09/023 年前
1.0.02023/09/013 年前

关于 homebridge-electromagnetic-lock 的常见问题

homebridge-electromagnetic-lock 是什么?

Homebridge插件控制电磁锁通过树莓派GPIO线

如何安装 homebridge-electromagnetic-lock?

在项目目录运行 npm install homebridge-electromagnetic-lock,或使用 pnpm add / yarn add / bun add。

homebridge-electromagnetic-lock 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/homebridge-electromagnetic-lock 是否存在。

homebridge-electromagnetic-lock 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

homebridge-electromagnetic-lock 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^22.12.0 || ^24.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

homebridge-electromagnetic-lock 可以商用吗?

homebridge-electromagnetic-lock 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

homebridge-electromagnetic-lock 还在维护吗?

最新版本 2.0.2 发布于 2026/11/04(1 天前);至今共发布 5 个版本,其中过去 12 个月发布了 2 个;首次发布于 2023/09/01。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。