This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DLPDLCR2000EVM: VSYNC frequency issue with BBB

Part Number: DLPDLCR2000EVM
Other Parts Discussed in Thread: DLP2000

Hello TI,

I'm using the DLPDLCR2000EVM + BBB (Debian AM335x 11.7 2023-09-02 4GB microSD IoT + bbb.io-kernel-5.4-ti-am335x) combo for synchronized pattern projection with a fast camera and I was able to achieved that but with a frequency limitation.

In this case I've used i2c command "i2cset -y 2 0x1b 0x1E 0x00 0x00 0x00 0x01 i" to enable source synchronization achieving only around 23.5 Hz and never 60 Hz.

I've manually installed DLPDLCR2000-00A0 cape from bb.org-overlays repository and also tried to change manually the "display-timings" section according to the resolution and frequency of the screen.

What am I doing wrong?

Thanks you,

Best regards,

Simone

  • Hello Simone,

    Welcome to the E2E forum. Thank you for your business! When installing the overlay, did you follow any tutorial such as this one? Did you change DLPDLCR2000-00A0.dts to the correct video timings? Calculator for the following values can be found here

    display-timings {
    native-mode = <&timing0>;
    timing0: 640x360 {
    clock-frequency = <18000000>;
    hactive = <640>;
    vactive = <360>;
    hfront-porch = <16>;
    hback-porch = <80>;
    hsync-len = <64>;
    vback-porch = <8>;
    vfront-porch = <3>;
    vsync-len = <5>;
    hsync-active = <0>;
    vsync-active = <0>;
    };

    Best,

    Maxine

  • Hello Maxine,
    thanks for your assistance.
    I've seen that tutorial and also this one.

    Eventually I used ./install.sh inside the bb.org-overlays repository to recompile DLPDLCR2000-00A0.dts with your timings and put DLPDLCR2000-00A0.dtbo inside /boot/uboot/ folder and nothing changed... 

    I edited the uEnv.txt:

    #Docs: http://elinux.org/Beagleboard:U-boot_partitioning_layout_2.0
    
    uname_r=5.4.106-ti-r42
    #uuid=
    #dtb=
    
    ###U-Boot Overlays###
    ###Documentation: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#U-Boot_Overlays
    ###Master Enable
    enable_uboot_overlays=1
    ###
    ###Overide capes with eeprom
    uboot_overlay_addr0=DLPDLCR2000-00A0.dtbo
    #uboot_overlay_addr0=<file0>.dtbo
    #uboot_overlay_addr1=<file1>.dtbo
    #uboot_overlay_addr2=<file2>.dtbo
    #uboot_overlay_addr3=<file3>.dtbo
    ###
    ###Additional custom capes
    #uboot_overlay_addr4=DLPDLCR2000-00A0.dtbo
    #uboot_overlay_addr4=<file4>.dtbo
    #uboot_overlay_addr5=<file5>.dtbo
    #uboot_overlay_addr6=<file6>.dtbo
    #uboot_overlay_addr7=<file7>.dtbo
    ###
    ###Custom Cape
    #dtb_overlay=<file8>.dtbo
    ###
    ###Disable auto loading of virtual capes (emmc/video/wireless/adc)
    #disable_uboot_overlay_emmc=1
    disable_uboot_overlay_video=1
    #disable_uboot_overlay_audio=1
    #disable_uboot_overlay_wireless=1
    #disable_uboot_overlay_adc=1
    ###
    ###Cape Universal Enable
    enable_uboot_cape_universal=1
    ###
    ###Debug: disable uboot autoload of Cape
    #disable_uboot_overlay_addr0=1
    #disable_uboot_overlay_addr1=1
    #disable_uboot_overlay_addr2=1
    #disable_uboot_overlay_addr3=1
    ###
    ###U-Boot fdt tweaks... (60000 = 384KB)
    #uboot_fdt_buffer=0x60000
    ###U-Boot Overlays###
    
    console=ttyS0,115200n8
    cmdline=vt.global_cursor_default=0 coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet
    
    #In the event of edid real failures, uncomment this next line:
    #cmdline=coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet video=HDMI-A-1:1024x768@60e
    
    #Use an overlayfs on top of a read-only root filesystem:
    #cmdline=coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet overlayroot=tmpfs
    
    ##enable Generic eMMC Flasher:
    #cmdline=init=/usr/sbin/init-beagle-flasher


    Also, without that .dtbo inside the uboot folder the DLP2000 doesn't work at all confirming that is effectively using the edited cape.

    Best Regards,

    Simone

  • Hello again,

    I solved the issue, after playing around with the .dtbo I discovered that the old cape file was overwriting the new .dtbo DLP cape with the correct timings that you sent.

    More precisely in /boot/dtbs/5.4.106-ti-r42/overlays/ there was the original version of DLPDLCR2000-00A0.dtbo so i deleted it and then I added the new version of DLPDLCR2000-00A0.dtbo inside /boot/uboot. The uEnv.txt file is the same.

    Hopefully this will help someone.

    Best Regards