News:

Server migration complete, Welcome to version 2.1.1

+-+-

+-User

Welcome, Guest.
Please login or register.
 
 
 
Forgot your password?

+-Site Stats

Members
Total Members: 15649
Latest: zj023
New This Month: 53
New This Week: 0
New Today: 0
Stats
Total Posts: 128335
Total Topics: 15780
Most Online Today: 46
Most Online Ever: 7634
(January 21, 2020, 02:14:03 AM)
Users Online
Members: 5
Guests: 30
Total: 35

FPP driving P10 panels over Ethernet via a $30 ColorLight 5a-75B receiver board

Started by CaptainMurdoch, January 06, 2017, 10:31:58 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

CaptainMurdoch

So I stayed up way too late last night, but I now have a working beta version of a new FPP Channel Output for the ColorLight 5a-75 receiver board.  This board drives LED panels such as the P10 modules people are using with the Octoscroller and Pi Matrix hats.  The 5a-75 can drive up to a 256x256 pixel array, which means it should be able to drive twice as many 32x16 P10 panels as a BBB/Octoscroller combination.  The 5a-75 can be driven via a sender card attached to the HDMI/DVI output of a computer or it can be directly driven via standard ethernet.  The new FPP Channel Ouput utilizes the ethernet method.

Here's a quick video of it in action:



There are some limitations, some we can work around and some we are stuck with.

These boards are designed to have each output connector driving a single row of LED panels, so they don't support wrapping as far as I can tell.  I should be able to add that functionality in software as I have done for the Octoscroller and Pi Matrix hats.  I actually drive 3 separate matrices off a single BBB currently with one matrix having both horizontal and vertical oriented panels, so I will definitely need to enhance the 5a-75 Channel Output if I want to use it in my display.

The network protocol uses one network packet per row of display per frame, so for displays less than 200 or so pixels wide, they are less efficient than E1.31.  This shouldn't be an issue because a Pi 2 B or 3 B can send 256 network packets in around 15ms.

This board requires a Gigabit Ethernet connection, it will not work over 100Mbit ethernet.  This means that you can't plug a 5a-75 directly into a Pi and have it work, you need a Gigabit switch in the middle.  Once we have official support for some other hardware platforms like the Odroid and Pine64 that have Gigabit Ethernet NIC's, you could potentially plug one of those directly into a 5a-75, possibly only needing an Ethernet crossover cable.

The network protocol used by the boards is not TCP or UDP or even IP, it is a raw ethernet packet and acts like a broadcast.  Because of this, you don't want to run this on your home network, because these packets go everywhere, through every port of every switch.
-
Chris

garyh


ThreeSizes

Quote from: CaptainMurdoch on January 06, 2017, 10:31:58 PM
This board requires a Gigabit Ethernet connection, it will not work over 100Mbit ethernet.  This means that you can't plug a 5a-75 directly into a Pi and have it work, you need a Gigabit switch in the middle.  Once we have official support for some other hardware platforms like the Odroid and Pine64 that have Gigabit Ethernet NIC's, you could potentially plug one of those directly into a 5a-75, possibly only needing an Ethernet crossover cable.


You could use a USB2/3 to Gigabit Ethernet Adapter. You will not get the 1000mbps throughput (it would be limited to USB2 speeds under 480mbps) but more importantly it will still train up to gigabit ethernet so it should link up with the 5a-75 board without a switch in-line.





"And what happened then? Well, in Whoville they say that the Grinch's small heart grew three sizes that day."

garyh

Seems like a Pine64 would be an ideal route, then again I like to overbuild stuff.

CaptainMurdoch

Quote from: ThreeSizes on January 06, 2017, 11:03:25 PM
You could use a USB2/3 to Gigabit Ethernet Adapter. You will not get the 1000mbps throughput (it would be limited to USB2 speeds under 480mbps) but more importantly it will still train up to gigabit ethernet so it should link up with the 5a-75 board without a switch in-line.

I want to do some additional testing with this as well.  When I plugged the receiver board into my network on a Gig-E switch, the Windows software was able to discover the board.  I moved the receiver to a 100Mbit switch and it couldn't, but I believe I got a link on the 100Mbit switch.  I do plan to check to see if the Pi will get a link when I plug the receiver directly into the Pi.
-
Chris

Unibits

Do any of the other receiver cards out there work this same way?  I have a linsn setup here that I could help test with if it does. 

(Actually, I have a full blown Pine 64 in the box too.) 

Thanks

ThreeSizes

Quote from: CaptainMurdoch on January 07, 2017, 12:29:13 AM
Quote from: ThreeSizes on January 06, 2017, 11:03:25 PM
You could use a USB2/3 to Gigabit Ethernet Adapter. You will not get the 1000mbps throughput (it would be limited to USB2 speeds under 480mbps) but more importantly it will still train up to gigabit ethernet so it should link up with the 5a-75 board without a switch in-line.

I want to do some additional testing with this as well.  When I plugged the receiver board into my network on a Gig-E switch, the Windows software was able to discover the board.  I moved the receiver to a 100Mbit switch and it couldn't, but I believe I got a link on the 100Mbit switch.  I do plan to check to see if the Pi will get a link when I plug the receiver directly into the Pi.


I have seen similar behavior with devices that appear to train and the switch says link up but does not actually pass traffic.





"And what happened then? Well, in Whoville they say that the Grinch's small heart grew three sizes that day."

CaptainMurdoch

Quote from: Unibits on January 07, 2017, 04:26:40 AM
Do any of the other receiver cards out there work this same way?  I have a linsn setup here that I could help test with if it does. 

According to their web site, the Linsn cards can also be driven directly from a Gigabit Ethernet card without having to have a sender card:  http://www.linsn.com/case_view.aspx?TypeId=29&Id=235&FId=t4:29:4 

The Linsn receiver cards appear to be around the same price as the ColorLight.

I haven't found any protocol information for the Linsn cards, but I did find a german web site where people were discussing the protocol.  Google didn't translate it well enough though, and it appears they never actually wrote any code.  They did post a small network capture of the data going to the receiver card but that is a little hard to follow since I don't know what size panel array they were driving.

If you have a working Linsn setup and can get a packet capture of the data being exchanged between the computer and receiver then I could take a look at the data and see if I think it can be supported.   I can see a sequence or row number incrementing in the data packets and what appears to be pixel data as well
-
Chris

darylc

 
Quote from: CaptainMurdoch on January 08, 2017, 01:20:30 AM
If you have a working Linsn setup and can get a packet capture of the data being exchanged between the computer and receiver then I could take a look at the data and see if I think it can be supported.   I can see a sequence or row number incrementing in the data packets and what appears to be pixel data as well

Anything in particular you want run on the panels for the capture?

Unibits

Quote from: CaptainMurdoch on January 08, 2017, 01:20:30 AM
Quote from: Unibits on January 07, 2017, 04:26:40 AM
Do any of the other receiver cards out there work this same way?  I have a linsn setup here that I could help test with if it does. 

According to their web site, the Linsn cards can also be driven directly from a Gigabit Ethernet card without having to have a sender card:  http://www.linsn.com/case_view.aspx?TypeId=29&Id=235&FId=t4:29:4 

The Linsn receiver cards appear to be around the same price as the ColorLight.

I haven't found any protocol information for the Linsn cards, but I did find a german web site where people were discussing the protocol.  Google didn't translate it well enough though, and it appears they never actually wrote any code.  They did post a small network capture of the data going to the receiver card but that is a little hard to follow since I don't know what size panel array they were driving.

If you have a working Linsn setup and can get a packet capture of the data being exchanged between the computer and receiver then I could take a look at the data and see if I think it can be supported.   I can see a sequence or row number incrementing in the data packets and what appears to be pixel data as well



Chris


Later this week, I will go to the sign that I support.  Long story on it.  The original supplier basically screwed the guy over and walked away.  He tried to double charge the guy after they agreed on a price for the installed package.   They called me and I figured it out and got it working.  That was my first experience with the LINSN stuff.  I suppose I could even test there if you want.

Personally,  I have a 8 panel by 8 panel matrix running with a BBB.  It is not yet configured to use the LINSN stuff as I got a hold of the LINSN stuff but have not yet attempted installation on my application.  I need to figure out the con file for my configuration.

The working sign is a 2 sided outdoor P10 panel setup.  I will get all the info that I can find on it as well as capture the traffic being sent to it.  I am in the middle of producing a ballet at our theater and just don't have the time until later this week.  I believe that I will be able to do this by Friday

Thanks for looking into this



CaptainMurdoch

It doesn't matter really what is being displayed as long as I know the dimensions of the display and you can describe or get a screen capture of what is displaying.  If I can figure out the data format I can probably write a quick script to decode the captured packets into an image.  The colorlight sends one packet per line of display but I can't tell if the Linsn is ding the same thing from the unknown sample capture I found.  There appear to be 274 packets per frame in the capture but that doesn't work out to an even multiple of 8, 16, or 32 row panels.  The packet size is also very large so I am wondering if the Linsn packs data to fill up packets for efficiency.
-
Chris

darylc

 
Quote from: CaptainMurdoch on January 06, 2017, 10:31:58 PM
So I stayed up way too late last night, but I now have a working beta version of a new FPP Channel Output for the ColorLight 5a-75 receiver board. 

Is the code in github somewhere?  My colorlight cards should be here shortly and I'd like to have a play with it.

CaptainMurdoch

Quote from: darylc on January 11, 2017, 06:27:00 AM
Quote from: CaptainMurdoch on January 06, 2017, 10:31:58 PM
So I stayed up way too late last night, but I now have a working beta version of a new FPP Channel Output for the ColorLight 5a-75 receiver board. 

Is the code in github somewhere?  My colorlight cards should be here shortly and I'd like to have a play with it.

I just merged it to master, but if you saw my other post, this branch is in a state of flux.  You can manually configure the new channel output by following the sample channeloutputs.json file in the docs/samples directory..  Channel test mode is working and basic sequence playback is working to a point, so I think you can test a sequence via the test page.  You should be able to put FPP in E1.31 bridge mode and talk through to the ColorLight, but I would advise using two network interfaces in the Pi because the ColorLight data will saturate the network interface.  I used a 100Mbit USB NIC for my testing.  I connected to the system over the built in Ethernet and configured the ColorLight Channel Output to use the USB NIC.
-
Chris

lwillisjr

Is there any advantage of driving panels this way?


The only thing I could think of would be able to stream live video to a particular display.

JonB256

The ColorLight board (and the LINSN) supports panel refresh rates and sizes that the BBB and RasPi don't support. 4:1 refresh would let you use many other panels. Plus that faster refresh means brighter and smoother output.
Long time Falcon, FPP and xLights user

Support FPP

+- Recent Topics

help getting started, next step? by Poporacer
January 28, 2023, 05:10:18 PM

Trying to configure LOR CF50D Floods on FPP Pi Player with PiCap by half.fast
January 28, 2023, 03:19:37 PM

wifi issues on BBB running fpp v6.3 by k6ccc
January 28, 2023, 02:04:23 PM

BBB / FPP sending data to ESP32 WLED by srwmemphis
January 28, 2023, 04:39:02 AM

raspberry PI 3 / PI 4 by mrfix1
January 27, 2023, 07:13:55 AM

Bug in newest release by tbone321
January 26, 2023, 06:14:26 PM

Cannot Connect to F48V4-NS Through Rasberry Pi by Poporacer
January 26, 2023, 03:13:43 PM

new piCaps in the works? by Bwinter
January 26, 2023, 11:25:32 AM

DIY voucher request by CaptainMurdoch
January 26, 2023, 11:14:38 AM

Which volume to grow during setup? by RickR
January 26, 2023, 09:55:17 AM

Powered by EzPortal
Powered by SMFPacks Menu Editor Mod