Bugzilla – Bug 6349
Unable to update SqueezeBox' FW with Jive.
Last modified: 2009-09-08 09:14:27 UTC
Jive FW: 1 r1123(from Richard) SB v3: auto update is off Steps to Reproduce: 1. Install a new version SqueezeCenter. 2. Connect an SB with older FW to SC. 3. SB asks users to press the brightness button. 4. This user is not able to find the equivilent button on Jive, and had to scramble to dig up the old SB remote. 5. This user can imagine many loyal returning customers will have to keep one more remote handy. 6. Jive is a really cool product that everyone will love to in his/her hand all the time. It will be cooler if it can update SB's FW also.
This should probably be addressed in 7.0.1
per discussion today, bug fixes are targetted for 7.0.1, new features for 7.1. This is the latter.
wiping priority field in 7.1 target bugs, as the priorities that were set as 7.0 target bugs are not relevant here.
this bug is actually relevant to fix for 7.0.1, and will likely require a string or strings to be translated (sorry, hard to see there's any way around needing another string) 7.0.1 will be pushing out a new firmware update to players, and there is no facility for triggering a SB/TP firmware update from an SBC. proposal: when player upgrade is needed, push a new window on screen with three components: title: Player Firmware Update textarea: [Player name] needs to be updated with new firmware. menu (1 item): Start update -> press-hold left will work just as in the SBC firmware upgrade window, and disconnect from player and server and go to the home menu, which will include Dean/Michael/Richard, feel free to comment on how this should best work.
I'm a little confused, Ben. It's not possible to trigger a SB firmware update from Jive....
that's the point...you can't do it from Jive right now. In an SB3-SBC combination, the only way to get the SB3 to update its firmware is to dig up your mothballed IR remote. Not good, IMO. what I propose to do is create a CLI command that starts the player fw update. Then we can do it from Jive
Couldn't we have new SB3s autoupdate from the factory? Receiver does this anyway. And any existing user should still have a remote to do this (unless he's got children or a dog).
Just to be clear, it's not possible for the server to trigger a firmware update without flipping the auto-update bit in the player setting. SBR does this already, but we'd need a firmware change to do this in SB3 & TR and beyond. This really isn't major/p1 bug, but does require users to dig out the remote to do an upgrade. For 7.0.1, the best we can do is give better instructions on the Jive display for SB3 & TR users. For 7.1, we should consider turning on the auto-update bit by default in the firmware.
The other option is to send a brightness command to Squeezebox over IR, but that might be confusing as ppl won't be used to pointing Jive at things yet.
my two cents: it's sloppy to require an SB3 owner that bought an SBC to dig out their IR remote for a firmware update, and considering every single SB3/SBC combination will see this when updating to 7.0.1, this seems like something we should have a little cleaner then its current implementation. fwiw, this is not a big deal on transporter since there is a brightness button on the device. also FYI-- I'm pretty sure that the current behavior on SBC is to show a full-screen popup "spinny" that says something like "Updating Squeezebox Firmware". That might be acceptable for 7.0.1 as is, though it does give the user the impression that the SB3 FW update is in progress (as is true with SBR), when in fact it is sitting in the "press brightness to update" mode.
Sure, as Dean said for 7.0.1 we should give instructions on the screen. When we discussed this yesterday I forgot that it was not possible for SqueezeCenter to initiate a firmware upgrade on SB/Transporter as autoupgrade is off by default.
okay, that shouldn't be too hard to implement. just need to tweak the string that's used for "Updating Squeezebox Firmware" to something else for SB3/TPs. Someone want to compose that string, or should I?
Brian are you the right person to review this behavior and come up with a string? Thanks!
yeah I can take a shot at it...
More subtle than I realized. From the screen labeled Now Playing which shows just the current track, holding the + button does nothing. From that screen, pressing the center button takes you to a screen, also labeled Now Playing, with a list of tracks with the current one highlighted. You can move the selection with the knob. When in that display, holding the + button does zap the selected (not necessarily the playing) track, which is IMHO the correct behavior.
Marc it looks like your comment here is for a different bug FYI.
Brian, can i bump you on this. If this is going to be done for 7.0.1 Ben needs the string asap.
Yeah no problem, I'm trying to reproduce now
Since in this case you'd be updating an old player, you should have been using the player for a while and are familiar with the name you gave it right? What if the string said "Updating [player name] firmware?". Only problem would be for users that have always just had the one player and never see the web/desktop interfaces of SqueezeNetwork or SqueezeCenter...
For 7.0.1: How about "Firmware update ready. Please go to settings and turn on Auto Upgrade, then restart" For 7.1: Since in this case you'd be updating an old player, you should have been using the player for a while and are familiar with the name you gave it right? What if the string said "Updating [player name] firmware?". Only problem would be for users that have always just had the one player and never see the web/desktop interfaces of SqueezeNetwork or SqueezeCenter...
Sorry...do the users need to go into SC or SB3 to turn on Auto Upgrade? If SB3 then I guess we have to instruct them to find their IR remote right? In that case the string could be "Software Update ready for [player name]. To begin, press and hold the Brightness button on your original Squeezebox remote" I agree that's clunky, but maybe that's as good as we can do until we get to 7.1
jive r2287 and SC change 18931 lays out what's described in Richard's comment #11 This is fixed for 7.0.1 , but there are new strings, so assigning to Michael. Michael, leave open and push to 7.1 after seeing this. It'd be nice to handle this better in 7.1/Future.
Is it not better to close this bug (so QA know they need to verify the new behavior) and clone the bug for handling this better in the future?
Fixed per Ben's comment 22
reopening for two reasons-- 1. local function for hiding the new "user needs to update player" window was being called in SlimBrowser before it was defined. I checked that fix in with 7.0 trunk r2302 2. after press-hold brightness a playerstatus update with player_needs_upgrade = 1 and player_is_upgrading = 1 is being sent after the download is complete, but it should be sent when it starts.
assigning to Andy to comment and/or fix point #2 in comment # 25. Andy, pass it back to me if this isn't a simple fix.
While looking at this I faked an upgrade to firmware 89 using the firmware 88 file. This results in player_needs_upgrade=1 as soon as the player comes back. Jive doesn't seem to like this and continues to sit in the "Updating Squeezebox firmware" spinny. I expected it to go back to the "needs upgrade" screen.
Ben: Checked in change 19008 which notifies as soon as a firmware upgrade begins. I tested that Jive is getting this playerstatus notification, but does not seem to act on it and switch to the spinny. Assigning back to you.
fixed in Jive 7.0 trunk r2318 Description: send playerNeedsUpgrade notification on playerstatus updates as well as serverstatus updates. This was required to immediately change behavior after user-triggered firmware update is initiated (playerstatus sends player_is_upgrading flag)
This bug has recently been fixed in the latest release of SqueezeCenter 7.0.1 Please try that version, if you still see the error, then reopen this bug. To download this version, please navigate to: http://www.slimdevices.com/su_downloads.html