I have a MIMXRT1060-EVKB for i.MX RT1062 processor.
I have downloaded the software for Application note AN12604 regarding a second bootloader. I am using the gnu toolchain, so I had to complete the project of the application note with makefile, start up code and some libraries. Following the application note, I was able to start communication with the firmware through blhost and the command: "blhost.exe -p COM7,115200 -- get-property 1". However, only the first part of the communication is working correctly (when polling the RDRF flag), then the other commands are not received. This is the output of blhost:
Ping responded in 1 attempt(s)
Inject command 'get-property'
Error: read_start_byte() timeout after 5.154 seconds
sendCommandGetResponse.writePacket error 5.
Response status = 10004 (0x2714) No response packet from target device.
What I have verified is that the problem is the LPUART1 IRQ handler is not called.
I have downloaded also the SDK example "evkbmimxrt1060_lpuart_interrupt" and this one is working fine. Therefore I tried to compare what is different in my project regarding register settings, vector table and so on with respect to "evkbmimxrt1060_lpuart_interrupt".
It must be some stupid thing, but I am not able to find it.
What I have verified so far:
- interrupts have been enabled globally by setting PRIMASK = 0;
- BASEPRI = 0;
- LPUART1-CTRL[RE] = ENABLED;
- LPUART1-CTRL[RIE] = ENABLED;
- LPUART1-FIFO[RXFE] = ENABLED (tried disabled but doesn't help);
- LPUART1-WATER[RXWATER] = 0x0;
- NVICISER0 = 0x100000;
What else should I check? What could be the issue?