This is a preview/beta build intended to make your life a little easier at the burn.
I’ve added a fallback mode in the event the leader is offline and you press a button on a follower. It will now fall back to whatever patter mode it was set for before it became a follower, and advance to the next item.
If/when the leader comes back online, the follower should start syncing again automatically.
The fallback mode (shuffle, playlist, etc) can be changed by temporarily removing it as a follower, setting it up as you like, then following again.
This should make it much better for more ad-hoc follower setups where followers can still work solo when out of range without having to change the config.
This also includes the APIs for controlling a playlist programmatically, as discussed here.
@jeff I know you specifically asked for this! Let me know if you run into issues!
Epic! I had also asked for this!
I have steered clear of any and all beta software for PixelBlaze in the past – but this will probably cause me to change my tune. But… changing my tune would require updating a dozen devices or so, and I just tried to do the first one and… I’m clearly missing something obvious. How do you update a PixelBlaze to new beta hardware? I’ve only done the WiFi driven web update process.
(Or if other folks plan to test it and this will release to GA on Web by Monday, I could just wait).
While I’m asking questions: to clarify, this is, in fact, meant to be an “and” not an “or” in your comment?
in the event the leader is offline and you press a button on a follower
So if the leader goes offline, and there’s no button press, the follower PB continues the last pattern the leader had?
There’s an /update url and a fancier /recovery.html tool that gives progress. Both accept the Signed Transfer Firmware Update (stfu) files.
Correct, the follower normally will just wait for the leader to come back. However in many cases it has already preloaded the next transition as well. It’s fairly resilient to small disruptions.
If it hasn’t seen any packets from the leader for 5 seconds a button press can then activate the local pattern system. If it has been less than 5 seconds the followers button press is forwarded to the leader, which may not receive it if it’s offline or out of range during those 5 seconds.
Would there be any downsides to replacing the required button push to just a 1 minute timeout?
This — from @jeff — would be by far my preferred UX implementation as well. For wearables, the button is often not easily accessible, and a lot of the time, they wearer can’t actually see their own lights to see what the pattern is doing.
The “degrade to prior playlist or pattern after one minute without connectivity” is exactly the way I would want, @wizard .
On Playa, expecting someone out at night to (1) notice their lights aren’t following the leader anymore, (2) fumble around in a pocket or belt or whatever to do something about it and (3) press the button seems… surprisingly unlikely.
I know it might sound like a small implantation detail, but it’s an important one I think.
One minutes is enough that if the leader just wandered off briefly everything is still fine.
So either 5s and button or one minute no button?
For my use case (which basically is getting the dozen+ folks I taught how to build simple wearables last month to go out on Playa as a crew to use this feature and look cool when next to each other as a group), one minute no button is the only UX I expect / want.
However, I can see the “point” of 5 seconds + button, however, especially since the devices would all stay roughly in sync on their own until the leader returned (all playing the same last pattern), even though I think it’s not as useful.
I’m working this out in my head – if the “last pattern” was something with good visual interest, like the ones based on the palette rotating code, it’d probably be fine?
Yeah, the “or” there seems quite useful.
I’m thinking if someone is there pressing the button they expect it to do something.
In follower mode that usually forwards to the leader and advances the playlist — which could be either hilarious or annoying if several people in a follower group of people started doing that.
Out of the range of the leader I think quickly starting the local pattern stuff when someone is mashing the button feels reasonable. Otherwise it would feel broken. It will switch back if the follower is in range.
Yes the residual timesync would still be in place, so if a bunch of disassociated followers all switched to eg fast pulse, it would still be synchronized.
In that case I think it would be "after disconnect + 5 seconds and button press OR disconnect + 1 minute, do XYZ, since adding more options / switches / buttons kind of goes against your (correct) design philosophy.
Now will auto switch after 1 minute of not seeing leader. OR button press after 5s.
You are a HERO. I just installed 3.51 on a test board to make sure I understood the beta update process (it worked), and will try to do some actual testing tonight or over the weekend.
(I / my camp got ambitious with some decorative lighting, and I’m trying to wire up a expander board where I should have just sprung for the Pro Expander – this will be right after that project…)