UNPKG

node-red-contrib-knx-ultimate

Version:

Control your KNX and KNX Secure intallation via Node-Red! A bunch of KNX nodes, with integrated Philips HUE control, ETS group address importer, and KNX routing between interfaces. Easy to use and highly configurable.

38 lines (29 loc) 2.7 kB
<script type="text/markdown" data-help-name="knxUltimateMultiRouting"> 此节点用于通过 Node-RED 的连线来**互联多个 KNX Ultimate 网关**(多个 `knxUltimate-config`)。 它会为所选网关的 KNX 总线上收到的每个电报输出一条包含**RAW 电报信息**(APDU + cEMI 十六进制 + 地址)的消息。 同时它也可以在输入端接收相同格式的 RAW 对象,并将其转发到所选网关的 KNX 总线。 ## KNX/IP 服务器模式**Mode** 设置为 **Server KNX/IP** 可启动一个内置的 KNXnet/IP tunneling(UDP)服务器。来自 tunneling 客户端的电报会以相同的 RAW 格式输出。 该节点也会在输入端接收 RAW 对象,并将其注入到已连接的 tunneling 客户端。 **重要(Advertise host):** KNXnet/IP 客户端会把数据发送到服务器在 CONNECT_RESPONSE 中通告的 IP。如果客户端显示 *已连接* 但服务器收不到电报,请将 **Advertise host** 设为客户端可达的服务器 LAN IP(尤其是在 Docker/VM 中运行 Node-RED 或主机有多网卡时)。 ## 输出消息格式 `msg.payload` 包含: - `knx.event`:`GroupValue_Write` / `GroupValue_Response` / `GroupValue_Read` - `knx.source`:物理地址(例如 `1.1.10`- `knx.destination`:组地址(例如 `0/0/1`- `knx.apdu.data`:APDU 原始数据 `Buffer`(仅 Write/Response) - `knx.apdu.bitlength`:数据位长度(`<=6` 表示编码在 APCI 低位) - `knx.cemi.hex`:完整 cEMI 十六进制(ETS 风格) - `knx.echoed`:若被网关回显则为 `true` - `knxMultiRouting.gateway`:网关元信息(`id`, `name`, `physAddr`## Routing counter (hop count) MultiRouting 可使用 `knx.cemi.hex` 中的 KNX routing counter(hop count)来避免电报环路。 - **Respect routing counter (drop if 0)**:routing counter 为 `0` 的电报不会被转发。 - **Decrement routing counter when routing**:转发时递减 routing counter;若递减后到达 `0`,电报将被丢弃。 当前值会暴露为 `knx.routingCounter`(当 `knx.cemi` 为对象时,也会作为 `knx.cemi.hopCount` 提供)。 ## 重写电报 如果你在 flow 中重写 `knx.source` / `knx.destination`,也必须保持 `knx.cemi.hex` 的一致性。建议:在 MultiRouting 节点之间放置 **KNX Router Filter**;它会在重写时自动同步 `knx.cemi.hex`## 注意 - 转发到其它网关时,**源物理地址会改变**(变为发送网关的物理地址)。可使用 `knx.source` 和/或 `knxMultiRouting.gateway` 来过滤环路。 - 选项 **“Drop messages already tagged for this gateway”** 可帮助在互联多个路由节点时避免简单环路。 </script>