Skip to main content
Explorer II
February 11, 2025
Question

STM32H747 - DSI overflow error, no video output

  • February 11, 2025
  • 7 replies
  • 1549 views

Greetings!

I have a board with STM32H747XI and SN65DSI84-Q1 as a converter from DSI to LVDS.

The issue is that I can not get video output from MCU to 2ch LVDS panel 1920x720 with any configuration I'm trying. The main issue is that I'm getting HAL_DSI_ERROR_OVF error code on DSI side, and no any LTDC interrupts. It behaves the same regardless LTDC/DSI clocks.

When I init DSI and configure SN65DSI84 through I2C and enable Test Pattern generation (register 0x3C) I can see it, so DSI clock and the converter itself works.

Another issue is that when test pattern generation on converter side is disabled, on most configurations I'm getting CHA_SYNCH_ERR error read through I2C: When the DSI channel A packet processor detects an HS or VS synchronization error, that is, an unexpected sync packet.

Also, I tried to enable test pattern generation by DSI itself by calling HAL_DSI_PatternGeneratorStart. No effect.

Please help me to configure these properly. Thanks!~

Current CubeIDE project and schematics are attached. Thanks!

 

    This topic has been closed for replies.

    7 replies

    Technical Moderator
    February 12, 2025

    Hello @VHEMaster;

     

    Could you please check the DSI settings and the LTDC timing.

    I recommend you to look at AN4860 Introduction to DSI host on STM32 MCUs and MPUs.  This application note describes the DSI host interface on STM32 MCUs. It also provides practical examples on how to configure the DSI host depending on the operating mode.

    I think also, these examples can help you to check you project:

    -  LCD_DSI_VideoMode_SingleBuffer

    LCD_DSI_VideoMode_DoubleBuffering

     

    I hope this help you.

    Kaouthar

     

     

    VHEMasterAuthor
    Explorer II
    February 12, 2025

    Hi @KDJEM.1 

    Thank you for response.

    Unfortunately, it doesn't help. Those examples are for TFT LCD with it's own controller that works in Command mode, not the Video one. 

    I have already checked LTDC timings multiple times and used related function that converts LTDC timings to DSI. Nothing works.

    Application note also doesn't provide any clarification. 

    Besides, theres some magic multiplication on DSI timings on those examples and nothing explains that.

    Thanks!

    VHEMasterAuthor
    Explorer II
    February 15, 2025

    Unfortunatelly, the issue is still relevant.

    VHEMasterAuthor
    Explorer II
    February 17, 2025

    @mƎALLEm @KDJEM.1 @Sarra.S @TDK Hello! Sorry to bother you, but I need this issue be solved. Can you please help me? Thanks!

    VHEMasterAuthor
    Explorer II
    February 18, 2025

     I have ported this project to test on STM32H747I-DISCO board (just changed the PLL configuration) and got the same result: still HAL_DSI_ERROR_OVF occured. Also, checked HAL_DSI_PatternGeneratorStart function with LTDC disabled on demo project - it works without LTDC.

    Regarding my own board - still no changes, nothing helps:

    • if LTDC is enabled - HAL_DSI_ERROR_OVF occured
    • if LTDC is disabled but HAL_DSI_PatternGeneratorStart called - no video output.
    Technical Moderator
    February 18, 2025

    Hello @VHEMaster;

     

    Which STEM32CubeH7 Firmware version are you using?

    Could you please try to update your STM32Cube firmware and your toolchain.

    I noticed that the STM32CubeMX shows an error in the RCC configuration. So, please check the parameter settings?

    KDJEM1_0-1739866419362.png

     

    Thank you.

    Kaouthar

    VHEMasterAuthor
    Explorer II
    February 18, 2025

    @KDJEM.1 Thanks for an answer!

    The CubeMX configuration is not relevant, because it's a pain to regenerate code each time after some field changed. And this particular error is a known bug of CubeMX: it doesn't allow to select PWR_DIRECT_SMPS_SUPPLY although it is used in original examples and works fine @480MHz.

     

    Technical Moderator
    February 18, 2025

    Hello @VHEMaster,

     

    This FAQ can help you on How to reach 480MHz on system clock for STM32H7xx MCUs using STM32CubeMX?

    Please update your toolchain and the STM32Cube firmware and let me know if the issue is solved or not?

     

    Thank you.

    Kaouthar

    VHEMasterAuthor
    Explorer II
    February 18, 2025

    @KDJEM.1 Unfortunately, it doesn't solve an issue of no DSI video output.