check_wifi.lua 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. --[[
  2. @module check_wifi
  3. @summary 远程升级wifi固件模块
  4. @version 1.0
  5. @date 2025.08.29
  6. @author 王世豪
  7. @usage
  8. 检查WiFi版本并自动升级
  9. 功能:检查当前Air8000模组的WiFi固件是否为最新版本,若不是则自动启动升级(需插入可联网的SIM卡)。
  10. 说明:Air8000的蓝牙功能依赖WiFi协处理器,需确保WiFi固件为最新版本。
  11. 本文件没有对外接口,直接在main.lua中require ""check_wifi"就可以加载运行。
  12. ]]
  13. local exfotawifi = require("exfotawifi")
  14. local function wifi_fota_task_func()
  15. local result = exfotawifi.request()
  16. if result then
  17. log.info("exfotawifi", "升级任务执行成功")
  18. else
  19. log.info("exfotawifi", "升级任务执行失败")
  20. end
  21. end
  22. -- 判断网络是否正常
  23. local function wait_ip_ready()
  24. local result, ip, adapter = sys.waitUntil("IP_READY", 30000)
  25. if result then
  26. log.info("exfotawifi", "开始执行升级任务")
  27. sys.taskInit(wifi_fota_task_func)
  28. else
  29. log.error("当前正在升级WIFI&蓝牙固件,请插入可以上网的SIM卡")
  30. end
  31. end
  32. -- 在设备启动时检查网络状态
  33. sys.taskInit(wait_ip_ready)