搜索
bottom↓
回复: 7
打印 上一主题 下一主题

【8266】折腾个Https监视器,含SSL+OTA+WIFI配网

[复制链接]

出320入2576汤圆

跳转到指定楼层
1楼
发表于 2026-5-10 02:50:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
折腾了个基于 8266 插座的 Https 心跳检测单元,顺手分享来供大家测评。

起源来自站长的设想: https://www.amobbs.com/thread-5814980-1-1.html

正巧手头有成品的 8266 可编程插座,索性搞一把.


【功能】

固件主功能就是检测某域名是否能联通:联通=继电器输出AC220,断网=断电。

这里访问个 Demo 网址 https://httpbin.org/get, 具体可按需更改。



首次运行需要配网,具体步骤如下:

1. 按住按键上电,看到绿色 LED 中速闪烁即可松开;

2. 电脑或手机 WIFI 搜索并连接 ESP_BLDR,密码 88888888;

3. 访问如下地址,可进行信息查看/配网/OTA:
   - 查看帮助页面: http://192.168.4.1/
   - 查看WiFi配置: http://192.168.4.1/wifi
   - 写入WiFi配置: http://192.168.4.1/wifi?id=XXX&pw=YYY
   - OTA固件更新: http://192.168.4.1/update

4. 完成配置后,重启即可开始监视目标 Https 域名
   - 若 Https 访问成功,则绿色 LED 双闪,并继电器开启 AC220 输出;
   - 若 Https 未能联通,则绿色 LED 单闪,~2min 后 AC220 关断;
   - 若 WiFi 断线,则绿色 LED 长亮提示故障。

上述配网过程中 XXX 和 YYY 对应本地 WIFI 名与密码,长度<18ch,若含中文或空格需要使用 %XX 语法,例如 %20=空格,%AA%BB%CC=汉字UTF8


【原理:Https+SSL】

原本 8266 最擅长访问 Http,简单粗暴;
然最新的网站(例如amobbs.com)大都启用了 https,直接 HTTP-GET 就会 301:



Https 相对于 Http 在流程上增加了一层 SSL 或类似的传输加密。
传统 Http 在网络层使用明文传输,随便开个 wireshark 就能看到裸奔样子:



为此引入 Https 防偷窥,TCP 双方都换成 TLSv1.2 鬼话通信,再抓包就不裸奔了:



折腾前还担心 8266 对于 https 的支持,折腾完表示想多了。
Arduino 原生支持 8266-SSL 加密,除了浪费些 CPU 时间外与 http 一样。



实际采用 setInsecure 方式跳过服务器证书验证,理论上可能被假服务器欺骗,
但就检查 https 而言属于是过于谨慎,这得感谢 AI 在这里的加持解惑:



至此,已可以很丝滑地获取 https 响应,进而检查目标服务器是否存活。


【原理:OTA+WiFi配网】

OTA、WiFi 配网这类应用,实际上对应着传统单片机里的 Bootloader 烧写功能。

配网操作类似于路由器配置,在 8266 热点基础上运行个 Http-Server (没必要再 Https),然后由各页面完成信息传递。



实际在 Arduino 中做了个分支,按住按键再上电就进 OTA+WIFI配置,否则就常规程序。
Help 页面长这样(能用就行了,没去折腾美化):



WiFi 页面懒得写表格,自己在地址栏敲 ?...&... 语法提交吧:



这里 ID 就是无线网名,PW 就是无线密码,都要求<18ch,中文等需要 %xx 语法。
例如配置 SSID=MyWiFi, PASSWD=12345678 这个无线网,直接地址栏键入:
http://192.168.4.1/wifi?id=MyWiFi&pw=12345678

OTA 就是 Arduino 自带的页面,在固件列表选择新的 bin 并提交就行:



等待十几秒后固件上传成功,机器会自动重启:




【固件】

附上固件源码,直接烧录 bin 就是验证 https://httpbin.org/get 通联性:

也可 OTA 到其他固件,但若后续固件没集成 OTA,插座就会变砖,需要拆盖重新插线烧写。

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

以上,用 8266 插座搞了个 Https 监视器,分享了相关功能和源码。

祝大家折腾愉快!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛22周年了!感谢大家的支持与爱护!!

大家不用担心!刹车踏板踩断是极小概率事件,汽车诞生至今140年,我只见过三辆车刹车被踩断了!!!
There's something good in this world. And it's worth fighting for.
总有一些事物是美好的,它值得我们为之而战斗。

出18525入7501汤圆

2楼
发表于 2026-5-10 04:16:53 来自手机 | 只看该作者
cool !

出320入2576汤圆

3楼
 楼主| 发表于 2026-5-10 09:43:02 来自手机 | 只看该作者

感谢站长肯定!

出125入16汤圆

4楼
发表于 2026-5-10 10:20:51 | 只看该作者
大佬果然有真本事,这都直接是成品了!厉害

出0入43汤圆

5楼
发表于 2026-5-10 11:31:57 | 只看该作者
8266的问题,在于长期稳定性,也许问题不在8266,网络协议感觉很难长期可靠运行。
8266跑个十天半月死机是常态,我没那个精力去解决,毕竟对网络协议不懂。

出20入71汤圆

6楼
发表于 2026-5-10 12:03:50 来自手机 | 只看该作者
8266真的是经久不衰啊

出320入2576汤圆

7楼
 楼主| 发表于 2026-5-10 12:37:01 来自手机 | 只看该作者
hecat 发表于 2026-5-10 11:31
8266的问题,在于长期稳定性,也许问题不在8266,网络协议感觉很难长期可靠运行。
8266跑个十天半月死机是 ...

(引用自5楼)

最开始ai的代码半小时就炸

后来用heap监视转古法编程,才逐步稳定下来。
正常通信还好,遇到插拔网线、长期阻塞还是有内存泄露。感觉网络这事就是玄学

出320入2576汤圆

8楼
 楼主| 发表于 2026-5-10 12:41:19 来自手机 | 只看该作者
autolog 发表于 2026-5-10 12:03
8266真的是经久不衰啊
(引用自6楼)

便宜好用,arduino主板比avr的还便宜,直接当炮灰也不心疼
回帖提示: 反政府言论将被立即封锁ID 。在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2026-10-14 12:21

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表