Yet another year, and enjoy a fresh new batch of firmware releases. We will take this opportunity to review the various methods available to upgrade the firmware of your Yoctopuce devices, either manually or automatically.
What's new ?
The main reason for updating the firmware on all devices is a bug fix for a race condition that could, in some cases, prevent our modules from waking up properly when the USB bus was switched out of "Suspend" mode. This problem has been seen in particular with some Android tablets (the Nexus 7 and the Motorola Xoom). When the bug was encountered, you had either to reboot the tablet or to disconnect and reconnect the device to get it working again (thanks to Lorenzo from Valarm.net for his help to pinpoint this bug). Although the likelihood of hitting the bug on a PC (or Mac) is quite low, we recommend to upgrade your devices in case of doubt.
We have also added two attributes to the AnButton function of the Yocto-Knob : pulseCounter and pulseTimer. These two attributes can turn your Yocto-Knob into a stand-alone pulse counter. You will find more on this topic in an upcoming blog post ;-)
The Yocto-Amp, Yocto-Volt et Yocto-Watt will benefit from a new internal storage format that will enlarge the theoretical measure range of the device. If you are using your own calibration with these modules, it will let you represent measures larger than 327 V and 32.7A. For the Yocto-Watt, this also improves the rounding of the power measurements. Eventually, although this does not bring any new immediate functionality, the common trunk of all modules has been improved to prepare for an upcoming release of several new modules in the next months.
Download the new firmware
If you are using the VirtualHub, you should automatically receive a message offering to upgrade the firmware of your module. You can download the new firmware directly by clicking on the link "new firmware for this device". If you are not using the VirtualHub, you will always find the latest firmware directly on our web site (http://www.yoctopuce.com/EN/firmwares.php), but you will nevertheless need to download the VirtualHub to perform the actual upgrade.
In the VirtualHub, you get a notification when a new firmware is available
Once you have downloaded the new firmware, you can choose between three methods for the upgrade:
Method 1: The firmware upgrade wizard
This is the easiest method. The wizard will automatically backup and restore all settings of the module (logical name, calibration, etc) during the firmware update. Simply start the VirtualHub, open your favorite browser and enter URL http://127.0.0.1:4444. You should get a list of all connected Yoctopuce modules. In the module list, click on the configure button next to the module, then click on the upgrade button to start the wizard. When prompted to provide the firmware .byn file, select the firmware that you have just downloaded and follow the instructions.
This wizard will guide you through the upgrade process
Method 2: Automated command-line upgrade
Although the method above is very convenient, it may become painful if you have 300 modules to upgrade. The command-line method is more appropriate in this case. The principle is very simple: start the VirtualHub with a command line option "-A <newfirmware.byn>". This will cause the VirtualHub to start in a special mode, where every newly connected module will be checked for compatibility with the .byn file provided as argument. If the firmware file matches the connected module, the firmware will be updated automatically. Device settings such as logical name and calibration are preserved over the upgrade. In practice, this will turn any PC into a firmware upgrade appliance.
Method 3: Upgrade with factory-reset
If you want not only to upgrade the firmware, but also to restore all default factory settings, you can connect the device while keeping the Yocto-Button depressed. This starts the device in a special programming mode. In this mode, the Yocto-Led will stay turned on at full intensity and the module will not be listed along other connected modules. Instead, it will show up separately at the bottom of the page. When you click on its serial number, you can start a programming wizard similar to the first one, but that will not preserve custom settings.
Devices sitting in programming mode are not listed along other devices.