Is there an answer to AT + GCAP & co. say "I'm not a modem, go away"?

I am working on firmware for a device that will connect to a PC using Bluetooth in serial port emulation mode.

During testing, I found out that the Linux modem manager “helps” trying to detect it as a modem by sending the AT+GCAP command; To this, my device is currently responding with something like INVALIDCMD AT+GCAP . This is the correct answer for my protocol, but obviously this is not an AT response, so modem-manager does not execute and tries again using AT+GCAP and other modem-related files.

Now I have found some workarounds for the modem manager (see here and thus here , in particular the udev rule method ), but:

  • they are not very reliable (I have to create my own udev rule, which may break if we change the Bluetooth module);
  • I am afraid that not only the modem manager, but similar software / OS functions (for example, in Windows or OS X) may give me similar troubles.

In addition, having full control over the firmware, I can add a special case for AT+GCAP and similar things; therefore, coming to my question:

Is there a standard / secure response to AT+GCAP and other similar modem-sensing requests to say: "I am not a modem, will I leave and leave me alone?"

+6
source share
1 answer

(conclusion from comments)

To indicate that I do not understand any AT commands at all (otherwise I am not a modem), the correct answer to any received AT commands should be quiet.


To indicate that I do not understand this particular AT command, the correct answer should be ERROR .

Everything in between will lead to the implementation of a specific implementation of an entity sending AT commands. Some of them may refuse immediately, while the modem manager is apparently set up to resubmit the command until it receives a “correct” answer.

+2
source

Source: https://habr.com/ru/post/951626/


All Articles