The SpinetiX players' firmware has a built-in update mechanism to allow for incremental firmware updates via the network or USB connection. This ensures the device can receive the latest features, bug fixes, and security patches without needing physical access.
The simplest way to have the latest firmware version on your player is to access the Control Center interface of the player, check for firmware updates, and start the update, if a newer version is available. Optionally, you can enable automatic updates and set at what time the player should check each day the server for updates. The firmware update source can be the SpinetiX update server (default option), your own web server, or a USB drive plugged into the player. It is also possible to trigger a firmware update via an RPC command.
The duration of a firmware update heavily depends on the difference between the current and the newer firmware versions - the greater the gap, the longer the process; the network connection speed can also be a factor. Sometimes, the update may require multiple steps, and the player may reboot several times, including into Recovery mode (see the note below). Even if the incremental update process is usually longer than flashing the firmware, it has the advantage that the user content and the configuration settings are preserved on the player.
Notes:
Make sure that the device is not powered off during the firmware update.
During the firmware update, each library is downloaded, uncompressed, verified for integrity, and then installed. At the end, the player is automatically rebooted.
In case of a major firmware update, the player may decide to automatically boot in Recovery mode to perform the update. This is normal and the process must NOT be interrupted in any way! When finished, the player will boot back in the normal mode using the new firmware, the same configuration as before, and with all user data and previous logs preserved.
When updating the firmware from the SpinetiX server, the player must have access to the Internet and be able to reach the SpinetiX update server – we are using Amazon CloudFront as content delivery network (CDN). Here are the default update links, accordingly to the player model:
Once there, wait a little bit for the automatic check to be completed – the result is shown within the firmware information box; an exclamation mark is shown when updates are available.
Click on the box to see more details about the available updates.
Press the "Update Now" button to proceed with the firmware update.
You are being redirected to an “Updating Firmware” page from which you can monitor the update process.
For detailed information, press the "show" button, next to the “Logs” label.
When the process is completed, you should see a message saying
Firmware Updated Installed firmware version 4.9.5 (build r1.0.0.0). Restarted successfully, you can now use the device.
Check that the "Update source" is set to the SpinetiX server, as detailed above.
If it is not, then revert it to the default location from the Operations → Reset page.
Click on the "Check Now" button.
At the end of the check, the page reports the status, which can be:
X updates available: Firmware version 4.9.x (build 1.x.xxxxx).
No updates available: The player is using the latest version.
Update failed or Fatal Error: See the Troubleshooting section for more details.
If there are updates available, press the "Update Now" button to proceed with the firmware update.
Sometimes, the newer firmware might not be available on the the mainstream update channel right away, like in the case of a major firmware release, but on a different location (e.g., http://download.spinetix.com/hmp-next/updates/). If so, go to Advanced Applications → Firmware page and configure the new firmware update server URI, then update the firmware, as explained above.
Update from USB drive
To update the firmware from a USB flash drive, follow these steps:
Make sure that the USB drive is formatted as FAT32. (NTFS is not supported)
Extract this zip archive file into the root of the USB drive and check that a folder named "updates" was created. The directory structure must not be modified!
Connect the USB drive to the player and wait a few seconds for the USB device to be recognized.
Open the Control Center ⇾ Peripherals ⇾ USB on that player and make sure that the USB drive is detected as "Used as Updates".
This will first update the player's firmware to 4.6.5 build 3 to prepare the system for the upgrade to DSOS;
Then, once that's completed, it will update the firmware to DSOS 4.7.2;
During this second part, the player will automatically boot in Recovery mode to perform the OS update, and boot afterwards back in normal operating mode using the new firmware, the same configuration as before, and with all user data and previous logs preserved.
This will first update the player's firmware to 4.6.5 build 3 to prepare the system for the upgrade to DSOS;
Then, once that's completed, it will update the firmware to DSOS 4.7.2;
During this second part, the player will automatically boot in Recovery mode to perform the OS update, and boot afterwards back in normal operating mode using the new firmware, the same configuration as before, and with all user data and previous logs preserved.
It is possible to configure the player to check daily and automatically update the firmware, from SpinetiX server or from your own web server, as follows:
Set the hour during the day when the player should check the server for updates.
Click the "Apply" button to save the modifications.
It is possible to configure the server URI and the update hour using the Configuration API, as shown here. You can also use the RPC API to apply such configuration.
Troubleshooting
Update failed
The most probable source of this error is that the player could not contact the update server. Check that the network settings are correct and it has Internet connection. Then check out the error message reported in the update log against the ones detailed below:
failed parsing repository URI
The updates website is temporarily unavailable or a proxy server / ISP warning page is being returned instead of the SpinetiX site page. Check the Server URI in a browser on a PC running the same network configuration.
failed retrieving repository path 'repodata/repomd.xml' (could not connect to server)
There is a problem with the player connection to the Internet. Fix the connection issue and try again.
failed fetching 'repodata/repomd.xml' (404 Not Found)
The update server name is most likely misspelled. Reset to the default SpinetiX server and try again.
failed fetching 'repodata/repomd.xml' (server or proxy hostname lookup failed)
Make sure that a network gateway and DNS servers are correctly configured and that the player is connected to the network.
Most probably the player is configured to use a proxy for Internet access and the proxy is returning the 403 error; either remove the proxy or change the settings on the proxy server to allow the access to our server. Otherwise, it could be a transparent proxy or firewall in between that forbids this file - a possible workaround is to use HTTPS instead of HTTP.
failed fetching '***.rpm' (400 Bad Request or 403 Forbidden)
This can happen when using a proxy to connect to the Internet. The download of the repomd.xml was successful, but the *.rpm files are blocked by the proxy. Contact your network administrator or use an alternative firmware update method.