嵌入式技术分享

Embedded Technology Sharing

阿里云iot mqtt SDK 在arm-linux平台的移植和实现

《阿里云iot mqtt SDK 在arm-linux平台的移植和实现》

视频教程链接:
https://www.bilibili.com/video/av55613036/

下载源码
git clone https://github.com/maxlicheng/iotkit-embedded.git

根据教程创建阿里云设备
教程:《阿里云物联网MQTT设备的创建

修改三元参数
cd iotkit-embedded
vi wrappers/os/ubuntu/HAL_OS_linux.c

char _product_key[IOTX_PRODUCT_KEY_LEN + 1] = “a1FsfwUvjk6”;
char _product_secret[IOTX_PRODUCT_SECRET_LEN + 1] = “iaiu5bhsSTe46EeC”;
char _device_name[IOTX_DEVICE_NAME_LEN + 1] = “MQTT_Board_Test”;
char _device_secret[IOTX_DEVICE_SECRET_LEN + 1] = “NOGrtypa7hTjMbXTMhc1EMlY2r5p8hpo”;

001补丁
patch -p1 < 001-mqtt_example.patch

补丁文件说明:mqtt示例,适用于x86 Linuxarm Linux,通过mqtt协议与阿里云物联网平台进行信息交互,例程对阿里云平台发送的有效负载json数值及字符串进行解析,同时上报随机产生的温湿度数据。

编译
make reconfig
4
《阿里云iot mqtt SDK 在arm-linux平台的移植和实现》

make

Demoubuntu下正常运行并且与阿里云设备通信正常。

根据教程搭建编译环境
教程:《TF 卡方式烧写iTOP-4412开发板文件系统
教程:《阿里云mqtt iot在嵌入式Linux上的移植
注意点:交叉编译器版本要与编译内核及文件系统时的版本移植;

执行以下命令,恢复默认版本
patch -RE -p1 < 001-mqtt_example.patch

002补丁
patch -p1 < 002-mqtt_example.patch
补丁文件说明:适用于嵌入式Linux开发板,可通过阿里云物联网平台控制LED的亮灭,并将云平台发送的字符串写入到txt文件中,同时上报光亮度(adc电压值) 和 随机产生的温湿度数据。

编译
make reconfig
3
《阿里云iot mqtt SDK 在arm-linux平台的移植和实现》
make

将生成的可执行文件拷贝到TF卡
sudo mount /dev/sdb1 /mnt
sudo rm -rf /mnt/mqtt
sudo cp -r output/release/bin /mnt/mqtt
sudo umount /mnt

telnet进开发板,运行可执行文件
mount /dev/mmcblk1p1 /mnt
cd /mnt/mqtt
./mqtt-example

验证
1.温湿度、光亮度数据上报;
2.LED控制;
3.字符串写入文件。
 

如果文章对您有帮助,欢迎移至上方按钮打赏博主;

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注