问题标签 [elm327]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bluetooth - 蓝牙 OBDII / ELM 给出重复数据作为响应
我将 HC-05 连接到 Arduino 的 Serial 3。我还能够成功地与车内的 OBD2-ELM 适配器配对,
我的草图中有一个代码可以与 OBD/ELM 进行简单的通信
挑战是这样的:
如果我输入 ATZ,我会得到“ELM327 v2.1>”
我输入 ATTP5,我会得到“OK>”
输入 ATRV,返回“12.6”
但是如果我输入 0105,我会得到不同的响应,例如:
“LM327410v2 ELMv241 M2.11099"或"OK>LM7v41A"或"OK> OK > 41055.1 327v"
其他时候我得到“4105 5A >”的正确响应
当我输入 0100 或任何其他 PID 代码时,我得到相同的结果。
请任何人知道可能导致此问题的原因以及如何解决此问题。
谢谢
can-bus - ELM327 监控所有 - CAN 消息不是 8 字节长
标准 CAN (ISO 15765-4) OBD 要求所有消息都有 8 个数据字节 - (ELM327 文档)
用蓝牙 ELM327 从我的车上读取我收到的消息并非全部为 8 个字节长。
这是配置:
输出 :
这里大多数消息都是正确的(3 字节 ID + 1 字节 DLC + 8 字节数据),但有些消息更短,有时我收到的消息更长。这些正常吗?如果没有,它可能来自哪里的任何想法?
ftdi - 将 ELM327 设置为像 FTDI 一样 - 只是在没有 OBD 初始化的情况下转发命令
我在这里的第一个问题,所以我不确定这是否是正确的论坛。我已经通过 FTDI-OBD 电缆和端子连接了我的汽车的 ECU K-Line。发现它有点像 KWP2000 但没有 preinit 麻烦。我只是以 9600 波特率、偶数奇偶校验、1 位停止向它发送命令,并收到带有 VIN 号的回复。当我尝试使用 ELM327 发送相同的命令时,它不起作用,我相信因为 ELM 添加了一些东西,要么初始化 KWP,要么添加一些校验和或附加信息,它不起作用。我已经尝试过使用 ATSP5 ATIB96 ATBI
它仍然没有响应,例如。来自发送相同命令的 VIN 消息。我的意思是从 21 美元获取秘密传感器数据,因为在常规模式 01 中有一些信息。我想使用 ELM327 因为我想使用 Android 手机来显示数据。
javascript - 如何通过蓝牙 android api 发送/接收数据
我在 NativeScript 中有一个项目,我正在通过 JavaScript 访问蓝牙 android api,如下例所示:
我能够找到配对的设备并连接到它们。我想要一些如何将数据转发到设备并返回该设备的示例。
我在 android 文档中看到了一些关于:getOutputStream()
和 getInputStream()
但我不知道如何通过 JavaScript 使用它。
我想要的是向 Elm327 OBD2 设备发送命令并从该设备接收数据。
示例本机代码:
obd-ii - 在清除 DTC 代码的情况下,是否有任何代码可以通过 OBDII 在我的车中行驶的原始距离
现在我使用 o1 31 PID 来获取行驶距离,但这仅给出行驶距离,因为代码已清除,而不是总行驶公里
can-bus - 如何使用 Elm327 Wifi/蓝牙读取转向角
我有 elm327 v2.1 蓝牙和 wifi usb 加密狗。我想从汽车上读取转向角。
OBD2 PID 标准不包括此数据。所以我不能通过询问 PID 来获得它们。
我试图嗅探流量,但我还不能用这个硬件来做到这一点。通过 AT 命令,我使用 ATMA 命令读取车内的 CANBUS 通信,但它主要包括 OBD2 PID 类型消息。
c# - ELM327 回归?
我正在开发一个 WPF 应用程序来与 ELM327 交互。myApp 和 ELM327 之间的通信介质是 USB 协议。ELM327 通过 OBD 端口连接到车辆。我的应用程序能够成功建立 USB 通信。无论我从我的应用程序发送什么命令,我得到了什么?作为回复。我将波特率设置为9600。例如,我发送了ATZ,我得到了?作为回复。我发送了 010D,我收到了?我尝试使用该应用程序附带 ELM327,该应用程序可以成功提取数据。
MyApp USB 通讯连接代码:
MyApp数据发送代码:
MyApp 数据接收代码:
我必须发送任何初始化代码吗?
android - 连接到 ELM327 // 选择协议
我正在尝试通过蓝牙连接到 ELM327 设备。我正在使用的图书馆:
https://github.com/eltonvs/java-obd-api
建立蓝牙连接工作正常,我可以重置设备:
输出:
D/xx: 1. 复位
I/System.out: ELM327v1.5
D/xx: 2. Echo Off
I/System.out: OK
D/xx: 3. LineFeed Off I/System.out: OK
不工作的部分是选择协议并读取电压值:
我观察到的是协议选择很快就完成了,没有任何输出。当我将协议选择部分与“torque lite”等其他应用程序进行比较时,这需要更长的时间,并且我在我的 ELM327 设备上看到闪烁的灯光,而在运行我的代码时并非如此。
ModuleVoltageCommand 崩溃,然后:
br.ufrn.imd.obd.exceptions.UnableToConnectException:运行控制模块电源 [01 42] 时出错,响应:...UNABLETOCONNECT
我验证了加密狗正在与其他应用程序一起使用,所以这一定是我的代码的问题。
我究竟做错了什么?
can-bus - 如何在带有 ELM237 和 OBDII 的两 ECU 汽车中只与一个 ECU 通话
我正在向保时捷卡宴发送以下 ELM237 命令。总线 7E9 和 7E8 上有两个 ECU。我想一次只谈一个。我想我可以通过使用 atsh7E8 只与一个人交谈来做到这一点,但答案只包含字符串“NODATA”。我想我在这里错过了一次过滤一个 ECU 的东西。有人有想法吗?