Disable AT commands


Hi everybody,

I am trying to disallow most AT commands when the internal application is running since they could be harmful to the integrity of settings in the internal application.

At application start I do:

adl_atCmdSubscribe ( "AT", Cmd_Handler, ADL_CMD_TYPE_ROOT );

That almost works fine: It will send for example ATI, ATI3, or AT+CFUN=1 to the internal app without being processed as an AT command by the module. However it doesn’t work for some command (i.e. AT -which sends an OK–not harmful and I wouldn’t care about this one; ATA; ATH; AT&F -very dangerous–will screw up everything; AT+WDWL -bad, too-)

Any ideas how to prevent the dangerous/bad commands?

Thanks in advance & Best Regards,


Hello Jan,

If you subscribe to the Flow Control Manager (FCM API) and set the V24 interface to DATA mode, then you will receive every character to your OpenAT application and there you could decide to do whatever you want with them (ignore everything perhaps)…



Hi Snooze,

your idea is good, but actually we do implement our “own” AT commands and that seems to be easier when using the AT mode…

Actually, we started with OpenAT (not ADL) and now trying to run basically the same code (for compatibilty reasons) under ADL. That works really well - except that on OpenAT classic interface it was possible to choose if commands send to the UART are processed by the module or not.

I guess there is no such feature anymore, or maybe I am just missing something here?

Many thanks,


I dont think there are some functions like that in ADL, at least I have not seen anything in the documentation either.

…The AT+WOPEN and AT+WDWL can be subscribed and filtered with the “Application Safe Mode Service” API.