将数据传感器从arduino发送到esp8266,后者使用SSL将其发送到云端

时间:2017-09-01 11:35:15

标签: arduino-uno esp8266

我有一个从传感器收集数据的arduino Uno,我想使用wifi esp8266将这些数据发送到云端,使用库WifiClientSecure支持SSL,是否有替代方案可以将数据从arduino发送到esp卡和esp8266读取这些数据然后发送到云端,我能够使用mqtt,但我想知道是否有办法在arduino uno和esp8266之间直接连接而没有第三部分,任何帮助都将是gratefull。

1 个答案:

答案 0 :(得分:1)

根据我的研究,ESP8266 AT Command API不支持SSL。这意味着您需要使用Arduino(作为FTDI转换器)使用自定义固件对ESP8266进行编程。这样您就可以使用WiFiClientSecurepubsubclient

将Arduino用作FTDI:

  1. 加载不使用Serial的草图,例如" Blink"示例
  2. 将Arduino的TX引脚连接到ESP8266 RX引脚
  3. 将Arduino的RX引脚连接到ESP8266 TX引脚
  4. 现在您需要设置Arduino IDE,以便它可以编程ESP8266

    1. 在Arduino IDE中 - >档案 - >首选项,将其粘贴到其他主板管理器网址中:http://arduino.esp8266.com/stable/package_esp8266com_index.json(只需按原样复制链接而不是点击)
    2. 转到工具 - >板 - >董事会经理。找到" esp8266"在电路板列表中单击"安装"
    3. 将您的电路板设置为" Generic ESP8266 Module"在工具 - >板
    4. Arduino IDE准备好了!但是在用它编程ESP8266之前,你需要将一个复位按钮和一个程序按钮连接到ESP8266。

      1. 在GND和ESP8266 GPIO_0引脚之间连接一个按钮
      2. 在GND和ESP8266 RESET引脚之间连接一个按钮
      3. 在3.3V和ESP8266引脚之间添加一个10K欧姆的上拉电阻(默认复位引脚为高电平)
      4. 当您准备将草图上传到ESP8266时,请使用以下按钮:

        1. 按两个按钮
        2. 发布RESET按钮
        3. 发布GPIO_0按钮
        4. 这使ESP8266处于程序模式!您现在应该可以点击"上传" Arduino IDE中的按钮。我建议使用提供的ESP826a6示例草图之一(如this one)来测试所有内容。

          以下是该项目的概述:

          。 Arduino Uno sketch:读取传感器数据,通过Serial发送到ESP8266 。 ESP8266草图:连接到WiFi网络,从Serial接收传感器数据,通过WiFiClientSecure发送到云端。

          我会将这两个程序的实际代码留给您,但如果您遇到困难,请发表评论。希望这有帮助!

相关问题