1

从昨天开始,我就一直在研究这个话题。我想开发关于 obd-ii 扫描仪的 android 应用程序。GithubGoogle Codes上有很多开源项目。我必须找到 obd-ii 模拟器来开发这个没有汽车或任何 odb-ii 芯片的应用程序。

我找到了 OBDSim 来创建示例数据并回答我的应用程序发送的请求。我遇到了很多问题,通过阅读很多文档和博文解决了这些问题。但我有最后一个问题,我需要你的帮助。

新版本的 OBDsim 支持 Windows 蓝牙连接现在使用com0com。当我安装 com0com 时,我遇到了签名问题,我解决了这个问题以禁用相关的 Windows 功能。我还将蓝牙的传入端口设置为 COM4。到目前为止一切都很好。之后,我想使用 com0com 创建虚拟端口。它在安装时已经创建了一对。它们是 CNCA0 和 CNCB0。我只是想将这对的第二个端口从 CNCB0 更改为 COM4。但是 windows 给出了关于 COM4 已经在使用的错误。我仍然完成并分配了 COM4 而不是 CNCB0。之后我运行 obdsim.exe 并开始像这样创建日志;

SimPort name: CNCA0  
Successfully initialised obdsim, entering main loop  
10.046624 seconds. 0 samples, 0 queries. 0.00 s/s, 0.00 q/s  
10.049810 seconds. 0 samples, 0 queries. 0.00 s/s, 0.00 q/s  
10.049377 seconds. 0 samples, 0 queries. 0.00 s/s, 0.00 q/s

在此期间,我开始使用 android 应用程序并按下开始实时数据按钮。我在安卓手机上给出了关于蓝牙连接错误的错误 - 读取失败,套接字可能关闭或超时。这是一种情况。

在第二种情况下,我删除了中断 com0com 并将 OBDsim 直接连接到 COM4。我再次运行 obdsim.exe。它也具有与之前场景相同的输出。在我开始像这样的 android 应用程序输出更改之后。

Echo disabled
Echo disabled
Echo disabled
10.066543 seconds. 0 samples, 6 queries. 0.00 s/s, 0.60 q/s
Echo disabled
Echo disabled
Echo disabled
Echo disabled
Echo disabled
10.030909 seconds. 0 samples, 5 queries. 0.00 s/s, 0.50 q/s
Echo disabled
Echo disabled
Echo disabled
Echo disabled
Echo disabled
Echo disabled
10.034040 seconds. 0 samples, 6 queries. 0.00 s/s, 0.60 q/s
Echo disabled
Echo disabled
Echo disabled

而且我看不到我的应用程序有任何变化。

如果您知道问题出在哪里,或者我犯了什么错误或忘记了什么,我正在等待或您的帮助。

谢谢。

4

1 回答 1

2

好的。我解决了我关于这个话题的问题。

首先,com0com不需要与 Windows 上的 OBDSim 通信。我可以成功连接到我的应用程序和 OBDSim,并且可以在我的 android 手机屏幕上看到值。

我的问题是关于 Android 上的 OBD Reader 程序。我不明白这种情况的原因,但 OBDSim 无法连接到所有 OBD 阅读器。我建议您在尝试连接 OBDSim 时使用 Torque lite android 应用程序。你应该小心处理的顺序。

  • 首先,您应该将您的电脑和手机配对。(有时需要删除配对并重新配对。)
  • 之后你应该运行 > obdsim.exe -w COMx (x 是你的蓝牙输入端口名称。你可以在你电脑的蓝牙设置 -> Com Ports 上设置这个端口)
  • 最后,您应该打开您的应用程序并尝试通过蓝牙连接您的计算机。

这个解决方案对我有用。您可以尝试其他应用程序。

谢谢,萨利赫先生。

于 2014-10-05T16:35:00.503 回答