Problems with the RGB LED Panel Driver

I'm having trouble getting the LED Panel going.  I think i have narrowed it down to applying a different overlay.  

The output of the script should look like this:
ubuntu@arm:$ cd

ubuntu@arm:$ sudo ./setup_device-tree-slow.sh
rm: cannot remove `/lib/firmware/BB-BONE-LOGIBONE-SLOW.dtbo': No such file or directory
 0: 54:PF---
 1: 55:PF---
 2: 56:PF---
 3: 57:PF---
 7: ff:P-O-L Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONE

ubuntu@arm:$

Mine looks like this:
ubuntu@arm:~$ sudo ./setup_device-tree-slow-r01.sh
 0: 54:P---L BB-BONE-LOGIBONE,00R1,VALENTFX,BB-BONE-LOGIBONE
 1: 55:PF---
 2: 56:PF---
 3: 57:PF---

Dmesg shows:
[  140.992319] bone-capemgr bone_capemgr.9: Removed slot #4
[  141.006357] bone-capemgr bone_capemgr.9: Removed slot #5
[  141.020355] bone-capemgr bone_capemgr.9: Removed slot #6
[  141.033642] bone-capemgr bone_capemgr.9: part_number 'BB-BONE-LOGIBONX', version 'SLOW'
[  141.035211] bone-capemgr bone_capemgr.9: slot #7: generic override
[  141.035273] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 7
[  141.035329] bone-capemgr bone_capemgr.9: slot #7: 'Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONX'
[  141.035626] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'BB-BONE-LOGIBONX-SLOW.dtbo
[  141.035682] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware 'BB-BONE-LOGIBONX-SLOW.dtbo' for board-name 'Override Board Name', version 'SLOW'
[  141.039002] bone-capemgr bone_capemgr.9: slot #7: dtbo 'BB-BONE-LOGIBONX-SLOW.dtbo' loaded; converting to live tree
[  141.040959] bone-capemgr bone_capemgr.9: slot #7: BB-BONE-LOGIBONX conflict P8.25 (#0:BB-BONE-LOGIBONE)
[  141.051207] bone-capemgr bone_capemgr.9: slot #7: Failed verification


I would appreciate any help

Comments

  • Hi,

    what disrtibution of Ubuntu are you using ? It seems that you are using one of our latest image and as a consequence the device tree overlay for the LOGIBONE is loaded on boot thus you cannot load a different overlay. The wiki content on this demo is a bit outdated now and we need to update it to match latest tools versions. Can you try running the other steps of the demo (skip the device tree part) and see if the demo works for you. If not, I'll try ton my side and update the wiki.

    Regards,

    Jonathan Piat
  • I forgot to mention that we now have a wishbone compatible RGB matrix driver in the repository. There is example code setup for the LOGI-Pi, i will upload a logibone version soon.


    Regards,

    Jonathan Piat
  • I am using the latest image.  logibone_r1_ubuntu_v4.img  I have tried disabling the default overlay on boot in the uEnv.txt, then unexporting it along with the others.  I also wiped out the eeprom so it would not load on boot.  I can get the overlay to load but still have the same problem, no image displayed.  The other steps in the demo seem to work OK.  When I first ran through the steps I didn't notice anything wrong until nothing showed up on the display.  I tried all of the display patterns and noticed that one of them finally did something, it make the led panel scan blue then nothing else.
  • Accepted Answer
    One thing that might have changed between the driver the demo runs on and the latest one is that adressing was byte based while adressing is now word based (adressing data as 16bit words). Can you try editing picture.cpp from the "beagle / projects / led-panel-v01 / software / picture.cpp" in the cloned software and change the folowing  lines :

    write16 (0x0010, 0x0000); to write16 (0x0008, 0x0000);

    write16 (0x0014, 0x0000); to write16 (0x000A, 0x0000);

    write16 (0x0012, data); to write16 (0x0009, data);

    then re-compile (type make in the directory) and run the picture demo to see if anything happens.

    Regards,

    Jonathan Piat
    saydo17
  • @saydo  I assume you are referring to the glen akins demos?  If this is the case he is using his own GPMC driver to communicate with the bone/fpga.  I have the demo running on my bone no problem, so I can do some debugging to see what the issue might be.

    I also wiped out the eeprom to ensure that I could properly load glen's device tree overlay.  Are you manually loading the overlay with your own scriipt or are yo uusing his script to install hte overlay?  If you are using his script, it seems I had to disable "unloading" of the default bone overlays as it was crashing the system.  Can you confirm that the overlay was properly loaded once you have run the script?

    Are you running your own custom jumper wiring from the pmods to the dispaly or are you using glen's pcb design?

    Attached is "re-packaged" zip folder of gelns demos that run in a loop.  It aslo has the modified overlay loader and has instructions on setting it up as a startup program.  

    Let me know if would like me to do some more testing on my running unit.  
    zip
    zip
    glen_led_demo.zip
    168K
  • @mjones  Yes, I am refering to Glen's demo.  I am using his script but I have not had it crash the system when unloading the default bone overlays.

    Script output:
    ubuntu@arm:~$ sudo ./setup_device-tree-slow-r01.sh
     1: 55:PF---
     2: 56:PF---
     3: 57:PF---
     7: ff:P-O-L Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONX
    ubuntu@arm:~$

    dmesg:
    [  202.976018] bone-capemgr bone_capemgr.9: Removed slot #4
    [  202.989577] bone-capemgr bone_capemgr.9: Removed slot #5
    [  203.003316] bone-capemgr bone_capemgr.9: Removed slot #6
    [  203.017089] bone-capemgr bone_capemgr.9: part_number 'BB-BONE-LOGIBONX', version 'SLOW'
    [  203.017279] bone-capemgr bone_capemgr.9: slot #7: generic override
    [  203.017332] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 7
    [  203.017386] bone-capemgr bone_capemgr.9: slot #7: 'Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONX'
    [  203.017661] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'BB-BONE-LOGIBONX-SLOW.dtbo
    [  203.017718] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware 'BB-BONE-LOGIBONX-SLOW.dtbo' for board-name 'Override Board Name', version 'SLOW'
    [  203.021599] bone-capemgr bone_capemgr.9: slot #7: dtbo 'BB-BONE-LOGIBONX-SLOW.dtbo' loaded; converting to live tree
    [  203.023916] bone-capemgr bone_capemgr.9: slot #7: #3 overlays
    [  203.036127] omap-gpmc 50000000.gpmc: GPMC revision 6.0
    [  203.036532] omap-gpmc 50000000.gpmc: GPMC1: res.start=0x1000000
    [  203.036644] gpmc_read_settings_dt: page/burst-length set but not used!
    [  203.041921] omap-gpmc 50000000.gpmc: loaded OK
    [  203.042773] bone-capemgr bone_capemgr.9: slot #7: Applied #3 overlays.

    Not sure how else I can confirm that the overlay was applied.

    I am running my own custom jumpers.  That was one of the first things I checked.  I have rewired it three times now.  Even started plugging in things wrong to see if I could get some sort of response at one point.  

    Interesting, in the repack, you have 
    #define FPGA_PANEL_DATA_REG 0x0009
    #define FPGA_PANEL_BUFFER_REG 0x000A

    looks like @jpiat was on the right path.  I'm gonna do some testing
  • Success!!! it was the word vs byte addressing.  Thanks for all the help.
  • Hi Jonathan,

    you are saying:

    I forgot to mention that we now have a wishbone compatible RGB matrix
    driver in the repository. There is example code setup for the LOGI-Pi, i
    will upload a logibone version soon.


    Regards,

    Jonathan Piat

    Where can we find this one?

    Regards,

    Stephan
  • Hi,

    i'am sorry but i still haven't built a logibone example for the matrix and new wishbone based-driver, but .... the led matrix driver is available in skeleton so you should be able to capture a top level. There is software examples in logi-projects/logi-matrix/sw. I just built a logibone based architecture for the led matrix, i still need to test it and then i'll upload it to the git repository.

    Regards,

    Jonathan Piat
  • Hi Jonathan,

    when do you think will be the logibone based architecture for the led matrix available?

    Regards,

    Stephan
  • Now ! Its now available in logi-projects/logi-matrix/logibone let me know if anything goes wrong while building it.

    Regards,

    Jonathan Piat
  • Hi Jonathan,

    thanks for your effort. I will test it during next week.

    Regards,

    Stephan
  • I am having the exact same problem. All demos from Glen Akins display blank screens except one which finally displays a blue screen, just as @saydo17 reported. The ”re-packaged” files from @mjones didn’t help. I think the problem is that I can’t set up the device tree properly.

    I have flashed the emmc with the "BBB-eMMC-flasher-debian-7.5-2014-05-14-2gb.img.xz” according to http://valentfx.com/forums/#/discussion/70/logi-image-sd-card-boot.

    My SD card contains the logibone_r1_ubuntu_v4.img.

    I have disabled BB-BONE-EMMC-2G, BB-BONELT-HDMI and BB-BONELT-HDMIN in uEnv.txt

    The "blink-logi-app" works, it loads and the LED:s are blinking.

    My slots look like this after startup.

    ubuntu@arm:~$ cat /sys/devices/bone_capemgr.9/slots
     0: 54:P---L BB-BONE-LOGIBONE,00R1,VALENTFX,BB-BONE-LOGIBONE
     1: 55:PF--- 
     2: 56:PF--- 
     3: 57:PF--- 
     4: ff:P-O-- Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G
     5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI
     6: ff:P-O-- Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN

    After running the Glen's setup_device-tree-slow-r01.sh script, I get the following:

    ubuntu@arm:~/led-panel/projects/led-panel-v01/config-scripts/r01 ubuntu image$ sudo ./setup_device-tree-slow-r01.sh 
     0: 54:P---L BB-BONE-LOGIBONE,00R1,VALENTFX,BB-BONE-LOGIBONE
     1: 55:PF--- 
     2: 56:PF--- 
     3: 57:PF--- 

    And the log:

    ubuntu@arm:~$ dmesg | grep bone_capemgr
    [ 1170.586900] bone-capemgr bone_capemgr.9: Removed slot #4
    [ 1170.599661] bone-capemgr bone_capemgr.9: Removed slot #5
    [ 1170.612627] bone-capemgr bone_capemgr.9: Removed slot #6
    [ 1170.625356] bone-capemgr bone_capemgr.9: part_number 'BB-BONE-LOGIBONX', version 'SLOW'
    [ 1170.626754] bone-capemgr bone_capemgr.9: slot #7: generic override
    [ 1170.626816] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 7
    [ 1170.626871] bone-capemgr bone_capemgr.9: slot #7: 'Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONX'
    [ 1170.627166] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'BB-BONE-LOGIBONX-SLOW.dtbo
    [ 1170.627223] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware 'BB-BONE-LOGIBONX-SLOW.dtbo' for board-name 'Override Board Name', version 'SLOW'
    [ 1170.630126] bone-capemgr bone_capemgr.9: slot #7: dtbo 'BB-BONE-LOGIBONX-SLOW.dtbo' loaded; converting to live tree
    [ 1170.630915] bone-capemgr bone_capemgr.9: slot #7: BB-BONE-LOGIBONX conflict P8.25 (#0:BB-BONE-LOGIBONE)
    [ 1170.641058] bone-capemgr bone_capemgr.9: slot #7: Failed verification

    So I think the problem is the P8.25 conflict. The #7 slot is never loaded. @saydo17 also had this in is log, but there is no mention how it was resolved.

    What is causing this conflict and how do I get rid of it so the #7 slot is loaded?

    Any help would be appreciated!

    /Magnus

  • @meg768
    You will also need to add BB-BONE-LOGIBONE to the disabled list in uEnv.txt

    After this you need to unexport slot 0.  add the flowing to setup_device-tree-slow-r01.sh
    sh -c "echo -0 /sys/devices/bone_capemgr.9/slots "

    Instead of unexporting slot 0 you could also wipe out the eeprom.  This will prevent the default overlay from loading on boot.  I did that to mine but I cannot for the life of me remember how I did it.  I'm going to look around a bit more and see if I can figure it out again.  If I do I will post it here.

    Also the addressing changed since the demo was made.  The drive now uses word based addressing instead of byte based addressing.  See jpiat's post from September 7th above.  That should be all you need to do.
     
    Good luck
    mjones
  • @meg768

    You could follow this handy guide here I have found this article about Capes and eeproms invaluable recently.

    Cheers,

    Andy.
  • @saydo17, thank you for a really quick reply!! I was about to give up on this, but this gives me hope! I am aware of the addressing issue. Will try it out now!

    /Magnus
  • Let me know if you need me to do any testing on my end?   I havn't run the demo for some time, but can get it back up and running as needed.  

    Also, working got a 2x3 panel array up and running by designing a low cost acrylic frame based upon glen's design.  Let me knwo if you are interested in instructions and design file for the assembly.

    Cheers.
  • Amazing! No flicker at all, just beautiful colors!! I started with Arduino, then YUN, next the the Rasberry PI. All worked but with limited amount of colors and lots of flicker. With the Beaglebone Black + LOGI-BONE and Glen's software... this is just great!

    @saydo17@mjones, @IceageI can´t thank you enough!

    @mjones, Maybe I will get back to you! My goal is to have a 64x64 matrix running text and animations remotely using Pusher. ;)

    /Magnus

  • @meg768  Congrats on getting it running.  Indeed, I was blown away by the vibrance of the colors that are not apparent from watching it on video.  

    Speaking of pixel pusher, Glen has given me his code to run this on the 96x64 panel.  I will check with him to see if it is OK for me to post it and or have him post it on his github.

    Cheers!
  • I was having the same problem as the OP and meg768. This thread has been a lifesaver as I was fighting with it for a couple days now.

    However, now that I have added BB-BONE-LOGIBONE to the disabled list in uEnv.txt, and included

    sh -c "echo -0 > /sys/devices/bone_capemgr.9/slots "

    in setup_device-tree-slow-r01.sh, logi_loader can no longer load bitfiles into the fpga. I get

    can't open deive
    cannot open spi bus

    if I cat slots:
    1:  55:PF---
    2:  56:PF---
    3:  57:PF---
    7:  ff:P-O-L  Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONX


    Any ideas as to why logi_loader cannot write the bitfiles now?

  • Hi,

    Glen's code works with the old version of the loader that used bit-banged programming interface the new loader now uses SPI (cleaner and faster) and requires to change the device-tree overlay. The updated BB-BONE-LOGIBONX-SLOW.dts file can be found at :

    https://github.com/fpga-logi/beagle/tree/master/projects/led-panel-v01/config-scripts/r01 ubuntu image

    I'll update this fork of the project with the info from this thread asap so you can all work with an up to date version of the code.

    Regards,

    Jonathan Piat
  • thanks, that worked. I thought I had the correct dts file but I guess I didn't. 

    Thanks for the help. now to start the rest of the project.
  • Hi,

    Same issue here... first started out with what I think is a different ubuntu image currently on the wiki (logi_ubuntu-14.04-console-armhf-2014-08-13). With that, tree overlay scripts did not seem to work at all. After some searching was able to find the logibone_r1_ubuntu_v4 image - and at least that seemed to correlate to discussions here and in the led-panel comments.

    Nonetheless - followed instructions - modified uEnv as above, added the echo line to setup script, and even modified the few lines in the picture.cpp and rebuilt. Still getting a blank screen on all the programs, including "picture". What am I missing?

    FPGA running fine - leds blinking on the board. Also at one point got the blue screen sweep - so wiring and panel must be OK. Have not seen the blue sweep since.


    Thanks for the help.

    === some screen dumps for reference ====

    ubuntu@arm:~$ cat /sys/devices/bone_capemgr.9/slots
     0: 54:P---- BB-BONE-LOGIBONE,00R1,VALENTFX,BB-BONE-LOGIBONE
     1: 55:PF---
     2: 56:PF---
     3: 57:PF---
     7: ff:P-O-L Override Board Name,SLOW,Override Manuf,BB-BONE-LOGIBONX


    =====
    optargs=capemgr.disable_partno=BB-BONE-EMMC-2G,BB-BONELT-HDMI,BB-BONELT-HDMIN,BB-BONE-LOGIBONE


  • Can you check that you have logibone_mem in /dev ? It seems that you have the correct module loaded, and if you can load the bitfile in the FPGA, its good news. I'am a bit surprised that you still ahve the line  0: 54:P---- BB-BONE-LOGIBONE,00R1,VALENTFX,BB-BONE-LOGIBONE in the capemgr ... Do someone have a the same output ?

    This architecture is bit outdated now as its rely on asynchronous GPMC and a very specific architecture (no wishbone based). There is another project https://github.com/fpga-logi/logi-projects/tree/master/logi-matrix
    that uses a wishbone-based architecture and the latest GPMC interface but the software side is not as evolved as in Glen's project ...
  • Yes, logibone_mem is present in the /dev
    I am still debugging trying to see whats going on - will post any findings.
Sign In or Register to comment.