Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages
FWUP(1) User Commands FWUP(1)

fwup - configurable embedded firmware update creator and runner

fwup [OPTION]...

fwup is a self-contained utility for creating and applying firmware update files. Firmware update (.fw) files are nothing more than zip archives containing metadata, a limited set of instructions, and data. On an embedded device or on a host PC, fwup is used to write nonvolatile memory (eMMC, SDCards, etc.) in such a way as to upgrade the firmware on the device or to completely initialize it.

-a, --apply
Apply the firmware update
-c, --create
Create the firmware update

-d <file> Device file for the memory card

-D, --detect List attached SDCards or MMC devices and their sizes

-E, --eject Eject removable media after successfully writing firmware.

--no-eject Do not eject media after writing firmware

--enable-trim Enable use of the hardware TRIM command

--exit-handshake Send a Ctrl+Z on exit and wait for stdin to close (Erlang)

-f <fwup.conf> Specify the firmware update configuration file

-F, --framing Apply framing on stdin/stdout

-g, --gen-keys Generate firmware signing keys ( and fwup-key.priv, or specify with -o)

-i <input.fw> Specify the input firmware update file (Use - for stdin)

-l, --list
List the available tasks in a firmware update
-m, --metadata
Print metadata in the firmware update

--metadata-key <key> Only output the specified key's value when printing metadata

Report numeric progress

-o <output.fw> Specify the output file when creating an update (Use - for stdout)

-p, --public-key-file <keyfile> A public key file for verifying firmware updates (can specify multiple times)

--private-key <key> A private key for signing firmware updates

--progress-low <number> When displaying progress, this is the lowest number (normally 0 for 0%)

--progress-high <number> When displaying progress, this is the highest number (normally 100 for 100%)

--public-key <key> A public key for verifying firmware updates (can specify multiple times)

-q, --quiet

-s, --private-key-file <keyfile> A private key file for signing firmware updates

-S, --sign Sign an existing firmware file (specify -i and -o)

--sparse-check <path> Check if the OS and file system supports sparse files at path

--sparse-check-size <bytes> Hole size to check for --sparse-check

-t, --task <task> Task to apply within the firmware update

-u, --unmount Unmount all partitions on device first

-U, --no-unmount Do not try to unmount partitions on device

--unsafe Allow unsafe commands (consider applying only signed archives)

-v, --verbose
-V, --verify
Verify an existing firmware file (specify -i)

--verify-writes Verify writes when applying firmware updates to detect corruption (default for writing to device files)

--no-verify-writes Do not verify writes when applying firmware updates (default for regular files)

--version Print out the version

Accept automatically found memory card when applying a firmware update
Print the memory card that would be automatically detected and exit
Fast compression (for create)
Best compression (default)

Initialize an attached SDCard using all of the default options:
$ fwup myfirmware.fw

Create a firmware update archive:

$ fwup -c -f fwup.conf -o myfirmware.fw

Apply the firmware to an attached SDCard. This would normally be run on the host where it would auto-detect an SDCard and initialize it using the 'complete' task:

$ fwup -a -i myfirmware.fw -t complete

Apply the firmware update to /dev/da0 and specify the 'upgrade' task:

$ fwup -a -d /dev/da0 -i myfirmware.fw -t upgrade

Create an image file from a .fw file for use with dd(1):

$ fwup -a -d myimage.img -i myfirmware.fw -t complete

Generate a public/private key pair:

$ fwup -g

Store fwup-key.priv in a safe place and on the target. To sign an existing archive run:

$ fwup -S -s fwup-key.priv -i myfirmware.fw -o signedfirmware.fw

Also see the unit tests that come with fwup source code for more examples. Obtain source code and report bugs at

Written by Frank Hunleth.

Please report any bugs on the project page at <>.
April 2022 fwup 1.9.0

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.