Ubuntu 将openHAB配置为使用KNX在USB上运行

Ubuntu 将openHAB配置为使用KNX在USB上运行,ubuntu,openhab,knx,Ubuntu,Openhab,Knx,我在通过USB与我的KNX建立连接时遇到一些问题。运行演示项目甚至我的项目都没有问题。 我已在openHAB上配置了我的房间,但无法获得连接,即使调试日志告诉我其他信息。 我的配置如下所示: # KNX gateway IP address # (optional, if serialPort or connection type 'ROUTER' is specified) #knx:ip= # KNX IP connection type. Could be either TUNNEL

我在通过
USB
与我的
KNX
建立连接时遇到一些问题。运行演示项目甚至我的项目都没有问题。
我已在
openHAB
上配置了我的房间,但无法获得连接,即使调试日志告诉我其他信息。
我的配置如下所示:

# KNX gateway IP address 
# (optional, if serialPort or connection type 'ROUTER' is specified)
#knx:ip=

# KNX IP connection type. Could be either TUNNEL or ROUTER (optional, defaults to TUNNEL)
# Note: If you cannot get the ROUTER mode working (even if it claims it is connected), 
# use TUNNEL mode instead with setting both the ip of the KNX gateway and the localIp.
knx:type=ROUTER

# KNX gateway port (optional, defaults to 3671)
# Note: If you use eibd, setting to 6720
#knx:port=

# Local endpoint to specify the multicast interface, no port is used (optional)
#knx:localIp=

# Serial port of FT1.2 KNX interface (ignored, if ip is specified)
# Valid values are e.g. COM1 for Windows and /dev/ttyS0 or /dev/ttyUSB0 for Linux
#knx:serialPort=
调试日志告诉我以下内容:

10:01:06.867 [INFO ] [runtime.busevents             :22   ] - Light_GF_Office received command ON
10:01:06.871 [INFO ] [tuwien.auto.calimero          :51   ] - [qtp29372484-54] link 224.0.23.12:3671: send message to 0/0/6, wait for confirmation
10:01:06.871 [DEBUG] [.b.knx.internal.bus.KNXBinding:163  ] - Received groupWrite Event.
10:01:06.871 [INFO ] [tuwien.auto.calimero          :51   ] - [KNXnet/IP receiver] link 224.0.23.12:3671: indication from 0.0.0
10:01:06.871 [INFO ] [runtime.busevents             :22   ] - Light_GF_Office received command ON
10:01:06.871 [DEBUG] [.b.knx.internal.bus.KNXBinding:138  ] - Wrote value 'ON' to datapoint 'command DP 0/0/6 Light_GF_Office, DPT main 0 id 1.001, low priority'

因此,与
KNX
-总线通信时一定有错误。如何配置
openhab.cfg
以通过my
USB
-端口进行通信。

您可能需要明确定义您的KNX接口连接到的USB端口的名称,如下所示:

knx:serialPort=/dev/ttyUSB0

通过将内核日志变灰,您可以找到这是哪个端口:

dmesg|grep ttyUSB


您还应该注释掉路由器的定义,因为USB接口是与总线的直接连接。

我知道这个问题很久以前就有人问过,但我可能能够提供一个答案

您试图使用IP通过USB连接。路由和隧道是KNXnet/IP的属性,您需要一个设备作为KNX IP路由器(用于路由或隧道)或KNX IP接口(仅隧道)使用此协议-USB不做IP

我不知道有任何KNX设备可以从USB转换到IP。 您可以获得USB接口(USB KNX)、IP接口(IP KNX)和IP路由器(它们执行与IP接口相同的功能,但也可以使用IP(KNX Line 1.1.x IP KNX Line 1.1.y)将KNX电报从安装拓扑中的一个区域/线路路由到另一个区域/线路).IP提供比KNX双绞线9600波特更快的通信速度

这些文档可能有助于理解KNXnet/IP: