Author Topic: 2.7 Multisync discovery  (Read 125 times)

Online bh2545

  • Newbie
  • *
  • Join Date: Dec 2017
  • Location:
  • Posts: 11
  • Kudos: 0
2.7 Multisync discovery
« on: May 16, 2019, 09:54:14 PM »



 Received and started playing with my group buy boards (Thanks Dan!) also re-imaged a few of last years F8-PB's to 2.7 and I'm seeing some oddities with multisync discovery.  Using 2 controllers (A & B) if A is up and running then you bring up B, B will not see A for about an hour.  If you reboot A, B will then see it but once A is up it won't see B or an hour. 


 Enabling "Legacy FPP Avahi Discovery" seems to work fine.


 If I open xLights (2019.25) and launch FPP Connect that discovery process seems to force everything to sync.  However, FPP Connect only seems to find 1 of the controllers.


Thanks,
Bill


Offline CaptainMurdoch

  • Administrator
  • *****
  • Join Date: Sep 2013
  • Location: Washington
  • Posts: 9,836
  • Kudos: 214
Re: 2.7 Multisync discovery
« Reply #1 on: May 16, 2019, 10:39:33 PM »
This sounds like your WiFi network may not be up before fppd starts so the discovery packets aren't making it in/out.  Try going to the FPP Advanced Settings page and setting a boot delay of 5-10 seconds and see if that fixes it.
-
Chris

Online bh2545

  • Newbie
  • *
  • Join Date: Dec 2017
  • Location:
  • Posts: 11
  • Kudos: 0
Re: 2.7 Multisync discovery
« Reply #2 on: May 16, 2019, 10:55:59 PM »
Thanks Chris!  I've tried changing the boot delay up to 30 seconds, wired and wireless with the same result.  Since other controllers are able to see it, it seems it was able to send the discovery packet.   I've also done a reboot of everything to make sure I wasn't seeing cached entries.

Offline CaptainMurdoch

  • Administrator
  • *****
  • Join Date: Sep 2013
  • Location: Washington
  • Posts: 9,836
  • Kudos: 214
Re: 2.7 Multisync discovery
« Reply #3 on: May 16, 2019, 11:38:02 PM »
With the new discovery code, the cache is in fppd so it is cleared any time you restart fppd.  When fppd starts up, it sends a discovery so it should discover any fpp instance on the network.  The other instances also cache the discoveries that they receive so each fpp instance should have a full list of all other fpp instances on the network.

Online JonB256

  • Supporting Member
  • ******
  • Join Date: Mar 2013
  • Location: Granbury, Texas
  • Posts: 5,189
  • Kudos: 124
    • Granbury Christmas Lights
Re: 2.7 Multisync discovery
« Reply #4 on: May 17, 2019, 05:34:54 AM »
With the new discovery code, the cache is in fppd so it is cleared any time you restart fppd.  When fppd starts up, it sends a discovery so it should discover any fpp instance on the network.  The other instances also cache the discoveries that they receive so each fpp instance should have a full list of all other fpp instances on the network.

This (caching of IP addresses) became obvious to me after a power blip rebooted my Router but not the 3 FPPs I have running (they are on a UPS that for some stupid reason I don't have the router plugged into).

The Master FPP (fixed IP) then showed the old IP addresses of the other two plus their new IP addresses via DHCP. Restarting FPPD on the Master refreshed the cache.

Offline CaptainMurdoch

  • Administrator
  • *****
  • Join Date: Sep 2013
  • Location: Washington
  • Posts: 9,836
  • Kudos: 214
Re: 2.7 Multisync discovery
« Reply #5 on: May 17, 2019, 08:07:19 AM »
This (caching of IP addresses) became obvious to me after a power blip rebooted my Router but not the 3 FPPs I have running (they are on a UPS that for some stupid reason I don't have the router plugged into).

The Master FPP (fixed IP) then showed the old IP addresses of the other two plus their new IP addresses via DHCP. Restarting FPPD on the Master refreshed the cache.

I will think about this a little.  Currently, we update the cached entry when the IP address and hostname fields match.  But in this case, the IP changed and the hostname still matched so a new entry was inserted.  We could probably match just on hostname if it wasn't 'FPP' and check the model just to be safe.  We probably should just include the serial number of the Pi/BBB in the discovery info and use that to check.

Offline dkulp

  • Moderator
  • *****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 1,503
  • Kudos: 87
    • KulpLights.com
Re: 2.7 Multisync discovery
« Reply #6 on: May 17, 2019, 08:31:10 AM »
One note:  even if the IP address changes, after <90 minutes, the original would be removed from the cache anyway.   


I would like to add a new "remove me" ping that is sent out when FPPD stops, but obviously yanking power wouldn't trigger that.




Offline pixelpuppy

  • Hero Member
  • *****
  • Join Date: Aug 2015
  • Location: Dallas, TX
  • Posts: 1,389
  • Kudos: 43
Re: 2.7 Multisync discovery
« Reply #7 on: May 17, 2019, 10:15:58 AM »
I will think about this a little.  Currently, we update the cached entry when the IP address and hostname fields match.  But in this case, the IP changed and the hostname still matched so a new entry was inserted.  We could probably match just on hostname if it wasn't 'FPP' and check the model just to be safe.  We probably should just include the serial number of the Pi/BBB in the discovery info and use that to check.

How about using MAC address as the unique identifier?   Also, a "last seen" timestamp in the Discovery screen would be a nice touch if not too hard to add  ;)
-Mark

Offline CaptainMurdoch

  • Administrator
  • *****
  • Join Date: Sep 2013
  • Location: Washington
  • Posts: 9,836
  • Kudos: 214
Re: 2.7 Multisync discovery
« Reply #8 on: May 17, 2019, 11:22:18 AM »
How about using MAC address as the unique identifier?   Also, a "last seen" timestamp in the Discovery screen would be a nice touch if not too hard to add  ;)

We could use MAC, but serial won't change even if the network does (onboard wired moving to WiFi, USB NIC, etc), so I think serial would be better.  Both the Pi and BB* have the serial number in /proc/cpuinfo.

The discovery cache does have a 'last seen' field, so we could easily show that on the MultiSync setup page.  The value is already in the JSON that is used to populate that page.

Offline jnealand

  • Developer
  • ******
  • Join Date: Aug 2013
  • Location: Kennesaw, GA
  • Posts: 2,903
  • Kudos: 68
Re: 2.7 Multisync discovery
« Reply #9 on: May 17, 2019, 08:46:42 PM »
Now if we could just get FPPConnect to use the same multisync discovery.  When I being it up it takes a long time to discover all my FPP instances (12 at the moment).  And after you click upload the damn list goes away and you have to wait for the slow discovery again before you can upload to a different FPP.
Jim Nealand
Kennesaw, GA all Falcon controllers, all 12v Master Remote Multisync with Pi and BBB P10 and P5

Offline dkulp

  • Moderator
  • *****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 1,503
  • Kudos: 87
    • KulpLights.com
Re: 2.7 Multisync discovery
« Reply #10 on: May 17, 2019, 08:55:43 PM »
Now if we could just get FPPConnect to use the same multisync discovery.  When I being it up it takes a long time to discover all my FPP instances (12 at the moment).  And after you click upload the damn list goes away and you have to wait for the slow discovery again before you can upload to a different FPP.


FPP connect does use the same discovery...  FPP 2.7 does allow much faster discovery from xLights though.   Definitely give it a try once everything is updated to 2.7.




Offline jnealand

  • Developer
  • ******
  • Join Date: Aug 2013
  • Location: Kennesaw, GA
  • Posts: 2,903
  • Kudos: 68
Re: 2.7 Multisync discovery
« Reply #11 on: May 17, 2019, 09:30:48 PM »
Everything is already at master or 2.7 and 2.7.1  I have all the FPPs up (no lights) just to try out the new sparse fseq and and the upload features.  Multisync seems to find all the FPP instance faster than I can time it, but FPPConnect takes many, many seconds. Probably seems longer than it actually is, but after watching multisync it seems like minutes.

Online bh2545

  • Newbie
  • *
  • Join Date: Dec 2017
  • Location:
  • Posts: 11
  • Kudos: 0
Re: 2.7 Multisync discovery
« Reply #12 on: May 17, 2019, 09:32:30 PM »
The discussion of the hostname made me think that I hadn't changed any of my test boards from "FPP", only the IP addresses. Making each hostname unique has everything working as expected.  Thanks!

 

Back to top