0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】放大招啦,卸载你的配网app,wifiiot弹出式配网了解一下

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-11-01 15:34 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文来源电子发烧友社区,作者:cszzlsw, 帖子地址:https://bbs.elecfans.com/jishu_2037265_1_1.html


1.前情提要
继上次重磅发布对接腾讯云的帖子之后,地址在这:https://bbs.elecfans.com/jishu_2032877_1_1.html
有一个问题没有解决,那就是wifi联网问题,本期就来介绍一下不要任何app,直接用系统原生的功能实现配网,快来连接一下吧

2.初衷
传统的配网方式一般是搭配一个专用的app,操作比较繁琐,用户体验不太好,弹出式配网就是为了解决这个问题开发的,而且有种很酷炫的感觉而且学会了原理,把网页文件一换,换成一个创意动画神马的哄女朋友开心也是不错的

3.原理
其实弹出式配网的原理并不复杂,整体的原理是先创建一个热点让手机连接到热点,然后开启dns劫持,利用web服务器将访问地址跳转,然后把预先准备好的网页文件发送到连接热点的设备上,在网页上提供按钮点击操作读取wifi列表,然后输入密码,发送到板子去连接,保存,连接的设备可以是手机,电脑等等,连接完成之后就可以重启开发板执行真正的任务了.


4.实现
1).参考了润和仓库里的demo代码很快就创建好了热点:
https://gitee.com/hihopeorg/HarmonyOS-IoT-Application-Development/tree/master/04_wifi
创建热点之后测试一下手机能连接热点第一步就成功了
2).参考润和仓库的udp和tcp的代码demo也比较快的就搞好了dns劫持和web服务器:
https://gitee.com/hihopeorg/HarmonyOS-IoT-Application-Development/tree/master/05_network,这一步做好之后就可以出现弹窗了
3).弹窗出现之后下一步就是下发网页文件到手机,这一步着实花费了一些时间,倒不是网页的发送,而是网页文件的存储,整整花了我5,6个小时之久,到处问人也没问到,查阅了海量的官方文档,最后还是误打误撞(串口抓包研究固件下载流程发现的)找到了方法,具体是什么大家在视频中也可以看到
4).后面就是用户点击手机上的网页来搜索网络和配网了,板子接收到手机发过来的用户名和密码就尝试连接对应的wifi,如果连接成功就保存起来,然后重启板子就行了,这里还有一个问题就是配网的ssid和密码的保存和读取,这里有两种方法,一种是利用鸿蒙自带的kv系统来实现,第二种就是直接读写flash,这里我采用的是kv系统,之前参考了连老师的帖子:https://zhuanlan.zhihu.com/p/274411574
发现不行,根本没有存储到flash中去,后面我自己在代码里找,终于找到了真正的接口,见图片:
214209isdilwdimt70sml5.png
在代码中是这样:
221435r1hnb824nn3os1nb.png 221436my7f45ia8tovv4bc.png
如果是直接用官方的flash存储是长这样:
221437c50o5rutuapk530d.png
5).到这里我们的弹出式配网就已经完成了,后面就是添加板子启动的时候读取kv系统里面有没有保存账号密码,如果没有就启动热点模式让用户配网,如果有就直接用sta模式连接对应的wifi,然后该干啥干啥就行了

6).如果想重新配网就搞一个按钮长按恢复出厂就行,这个不用我来说了吧,大家应该都会.

怎么样,是不是挺简单的,具体的细节我就不过多码字了,这里我就直接把视频放出来,大家感受一下最终的效果就行.

5.来谈谈弹出式配网的小缺点:
1.跟手机兼容性有关,可能有的手机不会自动弹出配网界面,而是在系统通知栏出现一个通知,然后手机点击通知才能跳转到对应的网页,关于手机的兼容报告还有待大家共同测试,毕竟个人力量有限
2.需要占用比较大的flash空间,因为弹出式配网有一个网页要存储在芯片上,然后这个网页因为渲染和js脚本会占用比较多的字节,对于flash吃紧的设备不是那么友好


6.最后
有感兴趣想了解的同学可以跟我或者版主绿波电龙联系,视大家的意愿再公开源码,以免被yxh盗用

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • wi-fi
    +关注

    关注

    15

    文章

    2462

    浏览量

    130019
  • HarmonyOS
    +关注

    关注

    80

    文章

    2157

    浏览量

    36287
  • HiSpark
    +关注

    关注

    1

    文章

    156

    浏览量

    7799
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    物联网浪潮,如何精准选型Wi-Fi模块?

    Wi-Fi模块选型的关键要点。 :选择用模块的理由: 选择Wi-Fi模块,核心优势在于极大地方便了电路集成设计,特别是硬件兼容集成设计。只要产品前期完成综合设计,后续无论是产品设计环节,还是应用端的灵活选择,都能享受极大便利。
    的头像 发表于 03-02 15:37 283次阅读
    物联网浪潮<b class='flag-5'>下</b>,如何精准选型<b class='flag-5'>Wi-Fi</b>模块?

    技术资讯 I Wi-Fi 模块设计

    本文要点Wi-Fi模块设计旨在打造套紧凑且高效的硬件和软件解决方案,使设备能够通过Wi-Fi网络实现通信。Wi-Fi模块设计是个复杂的过
    的头像 发表于 02-27 17:12 872次阅读
    技术资讯 I <b class='flag-5'>Wi-Fi</b> 模块设计

    失败怎么办?机智云热点全攻略

    在使用机智云APP进行时,常见的失败原因之是WiFi频段不匹配。许多机智云入门设备(如ESP8266)仅支持2.4GHz的WiFi
    的头像 发表于 12-11 18:03 1423次阅读
    <b class='flag-5'>一</b>键<b class='flag-5'>配</b><b class='flag-5'>网</b>失败怎么办?机智云热点<b class='flag-5'>配</b><b class='flag-5'>网</b>全攻略

    Wi-Fi模块选型指南 | 低功耗蓝牙/Wi-Fi 6模块推荐 | 物联网设备集成攻略

    物联网的快速发展,Wi-Fi技术的成熟的情况,越来越多的场景需要用到Wi-Fi来无线传输数据,尤其是移动设备中,怎么再设备中选择合适的Wi-Fi模块呢?下面我们来介绍
    的头像 发表于 12-09 11:27 1321次阅读
    <b class='flag-5'>Wi-Fi</b>模块选型指南 | 低功耗蓝牙/<b class='flag-5'>Wi-Fi</b> 6模块推荐 | 物联网设备集成攻略

    Wi-Fi信号满格但实际上不了文搞定

    ”“网络权限”或“设备设置”上,不用等运营商上门,自己按步骤排查就能快速恢复网络。​ 、排查验证,网络是否真断了​​ 1.测试其他设备,区分是“单设备问题”还是“全局断”​​ 测试操作:用手机、平板、电脑等多台设备连接同
    的头像 发表于 09-29 14:34 6873次阅读

    如何更新 NuMaker IoT 板上的 Wi-Fi 模块固件?

    更新 NuMaker IoT 板上的 Wi-Fi 模块固件
    发表于 09-04 08:28

    基于 SSID 的 Wi-Fi 定位:与其他定位服务的性能比较

    种著名的无线网络技术,用于设备的局域和互联网接入。Wi-Fi 通过 Wi-Fi 网络为家庭、办公室和学校等环境提供便捷的无线互联网接入服务。
    发表于 08-31 21:01

    有没有什么修复方法可以确保 AP 模式Wi-Fi 和 BLE 连接同时正常工作?

    我正在使用 CYBSYSKIT DEV 01 套件。我尝试在 AP 模式打开 Wi-Fi 并宣传 BLE。我可以宣传 SoftAP 和 BLE。但是,我无法从中央设备连接到 BLE。它可以立即连接并断开连接。有没有什么修复方法
    发表于 07-17 06:13

    Air8000核心板SoftAP方案:快速构建无线接入点

    通过HTTP请求控制LED的开关、发送任意消息、扫描可用的Wi-Fi网络、获取AP列表,以及连接到新的Wi-Fi网络。 实际应用中可基于LuatOS二次开发,实现Wi-Fi设备快速配
    的头像 发表于 06-20 09:36 753次阅读
    Air8000核心板SoftAP<b class='flag-5'>配</b><b class='flag-5'>网</b>方案:快速构建无线接入点

    Air8000核心板Wi-Fi应用之SoftAP方案详解!

    本文深入探讨Air8000核心板在Wi-Fi应用中的SoftAP方案,通过该方案可快速搭建无线接入点,实现设备与网络的便捷连接,为物联网场景的快速配置提供高效解决方案。 下面以A
    的头像 发表于 06-18 11:59 1042次阅读
    Air8000核心板<b class='flag-5'>Wi-Fi</b>应用之SoftAP<b class='flag-5'>配</b><b class='flag-5'>网</b>方案详解!

    Wi-Fi 8:开启极高可靠性 (UHR) 连接的新纪元——1

    与自我调整的能力,“校正回归”的速度也日益加快。因此,现在就对Wi-Fi 7持悲观态度或许为时过早,而现在开始讨论Wi-Fi 8也并不会显得太突兀。 首先,我们来回顾一下Wi-Fi
    发表于 06-13 11:09

    BW20双频WiFi模块,可支持Wi-Fi Mesh 组网:二次开发环境搭建教程

    连接个SSID就可以完成,不仅简化了流程,也提升了
    的头像 发表于 06-10 17:44 1584次阅读
    BW20双频WiFi模块,可支持<b class='flag-5'>Wi-Fi</b> Mesh 组网:二次开发环境搭建教程

    SoftAP方案:Wi-Fi的黄金法则“100%成功”

    遵循SoftAP方案的“黄金法则”,Wi-Fi将不再有失败风险。设备自组网机制让连接过程变为“单向引导”——设备主动开放热点并智能适配,确保每次
    的头像 发表于 05-29 14:29 855次阅读
    SoftAP方案:<b class='flag-5'>Wi-Fi</b><b class='flag-5'>配</b><b class='flag-5'>网</b>的黄金法则“100%成功”

    篇带你搞定!Air8101:物联网设备AirKiss方案

    AirKiss通过免交互方案降低了用户操作门槛,同时兼容微信生态实现快速商业化部署 ——已渗透至智能家居、工业控制、医疗健康等多元化场景,成为物联网设备的核心技术方案。  
    的头像 发表于 05-27 11:09 822次阅读
    <b class='flag-5'>一</b>篇带你搞定!Air8101:物联网设备AirKiss<b class='flag-5'>配</b><b class='flag-5'>网</b>方案

    ESP8266烧录与机智云教程

    。器件:ESP8266+烧录器千万不要插反了噶,刚插进去,会有蓝色闪一下,木问题的哦。需要下载的文件固件及烧写工具:(代码来源于B站:与实验演示_哔哩哔哩_
    的头像 发表于 05-24 11:04 2396次阅读
    ESP8266烧录与机智云<b class='flag-5'>一</b>键<b class='flag-5'>配</b><b class='flag-5'>网</b>教程