serial-port - AT+GCAP & co. 有回复吗?告诉 "I' m 不是调制解调器,走开”?

标签 serial-port hardware modem at-command firmware

我正在研究将要在串行端口仿真模式下使用蓝牙连接到 PC 的设备的固件。

在测试过程中,我发现 Linux 上的调制解调器管理器“有帮助”尝试将其检测为调制解调器,发送 AT+GCAP命令;对此,目前我的设备回复类似于 INVALIDCMD AT+GCAP .这是我的协议(protocol)的正确响应,但显然不是 AT 回复,因此调制解调器管理器不满意并再次尝试 AT+GCAP和其他与调制解调器相关的东西。

现在,我找到了一些调制解调器管理器的解决方法(参见 here 和因此 here ,特别是 udev rule method ),但是:

  • 它们不是非常健壮(我必须制定一个自定义 udev 规则,如果我们更改蓝牙模块可能会破坏);
  • 我担心不仅调制解调器管理器,而且类似的软件/操作系统功能(例如在 Windows 或 OS X 上)可能会给我类似的烦恼。

  • 此外,在完全控制固件的情况下,我可以为 AT+GCAP 添加一个特殊情况。和类似的东西;所以,来到我的问题:

    是否有对 AT+GCAP 的标准/安全回复和其他类似的调制解调器探测查询来告诉“我不是调制解调器,走开让我一个人呆着?”

    最佳答案

    (根据评论做出回答)

    为了表明我根本不理解任何 AT 命令(也就是我不是调制解调器),对收到的任何 AT 命令的正确响应应该是静音。

    为了表明我不理解这个特定的 AT 命令,正确的响应应该是 ERROR .

    两者之间的任何事情都将触发实体发送 AT 命令的实现定义的行为。有些人可能会立即放弃,而调制解调器管理器显然已设置为重试发送命令,直到它得到“正确”的响应。

    关于serial-port - AT+GCAP & co. 有回复吗?告诉 "I' m 不是调制解调器,走开”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18207872/

    相关文章:

    linux - 如何修改netcat的输入流?

    algorithm - 一部 10GB 的电影如何在有限的主内存中运行?

    c - 在读取期间完全清除调制解调器模块串行缓冲区

    javascript - 使用 javascript 和 jssc.jar 将数据发送到串口

    linux - 在读取之前获取在串行端口上等待的字节数,linux

    vb.net - 动态添加串行端口并在拔出 USB 时从组合框中删除它们

    c - 如何确定要使用哪个 SOC 或 SDK 板?

    algorithm - 指纹扫描仪的输出是什么?是否有任何确定性的识别信息?

    java - 64 位系统上 Java 的串行通信 API(调制解调器交互)

    driver - 如何从一个 GSM 调制解调器到另一个进行语音通话