跳转到内容

RDM6300 NFC/RFID

rdm6300 组件允许你在 ESPHome 中使用 RDM6300 NFC/RFID 控制器 (数据手册、iTead)。 该组件是一个全局中心,通过 UART 与 RDM6300 建立连接, 并翻译接收到的数据。使用 RDM6300 二进制传感器,然后可以 创建单独的二进制传感器来追踪 RDM6300 当前是否检测到 NFC/RFID 标签。

有关如何为该组件设置单独的二进制传感器,请参见 设置标签。

由于与 RDM6300 的通信使用 UART 完成,你需要 在配置中设置一个 UART 总线,将 rx_pin 连接到 RDM6300 的数据引脚, 并将波特率设置为 9600。

# 示例配置条目
uart:
rx_pin: D0
baud_rate: 9600
rdm6300:
binary_sensor:
- platform: rdm6300
uid: 7616525
name: "RDM6300 NFC Tag"
  • uart_id(可选,ID):如果你想 使用多个 UART 总线,请手动指定 UART Component 的 ID。

  • on_tag(可选,Automation):读取标签时要执行的自动化。参见 on_tag。

  • id(可选,ID):手动指定此组件的 ID。

当 RDM6300 模块用标签响应时,将触发此自动化。

此触发器提供的参数 x 类型为 uint32_t,是以 32 位 无符号整数形式表示的标签 UID。

rdm6300:
# ...
on_tag:
then:
- mqtt.publish:
topic: rdm6300/tag
payload: !lambda 'return to_string(x);'

标签扫描事件也可以通过 homeassistant.tag_scanned 动作 发送到 Home Assistant 标签组件。

rdm6300:
# ...
on_tag:
then:
- homeassistant.tag_scanned: !lambda 'return to_string(x);'

rdm6300 二进制传感器平台允许你追踪 RDM6300 当前是否正在检测具有给定 唯一 id(uid )的 NFC/RFID 标签。

# 示例配置条目
uart:
rx_pin: D0
baud_rate: 9600
rdm6300:
binary_sensor:
- platform: rdm6300
uid: 7616525
name: "RDM6300 NFC Tag"
  • uid(必选,int):NFC/RFID 标签的唯一 ID。
  • 来自 Binary Sensor 的所有其他选项。

要为特定的 NFC 标签设置二进制传感器,你首先需要知道它们的唯一 ID。为了获取此 id,首先像上面那样设置一个不带任何二进制传感器的简单 RDM6300 配置。

当你的代码正在运行,并且你用 NFC 标签接近 RDM6300 时,你应该看到类似这样的消息:

Found new tag with ID '7616525'

然后复制此 id,并在配置示例中创建一个 binary_sensor 条目。对每个标签重复此过程。