我可以使用jssc与虚拟串行设备通信吗? ttyS0配置问题(Ubuntu)

时间:2018-11-05 21:07:30

标签: java ubuntu serial-port tty jssc

我正在使用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

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

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

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