我有一个从传感器收集数据的arduino Uno,我想使用wifi esp8266将这些数据发送到 Cloud 端,使用库WifiClientSecure支持SSL,有没有替代方法将数据从arduino发送到esp卡,esp8266读取这些数据和之后将它发送到 Cloud 端,我能够使用mqtt,但我想知道是否有一种方法可以在没有第三部分的情况下直接连接arduino uno和esp8266,任何帮助都会感激不尽 .
根据我的研究,ESP8266 AT Command API不支持SSL . 这意味着您需要使用Arduino(作为FTDI转换器)使用自定义固件对ESP8266进行编程 . 这将使您能够使用 WiFiClientSecure 和 pubsubclient .
WiFiClientSecure
pubsubclient
使用Arduino作为FTDI:
加载不使用 Serial 的草图,例如"Blink"示例
Serial
将Arduino的TX引脚连接到ESP8266 RX引脚
将Arduino的RX引脚连接到ESP8266 TX引脚
现在您需要设置Arduino IDE,以便它可以编程ESP8266
在Arduino IDE - >文件 - >首选项中,将其粘贴到其他板管理器URL:http://arduino.esp8266.com/stable/package_esp8266com_index.json(只需按原样复制链接而不是单击)
转到工具 - >电路板 - >电路板管理器 . 在电路板列表中找到"esp8266",然后单击"Install"
在工具 - >板中将电路板设置为"Generic ESP8266 Module"
Arduino IDE准备好了!但是在用它编程ESP8266之前,你需要将一个复位按钮和一个程序按钮连接到ESP8266 .
在GND和ESP8266 GPIO_0引脚之间连接一个按钮
在GND和ESP8266 RESET引脚之间连接一个按钮
在3.3V和ESP8266引脚之间添加一个10K欧姆的上拉电阻(默认复位引脚为高电平)
当您准备将草图上传到ESP8266时,请使用以下按钮:
按两个按钮
释放RESET按钮
发布GPIO_0按钮
这使ESP8266处于程序模式!您现在应该可以单击Arduino IDE中的"Upload"按钮 . 我建议使用提供的ESP826a6示例草图之一(如this one)来测试所有内容 .
以下是该项目的概述:
. Arduino Uno sketch:读取传感器数据,通过 Serial 发送到ESP8266 . ESP8266草图:连接到WiFi网络,从 Serial 接收传感器数据,通过 WiFiClientSecure 发送到 Cloud 端 .
我会把这两个程序的实际代码留给你,但如果你遇到困难就留下评论 . 希望这可以帮助!
1 回答
根据我的研究,ESP8266 AT Command API不支持SSL . 这意味着您需要使用Arduino(作为FTDI转换器)使用自定义固件对ESP8266进行编程 . 这将使您能够使用
WiFiClientSecure
和pubsubclient
.使用Arduino作为FTDI:
加载不使用
Serial
的草图,例如"Blink"示例将Arduino的TX引脚连接到ESP8266 RX引脚
将Arduino的RX引脚连接到ESP8266 TX引脚
现在您需要设置Arduino IDE,以便它可以编程ESP8266
在Arduino IDE - >文件 - >首选项中,将其粘贴到其他板管理器URL:http://arduino.esp8266.com/stable/package_esp8266com_index.json(只需按原样复制链接而不是单击)
转到工具 - >电路板 - >电路板管理器 . 在电路板列表中找到"esp8266",然后单击"Install"
在工具 - >板中将电路板设置为"Generic ESP8266 Module"
Arduino IDE准备好了!但是在用它编程ESP8266之前,你需要将一个复位按钮和一个程序按钮连接到ESP8266 .
在GND和ESP8266 GPIO_0引脚之间连接一个按钮
在GND和ESP8266 RESET引脚之间连接一个按钮
在3.3V和ESP8266引脚之间添加一个10K欧姆的上拉电阻(默认复位引脚为高电平)
当您准备将草图上传到ESP8266时,请使用以下按钮:
按两个按钮
释放RESET按钮
发布GPIO_0按钮
这使ESP8266处于程序模式!您现在应该可以单击Arduino IDE中的"Upload"按钮 . 我建议使用提供的ESP826a6示例草图之一(如this one)来测试所有内容 .
以下是该项目的概述:
. Arduino Uno sketch:读取传感器数据,通过
Serial
发送到ESP8266 . ESP8266草图:连接到WiFi网络,从Serial
接收传感器数据,通过WiFiClientSecure
发送到 Cloud 端 .我会把这两个程序的实际代码留给你,但如果你遇到困难就留下评论 . 希望这可以帮助!