使用ESP32和Blinker实现远程网络唤醒电脑(接入语音助手,以小爱同学为例)

2020-05-03 17:00:21 36点赞 202收藏 61评论

创作立场声明:希望多多分享

购买理由

点灯科技 Blinker是提供远程接入物联网方案的一家公司,使用他们家的库,可以轻松将设备联网,并接入主流语音助手平台。

本文使用esp32模块,配合提供的arduino库和blinker库,可以实现远程网络唤醒电脑(防杠声明:也可以使用买现成的智能插座,主板设置来电自启,但是这里讨论网络唤醒的方案,而且一般笔记本也可以使用该方法远程唤醒,可以解决一些用户将笔记本竖起来开机麻烦的痛点)(再次防杠:现成的开机棒(向日葵)不在讨论范围,这里只是二十几元的diy方案讨论)。

需要物料

esp32模块(23.5元)、microusb数据线(先用来下载程序,以后就用它来供电就好了)、主机(笔记本电脑)、手机

使用ESP32和Blinker实现远程网络唤醒电脑(接入语音助手,以小爱同学为例)

操作方法

1.首先下载arduino软件,添加esp32的库自己blinker的库,网上百度一下有环境安装的教程。安装完成后如下图选择开发板型号。

选择开发板选择开发板

2.其中,blinker的库以及手机控制软件可以从如下地址下载( https://doc.blinker.app/?file=001-%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B/04-esp32-WiFi%E6%8E%A5%E5%85%A5 )

远程唤醒的代码我上传到了github上( https://github.com/xujunjie96/Blinker-xiaoAi-WOL/blob/master/Blinker_WOL.ino )

3.将ino文件下载,并下载手机端软件,注册成为开发者后添加设备,会提供给你一个密钥,这个密钥非常重要,复制下来。
4.使用arduino编译器打开ino文件,替换第3步的密钥,并替换wifi名称和密码,分别填入下图的x部分。

密钥& wifi密钥& wifi

5.在电脑打开cmd,输入ipconfig /all,查看有线网卡的mac地址自己网关地址。将mac地址和网关地址(网关最后的.1改为.255)分别填入下图的x部分。

mac&IPmac&IP

6.编译上传到esp32开发板(编译成功后屏幕下方出现connect的时候要按一下boot键才能下载。)

编译上传编译上传

7.手机上打开blinker软件,如果链接成功,设备显示在线,可以更改设备名(设备名也是后面小爱控制的东西的名字)

电脑控制电脑控制

8.点击图标进入,然后点击右上角编辑条件按键,将按键的值设为awaking,点击右上角锁保存。此时添加的按键,esp32上的灯会闪烁(如果有网络调试助手,打开udp模式,也能收到唤醒魔术包)。

按键设置按键设置

9.如果不用米家,则可跳过这一步,如果使用,则打开米家-我的-其它平台设备-选择点灯科技,进去后绑定账号选择同步设备,就可以把电脑同步进来了。

第三方接入-点灯科技第三方接入-点灯科技

设备同步设备同步

此时,对小爱同学说打开电脑,则esp32也会灯闪烁几下,发出唤醒魔术包。(由于WOL只能开机,不能关机,所以这边小爱只有打开电脑的操作。但是不用像普通插座那样必须再关闭插座后才能再打开插座,在本设备上你可以一直说打开电脑)。

10.然后就是电脑上的操作了,控制面板-网络和共享中心-以太网-属性-配置-高级-魔术包唤醒-开启。

设置网络属性设置网络属性

11.然后进入主板BIOS,选择网络唤醒(有的叫WOL唤醒、网口唤醒之类),本人台式机主板为微星b450m迫击炮max,设置pcie唤醒即可(有的电脑唤醒不成功可能要关闭快速启动)。

12.对了 记得是有线连接。

13.好了,对你的小爱说打开电脑,或者Blinker软件上点击按键试一下,板子上灯闪几下,电脑就会开机了。

总结

这里讨论小爱的接入,天猫精灵原理相同。

展开 收起
61评论

  • 精彩
  • 最新
  • 大佬,只能献上膝盖 [赞一个]

    校验提示文案

    提交
    [喜极而泣] 渣渣而已,以后再也不发文了,一群人文章都不看上来就杠,写了两个防杠声明还来杠 [喜极而泣] 以后还是当个小透明好了

    校验提示文案

    提交
    收起所有回复
  • 路由器不带网络唤醒么? [皱眉]

    校验提示文案

    提交
    远程啊 你不在路由器边上呢 。有公网ip当我没说

    校验提示文案

    提交
    [龇牙] 抱歉抱歉,有公网IP,总以为别人也有 [吐舌]

    校验提示文案

    提交
    收起所有回复
  • 我见过一个不同的控制开关机方案,方法是用一块ESP8266和一个配套的继电器组合,连接电源线第九口(待机状态下有5V)和主板pw接口,模拟正常开关机点触的动作,就可以实现开关机。另外还有一种不成熟的方案是利用小米插座设置BIOS电源通断。不过还是上面的那个方案值得推荐,只是开关机时接通一下,模块不会经常通电。当然需要动手能力强一点。如果能买到带线的继电器最好,否则需要焊接线。

    校验提示文案

    提交
    如果用上esp的话我也会选择用继电器模拟按键.还能关机呢.没必要上了eps还搞网络唤醒.

    校验提示文案

    提交
    所以你们都不看防杠声明的么,这种方式首先作为一种实现方案,第二是给有些笔记本用户提供方案,第三是wol不一定用在主机上,还有多种地方会用到wol,比如nas。

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 我搞不清楚的是为什么这个模块不需要做内网穿透

    校验提示文案

    提交
    相当于是blinker给了你服务器

    校验提示文案

    提交
    应该是小爱或者点灯科技提供的frp服务吧,就类似于你不做内网穿透在外面一样控制米家的东西一样

    校验提示文案

    提交
    收起所有回复
  • 我觉得可以简单介绍一下blink,上来一脸懵圈

    校验提示文案

    提交
    有道理 谢谢提议

    校验提示文案

    提交
    收起所有回复
  • 我寻思着,用这么麻烦么?就算内网,bios启用通电启动,配合小米插座不就完了。公网ip更是直接路由器远程唤醒 [尴尬]

    校验提示文案

    提交
    你笔记本通电开机试试?每个人都有公网ip?这些要么文章中写了要么已经回复了,没必要再来说一句

    校验提示文案

    提交
    华为H6路由器连个远程唤醒插件都没!

    校验提示文案

    提交
    收起所有回复
  • 恕我直言,ios捷径,添加远程ssh到树莓派或者服务器,直接wakeonlan mac,直接喊siri开机不香吗?

    校验提示文案

    提交
    恕我直言 树莓派两百多 而且不是每个人都有服务器,不要到处抬杠

    校验提示文案

    提交
    ESP也能接入Siri的,你的方法成本又高实现又麻烦,不知道除了秀了下自己有iPhone和树莓派和服务器还有啥贡献

    校验提示文案

    提交
    收起所有回复
  • 关机也可以简单实现,PC上写个广播包的监听程序,给管理员权限并设置开机自启,收到广播包后执行对应动作即可。

    校验提示文案

    提交
    了解,是通过自己写的后台程序,接受udp特定指令,收到后直接关机吧,有机会我实现下。

    校验提示文案

    提交
    收起所有回复
  • 最后那个有线连接是什么意思,什么要有线连

    校验提示文案

    提交
    无线网卡不可以待机 有线网卡可以

    校验提示文案

    提交
    那是不是电脑必须连网线才可以啊,连WIFI不行

    校验提示文案

    提交
    还有8条回复
    收起所有回复
  • 我很疑惑,求解!
    我所有设置和代码都正常,blinker正常启动电脑
    但是小爱不行
    blinker按按钮启动电脑,ESP32上灯闪2次,电脑正常唤醒
    使用小爱同学启动,ESP32只闪1次,电脑没反应
    求教!!!

    校验提示文案

    提交
    小爱那里有调用开机函数吗

    校验提示文案

    提交
    感觉调用了,只是用点灯时eps32上闪2次蓝灯,有效果,用小爱只闪一下,无效

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 笔记本电脑主板没有网络唤醒,通过这个能实现不?

    校验提示文案

    提交
    这个就不可以了

    校验提示文案

    提交
    收起所有回复
  • 大佬,请问这个程序串口监视器Guru Meditation Error: Core 1 panic'ed (LoadProhibited)是怎么回事,上课没学好作业写不来了 [皱眉]

    校验提示文案

    提交
    没遇到过哦 是直接编制报错吗?

    校验提示文案

    提交
    语法正常,串口报错还一直再重启,应该是芯片崩溃,代码用的就是上头一样的,单片机是esp32 wroom3c [喜极而泣]

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 大佬再更新个关机!

    校验提示文案

    提交
    电脑上安装个anydesk之类的远程软件,设置自启动,远程桌面连上就可以关机啦!

    校验提示文案

    提交
    收起所有回复
  • 恕我直言 这货esp8266应该也能干 而且更便宜 [皱眉]

    校验提示文案

    提交
  • 路由器和win server都ddns了,原先想用esp8266接上继电器控家里的电器,后来还是感觉米家的插座更香

    校验提示文案

    提交
  • 我这是有公网ip但是不知道路由器登录密码,不能把ip和电脑绑定,每次重新开机ip地址都会变,所以没有做成穿透,如果有公网ip就可以用花生壳做穿透,但是这样好像还有一个弊端如果断电重启后就唤醒不开了,相比之下我使用了8266做继电器的那个模拟一下手按开关机按钮的动作,不太了解继电器的构造,但是看介绍说有长通端和长闭端,大神把代码改成点按的,来模拟按键。而且没看太懂你把ip换成255是唤醒255之前的所有ip么?我们公司有几十台电脑,这样的话估计我要把所有的都唤醒了

    校验提示文案

    提交
    唤醒包是前面几个FF,后面是重复目标电脑的物理地址,所以不是这个物理地址的电脑收到也不会启动的,他相当于是在那个网段广播唤醒包,收到的电脑会看下地址的,不会都启动……

    校验提示文案

    提交
    255是广播地址,还有mac匹配的。mac不匹配不唤醒啊。

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 能不能做远程发送消息的那种

    校验提示文案

    提交
  • mark一下

    校验提示文案

    提交
  • @lok夜 去看看 关机代码弄好了

    校验提示文案

    提交
  • 你好。大佬。支持小爱音箱操作吗?还是只能手机上的。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

帅比一号

Ta还没有介绍自己

关注 打赏
最新文章 热门文章
202
扫一下,分享更方便,购买更轻松