I´m migrating an application developed for Q2686 to Q2698. The application is running well in a Q2686 module.
The app uses UART2, that is already open when the app is started. Once started I need to change the baudrate to 9600. I use adl_atCmdCreate to change baudrate on UART2, but this line makes the Q2698 crash.
I have isolated this line in a simple app and it crashes too, I have tried with and without callback function, but with the same result.
I attach the example:
#include “adl_global.h” #include “generated.h”
void main_task(void) {
// TODO Insert your task initialization code here
TRACE((1,“Antes de 9600”));
adl_atCmdCreate(“AT+IPR=9600”,ADL_AT_PORT_TYPE(ADL_PORT_UART2,FALSE),NULL,NULL);
TRACE((1,“Después de 9600”));
}
Firmware versión of Q2698 module is: R7.52.0.A1.201401021703.Q2698 1770396 010214 17:03
I attach a csv file with some TRACES. They are from the original application, not from the little example of my previous post.
There’s a trace with this error: New error hdlr (107008d5) : 0
I had a crash with FX100 (don’t remember if an exception was raised) if the UART2 was not opened before sending the AT command to set the baud rate.
I use a beta firmware (7.53) with FX100, the firmware R7.52.0.A1.201401021703.Q2698 does not work correctly.
I’m not using Bus Service at all.
As far as I can see in documentation, the only way to use Bus Service is via Adl library. There isn’t an AT interface to know SPI/I2C state.
What I have seen is that when I start app and UART2 baudrate is 115200 the module reboots when AT+IPR=9600 is sent via adl_atCmdCreate. But if the UART2 baudrate is set to 9600 before starting the app…then when the app starts, it doesn’t reboot and runs properly.