npm 包 homebridge-esp1 使用教程

阅读时长 7 分钟读完

HomeKit 是 Apple 公司推出的开源智能家居平台,homebridge 是一个可以将非 HomeKit 设备接入 HomeKit 系统的开源桥接软件。homebridge-esp1 是一个 homebridge 插件,可以将 ESP8266 设备接入 HomeKit 系统,实现智能家居的控制。

前置要求

在开始使用 homebridge-esp1 之前,需要满足以下条件:

  • 一台运行着 Homebridge 的设备
  • 一台 ESP8266 设备,并且已经烧录了 ESPHome 固件

安装 homebridge-esp1

在命令行中运行以下命令,即可安装 homebridge-esp1:

配置 homebridge-esp1

在 Homebridge 的配置文件中添加以下配置:

-- -------------------- ---- -------
-
  --------- -
    ------- -------------
    ----------- --------------------
    ------- ------
    ------ ------------
  --
  
  -------------- -
    -
      ------------ -------
      ------- ----------
      ------- ----------------
      ------- ------
      ----------- -
        -
          ------ - ------
          ------ - ---------
          ---------- - -----
          ---------- - -----
          --------- - -----
          ---------- - ------
          ----- - -------------
          ----- - ------------
        -
      -
    -
  -
-
  • name:插件名称,自定义即可。
  • host:ESP8266 设备的 IP 地址。
  • port:ESPHome 固件中配置的 API 端口号。
  • switches:开关列表,详见下文。

开关列表

使用 homebridge-esp1 可以控制 ESP8266 设备的开关状态,开关列表中包含了所有需要控制的开关。

下面是一个简单的开关设置:

-- -------------------- ---- -------
----------- -
  -
    ------ - ------
    ------ - ---------
    ---------- - -----
    ---------- - -----
    --------- - -----
    ---------- - ------
    ----- - -------------
    ----- - ------------
  -
-
  • name:开关名称,自定义即可。
  • type:开关类型,目前只支持 switch
  • readable:可读状态,设为 true,表示可以读取开关状态。
  • writable:可写状态,设为 true,表示可以修改开关状态。
  • onValue:开关打开的值,默认为 "ON"
  • offValue:开关关闭的值,默认为 "OFF"
  • get:读取开关状态的 URL。
  • set:修改开关状态的 URL。

示例代码

下面是一个简单的 ESP8266 开关控制示例:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

总结

使用 homebridge-esp1 将 ESP8266 设备接入 HomeKit 系统,需要先烧录 ESPHome 固件,然后在 Homebridge 的配置文件中配置开关列表。使用示例代码可以控制 ESP8266 的开关状态。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005728581e8991b448e8bbd

纠错
反馈