VHDL Code for cascading Adafruit LED RGB Panel

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
chrisoutwright
 
Posts: 11
Joined: Thu Mar 30, 2017 7:12 am

VHDL Code for cascading Adafruit LED RGB Panel

Post by chrisoutwright »

The task at hand concerns a project of driving multiple (2-6) RGB LED 32x32 Panels, using a Beaglebone Black with FPGA Logibone, using the pre-existing code built upon wishbone-architecture:(https://github.com/fpga-logi/logi-proje ... ogi-matrix).

The existing code is lacking in the correct VHDL FPGA implementation of cascading RGB LED 32x32 Panels, or different Panel sizes (32x64), while single-Panel is working. These new functionalities are to be worked out.
The theory of operation of the RGB Panel and possible resultant FPGA logic (underlying Adafruit library port I presume) can be read upon here:
(http://bikerglen.com/projects/lighting/led-panel-1up/) .

We have to bear in mind that this project by Glen Akins differs in the implementation of gpmc_target, meaning our project here uses the more adaptive wishbone-architecture, in contrast to his version, being non-compatible at the time being (that is i can load his bitfile, but apart from blinking led on logibone, nothing happens, maybe because of custom device-treem, different gpmc timings from stock).

Differences as topic forum here: (http://valentfx.com/vanilla/discussion/ ... ogi-matrix) .

The software for the VHDL changes is ISE Project Navigator.
I have included one .vhd file of the ISE project file for inspection.
Attachments
False mirroring only at the moment when cascading, single mode ok
False mirroring only at the moment when cascading, single mode ok
20170330_133248_HDR.jpg (858.77 KiB) Viewed 1619 times

User avatar
drewfustini
 
Posts: 944
Joined: Sat Dec 26, 2015 1:19 pm

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by drewfustini »

I'm not familiar with VHDL code for cascading Adafruit LED panels, but have you considered just using the BeagleBone to drive the LED matrix?

LEDscape by Trammell Hudson of NYC Resistor uses the built-in real-time microcontrollers (PRUs) to drive the Adafruit RGB LED Matrices:
https://trmm.net/Category:LEDscape

Check out his MTA Scroller project which uses LEDscape to drive several Adafruit LED panels:
https://trmm.net/MTA_Countdown_Clock

User avatar
chrisoutwright
 
Posts: 11
Joined: Thu Mar 30, 2017 7:12 am

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by chrisoutwright »

@drewfustini,
as Beagle Bone Black is similar to a Raspberry pi, for the latter being available tons of material for driving chains of RGB Panels, I think I encountered one here yesterday.

Thanks for your links provided also, I will definitely have a closer look once really the possibility to drive the RGB chains with a FPGA is dim. I just thought that workload-wise a FPGA would be good, as Adafruit states on the product site that a FPGA would really make the panel shine. Is there really nobody able to get it to work. I myself am thinking on remedying to code right now.

User avatar
drewfustini
 
Posts: 944
Joined: Sat Dec 26, 2015 1:19 pm

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by drewfustini »

I think you may find good results with LEDscape on the BeagleBone. The LEDscape firmware runs on the dual 200 MHz 32-bit Programmable Real-time Unit (PRU) subsystem so it does not put load on the ARM core.

User avatar
chrisoutwright
 
Posts: 11
Joined: Thu Mar 30, 2017 7:12 am

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by chrisoutwright »

The Octoscroller Cape and special firmware for Beaglebone Black seems like a good idea to resort to.
Do I need a cape if I am using 4 (32x32) panels?

User avatar
drewfustini
 
Posts: 944
Joined: Sat Dec 26, 2015 1:19 pm

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by drewfustini »

The Octoscroller cape is a convenient way to connect the panels to the BeagleBone. The design includes SN74LS245 octal bus transceivers and the appropriate headers. The EAGLE schematic and board layout are available on GitHub at: https://github.com/osresearch/LEDscape/tree/master/pcb

The PCB is also shared on OSH Park (a PCB ordering service):
https://oshpark.com/shared_projects/7mSHNZcD

User avatar
chrisoutwright
 
Posts: 11
Joined: Thu Mar 30, 2017 7:12 am

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by chrisoutwright »

I have finally gotten my Octoscroller. At the moment I am testing FPP (falconchristmas) UI to control my 4 32x32 Panels with BBB.
Sadly the refresh rate is really bad (never seen such horrendous lag in any commercial scrolling LED Panel Array).
I think FPP is built on LEDscape and some might have found the solutions but I can't seem to find/implement them.
Any ideas?

This was exactly the reason I wanted FPGA, just brief looking gives me eyesore (seems even worse than scrolling 32x32 with an arduino! [not accounting for additional pixel brightness option]) with the current configuration on the octoscroller.
This is because more output is driven than connected to, quite a waste of refresh rate, imho.

But any help would be great, as I love the great xLights software I can use with FPP.

User avatar
drewfustini
 
Posts: 944
Joined: Sat Dec 26, 2015 1:19 pm

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by drewfustini »

Here are two pages about using the OctoScroller cape and Falcon FPP that may help:

Falcon Player on BeagleBone Black

Building an Octoscroller Matrix Display


I'd also suggest contacting Trammel Hudson about LEDscape performance either via email ([email protected]) or opening a GitHub issue.

RGB123 may also be of interest.

User avatar
chrisoutwright
 
Posts: 11
Joined: Thu Mar 30, 2017 7:12 am

Re: VHDL Code for cascading Adafruit LED RGB Panel

Post by chrisoutwright »

I noticed that the flickeeing was already raised in the FPP Player community/site. Sadly, planned optimizations haven't kicked in yet (some things were mentioned like reduction of number of panels (32x32) per output strip for refresh trade-off) but buying 16x32 displays solely for good octoscroller use is really contrary to my goals now (1/16 scan rate should be normal for indoor 32x32 panels).

I will send an email to the persons you refer to to learn more.
Thanks so far for the hints.

I am still disappointed that i will not be able to use BBB correctly for easter weekend LED RGB display, the flickering will send the rabbits in a fit and the eggs in a spin.

Locked
Please be positive and constructive with your questions and comments.

Return to “Beagle Bone & Adafruit Beagle Bone products”