Hello NXP team!
PXP_Start(DEMO_PXP);
/* Wait for PXP process complete. */
while (!(kPXP_CompleteFlag & PXP_GetStatusFlags(DEMO_PXP)))
{
}
PXP_ClearStatusFlags(DEMO_PXP, kPXP_CompleteFlag);
Hi @guilhermes ,
Thanks for your interest in NXP MIMXRT series!
I've reproduced the same issue as you locally, so I suspect there may be a problem with this demo. For now I've submitted the issue for internal troubleshooting and it may take some time to locate the issue. I will keep you updated in this thread.
Thank you in advance for your patience!
Best regards,
Gavin
Hello @Gavin_Jia , thanks for your support!
I attempted the suggested task priority change, and now the demo image seems to load correctly in the display.
However, I still get no camera feed, and the demo seems to crash after pressing the "Start" button. The code now seems to execute past the first call to "PXP_GetStatusFlag", and onwards to update the image data, but it seems to trigger this section only once.
while (!(kPXP_CompleteFlag & PXP_GetStatusFlags(DEMO_PXP)))
{
}
PXP_ClearStatusFlags(DEMO_PXP, kPXP_CompleteFlag);
/* Return the camera buffer to camera receiver handle. */
CAMERA_RECEIVER_SubmitEmptyBuffer(&cameraReceiver, (uint32_t)cameraReceivedFrameAddr);
/* Update the Image data. */
frameImage.data = (const uint8_t *)lcdFrameAddr;
vTaskDelay(5);
s_lcdActiveFbIdx ^= 1;
Thanks @guilhermes for your feedback.
I just reproduced your situation today due to waiting for the internal test board to be repurchased. I have reported the fault about this demo and still need some time to troubleshoot the issue. I'll sync it here as soon as there are new developments. Thanks in advance!
Best regards,
Gavin
Hi @guilhermes ,
Thanks for your patience. After our issue localization, we found that pxp was initialized twice inside the code, and eventually we managed to fix the fault.
Step1:
// lvgl_guider.c
stat = xTaskCreate(CameraTask, "camera", configMINIMAL_STACK_SIZE + 100, NULL, tskIDLE_PRIORITY + 8, NULL);
Step2:
// lv_conf.h
/*Use NXP's PXP GPU iMX RTxxx platforms*/
#define LV_USE_GPU_NXP_PXP 0
Then, the project will work properly.
Best regards,
Gavin
Hi @guilhermes ,
Thanks for your patience!
We are finally getting progress on this issue. Currently able to confirm that there is indeed a problem with this demo, you can fix it by doing the following:
// Lower the priority of camera tasks.
xTaskCreate(CameraTask, "camera", configMINIMAL_STACK_SIZE + 100, NULL, tskIDLE_PRIORITY + 6, NULL); //+10
Best regards,
Gavin