Love the analogies Dan! Honestly, I wish that the Falcon Controllers supported DDP too. I'm more looking for the protocol efficiency value over E1.31. I'd like to run DDP from the FPP to the Falcon Controllers. Though, overall, since I haven't had an opportunity to test it, I'm not entirely sure how all the configurations work. If I'm running DDP, as an example, I know I'd need to run that on the FPP to the Falcon Controller, but I'm assuming that since the channel setup is different I'd need to also configure DDP in xLights so that the binary files (fseq) are built with the right channel mappings...or does it not matter due to absolute channels being protocol agnostic? All of this is obviously assumptions as I just haven't done it yet.
From what I can tell looking at the code and preliminary spec and such, there are three parts to the zcpp protocol:
1) Discovery - the return from the discovery contains a bunch of information about the controller. Number of ports, protocols supported, etc....
2) Software can use the stuff in 1 to create config packets to send to the device so the device can configure itself to match.
3) Channel data/sync - this is VERY similar to DDP.
What I want is the ability to use parts 1 and 3, but skip part 2. If the discovery result contained the start/end channel that it is configured to need, it becomes very useful for things other than pixel strings. Think P10 panels. I'd love for FPP and xLights to be able to send out a discovery and get back all the information about the various FPP instances along with the Falcon things. With the work I did last week in FPP, having it report the channel range it uses/needs is easy. Anyway, it would give us the benefits of DDP, but easier to use. Anyway, I'll be following up with Dave about some of this to make sure it can work that way. May need to adjust the protocol a bit, but that's why we're looking at it and it's not released yet.
