Ai-WB2 系列模组SDK接入亚马逊云

文章目录

  • 前言
  • 一、准备
  • 二、亚马逊云物模型建立
    • 1. 注册亚马逊账号,登录AWS IoT控制台,[注册地址](https://aws.amazon.com/cn/)
    • 2. 创建好之后点击登录
    • 3. 创建物品以及下载证书
  • 三、连接亚马逊云demo获取以及配置
    • 1. 下载源码
    • 2. 按照顺序执行下面指令
    • 3. 修改示例代码
  • 四、编译及烧录
    • 1. 编译
    • 2. 烧录
  • 四、测试结果
    • 1. 打开串口调试助手
    • 2. 按下模组复位键
    • 3. MQTT订阅测试
    • 4. MQTT发布测试
  • 总结


前言

本章介绍一下Ai-WB2 系列模组SDK接入亚马逊。(博主用Ai-WB2-32S模组来演示)

一、准备

  • Ai-WB2-32S模组
  • 一根Type-C线
  • 一张信用卡
  • 串口调试助手
  • 博流烧录工具
  • 虚拟机或Windows下的Ubuntu子系统

二、亚马逊云物模型建立

1. 注册亚马逊账号,登录AWS IoT控制台,注册地址

图一

2. 创建好之后点击登录

图二
图三
图四
进入到如下界面
图五

3. 创建物品以及下载证书

图六
图七
图八
图九
图十
图十一
图十二
图十三
图十四
图十五
图十六
图十七

三、连接亚马逊云demo获取以及配置

1. 下载源码

sudo apt install build-essential python3 python3-pip git screen
git clone --recursive https://github.com/Ai-Thinker-Open/Ai-Thinker-WB2.git

2. 按照顺序执行下面指令

cd toolchain/riscv/Linux/
. chmod755.sh 

3. 修改示例代码

cd ~/Ai-Thinker-WB2/applications/iot-solution/aws_iot_core
修改aws_test_cert.h文件
图一
图二
图三
图四
图五
图六
修改main.c文件
图七
修改完成!

四、编译及烧录

1. 编译

图一

图二
图三

2. 烧录

图四
图五
图六
图七
图八
图九
图十
将开发板连接到电脑
图十一
图十二
如果出现下列错误,请查看串口是否被占用
图十三
图十四
图十五
图十六

四、测试结果

1. 打开串口调试助手

图一

2. 按下模组复位键

程序运行连接云成功截图
图二

3. MQTT订阅测试

图三
图四
图五

4. MQTT发布测试

图六
图七
图八

总结

以上就是Ai-WB2系列模组使用SDK对接亚马逊云平台介绍!
以上就是本期分享的内容,更多资料可从安信可官网上获取。

官方官网:https://www.ai-thinker.com
开发资料:https://docs.ai-thinker.com/
官方论坛:http://bbs.ai-thinker.com
技术支持:support@aithinker.com


http://www.ppmy.cn/embedded/9907.html

相关文章

【八股】Spring Boot

SpringBoot是如何实现自动装配的? 首先,SpringBoot的核心注解SpringBootApplication里面包含了三个注解,SpringBootConfigurationEnableAutoConfigurationComponentScan,其中EnableAutoConfiguration是实现自动装配的注解&#x…

Java中的动态代理

动态代理 什么是代理程序为什么需要代理例子如何创建代理对象 应用场景 什么是代理 程序为什么需要代理 对象如果认为身上干的事太多,可以通过代理来转移部分职责; 对象有什么方法想被代理,代理就一定要有对应的方法 使用接口实现&#xf…

Elasticsearch:(一)ES简介

搜索引擎是什么?在不少开发者眼中,ES似乎就是搜索引擎的代名词,然而这实际上是一种误解。搜索引擎是一种专门用于从互联网中检索信息的技术工具,它主要可以划分为元搜索引擎、全文搜索引擎和垂直搜索引擎几大类。其中,全文搜索引擎和垂直搜索引擎是我们日常生活中较为常见…

【深度学习】YOLOv5,烟雾和火焰,目标检测,防火检测,

文章目录 数据收集和数据标注查看标注好的数据的脚本下载yolov5创建 dataset.yaml训练参数开始训练 数据收集和数据标注 搜集数据集2w张。 pip install labelme labelme 然后标注矩形框和类别。 下载数据请看这里: https://qq742971636.blog.csdn.net/article/d…

[BT]BUUCTF刷题第20天(4.22)

第20天 Web [GWCTF 2019]我有一个数据库 打开网站发现乱码信息(查看其他题解发现显示的是:我有一个数据库,但里面什么也没有~ 不信你找) 但也不是明显信息,通过dirsearch扫描得到robots.txt,然后在里面得…

PyTorch如何保存验证集上效果最好的模型

PyTorch如何保存验证集上效果最好的模型 验证集的作用是在训练过程中监测是否出现过拟合。通常情况下,我们期望验证集的损失函数值在训练过程中首先下降,然后趋于稳定或上升。当损失函数值达到最小值时,表示模型在验证集上的泛化能力最佳&am…

ubuntu系统安装配置gitlab+Jenkins+发布持续集成持续部署保姆级教程。

1、服务器环境 名称 系统 IP 备注 gitlab ubuntu20.04.2图形化 192.168.26.130 要求有6G的内存 Jenkins Ubuntu20.04.2图形化 …

【bug】使用mmsegmentaion遇到的问题

利用mmsegmentaion跑自定义数据集时的bug处理(使用bisenetV2) 1. ValueError: val_dataloader, val_cfg, and val_evaluator should be either all None or not None, but got val_dataloader{batch_size: 1, num_workers: 4}, val_cfg{type: ValLoop}, …

js高级 笔记03

目录 01 如何避免全局变量 02 递归函数 03 浅拷贝 04 深拷贝 05 函数的调用模式 06 异步代码数据丢失问题 01 如何避免全局变量 自调用函数 常用于避免全局变量冲突的问题 不同的函数都有一个独立的作用域 所以可以解决命名冲突的问题 自调用函数也叫做沙箱函数 自调用函…

IOC

获取资源的传统方式: 在应用程序中的组件需要获取资源时,传统的方式是组件主动的从容器中获取所需要的资源,在这样的模式下开发人员往往需要知道在具体容器中特定资源的获取方式,增加了学习成本,同时降低了开发效率。…

【iOS开发】(一)2024 从一无所有开始,到ios开发(react Native)

​ 2024 从一无所有开始,到ios开发(react Native) 目录标题 1 工具简介2 基础环境搭建1 安装 brew2 安装 Node.js3 安装 Yarn4 安装 React Native 脚手架 3 ios环境搭建4创建并启动一个app 在这里插入图片描述 1 工具简介 Homebrew (brew)&a…

【JavaWeb】Day45.Mybatis——入门程序

什么是MyBatis? MyBatis是一款优秀的持久层框架,用于简化JDBC的开发。 (持久层:指的是就是数据访问层(dao),是用来操作数据库的。) (框架:是一个半成品软件,是一套可重用的、通用…

MySQL-知识点详解

本文简要介绍了MySQL数据库的关键内容,包括数据类型、SQL语句、索引类型以及数据库优化等方面。详细讨论了各种数据类型,比较了DATETIME和TIMESTAMP类型,解释了SQL语句的执行顺序和数据库连接方式,介绍了MySQL索引的概念和优缺点&…

元数据管理Atlas

文章目录 一、Atlas概述1、Atlas入门2、Atlas架构原理 二、Atlas安装1、安装环境准备1.1 安装Solr-7.7.31.2 Atlas2.1.0安装 2、Atlas配置2.1 Atlas集成Hbase2.2 Atlas集成Solr2.3 Atlas集成Kafka2.4 Atlas Server配置2.5 Kerberos相关配置2.6 Atlas集成Hive 3、Atlas启动 三、…

【深度学习实战(8)】如何绘制loss曲线图

一、步骤 我们先定义一个dict,每一个key对应的value都是一个list。 loss_history dict((k, []) for k in ["epoch", "train_loss", "val_loss"])每一轮或者每一次迭代的损失都通过list记录下来。 loss_history["epoch"…

「51媒体」媒体邀约新闻稿件发布应该如何筛选媒体?

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 在媒体邀约新闻稿件发布的过程中,筛选媒体是一个至关重要的环节。我们需要考虑以下因素: 目标受众匹配度:首先,需要明确新闻稿件的目标受众…

javascript遍历多层级数据

javascript遍历多层级数据 代码 // data:需要处理的数据 level:用于标记数据所在层级(从1开始) const dataLoop(data, level 1)>{return data.map(item>{let r {...item, level}console.log(item, item)// 判断如果有下级,就传入children继续向下循环if(r…

最新整理的Pycharm安装教程

简介 PyCharm是一种PythonIDE(Integrated Development Environment,集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单…

书生·浦语大模型实战营之微调 Llama 3 实践与教程 (XTuner 版)

书生浦语大模型实战营之微调 Llama 3 实践与教程 (XTuner 版) Llama 3 近期重磅发布,发布了 8B 和 70B 参数量的模型,XTuner 团队对 Llama 3 微调进行了光速支持!!!开源同时社区中涌现了 Llama3-XTuner-CN 手把手教大家使用 XTuner 微调 Llama 3 模型。 XTuner:http:/…

对接浦发银行支付(八)-- 对账接口

一、背景 本文不是要讲述支付服务的对账模块具体怎么做,仅是介绍如何对接浦发银行的对账接口。 也就是说,本文限读取到对账文件的内容,不会进一步去讲述如何与支付平台进行对账。 如果要获取商户的对账单,需要遵循以下步骤&…