cancel
Showing results for 
Search instead for 
Did you mean: 

DSI custom board problem with STM32F769BI MCU

GSink
Associate II

Hello,

I used STM32F769I-EVAL board as a design reference for custom board. However, I could not achieve correct operation of MB1166 LCD board 

which is connected via DSI. It works well on the evaluation board.

When MCU tryies to display a picture, screen fickers with coloured lines and stays white.

Theres some hardware problem which I cannot figure out. Im attaching custom board schematics of DSI peripheral. STM32F769BIT6 MCU is used.

Any help to debug such issue would be apriciated.

16 REPLIES 16

Thanks!

The wave look pretty good. Do you know the trace lengths compared to the eval? I'm wondering if you have to edit the code to tweak some of the timing.

What was channel 3 hooked up to in the D0P/N and TE screen shot? Just noticed on the eval was high versus low on the custom.

Also does it have touch screen? On my custom setup I had to disable the code for touchscreen, otherwise I would get corrupted screen data because the code kept looking for a valid response from the touchscreen.

DSI trace lengths of evaluation board (N | P):

CLK - 57.096 mm | 57.159 mm

D0 - 55.741 mm | 55.804 mm

D1 - 62.561 mm | 62.603 mm

DSI trace lengths of custom board (N | P)

CLK - 5.679 mm | 5.687 mm

D0 - 5.782 mm | 5.668 mm

D1 - 5.691 mm | 5.673 mm

Sorry for channel 3 on the oscillogram (D0P/N and TE). I should have hidden it. It was connected to different source while i was taking screen shots.

The LCD MB1166 does have a touchscreen. I will try to disable the touch screen and see if it has an effect.

Where should I tweak the timing settings of the DSI? Im using HAL libraries.

I disabled the touch screen, but the same issue occured. I noticed that HS signals on data line are not present on custom board (screenshot attached).

What's some of the other differences between the custom and eval board? It's possible the code is looking for something else and if it's not there, it doesn't initialize the LCD correctly...

I tried to debuging it once, however the code did not enter into error handler. Custom board contains only DSI for LCD, I2C for TS and QSPI for external flash. However, evaluation board contains lots of other peripherals.

I will try to debug the example code "STM32F769I_EVAL\Examples\LCD_DSI\LCD_DSI_CmdMode_DoubleBuffer" once again in order to check if there is any other peripherals used.

I wonder if it could be because of the MFX. It is not present on the custom board.

"STM32F769I_EVAL\Examples\LCD_DSI\LCD_DSI_CmdMode_DoubleBuffer" example uses external SRAM memory which is not present in the custom board. I will have to redo the PCB.

Does external SRAM and norFlash have to be present for LCD_DSI_CmdMode_DoubleBuffer example to work on custom board?

On the L4R9I disco board, the MFX controlled the touch interrupt and if I didn't disable it, my screen would look pixelated when I tried to initialize a different screen. You might be onto something.

I wonder if you could generate a simpler lcd output test with cube MX.