• TI Thinks Resolved

DLPDLCR2000EVM: DLPDLCR2000EVM with Raspberry Pi 3B fails to lock to VSYNC

Prodigy 85 points

Replies: 13

Views: 146

Part Number: DLPDLCR2000EVM

Hi, I have been using the DLPDLCR2000EVM for quite a while now and I am facing an issue that I have never seen before.

I was using the device coupled with a raspberry pi to display pattern by sending a PAN_DISPLAY command to my frame buffer, which would then send the command to the DLPDLCR2000EVM, then I would use the WAIT_FOR_VSYNC command to wait on the VSYNC signal from the DLPDLCR2000EVM.

since I needed every pattern to be displayed for the exact same amount of time, I previously used the mode lock-to-VSYNC, by setting a 1 in the register 0x1E of the DLPC2607 on the DLPDLCR2000EVM.

That used to work in the past but now I have reconfigured my Raspberry PI 3B and, for some reason, using this command creates a jitter in which the screen seems to be divided in two.
The lower half is displayed at the top and the upper half at the bottom.

To clarify my setup, my PI is connected to the EVM through a interface PCB.

I believe I must be using some parameters wrong either in the PI or the EVM as this display method has worked in the past but I can't seem to figure out what changed since this is happening.

Would you be able to provide a way to synchronise myself properly and avoid this jitter?

Thank you for your time,
Best regards,

Louis-Philip Beliveau

  • Hi Louis,

    I am suspecting the cause of the issue is due to changes made in the Raspberry Pi settings after reconfiguration. Can you configure the Raspberry Pi with the older settings and check whether the issue still persists or not?

    Regards,

    Mayank

  • In reply to Mayank Khandelwal:

    Hi Mayank,

    I just realized that I forgot to mention an important part of the problem.

    As far as I know, the settings from before and after are identical.

    Meaning that I don't actually know what I have done differently this time and that it this setting that I am tryt to figure out.

    Also, I didn't mention it but when I try to lock the frame refresh to the Vsync, the targeted fps is 72fps, the maximum from the specs of the DLPC2607.

    What I am trying to figure out is what setting I should modify to obtain the same results as I used to have before.

    Regards,

    Louis-Philip

  • In reply to user4910965:

    Louis,

    The maximum framerate for 2D display application is 60 Hz on the DLPC2607. Where are you getting 72 Hz from? See the front cover page of the DLPC2607 datasheet:

    http://www.ti.com/lit/ds/symlink/dlpc2607.pdf

    If a post answers your question, please click the "Verify Answer" button.

  • In reply to Philippe Dollo:

    Hi Philippe,

    Disregard the spec part, 72 Hz is the frequency I get when polling the VSYNC IO on a scope.

    While I understand that it is weird, I am more concerned about figuring out why is the parameter that allows the PI to correctly use the Lock-to-VSYNC mode.

    Regards,

    Louis-Philip Beliveau

  • In reply to user4910965:

    Louis,

    How are you driving the parallel video interface on the Raspberry pi? Depending on your configuration this could be an issue with your GPIO drive strength or your Raspberry Pi video timings.

    Can you please share these configuration settings?

    If a post answers your question, please click the "Verify Answer" button.

  • In reply to Philippe Dollo:

    Hi Philippe,

    The configuration I am using is the one from this blog page: http://frederickvandenbosch.be/?p=2948.
    For more clarirty, here is the extra line I added to the /boot/config.txt file :

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    # Add support for software i2c on gpio pins
    dtoverlay=i2c-gpio,i2c_gpio_sda=23,i2c_gpio_scl=24,i2c_gpio_delay_us=2
     
    # DPI Video Setup
    dtoverlay=dpi18
    overscan_left=0
    overscan_right=0
    overscan_top=0
    overscan_bottom=0
    framebuffer_width=854
    framebuffer_height=480
    enable_dpi_lcd=1
    display_default_lcd=1
    dpi_group=2
    dpi_mode=87
     
    dpi_output_format=458773
    hdmi_timings=854 0 14 4 12 480 0 2 3 9 0 0 0 60 0 32000000 3



    As I understand it, it is the default configuration while redirecting the output through the DLPDLCR2000EVM.

    I have tried playing  around with this configuration according to the documentation found on this page: https://www.raspberrypi.org/documentation/configuration/config-txt/video.md.

    But so far it hasn't solved the issue.

  • In reply to user4910965:

    Hello User,

    I've had an opportunity to implement the interface between the DLPDLCR2000EVM and the Raspberry Pi described in this particular tutorial.

    If you are using the parallel GPIO pins for your video interface, you will likely see video sync or video artifact issues present. This is often times due to mismatch between the jumper wires used between the various pins (assuming you are connecting the EVM and the Raspberry Pi using jumpers). With a bit of work, it is possible to match the lengths of these jumpers just right (in combination with tuning of the gpio drive strength settings on your Raspberry Pi) to avoid seeing video sync issues.

    In order to resolve this issue more decisively, I recommend using an adapter board which circumvents the need for jumpers altogether. The design featured here, for example, does the job:

    https://www.tindie.com/products/mickmake/pi-projector/

    I hope this helps.

    Regards,

    Philippe Dollo

    If a post answers your question, please click the "Verify Answer" button.

  • In reply to Philippe Dollo:

    Hi Philippe,

    As a matter of fact, I am using my own custom board, so no jumper wires are involved in this.

    I also used the length matching feature in Altium as I designed it.

    Also, as stated previously, that board used to work fine on the Lock-to-VSYNC before I flashed the card.

    I really suspect that I am doing something wrong configuration wise but if you can recommend a board I could but that isn't sold out, I might give it a try.

    Also I tried using matched length jumper wires instead of my custom board and the results didn't change.

    Do you have any other suggestions?

    Thanks,

    Louis-Philip

  • In reply to Philippe Dollo:

    See answer below.

  • In reply to user4910965:

    I do not see a post below. I am assuming you are referring to the previous post here. Can you share your board layout?

    If a post answers your question, please click the "Verify Answer" button.