项目简介
本项目是一个rainbowtype物联网安全原型系统的模板,借助Arduino IDE环境,能够实现与AWS IoT的连接和数据交互,适用于Espressif ESP32 - DevkitC硬件平台,采用Microchip ATECC608A进行相关操作。
项目的主要特性和功能
- 与AWS IoT连接:实现设备与AWS IoT的MQTT连接,可在AWS IoT控制台“test”页面接收消息。
- I2C端口初始化:对I2C 0和1端口进行初始化,可通过配置相关文件修改引脚设置。
- 模块化设计:代码采用模块化设计,便于维护和扩展。
安装使用步骤
环境准备
确保已安装Arduino IDE环境(测试版本为1.8.13)。
项目配置
- 将本项目以ZIP形式下载,在Arduino库管理器中添加该ZIP文件,添加后可在Arduino IDE中找到示例草图。
- 复制自己生成的“cert_chain.c”文件到项目中。
- 修改以下常量:
- 在“connectAWS”文件中,将
mqttClient.setServer("XXXXXXXXXXXXX-ats.iot.us-east-1.amazonaws.com", 8883);
修改为自己的AWS IoT端点。 - 在“WebSocketserial”和 “WebSocketcamera” 文件中,将
const char* root_ca = "";
修改为自己的根证书内容。 - 在“WebSocketserial”和 “WebSocketcamera” 文件中,将
webSocket.beginSslWithCA(<URL>, 5000, "/ws", root_ca);
修改为自己的URL。
- 在“connectAWS”文件中,将
- 若需修改引脚设置,可在
cryptoauthlib/i2c_arduino.cpp
文件中修改Wire.begin(21 ,22);
。
运行项目
将配置好的项目上传到Espressif ESP32 - DevkitC开发板。若项目运行成功,可在串口控制台看到如下结果:
..
Connected.
Attempting MQTT connection...Connected.
Subscribed.
同时,也可在AWS IoT控制台的“test”页面接收消息。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】