# 把你的PS5接入Homebridge

By [cylll](https://paragraph.com/@cylll) · 2022-01-17

---

![](https://storage.googleapis.com/papyrus_images/adf9abae338deda2e0c6755a3512fb6534fddab67a4cb9637a0af9315e89c448.jpg)

起因刷到一条微博把PS5接入HomeKit，感觉十分有趣，于是就在GitHub上面搜索到了一个现成（开源万岁）的实现方式，通过PS5的远程连接实现的唤醒PS5。

准备
--

这里就不赘述 [HomeBridge](https://homebridge.io/) 的安装了，贴一个大佬的教程作为参考：

[https://sspai.com/post/59636](https://sspai.com/post/59636)

然后以下是远程唤醒PS5的项目地址：

[https://github.com/dhleong/playactor](https://github.com/dhleong/playactor)

安装
--

### a. 安装 playactor

`sudo npm install -g playactor`

### b. 配置连接PS5

#### i 获取机器的id

运行 `playactor browse` 可以查看当前网络中PS5设备：

这里我们可以获得我们PS5 的 id : 00EXXXXXXXX0 。

#### ii 连接设备

运行 `playactor login --host-id 00EXXXXXXXX0  --no-open-urls`

`--no-open-urls`  这个参数是由于我是用的树莓派无法直接打开浏览器进行后续认证，所以通过返回登陆链接来进行登陆。

此时将返回的连接在浏览器中打开：

后面就是登陆的操作，成功登陆后会看到一个页面写着 redirect，此时已经登陆成功了。将地址粘贴到终端然后回车绑定：

然后到PS5的设置->主机->远程游玩->关联设备中获取验证码并输入终端中：

#### iii 控制PS5

登陆 `playactor login --host-id XXXXXXXXXXXX`

唤醒 `playactor wake --host-id XXXXXXXXXXXX`

待机 `playactor standby --host-id XXXXXXXXXXXX`

检查PS5当前状态 `playactor check --host-id XXXXXXXXXXXX`

要是只有一台设备的话可以不指定 host-id ：

登陆 `playactor login --ps5`

唤醒 `playactor wake --ps5`

待机 `playactor standby --ps5`

检查PS5当前状态 `playactor check --ps5`

接入Homebridge
------------

这个可以借助**Homebridge中的开关插件，下面几个应该都可以，大家个人喜好选择：** [**Homebridge-cmdaccessory**](https://github.com/entmike/homebridge-cmdaccessory)  [**Homebridge-cmdswitch2**](https://github.com/luisiam/homebridge-cmdswitch2#readme)  [**Homebridge-cmd4**](https://github.com/ztalbot2000/homebridge-cmd4) [**Homebridge-cmdtriggerswitch**](https://github.com/hans-1/homebridge-cmdtriggerswitch#readme) 

**我自己用的是** [**Homebridge-cmdaccessory**](https://github.com/entmike/homebridge-cmdaccessory) **，搜索安装即可：**

原理是通过唤醒和待机命令作为开关，然后通过 `playactor check  --ps5 | grep -i '200 Ok'` 轮询获取PS5的当前状态。

最后配置如下：

    {
        "platform": "cmdAccessory",
        "name": "CMD Accessory",
        "switches": [
            {
                "name": "PS5",
                "on_cmd": "playactor wake --ps5",
                "off_cmd": "playactor standby  --ps5",
                "state_cmd": "playactor check  --ps5 | grep -i '200 Ok'",
                "polling": true,
                "interval": 120,
                "manufacturer": "Sony",
                "serial": "00EXXXXXXXX0",
                "type": "Switch"
            }
        ]
    }
    

遇到的问题
-----

首次安装完毕后在**Homebridge**中唤醒PS5一直报错，但是直接在终端中输入命令时又可以成功执行，然后怀疑问题可能出在不同用户上，我的**Homebridge**安装创建了**Homebridge**的用户。当我切换到homeBridge时执行命令确实会报错，然后我重新进行绑定后就可以正常使用了。

后面查看一下GitHub中的issue发现首次绑定成功后会将配置写在当前用户目录下`/home/homebridge/.config/playactor`，所以在**Homebridge**的WebUI上会调用失败。

最后
--

一顿操作安装完毕后，发现其实这个功能使用频率真的很低很低😂。当你折腾好后给女朋友演示在手机的Homekit上打开了PS5后就变得索然无味了，但是折腾的过程还是十分有趣的。毕竟谁会不想把心爱的PS5接入HoneKit呢（doge

参考资料
----

**「**[Homebridge Integration Guide](https://github.com/dhleong/playactor/discussions/22)**」**

**「**[https://github.com/dhleong/playactor/issues/15](https://github.com/dhleong/playactor/issues/15)**」**

---

*Originally published on [cylll](https://paragraph.com/@cylll/ps5-homebridge)*
