拓冰建站拓冰建站
首页 / 资讯中心 / 正文

48 极物科技 | knxd - knxtool命令行调试工具全解

极物科技 | knxd - knxtool命令行调试工具全解前言KNX 作为国际标准ISO/IEC 14543-3拥有完全开放的协议规范与蓬勃的开源生态knxd 正是这一开放性的最好注脚——一台普通 Linux 设备即可变身 KNX 路由器。极物科技的产品同样构建在开放标准之上自研 KNX 主机的极物 OS 原生支持 KNXnet/IP 路由与隧道双通道与 knxd、ETS 等主流工具链无缝互通配套鸿蒙、苹果、安卓三端原生 APP深度接入 Apple HomeKit 与小度生态支持主机远程调试——工程调试不受任何私有协议锁定。一句话概述本文回答不用ETS、不写代码如何用几条命令直接驱动KNX总线把knxtool这个口袋调试台讲透。本文聚焦于knxtool 命令行调试工具涵盖写入/读取/监听/总线监控四大类命令、组地址十六进制换算、脚本化批量测试与典型调试案例。1. knxtool 是什么knxtool 是 knxd 自带的命令行工具集安装 knxd-tools 包即得每条命令对应一类总线操作knxtool子命令接口URL[参数]接口URL的写法写法含义local:本机Unix Socket最常用ip:127.0.0.1本机/远端knxd组播方式tunnel:192.168.1.20隧道方式连远端网关 一次性建议调试期全程local:避免占用网关隧道通道。2. 写入类命令2.1 groupswrite——写1bit开关量# 打开 1/1/1bit1knxtool groupswrite local:1/1/11# 关闭 1/1/1bit0knxtool groupswrite local:1/1/10适用继电器开关、模式切换、场景号触发配合场景激活值。2.2 groupwrite——写多字节# 写1字节调光 1/2/5 亮度50%0x32knxtool groupwrite local:1/2/532# 写2字节温度设定 1/3/7 为 21.5℃DPT 9.001需按浮点编码换算knxtool groupwrite local:1/3/7 0x0AB6注意参数是十六进制原始数据不是十进制工程值——50%要写32hex而不是50dec。DPT 9.x的温度等浮点值还需按KNX编码规则换算详见《KNX协议 - APCI指令与数据点类型DPT详解》。2.3 groupwrite的编码速查DPT工程值 → 报文值hex1.001 开关1/05.001 亮度0-100%工程值×255/100四舍五入5.003 角度0-360°工程值×255/3609.001 温度(值273)×0.01 → 2字节移码0x0Axx区段3. 读取类命令3.1 groupread——发起读请求knxtool groupread local:1/1/101向组地址发送GroupValueRead总线上支持该地址的设备会以GroupValueResponse应答。注意命令本身不显示应答应答需要配合监听命令观察见4.1。3.2 groupcache……为什么没有应答显示读请求发出后应答帧是异步到达的。标准姿势是两个终端配合终端Aknxtool grouplisten local: 1/1/101 # 持续监听 终端Bknxtool groupread local: 1/1/101 # 发起读取 终端A打印Write from 1.1.5 to 1/1/101: 01 # 这就是应答值4. 监听类命令4.1 grouplisten——组地址监听# 监听指定组地址knxtool grouplisten local:1/1/101# 监听全部组地址按组地址过滤的快捷方式knxtool groupsocketlisten local:输出示例Write from 1.1.5 to 1/1/1: 01 Write from 1.1.5 to 1/2/5: 20 Read from 1.1.2 to 1/1/101: Response from 1.1.5 to 1/1/101: 014.2 vbusmonitor1——总线监视knxtool vbusmonitor1 local:输出的是链路层视角的原始帧含个体地址源/目的、帧类型、ACK状态比组地址监听多出以下能力看到发送方个体地址谁在说话看到ACK/NACK链路层是否成功看到寻址模式组播/单播/广播。适合排查报文到底有没有上总线这类底层问题。5. 脚本化批量测试knxtool的输出可直接管道处理天然适合自动化5.1 全屋灯循环测试#!/bin/bash# 逐路点亮再熄灭验证每一路继电器forgain1/1/11/1/21/1/31/1/41/1/5;doknxtool groupswrite local:$ga1sleep2knxtool groupswrite local:$ga0sleep1done5.2 总线流量录制# 录制10分钟总线流量做离线分析timeout600knxtool groupsocketlisten local:buslog-$(date%H%M).txt5.3 压力测试# 高频读写混合压测观察丢帧foriin$(seq1200);doknxtool groupswrite local:1/1/1$((i%2))donewait6. 典型调试案例案例某调光灯不受控# 第1步确认写入帧到达总线knxtool grouplisten local:1/2/5knxtool groupwrite local:1/2/580# 写50%# → 监听显示 Write to 1/2/5: 80帧已上总线 ✔# 第2步发起状态读取knxtool groupread local:1/2/105# → 无Response说明执行器侧未配置状态对象或地址错误 ✘# 第3步换个体地址视角定位设备knxtool vbusmonitor1 local:# → 发现写入帧被某个体地址NACK锁定为该执行器链路层拒绝三步把问题从灯不亮收敛到执行器配置错误。7. 注意事项十六进制陷阱groupwrite参数是hex写50实际是0x5080%grouplisten与groupsocketlisten区别前者只能看单地址后者全总线长时间挂机用后者grep过滤别在生产高峰跑压测总线重发风暴会拖慢全楼设备写场景号记得对齐用knxtool触发主机场景时写入值场景激活值-1见《KNX场景 - 主机场景与APP免编程调试》隧道通道占用用tunnel:接口的每个knxtool进程占用一个网关通道用完即退勿常驻。8. 相关文档《极物科技 | knxd - 部署与配置完全指南》《极物科技 | knxd - TCP与Unix Socket接口对接》《极物科技 | knxd - Wireshark抓包与总线监控》《极物科技 | KNX协议 - APCI指令与数据点类型DPT详解》《极物科技 | KNX报文追踪 - 总线监控与问题定位》关于极物科技ZEEWO极物科技Zeewo致力于为用户提供智能控制系统及硬件产品。我们以总线系统为技术底座以**“稳定、可靠、快速响应”**为产品底线是国内少有的拥有 KNX、DALI 全套软硬件自主研发能力的厂商之一。我们的核心能力系统架构自研极物 OS支持多协议无界融合KNX/DALI/CAN/RS485/IP。核心硬件带双路 DALI 的 KNX 主机、超薄全金属定制面板、各类智选传感器及网关。生态互联深度融入 Apple HomeKit、Matter、小度、HomeAssistant 及纯血鸿蒙生态。调试交付独家支持 ETS 导出 XML 直接导入进行 APP 免编程调试支持远程 WEB 运维。我们的市场覆盖服务网点已覆盖全国核心城市含长三角、珠三角、成渝等并以高品质的方案深耕家居生活、酒店民宿、企业办公、疗愈康养、餐馆会所等多个细分领域。(如果您在开发或落地中遇到技术问题欢迎通过官网或后台私信与我交流探讨)
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门