搭建自己的数字管家App平台-(3)南向设备端
开发环境
- Ubuntu18.04以上,安装OpenHarmory编译环境和Device Tool工具
- Windows10 安装VSCode+Device Tool工具
纯手动开放也是可以的,这里介绍最省事,最安全的快速搭建环境的方法。
如果对VMware使用不熟悉可以参考这里 BearPi-HM Nano 十分钟上手教程
Ubuntu的环境,可以下载准备好的VM虚拟机,下载地址(百度云):https://pan.baidu.com/s/1T0Tcl3y48C1p5L6y-6HJNg 提取码:eusr ,下载后解压用VMware打开即可,密码bearpi,一般先执行更新命令
sudo apt-get update
sudo apt-get upgrade
DevEco Device Tool开发环境
可以参见<南向IDE环境搭建>
分别下载DevEco Device Tool的Windows版和Linux版分别安装,最新版本3.1.0.200。
接受默认安装条件自动安装就可以了。
下载案例代码
远程连接
本用例采DevEco Device Tool工具进行开发,当配置完开发环境后,我们可以在IDE上进行工程的配置下载
- 打开DevEco Device Tool,连接远程linux服务器
- 点击左下角DevEco插件图标,然后点击左边框出现的主页,弹出主页界面,主页中选择新建项目
如下图所示,点击左下角“远程资源管理器”图标,打开菜单中选择远程资源管理器为SSH Targets ,然后Add New 输入账号和IP,根据向导提示操作即可。
在使用过程中,会在需要授权和连接资源时多次要求输入ubuntu的账号密码。
配置下载工程
- 点击新建按钮
- 中搜索输入框中输入台灯
- 填写输入确定完成工程新建
- 等待源码下载完成
准备工具链
- 在Projects中,点击工程配置按钮,进入配置界面
- 在toolchain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击SetUp按钮,自动安装所需工具链
- 如果出现安装pip组件失败,可参考修改Python源的方法进行修改,完成尝试重新安装。
代码编译
样例代码下载完成后,DevEco Device Tool会重新要求连接远程服务器,输入密码连接后会进入对应的代码编辑界面,此时点击左下角DevEco插件图标,选择PROJECT TASKS可以查看到对应的样例工程,点击build选项进行编译,并可在终端查看对应的编译结果。
修改代码
为了在这一步验证我们的程序和IoT产品是否成功,需要修改一下代码。因为代码默认是要连接Wifi和指定的设备Id
找到函数static void IotMainTaskEntry(const void *arg)
设置nfcInfo.deviceID和nfcInfo.devicePWD的地方,修改为我们在上一节中创建的设备Id和密码
// 设置为你在的设备ID和密码
nfcInfo.deviceID = "63296349cc49346c819bf156_Lamp01";
nfcInfo.devicePWD = "12345678";
// 暂时注释掉动态配网,使用固定Wifi,先进行程序验证
// if (ret) {
// RaiseLog(LOG_LEVEL_INFO, "Netconfig Button has pressed! \n");
// if (BOARD_NAN_NetCfgStartConfig(SOFTAP_NAME, ssid, sizeof(ssid), pwd, sizeof(pwd)) < 0) {
// RaiseLog(LOG_LEVEL_ERR, "BOARD_NetCfgStartConfig failed! \n");
// return;
// } else {
// ret = AFTER_NETCFG_ACTION;
// }
// } else {
// ret = IotWifiInfo_get(ssid, sizeof(ssid), pwd, sizeof(pwd));
// if (ret == 0) {
// if (BOARD_NAN_NetCfgStartConfig(SOFTAP_NAME, ssid, sizeof(ssid), pwd, sizeof(pwd)) < 0) {
// RaiseLog(LOG_LEVEL_ERR, "BOARD_NetCfgStartConfig failed! \n");
// return;
// } else {
// ret = AFTER_NETCFG_ACTION;
// }
// }
// }
ssid[BUFF_SIZE] = "你的Wifi名称";
pwd[BUFF_SIZE] = "你的Wifi密码";
这一段的意思是,设置固定设备信息和Wifi信息。把代码中是动态配网需要最后完成才能用。此处修改的目的是先验证开发板程序和IoT服务之间是完好的。
修改之后重新编译
烧录开发板
在配置烧录前需要先查看DevEco Device Tool是否可以正常识别串口。安装官方教程是可以直接烧录的,但是我没有成功,可能是版本问题,我用的最新版本。
烧录方式我是通过复制到本地用HiBurn.exe进行的,更完美的方式当然还是Device Tool直接烧录,等我成功了,再来聊一下是什么问题。
编译后的bin文件是在项目的目录/out/bearpi_hm_nano/smart_lamp/Hi3861_wifiiot_app_allinone.bin,可以复制到Windows目录或者共享目录,打开HiBurn.exe。
IoT平台联调
开发板通电,观察IoT平台的设备信息,显示在线就成功了。
那么说明南向设备端和IoT平台端的业务了完成了,下一步就搞FA Server服务了。
- 点赞
- 收藏
- 关注作者
评论(0)