跳转到内容

LibreTiny 平台

此组件包含 LibreTiny 平台的平台特定选项。 它支持以下微控制器,常用于 Tuya 设备等:

  • BK72xx: BK7231T, BK7231N
  • RTL87xx: RTL8710BN, RTL8710BX
  • LN882x: LN882HKI

由于支持不同的微控制器,您需要根据设备使用的处理器包含适当的 ESPHome 组件。

请参阅 LibreTiny/Boards 查找您的开发板类型。

# BK72xx 示例配置项
bk72xx:
board: generic-bk7231n-qfn32-tuya
# RTL87xx 示例配置项
rtl87xx:
board: generic-rtl8710bn-2mb-788k
# LN882x 示例配置项
ln882x:
board: generic-ln882hki
  • board (Required, string): 应使用的 PlatformIO 开发板 ID。从 此列表 中选择适当的开发板(名称旁边的图标可用于复制开发板 ID)。

    这会影响 CPU 选择和一些内部设置 - 确保选择正确的 CPU。 如果不确定特定开发板的选择,请选择通用开发板,如 generic-bk7231n-qfn32-tuya

  • framework (Optional): ESPHome 使用的基础框架选项。

  • family (Optional, string): 此开发板上使用的 LibreTiny 支持的微控制器系列。 bk7231nbk7231trtl8710brtl8720cbk7251bk7231qln882hki 之一。 默认为从开发板检测到的变体,如果使用 ESPHome 未知的开发板,此选项是必需的。建议不要包含此选项

NOTE

LibreTiny 平台的支持仍在开发中,可能存在问题或缺少组件。

请在 LibreTiny GitHub 上报告任何问题。

由于 BK72xx 和 RTL87xx 芯片在 IoT 开源开发领域相对较新,关于刷写和配置它们的资源不多。

以下是一些有用的链接:

LibreTiny 支持的芯片使用开发板的内部 GPIO 引脚编号,这意味着您不必担心其他类型的引脚编号,太好了!

此外,您可以使用引脚功能宏快速访问绑定到特定外设的 GPIO,例如 UART1 TX/RX 或 PWM0。 请参阅 LibreTiny/GPIO 访问 了解更多信息。

大多数流行的开发板(通常被错误地称为”芯片”),通常随智能家居设备一起提供,被 LibreTiny 支持,这意味着有引脚图可用,并描述了所有 GPIO。 访问 LibreTiny/Boards 查找所有支持的开发板。

引脚功能表概述了所选开发板上可用的所有 GPIO。 您可以使用任何可见的名称来访问特定的 GPIO。

关于 BK72xx 引脚的一些说明:

  • TX2 (P0)RX2 (P1) 用于默认的 Logger UART 端口。
  • TX1 (P11)RX1 (P10) 用于刷写固件,以及 Tuya
  • ADC3 (P23) 是 BK7231 上唯一可用的 Adc

关于 RTL8710BN/BX 引脚的一些说明:

  • TX2 (PA30)RX2 (PA29) 用于刷写固件,以及默认的 Logger UART 端口。

  • TX2 (PA30) 还用于确定启动时的引导模式(类似于 ESP32)。 在启动时将其拉低将进入”下载模式”。

关于 LN882H 引脚的一些说明:

  • TX0 (PA2)RX0 (PA3) 用于刷写固件,以及默认的 Logger UART 端口。

  • BOOT1 (PA9) 还用于确定启动时的引导模式(类似于 ESP32)。 在启动时将其拉低将进入”下载模式”。

使用各种命名样式的示例配置项:

# P26/GPIO26 上的 GPIO 开关(BK72xx 示例)
switch:
- platform: gpio
name: 继电器 1
pin: P26
# PA12 上的 GPIO 二值传感器(RTL87xx 示例)
binary_sensor:
- platform: gpio
name: "引脚 PA12"
pin: PA12
# ADC 读取(BK72xx 示例)
sensor:
- platform: adc
pin: ADC3
name: "电池电量"
# PWM 组件
output:
- platform: libretiny_pwm
pin: PWM2
frequency: 1kHz
id: pwm_output
# 使用 PWM 的灯光
light:
- platform: monochromatic
output: pwm_output
name: "厨房灯"
# UART1 上的 Tuya MCU(BK72xx 示例)
uart:
rx_pin: RX1
tx_pin: TX1
baud_rate: 9600
tuya:

这些是 LibreTiny 平台的一些高级配置选项。

# 示例配置项
bk72xx:
board: cb2s
framework:
version: dev
loglevel: debug
debug:
- wifi
- ota
sdk_silent: auto
uart_port: 2
gpio_recover: false
options:
LT_LOG_HEAP: 1
LT_AUTO_DOWNLOAD_REBOOT: 1
  • loglevel (Optional, string): LibreTiny 核心的日志级别。控制核心日志消息的输出(不影响 ESPHome logger!)。这些消息仅在物理 UART 上可见verbosetrace(与 verbose 相同)、debuginfowarn(默认)、errorfatalnone 之一。

  • debug (Optional, string 或字符串列表): 要为其启用 LibreTiny 调试的模块。 请参阅 LibreTiny/配置 了解更多信息 - 某些模块默认启用。 wificlientserversslotafdbmdnslwiplwip_assert 中的一个或多个。 指定 none 将禁用所有模块。您也可以将 none 与一个或多个模块组合使用。

  • sdk_silent (Optional, string): 定义 SDK 日志”静默模式”。 这会禁用来自供应商 SDK 的消息,使 UART 输出更易读,但可能会隐藏一些错误消息。 这仅影响物理 UART 端口。 请参阅 LibreTiny/配置 了解更多信息。

    • all: 禁用所有消息(默认)。
    • auto: 选择性禁用,例如在 Wi-Fi 激活期间。
    • none: 保留所有日志消息,不禁用任何内容。
  • uart_port (Optional, int): 选择框架的默认 UART 端口。 这会影响 LibreTiny 日志消息,以及 ESPHome logger 的默认端口(例如,如果您没有指定其他端口)。 0、1、2 之一。默认值取决于芯片,由 LibreTiny 适当选择。

  • gpio_recover (Optional, boolean): 禁用 JTAG/SWD 调试外设。这可能是释放应用于其他功能的 GPIO 所需的。默认为 true

  • options (Optional, mapping): 传递给 LibreTiny 平台的自定义选项。 请参阅 LibreTiny/配置 查看所有选项。 这优先于(覆盖)上述所有选项