To build your own firmware from sources, you'll need access to a Linux computer (or VM) running Ubuntu Jammy with at least 10G free space. For Quadra users, there is no need to build your own images. This article is for those technical folks that want to have more control over their firmware. If you just need to reinstall the firmware, see the post on doing a factory re-install.
The Quadra firmware starts with a base of Armbian to which we add several programs, install the WhiteSur Gtk theme, create a dock, etc. This article explains how to build the base Armbian firmware that we build on. If you just want to flash a pre-built Armbian image built using the steps below, you can find it at https://www.inovato.net/Armbian. You would flash this to a SD card using Balena Etcher or your favorite flash utility.
IMPORTANT NOTE: If you have any questions or problems with this process, by all means use the Armbian Forums to search for information, but please DO NOT ask questions if you can't find your answer. They don't support the Quadra firmware: We do. So please contact us at firstname.lastname@example.org.
To build Armbian yourself:
Note these are the standard steps to build armbian EXCEPT that we download some patches for the WiFi and Ethernet on the Quadra.
First, login to your Linux computer, open a terminal window (ctrl-alt-t) and enter:
sudo apt-get -y install git
git clone https://github.com/armbian/build
Next, get the Quadra board patches by typing:
Confirm overwrites. Then start the build with:
This will first prompt you that it can't update due to some of our patches:
Press enter to continue. Then go through the various screens as follows:
Select what to build: Generally, you will want "Full OS Image for flashing". However, if you just want individual deb files to update portions of an existing installation, select "U-boot and kernel packages".
Kernel Configuration: Just hit enter to keep the existing configuration. The patches applied earlier have already made these changes
Select the target board: You need to get to the "CSC" board list. Press the right arrow and hit enter. Then press the left arrow and hit enter again. Scroll down and select "aw-h6-tv".
Select the target kernel branch: Hit enter to select the "current" branch. Note that the "edge" branch is a work-in-progress. Currently, WiFi will not work.
Select the target OS release package base: You can choose "bullseye" or "jammy". We have tested this with bullseye.
Select the target image type: Select either "image with console interface" for a server build, or "image with desktop environment" for desktop.
Select the default desktop environment to bundle with this image: We have only tested with XFCE.
Select the configuration for this environment: Hit enter to select the only option "base configuration".
Select which kind of software you'd like to add to your build: Generally, we just select "browsers" (scroll down and hit the space bar to select) which will add Firefox. Everything else you can add later.
When you click "OK" your build will start. It will generally take 1-2 hours the first time depending on the speed of your computer. When it is done, you see:
At this point, your image is in output/images. You can flash this to a micro SD card with your favorite flash tool, such as Balena Etcher. Then you insert this SD card into the Quadra (it is a small, almost invisible slot in front of the USB 3.0 connector on the side), and plug it in. After a minute or so, it will prompt you for the root password, ask you which shell you'd like to use, prompt for a username and password, and go through some steps to set the current locale. These steps are done just once.
IMPORTANT: Since Armbian doesn't known about the Quadra device, you must disable Armbian firmware updates. This will prevent it from getting new Linux kernels that don't support this hardware when you do "sudo apt update && sudo apt upgrade". If you don't do this, your Ethernet and Wifi (at least) will stop functioning until you re-install.
To do this, type:
Then select "System" (the first option), then "Freeze" (the second option), then select "Freeze". This will turn the background red to indicate you have disabled updates from the Armbian site (all other updates will continue).
Note: Because we disabled some default patches that break our builds, Armbian won't update as noted above. If you want to rebuild later, the easiest way is simply to create a new folder and start over. This will make sure you are using the latest build scripts.
If anything should fail, please let us know at email@example.com. Don't contact Armbian folks for support. Contact us and we'll try to help. As Armbian is always evolving, it is likely that we will need to update our patches/instructions from time to time.