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.

DLP2000: BeagleBone Black + TI LightCrafter DLP2000EVM Unable to Write to Framebuffer

Part Number: DLP2000
Other Parts Discussed in Thread: DLPC2607, DLPDLCR2000EVM

Hi there,

Hope you are safe and doing well.

We are currently having some trouble configuring our BeagleBone Black Wireless together with the Texas Instruments LightCrafter DLP2000EVM.

We have followed the instructions as set out on https://beagleboard.org/getting-started and http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Flashing_eMMC to flash the Debian image onto the BeagbleBone using an SD card. We then followed https://www.element14.com/community/community/designcenter/single-board-computers/next-genbeaglebone/blog/2015/11/18/beaglebone-black-lcds-with-prebuilt-fbtft-drivers to install any relevant drivers in attempt to be able to access the framebuffer of the device. In doing so, we were successful in displaying the TI DLP splash screen. However, we are not able to display an image using AWS Cloud9 onto the DLP. But, trying to display the tux.png test image runs with no error messages but does not get displayed.

Furthermore, when we try run our Python script to project patterns using the DLP (which has successfully worked with the same model DLP and Beaglebone in the past) it gives the following error on the line that accesses the /dev/fb0 using np.memmap and Adafruit_BBIO.ADC.setup():

OSError: [Errno 27] File too large

The Python script utilises Adafruit_BBIO.ADC to communicate with the BeagleBone and uses i2cset to write to the framebuffer:

system(“i2cset -y 2 0x1b 0xa3 0x00 0x00 0x00 0x01 i”) system(“i2cset -y 2 0x1b 0xa3 0x00 0x00 0x00 0x00 i”)

When we try display a test random pattern using:

cat /dev/urandom > /dev/fb0

it gives the same error message:

OSError: [Errno 27] File too large

How would we be able to initialise the framebuffer and access its memory?

We would greatly appreciate any help, as we have been stuck on this for a while and nothing seems to work.

All the best,

Shaban

  • Shaban,

    Thanks for your interest in our DLP technology.

    I have a few questions about the setup you are describing above. First off, are you initializing the external display mode for the DLP2000 EVM as described in the User's Guide and Quick start Guide? https://www.ti.com/lit/ug/dlpu049c/dlpu049c.pdf 

    In particular, you need to ensure that:

    (A) The cape overlay driver configuring the GPIOs on the EVM is set up properly

    (B) The commands necessary to reconfigure the EVM to external video mode with the correct input resolution are executed (per user's guide)

    There are multiple possible input sources on the EVM. The DLP splash screen and the Internal Test Pattern Generator do not use any input data from outside sources (such as the BeagleBone) and are generated by the DLPC2607 (although they can be configured over I2C following the DLPC2607 Programmer's Guide).

    Assuming all the above is correct, the user will typically see the desktop of the BeagleBone Debian OS (assuming they are using the standard distro). From there, you no longer need to configure the DLPC2607 further for it to accept image data into its frame buffer.

    If you are attempting to write a single frame of data to the frame buffer (and hold it) you could try leveraging the structured light code over at https://github.com/RobertCNelson/boot-scripts/tree/master/device/bone/capes/DLPDLCR2000/structured_light to get you started. You can also use the frame buffer freeze command (that you are using, command 0xA3) to hold the data once you have sent it over the Parallel RGB bus.

    I hope this helps. Let me know where I can elaborate further.

    Best Regards,

    Philippe Dollo

  • Hi Philippe,

    Thank you so much for your reply, I really appreciate it and all your help.

    Oh yes, we also followed the TI User Guide https://www.ti.com/lit/ug/dlpu049c/dlpu049c.pdf, my bad for not including that in my initial post. We are controlling the BB via the 192.168.7.2 address on Cloud9. This is where we have been accessing the terminal.

    How do we ensure that the cape overlay driver configuring the GPIOs on the EVM is set up properly? I apologise for my inexperience with using these devices, we are trying to use the DLP to project a series of patterns for our Physics experiment. We tried running 

    i2cset -y 2 0x1b 0x0b 0x00 0x00 0x00 0x00 i

    i2cset -y 1 0x1b 0x0c 0x00 0x00 0x00 0x1b i

    and it gave the error message 'Error: Write failed'.

    For the link https://github.com/RobertCNelson/boot-scripts/tree/master/device/bone/capes/DLPDLCR2000/structured_light that you suggested, we project a series of patterns using a for loop in our Python script, i.e. one pattern for each iteration of the loop, so would this work for us?

    Thanks so much again for your help, I appreciate it a lot and is helping us a lot.

    All the best,

    Shaban

  • Shaban,

    No problem. Your questions may be useful to other users down the line.

    Cape overlays are GPIO layouts the BBB is made to load upon booting with a particular cape or device. The DLPDLCR2000EVM is one such example of this.

    If you have the Debian Jessie release (v8.9) the DLP Cape overlay should be installed by default on the OS. Otherwise, you can manually install the cape overlay driver for the DLPDLCR2000EVM by following the link here:

    https://e2e.ti.com/support/dlp/f/dlp-products-forum/663939/faq-dlpdlcr2000evm-bbb-cape-overlay-customization

    A tutorial on cape overlays is included. You should probably start here and confirm that the overlay is actually loading before you try to talk to the system.

    Let me know if you struggle with a particular step above. 

    Best Regards,

    Philippe Dollo

  • Hi Philippe,

    Thanks again for you help, I appreciate it.

    I followed the steps outlined in https://github.com/adafruit/adafruit-beaglebone-io-python/tree/master/overlays and https://elinux.org/Beagleboard:BeagleBoneBlack_Debian#U-Boot_Overlays to install the cape overlay driver. Is there anything I need to do next? When I try run our script, it gives the error message:

    PermissionError: [Errno 13] Permission denied: '/dev/fb0'

    It also says 'Write failed' when we try to use the i2cset commands as in my last message above.

    What should I do now?

    Thanks again,

    Shaban

  • Hi Philippe,

    Hope you are having a nice weekend.

    I ran sudo /opt/scripts/tools/version.sh to provide you with the configuration of our Beaglebone if that helps at all.

    debian@beaglebone:/var/lib/cloud9$ sudo /opt/scripts/tools/version.sh
    git:/opt/scripts/:[e4e4854ef8ff9ada5c85553376043ee7679167ca]
    eeprom:[A335BNLTBWA52027BBWG1011]
    model:[TI_AM335x_BeagleBone_Black_Wireless]
    dogtag:[BeagleBoard.org Debian Buster IoT Image 2020-04-06]
    bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot SPL 2019.04-00002-gc9b3922522 (Aug 24 2020 - 16:42:18 -0500)]:[location: dd MBR]
    bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2019.04-00002-gc9b3922522]:[location: dd MBR]
    UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
    UBOOT: Loaded Overlay:[AM335X-PRU-RPROC-4-19-TI-00A0]
    UBOOT: Loaded Overlay:[BB-ADC-00A0]
    UBOOT: Loaded Overlay:[BB-BBBW-WL1835-00A0]
    UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0]
    UBOOT: Loaded Overlay:[BB-HDMI-TDA998x-00A0]
    kernel:[4.19.94-ti-r42]
    nodejs:[v10.15.2]
    /boot/uEnv.txt Settings:
    uboot_overlay_options:[enable_uboot_overlays=1]
    uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/<file0>.dtbo]
    uboot_overlay_options:[uboot_overlay_addr1=/lib/firmware/<file1>.dtbo]
    uboot_overlay_options:[uboot_overlay_addr2=/lib/firmware/<file2>.dtbo]
    uboot_overlay_options:[uboot_overlay_addr3=/lib/firmware/<file3>.dtbo]
    uboot_overlay_options:[uboot_overlay_pru=/lib/firmware/AM335X-PRU-RPROC-4-19-TI-00A0.dtbo]
    uboot_overlay_options:[enable_uboot_cape_universal=1]
    pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
    pkg:[bb-cape-overlays]:[4.14.20210225.0-0~buster+20210225]
    pkg:[bb-customizations]:[1.20200306.0-0rcnee0~buster+20200306]
    pkg:[bb-usb-gadgets]:[1.20200322.0-0rcnee0~buster+20200322]
    pkg:[bb-wl18xx-firmware]:[1.20200322.0-0rcnee0~buster+20200322]
    pkg:[kmod]:[26-1]
    pkg:[librobotcontrol]:[1.0.4-git20190227.1-0rcnee0~buster+20190327]
    pkg:[firmware-ti-connectivity]:[20190717-2rcnee1~buster+20200305]
    groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal bluetooth netdev i2c gpio pwm eqep remoteproc admin spi iio docker tisdk weston-launch xenomai cloud9ide]
    cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet]
    dmesg | grep remote
    dmesg | grep pru
    dmesg | grep pinctrl-single
    dmesg | grep gpio-of-helper
    lsusb
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    END

    Hope this helps you find the root of our problem.

    Thanks heaps,

    Shaban

  • Shaban,

    A couple comments from me:

    > It doesn't look like the cape overlay for the DLPDLCR2000EVM is loading. I don't see it in the list of overlays above, so something went wrong there for sure.

    > It looks like you are using the IoT version of Debian. This version does not come with A GUI and also doesn't have X11 support built-in. You will have to install those (or at least X11) before you try to output via the DLPDLCR2000EVM. 

    I would recommend you start with a non-IoT version of Debian (preferrably 8.9 where the cape overlay is already installed) and transition to a slimmer distro version once you confirm that your hardware is working OK.

    Best Regards,

    Philippe Dollo

  • Hi Philippe,

    Amazing, thank you so much for your help, it is extremely useful. I will try out your suggestions today and will let you know how it goes or if we need further help.

    Thanks again, I really appreciate it.

    All the best,

    Shaban

  • No problem. Feel free to post a new thread or repost here if you have further questions.

    Regards,

    Philippe

  • Hi Philippe, 

    I installed Debian 8.9 and followed the same steps as before. Our Python code now runs without any error messages. However, only the splash screen is projected and what is being written on the framebuffer isn't being projected. Any ideas on what I could do next?

    Thanks so much for your help.

    All the best,

    Shaban

  • Shaban,

    The next step is going to be to write to the I2C of the DLPC2607. The default source (splash screen) comprehends nothing of what comes from the parallel interface (meaning, the BeagleBone's video stream). You need to reconfigure the system for external video mode as well as set the appropriate system resolution.

    This is described further in the EVM's User Guide: https://www.ti.com/lit/ug/dlpu049c/dlpu049c.pdf

    Regards,

    Philippe Dollo

  • Hi Philippe,

    Thanks so much for your help. I followed https://www.ti.com/lit/ug/dlpu049c/dlpu049c.pdf and https://e2e.ti.com/suppport/dlp-f/dlp-products-forum/621466/faq-dlppdlcr2000evm-quick-start-tutorial to write to the I2C of the DLPC2607. The commands ran without error messages, and all the buses were present when running 'i2cdetect -r -y 2' by using:

    'echo 48 > /sys/class/gpio/export

    echo out > /sys/class/gpio/gpio48/direction

    echo 1 > /sys/class/gpio/gpio48/value'

    However, when I tried running MplayerTest.py, the display was stuck on the splash screen and I received the following error message:

    'root@beaglebone:/opt/scripts/device/bone/capes/DLPDLCR2000# python MplayerTest.py
    set slave address: 27
    Make sure the display port is set. For example export DISPLAY=:0

    1
    SourceSel.EXTERNAL_VIDEO_PARALLEL_I_F_
    2
    Resolution.NHD_LANDSCAPE
    ##################################################################
    play video
    nhd_test.mp4
    MPlayer2 2.0-728-g2c378c7-4+b1 (C) 2000-2012 MPlayer Team
    Cannot open file '/opt/cloud9/.mplayer/input.conf': No such file or directory
    Failed to open /opt/cloud9/.mplayer/input.conf.
    Cannot open file '/etc/mplayer/input.conf': No such file or directory
    Failed to open /etc/mplayer/input.conf.

    Playing nhd_test.mp4.
    Detected file format: QuickTime / MOV (libavformat)
    [lavf] stream 0: video (h264), -vid 0
    Clip info:
     major_brand: mp42
     minor_version: 1
     compatible_brands: mp42avc1
     creation_time: 2017-07-07 14:32:35
    Load subtitles in .
    No protocol specified
    vo: couldn't open the X11 display (:0)!
    No protocol specified
    vo: couldn't open the X11 display (:0)!
    No protocol specified
    vo: couldn't open the X11 display (:0)!
    No protocol specified
    No protocol specified
    [gl] OpenGL 3.x context creation not implemented.
    No protocol specified
    vo: couldn't open the X11 display (:0)!
    No protocol specified
    No protocol specified
    SDL SetVideoMode failed: OpenGL not available
    No protocol specified
    vo: couldn't open the X11 display (:0)!
    No protocol specified
    No protocol specified
    [VO_SDL] Using driver: fbcon.
    No protocol specified
    vo: couldn't open the X11 display (:0)!
    [ass] auto-open
    Selected video codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [libavcodec]
    Audio: no sound
    Starting playback...
    VIDEO:  640x360  30.000 fps  3600.5 kbps (450.1 kB/s)
    VO: [sdl] 640x360 => 640x360 Planar YV12  [fs]
    [VO_SDL] Info - please use -vm or -zoom to switch to the best resolution.
    [VO_SDL] Set_fullmode: SDL_SetVideoMode failed: Couldn't set console screen info.
    [VO_SDL] Failed to set video mode: Couldn't set console screen info.
    FATAL: Cannot initialize video driver.

    FATAL: Could not initialize video filters (-vf) or video output (-vo).


    Exiting... (End of file)
    None
    Does the video play on the screen? (Pass/Fail/Stop) (Pass/Fail/Stop) and comment: Test passed'

    Moreover, our Python script continues to run without error message but only the splash screen being projected. I tried running 'python Park.py' and was met with a blank white screen projected. Any idea on what we could try next?

    Also, we are working the BBBW while connected to our computer via USB and controlling it over Cloud9. When we power the DLP simultaneously, the Cloud9 terminal consistently connects and disconnects and a documents folder opens up on the computer to the DLP folder each time. However, if we power the BBBW via the USB and 5V power point, then this consistent refresh doesn't occur. Any idea on what I could do to stop this? As it can get annoying to work without a consistent connection.

    Thanks so much for your help again, I appreciate it. I apologise for overloading you with our problems.

    For your reference, here is the configuration log of our BBBW if that helps at all:

    'root@beaglebone:/# sudo /opt/scripts/tools/version.sh
    git:/opt/scripts/:[e4e4854ef8ff9ada5c85553376043ee7679167ca]
    eeprom:[A335BNLTBWA52027BBWG1011]
    model:[TI_AM335x_BeagleBone_Black_Wireless]
    dogtag:[BeagleBoard.org Debian Image 2017-08-01]
    bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot SPL 2019.04-00002-gc9b3922522 (Aug 24 2020 - 16:42:18 -0500)]:[location: dd MBR]
    bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2019.04-00002-gc9b3922522]:[location: dd MBR]
    UBOOT: Loaded Overlay:[AM335X-PRU-UIO-00A0]
    UBOOT: Loaded Overlay:[BB-ADC-00A0]
    UBOOT: Loaded Overlay:[BB-BBBW-WL1835-00A0]
    UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0]
    UBOOT: Loaded Overlay:[BB-HDMI-TDA998x-00A0]
    kernel:[4.4.68-ti-r115]
    nodejs:[v4.9.1]
    /boot/uEnv.txt Settings:
    uboot_overlay_options:[enable_uboot_overlays=1]
    uboot_overlay_options:[uboot_overlay_pru=/lib/firmware/AM335X-PRU-UIO-00A0.dtbo]
    uboot_overlay_options:[enable_uboot_cape_universal=1]
    pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
    WARNING:pkg:[bb-cape-overlays]:[NOT_INSTALLED]
    pkg:[bb-customizations]:[1.20190403.1-0rcnee0~jessie+20190403]
    WARNING:pkg:[bb-usb-gadgets]:[NOT_INSTALLED]
    pkg:[bb-wl18xx-firmware]:[1.20190227.1-0rcnee0~jessie+20190227]
    pkg:[kmod]:[18-3rcnee1~jessie+20171005]
    pkg:[roboticscape]:[0.3.4-git20170602-0rcnee4~jessie+20171108]:[GOT_REPLACED_BY_NEXT]
    WARNING:pkg:[librobotcontrol]:[NOT_INSTALLED]
    pkg:[firmware-ti-connectivity]:[20170823-1rcnee1~jessie+20180328]
    groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal netdev i2c bluetooth cloud9ide gpio pwm admin spi tisdk weston-launch xenomai]
    cmdline:[console=ttyO0,115200n8 root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 quiet]
    dmesg | grep remote
    [    2.362197]  remoteproc0: wkup_m3 is available
    [    2.362213]  remoteproc0: Note: remoteproc is still under development and considered experimental.
    [    2.362221]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    2.458108]  remoteproc0: powering up wkup_m3
    [    2.458184]  remoteproc0: Booting fw image am335x-pm-firmware.elf, size 217148
    [    2.458442]  remoteproc0: remote processor wkup_m3 is now up
    dmesg | grep pru
    dmesg | grep pinctrl-single
    [    2.124644] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    dmesg | grep gpio-of-helper
    lsusb
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    END'

    All the best,

    Shaban

  • Hi Philippe,

    A quick update - everything is running fine without error messages, however the DLP still does not project what is being written onto the framebuffer and instead only projects the splash screen. However, when I run the test python scripts in the directory /opt/scripts/device/bone/capes/DLPDLCR2000/, such as 'python Park.py' and 'python Splash.py', these run fine and are projected by the DLP. Any ideas on what I could do to fix this?

    Thank you so much for your help, I appreciate it.

    All the best,

    Shaban

  • Shaban,

    Sorry to hear you're still having trouble.

    Based on your explanation above, we can confirm that the I2C bus is working at least. The Park and Splash scripts are sending I2C commands which change modes/settings of the DLPC2607 (the controller of the system). One of two things isn't working here:

    > The DPI bus (RGB888) used to output video from the BeagleBone Black isn't set up properly (this is configured via the cape overlay we discussed previously). Have you confirmed that it is loading? Since you are using a BBBW you will almost certainly need to install the cape overlay yourself.

    > There is no video output support set up on your BBBW. In particular, I'm seeing a lot of the error message "vo: couldn't open the X11 display (:0)!". This may mean that X11 isn't set up on your system. Have you verified that X11 is set up on your system? The non-IoT version of Debian for the BBB has it installed by default. I'm not sure whether the BBBW version is the same way.

  • Hi Philippe,

    Thank you for your help.

    How do I install the cape overlay so that the DPI bus outputs video correctly? Also, how do I ensure that there is video output support set up on the BBBW? I'm pretty sure X11 is already pre-installed. I apologise for the questions, I just want to make sure I'm doing things correctly so effect anything.

    I appreciate your help.

    All the best,

    Shaban

  • Shaban,

    Please see below:

    https://e2e.ti.com/support/dlp/f/dlp-products-forum/663939/faq-dlpdlcr2000evm-bbb-cape-overlay-customization

    A tutorial on cape overlays is included. You should probably start here and confirm that the overlay is actually loading before you try to talk to the system.

  • Philippe,

    Thank you, I will try that now. To make sure, I will go on https://github.com/beagleboard/bb.org-overlays and run:

    >> sudo apt update
    >> sudo apt install bb-cape overlays

    Is there anything else I should run? How dod I confirm that the overlay is being loaded?

    Sorry again for the specific and perhaps even trivial questions. I just want to make sure I'm doing all these steps correctly to ensure I don't overlook or miss anything.

    Thanks so much for your quick replies also.

    Shaban

  • Shaban,

    The BB-Cape Overlays package that you will be downloading above is just a tool. Once you have it, you will need to actually add the .dtb file associated with the DLPDLCR2000EVM (which is on the same page) to the large collection of .dtb files included by default in the cape overlays tool. Once you've done that you will need to run the included script which compiles all the .dtb overlay files into .dtbo binaries. The script (if executed right) will also deposit these compiled .dtbo binaries into a separate folder on the BBB. This folder is what is checked upon booting by the BBB for drivers to load. Because of the ID EEPROM installed to the DLPDLCR2000EVM, the BBB will detect the device ID and load the appropriate .dtbo overlay.

    The video output won't immediately show up on the DLP system when you do it right. It will only display video output once you have run the I2C commands to set the DLP system to external video mode. Of course, this assumes X11 is working too.

    I hope this helps.

    Regards,

    Philippe

  • Philppe,

    Thank you so much for your help, I did indeed overlook that step in the past and is probably why it is not projecting. I was only install the tool but not adding the .dtb file. I will give it a try now and will keep you posted.

    Thank you again, I appreciate it.

    Shaban

  • Shaban,

    No problem. Let us know what you find.

    Regards,

    Philippe

  • Philippe,

    I had a look to try add the .dtb and I'm not quite sure how to do as I've never done something like this before and am quite a bit lost with it. Where do I locate the .dtb file and how do I add it to the other default ones? Also where can I find, and how do I run, the included script you mentioned to compile the .dtb overlay files into .dtbo binaries? I understand that they're described in those documents you attached but I'm finding them a bit confusing to follow as this process is the first time I've used Linux before.

    Again, I apologise for my inexperience and also apologise for bothering you. I appreciate your help.

    All the best,

    Shaban

  • Philippe,

    I have added the cape overlay as a .dts file and am trying to compile it as .dtbo using dtc. However, when I do this I get te error message:

    'Error: 4807.DLPDLCR2000-00A0.dtc:1.1-2 syntax error
    FATAL ERROR: Unable to parse input tree'

    Any ideas on what I should do?

    All the best,

    Shaban

  • Hi Philippe,

    We changed directory to the install bb.org-overlays folder and ran 'make' in the terminal so that the Makefile script would run. We then located the DLPDLCR2000-00A0 cape was present as .dtbo. However, we are still having some trouble adding that cape to be recognised by the driver so that it appears when we run 'cat /opt/scripts/devices/platform/bone_capemgr/slots'. Any idea on what we could do to fix this? 

    Thanks heaps,

    Shaban

  • Shaban,

    So it sounds like at this point you have a compiled cape overlay and you now want to load it to your system.

    Did you run the install.sh script after compiling your binary? If you did (and you got the binaries into the right place) then all you need to do is reboot your system. Upon boot, the BeagleBone should detect the EEPROM of the DLP EVM and load the .dtbo overlay accordingly. Of course, note that this only works if the DLP EVM is installed to the BeagleBone.

    You can also try loading the .dtbo manually per the method described here if you are having trouble:

    https://stackoverflow.com/questions/24134958/my-custom-capes-devicetree-fails-to-load-at-boot-but-can-be-loaded-manually

    Note that if you want to change the output resolution you will need to modify the .dtb file and recompile it.

    Best,

    Philippe

  • Hi Philippe,

    Thank you for your help. 

    Unfortunately we are still having issues adding the cape overlay DLPDLCR2000-00A0 to the required slot (it just doesn't appear after rebooting). We installed it using ./install.sh which ran without error. Then when trying to add it to the slot manually by running:

    sudo sh -c "echo 'DLPDLCR2000-00A0' > /sys/devices/platform/bone_capemgr/slots"

    gives us the following error message

    sh: echo: I/O error

    We are running out of ideas how to fix this but we are probably really close to the solution. Any ideas on what could we try next? We are quite inexperienced using Linux, so we would really appreciate it if you could send us detailed instructions (code) that we need to execute if that's ok please.

    Thanks so much.

    All the best,

    Shaban

  • Shaban,

    Here's a pretty good alternative tutorial which does everything step by step:

    http://www.ofitselfso.com/BeagleNotes/Beaglebone_Black_And_Device_Tree_Overlays.php

    The tutorial above assumes you are doing everything from scratch (and also assumes the EEPROM on the cape doesn't exist) so that might be a good thing to try in case there's something wrong with the EEPROM on your EVM.

    Here's some step by step actions you can take to walk through this:

    > Confirm you are in the right directory and your cape overlay file is available

    ls

    > Try the above command within that directory

    sudo sh -c "echo 'DLPDLCR2000-00A0.dtbo' > /sys/devices/platform/bone_capemgr/slots"

    If this fails, try copying the .dtbo file directly to the correct location:

    sudo cp DLPDLCR2000-00A0.dtbo /lib/firmware/

    > Reboot the system. Wait to see if the DLP splash screen shows up. If it shows up on boot then the cape overlay loaded. If it stays black then it did not load.

    > If the cape overlay fails to load, you can force it to load on boot by editing the uEnv.txt file:

    sudo nano /boot/uEnv.txt

    > Following the guide you can add an overlay by uncommenting one of the lines and adding the DLPDLCR2000-00A0.dtb file to the list of loaded overlays.

    > Reboot the system. 

    If you are still having issues, you may have a bigger problem with your Debian setup. In that case you may need to direct your question to the Beagle Community Forums. I hope this helps.

    Regards,

    Philippe Dollo

  • Hi Philippe,

    Thank you so much for your detailed help and your efforts in helping us. Unfortunately nothing is working and the DLPDLCR2000-00A0 overlay just doesn't seem to want to be loaded. 

    Thank you for your kind help over the past week, I really appreciate it.

    All the best with everything,

    Shaban

  • Shaban,

    No problem. In your situation if you need further help I would recommend seeking further assistance from the Beagle Community Forums linked above. I believe your issue may be a host configuration issue.

    Best of luck.

    Regards,

    Philippe Dollo

  • Hi Philippe,

    Just a quick update - yes, it seems that there is a deeper problem with the BBBW. We switched to an existing BBB (not wireless) and was successfully able to load the cape overlays onto it and hence project the BBBW terminal screen. In other words, we were able to solve the problem that we had throughout this Thread. However, we are now facing a problem with pip installing Python modules onto the BBB, which we did not face with the BBBW. 

    Thanks so much for you help throughout all of this, I really appreciate it. You definitely helped a lot.

    All the best with everything,

    Shaban

  • Shaban,

    Thanks for your feedback. Feel free to post back if you have any other issues with the DLP cape overlay. 

    Best of luck,

    Philippe

  • Hi Philippe,

    Hope you're doing well.

    Just an update - we bought a new Beaglebone Black and we were able to get it working with the DLP with the steps outlined in this thread. The other Beaglebone Black Wireless we had must've had a deeper issue than we may have suspected. 

    Thanks so much for your help with all of this, I really appreciate it.

    All the best,

    Shaban

  • Shaban,

    No problem. Thanks for your update and best of luck.

    Feel free to post a new thread if new questions arise.

    Regards,

    Philippe