1

我正在使用 jssc 库。我想模拟 ELM327 设备,我已经找到了 OBDSim ( https://icculus.org/obdgpslogger/obdsim.html )。

我在拨出组中。

在 tty0 上安装 OBDSim 时,简单代码:

import jssc.SerialPort;
import jssc.SerialPortException;
import jssc.SerialPortList;

public class Main {

public static void main(String[] args) {
     String[] portNames = SerialPortList.getPortNames();
     for(int i = 0; i < portNames.length; i++){
     System.out.println(portNames[i]);
     }
}

给我空列表。在将真实设备连接到 USB 时,这段代码给了我:

/dev/ttyUSB0

我读到 jssc 正在搜索 ttyUSB* 和 ttyS* 端口,但我无法在 ttyS0 上运行 OBDSim。

sudo obdsim -g gui_fltk -t /dev/ttyS0

结果:

tcgetattr tty_device: Input/output error
Error creating virtual port

有任何想法吗?

4

1 回答 1

0

对于任何处理此类问题的人,这是我的提示:

您可能想使用 socat 创建虚拟串行端口 (PTY/PTS),然后在那里安装 OBDsim(或其他工具)。然后,将此端口符号链接到 ttyUSB*。Jssc 会发现的。到目前为止,我没有更好的解决方案,也许不会有。

于 2018-11-07T06:55:38.600 回答