4G模组软件指南 | 必读篇之模块信息(hmeta)
今天我讲解的这篇关于4G模组软件的模块信息属于必读篇,望珍惜!
1、模块信息概述
模块信息是每一个模块携带的信息,就像人的身份证一样,这些信息确定了模块的唯一性;
包含设备唯一id,硬件型号,模组的硬件版本号,固件版本号等;
模块远程升级需要上传模块信息,解决和分析某些问题的时候可能也会需要确认模块信息。
2、演示功能概述
使用Air780E核心板烧录底层固件(LuatOS-SoC_V1112_EC618_FULL.soc)和hmeta例程脚本学习有关模块信息的api函数.
3、硬件准备
3.1 Air780E核心板
使用Air780E核心板,
此核心板的详细使用说明参考:
https://docs.openluat.com/air780e/
Air780E产品手册中的《开发板Core_Air780E使用说明VX.X.X.pdf》,写这篇文章时最新版本的使用说明为:《开发板Core_Air780E使用说明V1.0.5.pdf》;核心板使用过程中遇到任何问题,可以直接参考这份使用说明pdf文档。
3.2 SIM卡
中国大陆环境下,可以上网的sim卡,一般来说,使用移动,电信,联通的物联网卡或者手机卡都行。
3.3 PC电脑
WINDOWS系统。
3.4 数据通信线
带TYPE-C口的USB数据线。
4、软件环境
4.1 Luatools工具
要想烧录LuatOS固件到4G模组中,需要用到的调试工具:Luatools;
详细使用说明参考:
Luatools工具使用说明:
https://docs.openluat.com/Luatools/
Luatools工具集具备以下几大核心功能:
一键获取最新固件:自动连接服务器,轻松下载最新的模组固件.
固件与脚本烧录:便捷地将固件及脚本文件烧录至目标模组中.
串口日志管理:实时查看模组通过串口输出的日志信息,并支持保存功能.
串口调试助手:提供简洁的串口调试界面,满足基本的串口通信测试需求.
Luatools下载之后,新建一个命名为"Luatools"的文件夹,将下载的Luatools_v3.exe拷贝或移动到新建的Luatools文件夹内,点击Luatools_v3.exe即可运行.
4.2 准备需要烧录的代码
首先要说明一点:脚本代码,要和固件的soc文件一起烧录.
4.2.1 烧录的底层固件文件
底层core下载地址:LuatOS固件版本下载地址

Air780E的底层固件在Luatools解压后目录的:
LuatOS-SoC_V1112_EC618_FULL.soc

4.2.2 烧录的脚本代码
首先,要下载Air780的LuatOS示例代码到一个合适的项目目录。
示例代码网站:
https://gitee.com/openLuat/LuatOS-Air780E
下载流程参考下图:


下载的文件解压,找到LuatOS-Air780E-master\demo\hmeta\main.lua,如图:

5、API说明
5.1 mcu.unique_id()
获取设备唯一id。
参数
无
返回值
返回值类型 解释
string
设备唯一id
例子

5.2 mobile.imei(index)
获取设备IMEI
参数
传入值类型 解释
int
编号,默认0.在支持双卡的模块上才会出现0或1的情况
返回值
返回值类型 解释
string
设备IMEI
例子

5.3 hmeta.model()
获取硬件型号
参数
无
返回值
返回值类型 解释
string
若能识别到,返回硬件型号,否则会是nil
例子

5.4 rtos.bsp()
获取硬件bsp型号
参数
无
返回值
返回值类型 解释
string
硬件bsp型号
例子

5.5 hmeta.hwver()
获取模组的硬件版本号
参数
无
返回值
返回值类型 解释
string
若能识别到,返回模组的硬件版本号,否则会是nil
例子

5.6 rtos.version()
获取固件版本号
参数
无
返回值
返回值类型 解释
string
固件版本号
例子

6、功能验证
6.1 烧录固件
6.1.1 正确连接电脑和4G模组电路板
使用带有数据通信功能的数据线,不要使用仅有充电功能的数据线.
6.1.2 识别4G模组的boot引脚
在下载之前,要用模组的boot引脚触发下载,也就是说,要把4G模组的boot引脚拉到1.8v,或者直接把boot引脚和VDD_EXT引脚相连.我们要在按下BOOT按键时让模块开机,就可以进入下载模式了.
具体到Air780E开发板:
1、当我们模块没开机时,按着BOOT键然后长按POW开机。
2、当我们模块开机时,按着BOOT键然后点按重启键即可。

6.1.3 识别电脑的正确端口
判断是否进入BOOT模式:模块上电,此时在电脑的设备管理器中,查看串口设备,会出现一个端口表示进入了boot下载模式,如下图所示:

6.1.4 用Luatools工具烧录
新建项目
首先,确保你的Luatools的版本,大于等于3.0.6版本的.
在Luatools的左上角上有版本显示的,如图所示:

Luatools版本没问题的话,就点击Luatools右上角的“项目管理测试”按钮,如下图所示:

这时会弹出项目管理和烧录管理的对话框,可以新建一个项目,如下图:

开始烧录
选择Air780E板子对应的底层core和刚改的main.lua脚本文件.下载到板子中.

点击下载后,我们需要进入boot模式才能正常下载.
如果没进入boot模式会出现下图情况:

进入boot模式下载,如图:


6.2 例程

6.3 对应log

7、总结
通过本章学习,你可以学习到模块唯一ID,模块硬件型号,固件版本,硬件版本的获取方法.
8、常见问题
8.1 模块唯一ID文档
mobile.sn()获取SN,出厂未必有写SN;一般用途的唯一id,可以用mobile.imei()代替;如需要真正的唯一ID,使用mcu.unique_id()
8.2 通过IMEI查询模块生产记录
分享完毕
4G模组软件指南 | 必读篇之模块信息(hmeta)的更多相关文章
- 泰拉瑞亚EasyBuildMod便捷建造模组开发详细过程
pre { overflow-y: auto; max-height: 400px } img { max-width: 500px; max-height: 300px } github地址: ht ...
- 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台
摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...
- opencv实现camera模组的暗电流和lenshading补偿 .
目录(?)[-] 简介 基本原理 产生原因 校正补偿原理 具体实现 框架搭建 功能实现 暗电流 lenshading补偿 效果演示 图片处理 效果演示 简介 在接触过的qcom和mtk平台中,came ...
- 【转】Spark性能优化指南——基础篇
http://mp.weixin.qq.com/s?__biz=MjM5NDMwNjMzNA==&mid=2651805828&idx=1&sn=2f413828d1fdc6a ...
- 【转】android camera(一):camera模组CMM介绍
关键词:android camera CMM 模组 camera参数平台信息:内核:linux系统:android 平台:S5PV310(samsung exynos 4210) 作者:xubin ...
- Spark性能优化指南——基础篇(转载)
前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作 ...
- Spark性能优化指南——基础篇
本文转自:http://tech.meituan.com/spark-tuning-basic.html 感谢原作者 前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一 ...
- Java工程师学习指南 完结篇
Java工程师学习指南 完结篇 先声明一点,文章里面不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦. 因为笔者还只是一名在校 ...
- android camera(一):camera模组CMM介绍【转】
转自:https://blog.csdn.net/kevinx_xu/article/details/8821818 androidcmm图像处理工作手机三星 关键词:android camera ...
- iPhone X 的原深感模组
物理与数字世界正走向融合,我们每天醒来的时间.睡眠时长.心率和步数等数据都会被分享.上传并转化为分析数据.无处不自的 AI.互联互通和软件平台将改变用户对现实的感知. 2018 年的 CES 展(国际 ...
随机推荐
- MFC树形控件加载Access数据库数据
研究了好几天,今天终于弄好了,下面是代码 [dlg.cpp] 在初始函数OnInitDialog()中加 HICON hIcon[3]; HTREEITEM hRoot; //加载三个图标 hIcon ...
- [HCTF 2018]admin 1
[HCTF 2018]admin 1 < 文章中有有关flask session 文章 需要认真读一下> 1.信息搜集 由题意,注册admin 用户,回显 The username has ...
- 6.12Web应用漏洞发现探针利用
已知CMS.开发框架. 思路: 各个页面查看数据包(地址信息),查看框架,上fofa关键字搜索(查看其框架信息如thinkhphp),利用检测工具测试漏洞情况: 网站根目录下的robots.txt文件 ...
- CSS – Houdini
介绍 简单说这个 Houdini 是一系列 CSS 底层 API,它可以让我们扩展 CSS,做出一些 Polyfill. 举一个例子,让大家有个画面. 我们可以通过 CSS + JS + Canvas ...
- BOM – Window.matchMedia
参考 Youtube – Detecting Screen Size and OS Dark Mode with matchMedia() - JavaScript Tutorial 介绍 CSS 有 ...
- 应聘软件测试,差点栽在了...这5道S级的测试用例设计题上... ...
1. 用例设计:根据下面需求,进行测试用例设计,请注意对测试点的表达. (网页端)需求描述: 某项目的营养素配置页面,供用户用来配置营养素的相关信息,其中: l 项目可供用户选择一种或多种营养素: l ...
- [namespace hdk] string
#include<bits/stdc++.h> using namespace std; namespace hdk{ const int siz=100001; class string ...
- 【赵渝强老师】Redis的RDB持久化
Redis 提供了多种不同级别的持久化方式: RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot). AOF (Append-only file) ...
- Flutter将视频或图文分享到抖音
如何在 Flutter 中分享视频到抖音 话不多说,先上效果: 原理 发布内容至抖音 H5 场景_移动/网站应用_抖音开放平台 (open-douyin.com) 本教程没有接入抖音原生 SDK 以及 ...
- EAS之WALT算法介绍
EAS调度器缘起 Linux内核的一直都使用完全公平调度器CFS(Completely Fair Scheduler)作为默认调度器,但是在使用中发现CFS如下几个问题. CFS主要是为了服务器性能优 ...