ESP8266结合点灯科技实现远程WIFI网络唤醒计算机_点灯远程开电脑怎么操作-程序员宅基地

技术标签: 1024程序员节  ESP8266  

Blinker app添加按钮,点击后发送消息到官方的mqtt,ESP收到消息后触发事件发送魔术包到PC唤醒

win10 PC设置 (我是华硕hero iv) 

  1. 网卡设置为可被魔术包唤醒
  2. 关闭快速启动
  3. bios中:高级电源设置中的由PCI-E/PCI为开启;启动项-CSM中,开启csm,然后启动设备控制为UEFI,其他的均设置为:UEFI驱动设备优先

esp代码如下:

#define BLINKER_WIFI

#include <Blinker.h>

char auth[] = "***********************";
char ssid[] = "ssid";
char pswd[] = "password";

#define BUTTON_1 "OPEN"

WiFiUDP Udp;
//根据自己的路由器选择子网段的广播地址
#define BROADCAST_ADD "192.168.1.255"
//网卡唤醒端口
#define REMOTEPORT 9
//网卡的MAC地址 6个字节    
char NETCARD_MAC[6] = {0x2C,0x4D,0x54,0x9E,0xBD,0xAE};
//WOL包
char WOL_Buffer[102];

BlinkerButton Button1(BUTTON_1);

//WOL魔术包初始化
void WOL_packet_init()
{
  int i,j;
  for(i=0;i<6;i++)
  {
  WOL_Buffer[i] = 0xFF;
  }
  for(i=1;i<17;i++)
  {
    for(j=0;j<6;j++)
    {
    WOL_Buffer[i*6 + j] = NETCARD_MAC[j];
    }
  }
}
void WOL_packet_transfer()
{
  Udp.beginPacket(BROADCAST_ADD, REMOTEPORT);
  Udp.write(WOL_Buffer);
  Udp.endPacket();
}
void button1_callback(const String & state)
{
    digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
    
    BLINKER_LOG("get button state: ", state);
    
    
    if (state == BLINKER_CMD_BUTTON_TAP) {
        BLINKER_LOG("Button tap!");

        WOL_packet_transfer();
        Button1.print();
    }
    else {
        BLINKER_LOG("Get user setting: ", state);
    }
}

void dataRead(const String & data)
{
    BLINKER_LOG("Blinker readString: ", data);

    Blinker.vibrate();
    
    uint32_t BlinkerTime = millis();
    
    Blinker.print("millis", BlinkerTime);
}

void setup()
{
    Serial.begin(115200);
    BLINKER_DEBUG.stream(Serial);

    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, LOW);
    

    Blinker.begin(auth, ssid, pswd);
    Blinker.attachData(dataRead);
    Button1.attach(button1_callback);

    WOL_packet_init();
}

void loop()
{
    Blinker.run();
    digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}


在上面的设置中,只需要设置 auth(点灯提供的设备密钥)、ssid(WIFI名称)、pswd(WIFI密码)、netchard_mac(网卡mac地址,直接替换0x后的英文即可)

特别要注意的是:button_1 的值 要与app中添加的按钮的“数据键名”相同

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/a1092484359/article/details/108992592

智能推荐

[Android Exercise]仿微信游戏界面PART.1—ConstraintLayout和RecyclerView的应用_android微信游戏界面-程序员宅基地

文章浏览阅读860次。1、分析模块将每一个部分都做成一个_android微信游戏界面

关于vue-cli3的浏览器兼容性_@vue/babel-preset-app-程序员宅基地

文章浏览阅读1.4w次,点赞3次,收藏17次。这里先给出几个链接:1.Vue-cli浏览器兼容性:https://cli.vuejs.org/guide/browser-compatibility.html#usebuiltins-usage2.browserslist:https://www.npmjs.com/package/browserslist3.babel.config.js:https://babeljs.io/..._@vue/babel-preset-app

nginx负载均衡 upstream ip_hash的用法_upstream-hash-by: "$remote_ip-程序员宅基地

文章浏览阅读7.2k次。文章目录场景参考文档用法场景负载均衡解决session共享的问题参考文档nginx.org upstream用法语法Syntax: ip_hash;Default: —Context: upstream说明Specifies that a group should use a load balancing method where requests are d..._upstream-hash-by: "$remote_ip

自适应滤波算法(LMS算法)-程序员宅基地

文章浏览阅读9.7k次,点赞6次,收藏68次。引言 LMS学习算法是由Widrow和Hoff于1960年提出的,该算法也称为Δ\DeltaΔ规则,该算法与感知器网络的学习算法在权值调整上都基于纠错学习规则,但LMS算法那更容易实现,因此得到了广泛应用。   注意:LMS算法只能训练单层网络,但这并不影响其功能,从理论上讲,多层线性网络并不比单层网络强大,它们具有同样的能力,即对于每一个多层线性网络,都具有一个等效的单层..._lms算法

【文末福利】为什么我们要掌握Linux系统编程?_学习了linux系统编程可以结合什么用-程序员宅基地

文章浏览阅读9.1k次,点赞9次,收藏14次。作为一个嵌入式开发者,我觉得基于Linux的系统编程,这个应该是绕不开的话题。本文将围绕,为何要掌握Linux系统编程这个问题,给出一些观点,希望对各位有所帮助。_学习了linux系统编程可以结合什么用

LoRaAN终端OTAA入网方式的详细介绍_join_devnonce_err-程序员宅基地

文章浏览阅读1k次。在之前的文章中向大家介绍了“该如何选择LoRaWAN终端入的网方式”,本文主要介绍了OTAA节点是如何入网的。此文来自微信公众号“小七说LoRa”,内容已获小七老师授权,小七老师是腾讯云在线课程讲师,点击链接https://mp.weixin.qq.com/s/WvGmi81zBMzbAX8OUb-DpA可以观看课程视频。OTAA的全称是Over The Air Activation。它的入网步骤是这样的:节点发出的Join Request请求通过网关转发到服务器,也就是NS;NS会对该请求做一些判断处_join_devnonce_err

随便推点

windows批处理文件-命名为1-n_for %%a in (*.jpg) do star-程序员宅基地

文章浏览阅读256次。在处理数据集的时候,将图片命名为1.jpg,2.jpg,3.jpg ......将图片放在文件夹内,在该文件夹内新建一个txt文档,重命名为***.bat(先勾选显示 文件扩展名)然后右键编辑,复制以下内容@echo offset n=0setlocal enabledelayedexpansionfor %%a in (*.jpg) do (set /a n+=1ren "%%a" "!n!.jpg")保存后关闭,运行bat文件即可。..._for %%a in (*.jpg) do star

【java】根据当前时区获取时间_java 根据asia/shanghai 换算时间简称-程序员宅基地

文章浏览阅读3.7k次。地区国家 编号 缩写 时区中国 86 CN Asia/Shanghai香港 852 HK Asia/Hong_Kong澳门 853 MO Asia/Macau台湾 886 TW Asia/Taipei新加坡 65 SG Asia/Singapore泰国 66 TH Asia/Bangkok印度 91 IN Asia/Calcutta日本 81 JP Asia/Tokyo韩国 82 KR Asia/Seoul巴基斯坦 92 PK Asia/Karachi美国 1 US America/._java 根据asia/shanghai 换算时间简称

单精度浮点数和双精度浮点数存储_双精度浮点型存储和单精度浮点型存储-程序员宅基地

文章浏览阅读694次,点赞3次,收藏2次。简要对IEEE 754中 单精度浮点数和双精度浮点数存储进行一些分析和解释,欢迎大家来补充纠正_双精度浮点型存储和单精度浮点型存储

Android屏幕适配-重点盘点_android 屏幕适配-程序员宅基地

文章浏览阅读1.1k次。享学课堂诚邀作者:周周转载请声明出处!引子屏幕适配是 android 开发/面试 绕不开的一个问题。本文 将屏幕适配的知识要点完整展现给各位读者。正文大纲android需要做屏幕适配的原因基础知识点(很重要)屏幕适配攻略正文android需要做屏幕适配的原因关键字:android碎片化android面世以来,google开源了android系统,各家厂商各自为政,导致屏幕尺寸没有统一标准,屏幕的宽高比各种各样,屏幕密度也是各个厂家攀比的资本, 导致Android开发者想要._android 屏幕适配

awvs 中文手册详细版-程序员宅基地

文章浏览阅读119次。awvs 中文手册详细版目录:0×00、什么是Acunetix Web Vulnarability Scanner ( What is AWVS?)0×01、AWVS安装过程、主要文件介绍、界面简介、主要操作区域简介(Install AWVS and GUI Description)0×02、AWVS的菜单栏、工具栏简介(AWVS menu bar & too..._awvs automatic login failed for 10.68.120.203

“开启IT管理新时代”惠普软件客户论坛圆满闭幕-程序员宅基地

文章浏览阅读74次。2012年3月8日,由惠普软件主办的“开启IT管理新时代”客户论坛在北京富力万丽酒店盛大召开,来自政府、金融、电信、制造行业的众多IT主管代表出席了本论坛。本次论坛分设运维管理和应用生命周期管理两个分论坛。现场,参会嘉宾了解到了惠普最新重金投入研发的惠普IT绩效管理解决方案,以及该方案在帮助IT主管更好地实现全面IT运维管理、量化IT衡量指标方面的特点和优势。告别“千人一..._it公司 技术总监 技术论坛闭幕

推荐文章

热门文章

相关标签