跳转到内容

物理连接您的设备

设置新 ESPHome 设备最困难的部分是初始安装,这需要使用数据线将 ESP 设备连接到计算机。

每个设备只需执行一次此操作。 一旦在设备上刷写了 ESPHome,您可以使用 OTA 无线上传新版本或配置更改。

ESPHome 可在多种设备上运行,因此很难列出您需要的任何特定工具集或给出连接说明。本指南试图涵盖一些更常见的刷写情况。如果您的设备不符合这些情况,请尝试在设备指南或互联网上查找针对您特定设备的指南。

您可能遇到各种情况,每种情况都需要您采取不同的操作来连接计算机以刷写 ESP。

您只需物理连接一次。一旦刷写了设备并将其连接到 WiFi,您可以使用 OTA 远程安装软件。

基于 ESP 的设备编程是通过 USB 转串行适配器将 ESP8266/ESP32 上的串行端口连接到您的计算机完成的。某些设备在电路板上内置了适配器(有些甚至在 MCU 中嵌入了编程器,在这种情况下事情会更容易一些。

如果您使用连接到 ESP 的 RX 和 TX 的外部串行编程器,请选择基于 CH340 的编程器,因为它是用于刷写最可靠且最便宜的选择。基于 CP2102 或 PL2303 的编程器与许多设备兼容,但可能需要外部 3.3V 电源。

将开发板或串行编程器插入空闲的 USB 端口,检查计算机是否正确检测到它。固件编程工具使用串行接口与您的设备通信。在 Windows 上,这些接口命名为 COM1COM2 等,在 Linux 上命名为 /dev/ttyUSB0/dev/ttyACM1 等。

NOTE

如果它没有显示为串行端口,您可能没有安装所需的驱动程序。您需要的型号刻在连接到 USB 端口的芯片上。ESP 和编程器通常配有以下 UART 芯片之一:

除了有 USB 端口的情况外,您需要建立五个电气连接来编程基于 ESP 的开发板:

  • +3.3V,或偶尔是 +5.0V
  • GND,或地线
  • 编程器的 TXESPRX
  • 编程器的 RXESPTX
  • IO0,用于将开发板置于编程模式。这通常是一个按钮,您需要在连接电源(+3.3V)时按住。

提供给设备的电源是刷写设备和稳定运行的最重要的要素之一。您必须确保设备获得足够的电源(电流和适当的电压水平)以正确将固件刷写到设备上。使用外部 3.3V 电源时,请确保两者的地线(GND)连接在一起,这确保了公共地。PC 电源可以是 3.3V 直流电源的良好来源。

NOTE

某些适配器可以在 3.3V5V 之间切换数据引脚,但在电源引脚上仍提供 5V,这将不可修复地损坏您的设备。您必须确保数据(RXTX)和 VCC 引脚设置为 3.3V

ESP 需要在上传固件之前进入编程模式或刷写模式。这是通过在芯片启动时将 GPIO0 引脚连接到 GND 来完成的。

要将 ESP 置于编程模式:

  • 断开开发板或串行编程器与计算机的 USB 连接(以关闭 ESP 电源)
  • GPIO0GND 短接(通过按住板载按钮或用导线连接)
  • 将开发板或串行编程器连接到计算机(确保 ESP 通电)
  • 几秒钟后断开 GPIO0GND 的连接(松开按钮或移除导线连接)。在不提供 GPIO0 连接按钮的设备上,在整个刷写过程(擦除和上传)中保持导线短接可能更容易。这样做不会造成任何问题。固件成功上传后,移除短接。这允许设备正常启动。

您可能需要在擦除和上传固件之间重新上电 ESP,这可以通过断开和重新连接来完成,当然 GPIO0GND 仍需保持连接。

RXTX 有时可以互换。如果第一次编程开发板不成功,请在重试之前尝试翻转连接到这些引脚的导线。

高压警告符号

WARNING

在遵循本指南时,不要将设备连接到市电。 如果您的设备是打开的并直接插入墙壁,您离触电只有一步之遥。

请注意,如果您的设备使用单独的”电源适配器”或电源砖,这不适用。在刷写时使用外部电源是一个高级主题,此处不涉及,但不会造成任何安全风险。

您对自己的安全负全责。 如果您感觉有什么不对或不舒服继续,请立即停止。

带有 USB 端口和内置串行适配器的设备

开发板通常带有内置 USB 端口。此 USB 端口连接到串行适配器,因此您不需要单独的串行适配器。您只需使用 USB 数据线 将其连接到计算机进行编程。此外,开发板也可用于刷写其他 ESP。在此了解更多。

如果不通过焊接或使用面包板连接额外的传感器,这可能不会很有用,但仅仅在其上刷写 ESPHome 不需要任何其他东西。

预装编程头的设备

在这种情况下,您只需要跳线USB 转串行适配器。您不需要焊接任何东西,工厂已经完成了。

电路板上有编程头位置的设备

您可能可以使用跳线USB 转串行适配器。您可以将导线的公端直接放入电路板中,用手按住它们直到完成刷写开发板。

这些头有时在电路板上有文字指示每个引脚是什么。如果您的头没有,请在互联网上查找,或使用万用表的连续性模式来确定(高级主题)。

填满焊锡的一组编程头

您需要一个 USB 转串行适配器、跳线电烙铁,如果您的开发板看起来像这样,可能还需要焊锡和一些可分割头

您可以尝试将跳线放在正确的位置,但如果不让它们滑动,很难固定住。在这种情况下,您需要在编程端口上焊接一个头。

这些头有时在电路板上有文字指示每个引脚是什么。如果您的头没有,请在互联网上查找,或使用万用表的连续性模式来确定(高级主题)。

焊接了编程线的 ESP8266 模块

如果设备有模块但没有编程头,事情会变得有点棘手。您需要 USB 转串行适配器跳线剥线钳剪线钳电烙铁焊锡,还有一些助焊剂会有帮助。

剪断跳线,剥去末端一点,然后将它们焊接到模块上。您可以在互联网上查找模块型号来找到正确的焊接位置。您可以在这里找到常用模块列表

没有编程头的裸 ESP8266 IC

这是一个高级主题,不会详细介绍,但您有三个选择:

  • 您可以希望您的设备受 OTA 转换工具支持。大多数这些工具已被供应商破坏,ESPHome 社区无法帮助您使用这些工具。

  • 如果编程线连接到较大的元件(如电阻),您可以将跳线焊接或夹到那个较大的元件上。

  • 您可以使用您惊人的微焊接技能直接连接到 IC。

由于我们在处理硬件,根据情况可能需要一些额外的工具。已经有了所有这些东西?您可以开始了!

但如果您没有,不要急于出去买所有东西。先通读本指南并列出您需要的所有东西。不同情况需要不同的零件和工具。

名称用途大约价格图片
USB 转 micro-USB/mini-USB/USB-C如果您的目标设备上有 USB 端口,您需要适当的数据线来连接它。通常随移动电源提供的仅供电 USB 线无法工作。$3 到 $10USB cable
USB 转串行适配器串行通信是与其它设备(如您正在刷写的 ESP32/ESP8266)通信的简单方式。但您的计算机可能没有内置此功能。“Serial”、“UART”、“TTL” 和 “COM” 都是或多或少同义的。有很多不同类型,所以如果您的看起来不像图片中的那样也不要担心。但是,您需要一个带电压调节器的。Tasmota 网站提供了很好的购买建议。任何带有功能正常 USB_UART 桥接芯片的 ESP 开发板也可以代替使用。$3 到 $10USB serial adapter
跳线用于将两个东西电气连接。公端有金属突出,插入导线或开发板的母端。它们也有不同的长度,但对于我们的目的,任何长度都可以。$3 到 $8 一包Jumper wires
可分割头焊接到 PCB 上以提供连接跳线的方式。金属引脚之间的距离称为间距,对于我们的工作通常是 2.54mm。这种头可以沿着凹槽切割到正确的长度。$3 到 $8 一包Breakable headers
剪线钳、切线钳、斜口钳用于剪线。这些通常可以用刀或剪刀代替,但要小心不要伤到自己。$5 到 $15Wire cutters
剥线钳用于去除导线的绝缘层,露出内部导电金属。这些通常可以用刀、剪刀或指甲代替,但要小心不要伤到自己。有很多不同的样式,不仅仅是图片中的那种。您需要适合较细导线的工具,大约 20 AWG 到 26 AWG。$5 到 $15Wire strippers
电烙铁用于熔化金属(称为焊锡)以导电方式连接东西。您需要带温度控制的。除此之外,这里有很多不同的意见和选择。/r/AskElectronics wiki 有一些很好的建议。以下会很好地为您服务,但请注意从可靠来源购买: - Hakko FX-888D - KSGER T12 - TS100/TS80$60 到 $120Soldering iron
电子焊锡熔化的金属用于以导电方式连接东西。有两种类型,含铅和无铅。含铅的在较低温度下熔化,更容易使用,但对环境有害(但对人类在这种形式下无害)。电子焊锡通常也有”松香芯”,有助于清洁表面以使焊锡粘附。您绝对不想要水管焊锡,也称为”酸芯”或”银焊锡”。它需要比我们这里安全使用的温度高得多。$8 到 $12Solder
电子助焊剂用于在焊接前清洁金属表面。有时焊锡的松香芯不够,所以您需要添加一些额外的。这东西很有帮助,但对于本指南可能不需要,因为我们不会进行任何高级焊接。如果您购买了,您绝对不想要水管工的助焊剂。它会损坏您的电路板。$8 到 $12