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

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

3天内不再提示

基于RT-Thread和ESP8266在实战实现MQTT应用

RTThread物联网操作系统 来源:RTThread物联网操作系统 作者:RTThread物联网操作 2021-05-24 09:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

概述

本来MQTT的协议解析系列,只写两篇-实践+解析。

不过,有个网友(Terry Hao)看了我的文章之后打电话给我,说最近刚好要使用MQTT到项目中,但是刚接触不是很熟悉,期望提供一个实际应用出来。

在上述的诉求,所以我决定写MQTT的第三篇文章--MQTT的实战。

本次实战,我分别进行两种实战:

MQTT.fx客户端 + 腾讯云

利用小熊派 + RT-Thread + ESP8266 + 腾讯云

腾讯云配置

登录腾讯云:https://console.cloud.tencent.com/iothub/product,如果你没有注册,先注册。

创建一个新产品,:

选择创建产品:

e0fa723a-bc28-11eb-bf61-12bb97331649.png

输入产品名称,选择密钥认证

e109688a-bc28-11eb-bf61-12bb97331649.png

添加新设备:

进入刚刚创建的产品中:

e15743ac-bc28-11eb-bf61-12bb97331649.png

在设备列表中添加新设备:

e16b2246-bc28-11eb-bf61-12bb97331649.png

输入对应的设备名称即可:

e17561fc-bc28-11eb-bf61-12bb97331649.png

点击开始管理设备:

e1a52e6e-bc28-11eb-bf61-12bb97331649.png

设备创建成功:

e1d43966-bc28-11eb-bf61-12bb97331649.png

完成大部分的设置;点击进入刚刚创建的设备:

e202bf02-bc28-11eb-bf61-12bb97331649.png

我们使用默认的权限列表来进行实验,默认有3个Topic:

e235fe76-bc28-11eb-bf61-12bb97331649.png

MQTT.fx客户端 + 腾讯云实战

打开MQTT.fx客户端,进入设置:

e2411e28-bc28-11eb-bf61-12bb97331649.png

创建一个profile:

填写Connection Profile相关信息和General信息:

e24ea5e8-bc28-11eb-bf61-12bb97331649.png

参数说明:

参数 说明
Profile Name 配置文件保存为的名称。
Broker Address MQTT 服务器连接地址,广州域设备填入:PRODUCT_ID.iotcloud.tencentdevices.com,这里 PRODUCT_ID 为变量参数,用户需填入创建产品时自动生成的产品 ID,例如 9****ZW2EZ.iotcloud.tencentdevices.com
Broker Port MQTT 服务器连接端口,证书认证型端口:8883;密钥认证型:1883
Client ID MQTT 协议字段,按照物联网通信约束填入:产品 ID + 设备名,例如:"9「「ZW2EZgate_dev01 ",9」」ZW2EZ 是产品 ID,gate_dev01 是设备名。
Connection Timeout 连接超时时间秒。
Keep Alive Interval 心跳间隔时间秒。
Auto Reconnect 断网自动重连。

填写User Credentials信息:

e27e19b8-bc28-11eb-bf61-12bb97331649.png

参数说明

User Name :MQTT 协议字段,按照物联网通信约束填入:产品 ID + 设备名 + SDKAppID + connid。(创建完产品即可在产品列表页和产品详情页查看 ProductID)如:"9****ZW2EZgate_dev01;12010126;12345",仅替换示例中的产品 ID + 设备名即可,后面的两个参数本身由物联网通信接入 SDK 自动生成,所以这里填写固定测试值。

Password :Password 必须填写。用户可进入 Hub 相应设备列表查看获取。

关于这部分的填写,可以参考腾讯云的文档:https://cloud.tencent.com/document/product/634/14630?from=information.detail.腾讯云可以用mqtt

而上面的信息全部都可以从云端获取:

PRODUCT_ID获取:

e28b1c1c-bc28-11eb-bf61-12bb97331649.png

设备密钥,Client id,mqtt username,mqtt password的获取:

e2a82d8e-bc28-11eb-bf61-12bb97331649.png

填写完上面的信息,便可以连接上服务器:

e2b53132-bc28-11eb-bf61-12bb97331649.png

MQTT.fx客户端订阅主题:PRODUCT_ID/mqtt_rice/control,然后服务器往主题:PRODUCT_ID/mqtt_rice/control,发布消息。可以在客户端看到服务器发布的消息:

e2c664e8-bc28-11eb-bf61-12bb97331649.png

小熊派 + RT-Thread + ESP8266 + 腾讯云实战

通过RT-Thread连接腾讯云,其实还是很方便的,有现成的软件包。本次实验主要用到两个软件包:at_device 和 tencent_iot_sdk:

e2d16168-bc28-11eb-bf61-12bb97331649.png

配置at_device组件,配置AP的ssid和password,已经对应的串口:

e327ff96-bc28-11eb-bf61-12bb97331649.png

配置tencent_iot_sdk组件,主要配置三元组:产品ID,设备名字,设备密钥:

e337117a-bc28-11eb-bf61-12bb97331649.png

配置完上述内容,编译烧录就可以。烧录完板子会自动连接网络,然后再串口终端输入:"tc_data_template_example start"。便可以连接上腾讯云:

e343e12a-bc28-11eb-bf61-12bb97331649.png

很方便的就可以连上腾讯云:

编辑:jq

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

    关注

    3

    文章

    1093

    浏览量

    51188
  • 腾讯云
    +关注

    关注

    0

    文章

    224

    浏览量

    17380
  • MQTT
    +关注

    关注

    5

    文章

    720

    浏览量

    24782

原文标题:基于RT-Thread和ESP8266,实战实现MQTT应用

文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【直播预告】高性价比智慧视觉处理器FH8626V300L解析,与RT-Thread全栈开发实战 | 问学直播

    对智慧视觉领域感兴趣,或是行业从业者注意啦!11月13日20:00,RT-Thread携手富瀚微技术专家,为您带来FH8626V300L全栈开发实战线上直播,手把手带你从芯片解读到RT-Thread
    的头像 发表于 11-11 11:53 464次阅读
    【直播预告】高性价比智慧视觉处理器FH8626V300L解析,与<b class='flag-5'>RT-Thread</b>全栈开发<b class='flag-5'>实战</b> | 问学直播

    首搭RT-Thread程翧车控平台| RT-Thread程翧 S32K344 快速原型开发平台正式上市!| 产品动态

    智能汽车迈向高集成与高安全的时代,VCU/ECU开发正面临效率与可靠性的双重考验。依赖单一硬件或拼凑软件方案的传统模式,已成为制约创新的瓶颈。为此,RT-Thread带来里程碑式的解决方案
    的头像 发表于 10-31 11:53 483次阅读
    首搭<b class='flag-5'>RT-Thread</b>程翧车控平台| <b class='flag-5'>RT-Thread</b>程翧 S32K344 快速原型开发平台正式上市!| 产品动态

    蜂鸟处理器上进行RT-Thread+ESP8266 wifi模块开发

    本队伍编号CICC3042,本文介绍蜂鸟处理器上运行RT-Thread实时操作系统,并进行ESP8266wifi模块开发。 蜂鸟配套的sdk中提供了
    发表于 10-31 09:02

    rt-thread studio 2.2.9如何使用最新的RT-Thread v5.2.0 released?

    rt-thread studio2.2.9如何使用最新的RT-Thread v5.2.0 released? 原先以为修改index_all.json,发现联网的时候,会自动覆盖 另lastet版本
    发表于 09-16 06:06

    Ubuntu上开发基于先楫MCU的RT-Thread应用指南

    1、前言RT-ThreadEnv是RT-Thread推出的开发辅助工具,针对基于RT-Thread操作系统的项目工程,提供编译构建环境、图形化系统配置及软件包管理功能。其内置的menuconfig
    的头像 发表于 08-29 12:22 1224次阅读
    <b class='flag-5'>在</b>Ubuntu上开发基于先楫MCU的<b class='flag-5'>RT-Thread</b>应用指南

    【好书推荐】RT-Thread第20本相关书籍!《嵌入式实时操作系统RT-Thread原理与应用》| 技术集结

    01内容简介ContentSummary本书为读者提供了一个全面、系统的RT-Thread学习指南,旨在帮助初学者及有经验的开发者掌握RT-Thread实时操作系统和STM32嵌入式微控制器的核心
    的头像 发表于 08-24 10:05 685次阅读
    【好书推荐】<b class='flag-5'>RT-Thread</b>第20本相关书籍!《嵌入式实时操作系统<b class='flag-5'>RT-Thread</b>原理与应用》| 技术集结

    RT-Thread 遇上 Rust:安全内核 RusT-Thread 的诞生

    老师的推荐,很快我们就被其极高的安全特性,强大的包管理系统和编译器以及丰富的社区支持所折服。然后我们调研时注意到了RT-Thread。它有着经典的操作系统架构,
    的头像 发表于 08-02 11:03 3206次阅读
    <b class='flag-5'>RT-Thread</b> 遇上 Rust:安全内核 RusT-<b class='flag-5'>Thread</b> 的诞生

    【直播预告】RT-Thread携手NXP硬核实战,解锁MCX微控制器的AI落地秘籍 | 问学直播

    ,从“生态布局”到“电机实战”到“AI应用”,预约直播,和我们一起打开嵌入式开发新视界。Details直播详情直播主题RT-Thread携手NXP硬核实战解锁MC
    的头像 发表于 07-20 10:05 883次阅读
    【直播预告】<b class='flag-5'>RT-Thread</b>携手NXP硬核<b class='flag-5'>实战</b>,解锁MCX微控制器的AI落地秘籍 | 问学直播

    用SPI玩转WiFi,RT-Thread ESP-Hosted驱动深度适配指南 | 技术集结

    还在为MCU的WiFi连接方案发愁?RT-Thread社区开源ESP-Hosted驱动,通过标准SPI接口即可实现,并且该仓库已整理成RT-Thread软件包。
    的头像 发表于 07-09 19:03 1116次阅读
    用SPI玩转WiFi,<b class='flag-5'>RT-Thread</b> <b class='flag-5'>ESP</b>-Hosted驱动深度适配指南 | 技术集结

    RT-Thread荣获2025优秀开源项目 | 新闻速递

    6月底,RT-Thread睿赛德受邀参与由上海开源信息技术协会主办的2025上海开源创新精英荟。上海市商委副主任张杰出席会议并致辞。RT-Thread嵌入式操作系统项目凭借其卓越的技术创新与开源生态
    的头像 发表于 07-04 09:04 2420次阅读
    <b class='flag-5'>RT-Thread</b>荣获2025优秀开源项目 | 新闻速递

    揭秘RT-Thread上的AUTOSAR CP系统

    标准,同时保留RT-Thread的POSIX支持与可裁剪性,实现了通信隔离、诊断模块集成等关键技术突破,为车载系统提供高安全、可扩展的解决方案。车载电子系统与传统
    的头像 发表于 06-23 20:22 2939次阅读
    揭秘<b class='flag-5'>RT-Thread</b>上的AUTOSAR CP系统

    【RA-Eco-RA4M2开发板评测】使用RA4M2和ESP8266实现MQTT协议上传传感器数据到云服务器并反向点灯控制

    马上就到RA4M2开发板评测的结尾了,今天给瑞萨论坛线上最具创意的一篇帖子,通过RA4M2开发板,和ESP8266 WIFI模块,然后通过手机上的MQTTOOL来实现手机控制RA4M2远程点灯,即使
    发表于 05-29 15:29

    RT-Thread 上如何实现 SLAAC?

    大佬们,本菜鸟有一些网络上的问题需要帮助: RT-Thread 上如何实现 SLAAC(无状态地址自动分配),给连接到我的板子的设备分配 IPv6 地址; RT-Thread 如何发送以太网报文,要求从报文头开始都是我自己组,
    发表于 05-27 07:21

    RT-Thread审核团招募: 深度参与开源RTOS社区治理与演进

    全球开发者招募:RT-Thread审核团(ReviewTeam)正式开放申请!开源的世界里,代码审查(CodeReview)是保证软件质量、促进技术交流的关键环节。RT-Thread作为全球领先
    的头像 发表于 05-21 18:02 1064次阅读
    <b class='flag-5'>RT-Thread</b>审核团招募: 深度参与开源RTOS社区治理与演进

    如何将RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默认支持的IDE只有IAR 和 Keil, 那如何将RT-Thread移植到NXP MCUXPressoIDE上呢?本文内容比较简单但稍有琐碎,希望对有需要的小伙伴有所帮助。
    的头像 发表于 02-13 10:37 2431次阅读
    如何将<b class='flag-5'>RT-Thread</b>移植到NXP MCUXPressoIDE上