If your configuration.nix mounts your boot vfat partition at /boot, then nixos-rebuild should make the expected modifications. Files in /boot on an ext4 partition will not be seen by the RPi during boot. (The RPi boot loader can read only FAT partitions, and probably ignores all but one of those.)
The USB-TO-GPIO EVM is shipped with firmware that is incompatible with HCE-BMS products (bq78PL114). The USB-TO-GPIO EVM must be reprogrammed for operation with BMS-HCE devices. This firmware loader is used to change the firmware in the USB-TO-GPIO EVM so that it can be used with the bq78PL114EVM.
If I try to force a firmware update by pressing the control knob after restart I have an error that the firmware file is an invalid size. I have tried this using 4 different USB sticks, one of them freshly formatted, all using FAT32.
TSL Firmware Loader requires IH21 reader firmware 1.2.1 or greater. When upgrading from firmware versions below 1.2.1 we recommend that firmware is installed using the TSL PC Firmware Downloader (v1.27 or above).
Note: with additional equipment, it is also possible to use TSL Firmware Loader to install the 1.2.1 firmware - see the Application Note - TSL Firmware Loader for details of the procedure and equipment required.
My colleague apparently has seen this before (and back then after much cursing and a massive amount of internet browsing managed to find out a cause) and referred to something regarding a required COM port in the loader.conf that is killing off the boot process. Mostly since we don't have a COM port on that VM:
Seems that as long as the COMCONSOLE is in the loader.conf, the boot will fail... And you have no means to get around that to actually edit the loader.conf to remove that bit of text, and allowing the boot to proceed.
The issue I ran into wasn't specifically taking the HA configuration into account, but is referring to a problem in the loader.conf file... And THAT problem will remain with every update apparently, since I assume the loader.conf is just recreated during the update process. As the apparent recreation has the referral to the COMCONSOLE hardcoded in, and that entry needs to be removed on our hypervisors, that will cause a problem on every update, making the update process very much NOT straightforward.
I was under the impression it wouldn't be more than updating the secondary node from the GUI, and once that one is back from it's reboot to update the primary node (again from the GUI), which should kick off a HA failover as part of it's update process. Once the primary is back to select to do a failback, or leave things as-is... The document link I posted however goes about the whole process through the CLI. Which is probably needed due to the loader.conf problem.
Then I hit reboot... And the system went down and properly rebooted again. Our secondary node (once I log in to the webpage for it) shows the 58.32 version as being active. So any update edits the loader.conf to the default, which will NOT work on all hypervisor systems. I suspect it's assumed XenServer is the hypervisor of choice for the NetScalers, and I also assume XenServer has no issues in handeling that comconsole bit of the loader, whereas different hypervisors kind of 'choke' on this.
While trying to upgrade the firmware on the Brocade 4Gb SAN switch i get invalid path error using FTP.
Current firmware Version 5.3.0a.
New version tried: 6.0.0b. While using SAN loader utility to install the firmware shows invalid FOS error.
So I'm looking for the easiest and fastest way to create a firmware update desktop app for an STM32 device (Arm Cortex M7). I would like to have something like CubeProgrammer, but way less functionalities (just programming/flashing). Being a commerciall product for non-programmers CubeProgrammer is not fine. I want something proprietary with my GUI.
The system loaders are designed to be limited, and are not board specific. With your own you can use whatever features they provide. Typically you'd split the functionality in two, a loader and an application. The loader can validate the application, and you can add functionality based on how much flash you commit to each. Also often good to have storage where you can stage the entire update, that way you can ensure integrity before you start, rather than failing mid-way through the process.
When you say "The protocols are documented"... which protocols are you referring to? Where can I find this documentation? Can I just write the binary (from desktop commands) from the start of the flash memory and let the default bootloader do its job?
Have you looked at the CubeProgrammer API and examples? They are installed in the CubeProgrammer directory. This API lets one (with certain skills, of course) develop an updater using a ST-LINK or the built-in bootloader over USB DFU.
Hi all,
Just a quick note to thank MacBrian and Dean for the tips on running .exe applications on the Mac! I didn't really know about Wine or CrossOver, but I followed Dean's very clear instructions for using CrossOver to run the Sky-Watcher firmware loader and it worked a treat. Now let's see if the firmware update solved my root problem of getting Sky Safari to drive the Sky-Watcher Star Discovery wifi goto mount to the right place in the sky!
Thanks again for a great post.
Nick
Just for verification.
Have you gone into the BIOS and checked the settings for boot mode. Since you have an nvme drive and are installing it as the only OS I would suggest that you set the boot mode to uefi only. It may have been set as CSM or similar and that could be confusing the boot loader.
It actually sounds to me like it may have some remaining part of a prior install in the partition table that is confusing the boot loader during the install. If that is the case then making certain that it wipes out all existing partition data and completely rebuilds it should help.
It actually sounds to me like it may have some remaining part of a prior install in the partition table that is confusing the boot loader during the install. If that is the case then making certain that it wipes out all existing partition data and completely rebuilds it should help
This is where I'm stuck. The next part mentions "If HalfKay is running...." and I'm completely lost. I have no idea what HalfKay is and it seems without this, I can't get the Teensy loader into auto mode so I can load the hex file.
Use it like a normal update as explained above.
On power up the yellow LED will blink several times, indicating that your loader was reset.
You will then be able to perform a normal update using one of the firmware files above.
Please try if you are able to connect your Trezor in bootloader mode right from the beginning (without starting firmware update process first). In order to do that, hold both buttons pressed while simultaneously connecting USB cable to the Trezor.
In order to boot Arch Linux, a Linux-capable boot loader must be set up. The boot loader is responsible for loading the kernel and initial ramdisk before initiating the boot process. The procedure is quite different for BIOS and UEFI systems. A detailed description is given on this or linked pages.
The UEFI specification mandates support for the FAT12, FAT16, and FAT32 file systems (see UEFI specification version 2.10, section 13.3.1.1), but any conformant vendor can optionally add support for additional file systems; for example, HFS+ or APFS in some Apple's firmwares. UEFI implementations also support ISO 9660 for optical discs.
UEFI launches EFI applications, e.g. boot loaders, boot managers, UEFI shell, etc. These applications are usually stored as files in the EFI system partition. Each vendor can store its files in the EFI system partition under the /EFI/vendor_name directory. The applications can be launched by adding a boot entry to the NVRAM or from the UEFI shell.
Since each OS or vendor can maintain its own files within the EFI system partition without affecting the other, multi-booting using UEFI is just a matter of launching a different EFI application corresponding to the particular operating system's boot loader. This removes the need for relying on the chain loading mechanisms of one boot loader to load another OS.
A boot loader is a piece of software started by the firmware (BIOS or UEFI). It is responsible for loading the kernel with the wanted kernel parameters and any external initramfs images. In the case of UEFI, the kernel itself can be directly launched by the UEFI using the EFI boot stub. A separate boot loader or boot manager can still be used for the purpose of editing kernel parameters before booting.
First, the kernel unpacks its builtin initramfs into the temporary root. Arch Linux's official kernels use an empty archive for the builtin initramfs, which is the default when building Linux. Then, the kernel unpacks external initramfs files specified by the command line passed by the boot loader, overwriting any files from the embedded initramfs. These external initramfs images can be generated with mkinitcpio, dracut or booster, and are Arch's preferred method for setting up for early userspace.
This procedure installs a specified firmware image and resetsthe FortiDB system to default settings. You can use this procedureto upgrade to a new firmware version, revert to an older firmwareversion, or re-install the current firmware version.
CSM, also known as Compatibility Support Module, is a component of the UEFI firmware, which provides legacy BIOS compatibility by emulating a BIOS environment, allowing legacy operating systems that do not support UEFI to still be used.
Is there any way to get the radio out of bootloader mode via shorting pins or something? I know there is a way to get it into bootloader mode. I imagine the radio is half baked right now due to the failure of qgroundcontrol to load the firmware completely.
When booting, the firmware in BIOS-CMOS needs to recognize which volume has a boot loader to things effectively starting to become highly operationals. But, at this stage, I think, there is no driver, nor a handler of a specific filesystem, available to help BIOS/UEFI to find the boot loader file and load it into RAM. So, how such operation is done? Is there a protocol that manufactures of involved devices follow in order to provide crude communication between CPU and storage device?
760c119bf3