Flow Control at+ifc at+icf


#1

Hi,

I would like to ask for some help on this subject on Q24pl, Q26, any OS.
Without any embedded application on AT&V I get

Q:0 V:1 S0:000 S2:043 S3:013 S4:010 S5:008
+CR:0 +CRC:1 +CMEE:1 +CBST:0,0,0
+SPEAKER:1 +ECHO:0,1 &C:1 &D:0 %C:0
+IPR:115200 +ICF:3,4 +IFC:0,0

When my application starts I basically do:

adl_atCmdCreate(“AT+IPR=115200”, ADL_AT_PORT_TYPE(ADL_PORT_UART1,FALSE), (adl_atRspHandler_t)NULL, NULL);//
adl_atCmdCreate(“AT+IFC=0,0”, ADL_AT_PORT_TYPE(ADL_PORT_UART1,FALSE), (adl_atRspHandler_t)NULL, NULL); //
adl_atCmdCreate(“AT+ICF=3,4”, ADL_AT_PORT_TYPE(ADL_PORT_UART1,FALSE), (adl_atRspHandler_t)NULL, NULL); //

adl_fcmSubscribe(UART1…etc…)

adl_atCmdCreate(“AT&V”, FALSE, (adl_atRspHandler_t)AT_ALL_CMD_RESPONSE_HANDLER,"*", NULL);
and the AT_ALL_CMD_RESPONSE_HANDLER displays over adl_fcm… this:

Q:0 V:1 S0:000 S2:043 S3:013 S4:010 S5:008
+CR:0 +CRC:1 +CMEE:1 +CBST:0,0,0
+SPEAKER:1 +ECHO:0,1 &C:-1 &D:-1 %C:0
+IPR:0 +ICF:2,4 +IFC:3,3

Why ICF is not =3,4 and IFC=0,0 ???
ifc=3,3 will this give me problem with the flow control between the Uart1 and embedded application ???

Thanks,
Sladj.


#2

Why don’t you use

adl_atCmdCreate("AT&V", ADL_AT_PORT_TYPE(ADL_PORT_UART1,FALSE), (adl_atRspHandler_t)AT_ALL_CMD_RESPONSE_HANDLER,"*", NULL);

instead?

Regards,

wismo_coder


#3

If you want to see the correct IFC/ICF values, do AT+IFC? and AT+ICF? on the UART in question.
AT&V I know in the past has been fairly unreliable depending on how busy the module is.


#4

No, same thing with my old code

adl_atCmdCreate("AT&V", FALSE, (adl_atRspHandler_t)AT_ALL_CMD_RESPONSE_HANDLER,"*", NULL);

but it works fine with ADL_AT_PORT_TYPE.

adl_atCmdCreate(“AT&V”, ADL_AT_PORT_TYPE(ADL_PORT_UART1,FALSE), (adl_atRspHandler_t)AT_ALL_CMD_RESPONSE_HANDLER,"*", NULL);

I wonder on which port the commade is executed in the frist place …

Thanks,
Sladjan.


#5

Probably on the internal OpenAT port…