给手表加了个超能力:隔空开电脑
开篇
那有没有想过这种场景呢,当你劳累了一天,慵懒的躺在沙发上,看到茶几上的手柄,伸手去拿。可是懒得起身去开机,抬个手呢,搞定!
引入正题
那电脑放在那,这每次开机都要跑过去摁一下。你说这灯能遥控,这空调也能遥控,这电脑为什么不行呢?还有那些连遥控器都没有的笨家伙,那我们怎么来控制他们呢?这科技的发展不就是为了我们这些懒人而服务的吗?
所以有一个东西呢,就能够实现给他们加上遥控的能力,不管他自己智不智能,那就是Home Assistant,你可以把它理解成为家里的智能管家。不管什么牌子的设备啊,都能被它串起来一起玩。
不过别心急,别想着一上来就能实现全家的智能,先解决你眼前最麻烦的那个点,然后一点点的,你的全屋智能啊,就已经搭建完成了。那在后面呢,我会把其他这些东西啊,一个一个带你加进来,里面可能包含一些代码的部分,不过别担心,我都会打包放好,只要你跟着我复制粘贴呢,就一定可以实现功能。
两种方案
那回到我们这次的主题,我们使用两种方法呢,来实现给电脑开机。那先说简单的吧,那就是通过网络来发送一个命令,来将电脑来唤醒。不过听到命令这个词汇啊,你千万别担心,我们只要打开一个页面,填入一些东西以后呢,就可以实现了。
而第二种方法呢,就是去买一个几块钱的这种模块,来替你去按电脑上的开关键。这个呢也很简单,你不需要去焊接,只要拧几个这种螺丝就可以了。这稍微复杂一点呢,就是你要打开机箱,买一根几块钱的一分二的线啊,这动手能力好的呢,完全可以做一根像这样的线,来把你原来开机键的那个连接线呢和这个模块一起连接到主板的开机跳线上就可以了,而且原来的功能完全不受到影响。
那既然有两种方法,第一种特别简单,那为什么还要去折腾第二种方法呢?那就是啊,网络唤醒呢,它只能启动电脑,那如果家里的网络不稳定的话,就很容易造成启动失败。而且扩展一下,如果电脑主机死机的话,你就完全没有办法控制,只能跑过去去按那个按键,重新启动电脑了。
而这个继电器模块呢,它最厉害的一个点啊,就是除了可以实现正常的开关机之外呢,对于死机来说呢,它也可以实现强制的关机,就是可以实现你去长按开关键的那种效果。这网络断了呢,它会自己重连,不用你去管,但是对于断网来说呢,它就跟网络唤醒一样,就完全没有办法了。
那因为第二种啊,是用模块来实现开关机啊,动东西非常的多,我们放到下一期来实现,那先看看怎么使用网络唤醒来实现开机的吧。
动手开整
那现在你看到是一套全新的环境,这里面没掺杂之前那些设备,那这样在操作的时候呢,就不会被之前那些设备给绕晕了。我们先来看一下他们怎么设置。
首先呢在这个页面里边,我们先点击左下角这个设置,然后呢是设备与服务,呃点击右下角的添加集成。搜索框呢,我们搜索weak on lan,然后点击它。这里面呢,我们只要看第一个Mac地址就可以了,其他3个我们可以不用管它。
那这个Mac地址要去哪找呢?我们来分Windows和Mac分别来说。那先说Mac吧,这Mac的网络唤醒呢,不如Windows稳,这很多机型呢只能从睡眠唤醒,当它完全关机之后呢,它能不能被唤醒,这个完全要因型号而定,这个呢不敢保证。
好的,我们开始点这个左上角的苹果按钮,然后看系统设置,呃在网络里,我们只要找这种有线连接,无线的话,很大的概率它是启动不起来的。点我们的这个详细设置,点硬件,然后这里啊就可以看到你的Mac地址,这个呢就是我们一会要填入它的信息,这个是针对于Mac电脑的。
那好的我们来看一下Windows怎么获取有线网卡的Mac地址的,首先呢,我们将鼠标放到这个网卡图标上去,然后点右键,然后选择这个打开网络和互联网设置,选择这个以太网。在右边第一个呢,这个就是修改你的适配器的选项,点击它。
这里所列出来的就是当前所有的网卡的状态,然后前面带v的是虚拟网卡,这个我们不用管它。这通常来说呢,这无线网卡来实现远程唤醒是没有效的,所以我们来看有线网卡,这两个就是有线网卡,然后点击其中第一个,我们看它的状态,然后点击这个详细信息,这个物理地址呢,这个12位的地址,就是当前这个网卡的它的Mac地址。同样的方法获取第二个网卡的信息,看详细信息,这个呢就是它的物理地址。
在获取到Mac地址之后呢,就可以在页面里啊,将刚才我们获取到的Mac地址填写进去,点击提交,然后跳过并完成。在这呢你可以看到我们已经完成了我们这次的设置。
那除了以上这些配置呢,还不太够,大多数电脑啊,默认是不支持网络唤醒的,还有两个开关必须要打开,不然也是无效的。那我们回到系统,首先鼠标右键这个Windows按钮,选择设备管理,在这里呢,然后我们找到刚才的我们那两个网卡,我这里是先点击网络适配器,我的有线网卡是这两个,我们拿其中的一个来举例吧,我们去点击右键看属性。
首先第一个就是我们去看电源管理,我们将第二个允许设备网络唤醒,把它置为选中状态,同时呢下面这个,只允许魔术包来启动电脑,把它也选中。这两个选好之后呢,我们再看这个高级选项,在这里我们去找通过魔术包来唤醒电脑这个,我们将它置为激活状态,这样就可以了,我们点击ok。同样的另一个也是这样的操作。
那之后呢,关闭现在的窗口,我们右键这个Windows按钮,选择电源选项,点击右边的附加电源设置,在打开的界面里,点击左边第一个,选择电源按钮的功能,进去之后呢,确保这个”启用快速启动”一定不要选中,这否则呢也会无法网络唤醒的。
那另一项设置呢,就是这个BIOS,那拿我这台电脑微星主板来举例吧,它是通过DELETE键来进行设置的。那在设置界面里呢,我们先看高级这个选项,那首先呢,就是整合周边设置,我们进来将这个板载网卡控制器呢,置为允许,它这个呢,就是这个网卡功能有没有打开,我们先将它置为允许。
然后呢切到下面这个Windows8、8.1它的配置,我们进来以后将这三个全部置为禁止,它如果开着的话,电脑不会走完完整的开机流程,会影响待机唤醒的可靠性,所以统一关闭。那最后一项呢,就是这个唤醒事件设置,我们进来以后将里面的PCIE设置唤醒置为允许,那这个呢,就是真正的网络唤醒开关,它得打开,不然发送再多的唤醒命令呢,它也是无效的。
然后呢我们可以把电脑先关机,当机器完全停止之后呢,再通过点击这个”按下”按钮,然后来测试电脑是否能够正常启动起来。那这里呢,要做一个预警,就是针对于这种有多个有线网卡呢,不一定每个都是有效的,所以就是要确认一下,到底是哪一个在负责待机接收的,那最保险的方法呢,就是把每个都关机启动去测试一下。
手机就位
那当以上都完成之后呢,这接下来我们就要把这个开启功能放到你的手表上去,但是第一步想要在手机上安装这个官方的APP。那我们先去APP store搜这个Home Assistant,官方那个蓝色的小房子的图标是可以免费下载的。
然后呢我们打开这个APP,会提示连接服务器,如果手机和这个服务器在同一个Wifi下呢,一般会自动搜到,那选一下确认就可以了。那如果搜不到的话,我们可以手动去输入网址,用账号密码登录就可以了。在登录完成之后呢,在手机上就能看到和页面一样的dashboard了。
如果你的手表开了自动同步APP这个开关呢,那这个时候呢,你的手表上也会自动安装好这个APP。那如果没开,那就打开手机上的Watch这个APP,点击最下面的APP,就能看到可用的APP列表,在里面呢,就能找到Home Assistant,点一下安装就可以了。
手表登场
那我们终于来到了最后一步,就是把这个开机按钮呢,真正的放到你的手表上去。在最新的版本上呢,非常简单,就是在手机的APP里面,点击左上角三条横线,然后点击设置,在Companion应用里面呢,在Apple watch和CarPlay里面呢,如果你已经绑定了手表,那这里才能看到,在左面呢,有一个手表的图案,后面是配置,那点击它。
在里面项目下面啊,点击这个”添加项目”,选择第一个”实体”,这里面呢,就是我们现在有的所有的实体,我们在这里面搜索Weak,那这个呢,就是刚才我们添加的那个启动电脑按钮,点击它点击下面的add 1。
在这里呢,可以给它重新命名,图标颜色什么的,这下面这个”需要确认”呢,就是在你点击手表这个按钮的时候,都会问你是否要执行,那这个呢,我们按照需要来设置就好。例如呢我们点击这个图标,搜索Desktop,选择这个Desktop tower monitor,这个就不错,然后点击添加。
那这样呢,你在手表上打开Home Assistant,在手机启动APP的前提下呢,我们点击这个”刷新”,那就可以看到我们今天加的这个按钮了。
那另外呢,如果你的版本比较老呢,里面只有script脚本scene场景和iOS action三种类型呢,像继电器这种原始按钮的实体呢,是加不上去的,所以老版本啊,就得靠script脚本呢,来给它加一层壳,手表点击这个壳呢,这里面才会去执行按钮里面的那些功能。那经过以上的步骤呢,我们终于实现了来使用手表来开机的流程。
总结
不过呢网络唤醒有一个软肋,那就是电脑死机蓝屏的情况下呢,它就完全没有办法来控制它了。所以在下一集呢,我会介绍给你,使用这种几块钱的模块呢,就能够实现那种啊,在物理意义上,摁了就可以强制关机的办法。那我们下集再见了。