我从去年开始就这个话题工作过。我想开发关于obd-ii扫描仪的android应用程序。 Github 或 Google代码上有许多开源项目。我必须找到obd-ii模拟器来开发这个应用程序没有汽车或任何odb-ii芯片。
我发现OBDSim可以创建示例数据并回答我的应用程序发送的请求。我通过阅读许多文档和博客文章遇到了很多问题并解决了这些问题。但我有一个问题,我需要你的帮助。
新版本的OBDsim现在支持使用 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应用程序并按下启动实时数据按钮。我在android手机上给出了关于蓝牙连接错误的错误 - 读取失败,套接字可能关闭或超时。这是一种情况。
在第二种情况下,我删除了break 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
我无法看到我的申请有任何变化。
如果你知道问题是什么,或者我犯了什么错误或者我忘记了,我在等待或者你的帮助。
感谢。
答案 0 :(得分:2)
奥基。我解决了这个话题的问题。
首先, com0com 不需要在Windows上与OBDSim进行通信。 我可以成功连接到我的应用程序和OBDSim,我可以在我的Android手机屏幕上看到值。
我的问题是Android上的OBD Reader程序。我不明白这种情况的原因,但OBDSim无法连接到所有OBD读卡器。我建议你在尝试连接OBDSim时使用torque lite android应用程序。你应该小心处理顺序。
此解决方案适合我。您可以尝试其他应用程序。
谢谢, M. Salih。