Subscribe to our newsletter

2024-03-18: Dasharo for PC Engines Announcement


Dear PC Engines Enthusiasts, We are thrilled to announce the releases of Dasharo for PC Engines aimed at preserving the value of the iconic hardware that has served our community so well over the years. Our new releases, Dasharo (coreboot+SeaBIOS) v24.02.01.01 and Dasharo (coreboot+UEFI) v0.9.0, represent our ongoing commitment to maintaining and enhancing the PC Engines platforms through open-source firmware.

Introducing Dasharo for PC Engines:

Dasharo (coreboot+SeaBIOS) v24.02.01.01: This release continues our tradition of providing regular firmware updates, integrating the latest coreboot 24.02.01 and SeaBIOS 1.16.0. It's designed for users who appreciate the legacy firmware approach, offering stability, security, and compatibility enhancements. The goal is to deliver validated stable releases quarterly, emphasizing backward compatibility. The planned release of this product is end of Q2’24.

Dasharo (coreboot+UEFI) v0.9.0: For those looking towards the future, this version introduces modern features like UEFI compatibility and Secure Boot, paving the way for next-generation firmware solutions, with the goal of at least one release per year.

How to get Dasharo for PC Engines?

Understanding the importance of long-term maintenance and support, we are introducing a pre-paid-based model. This approach ensures the continuous delivery of firmware updates and establishes a sustainable business model that supports the open-source firmware community. Our 1-Year Dasharo (coreboot+UEFI) Entry Subscription and 1-Year Dasharo (coreboot+SeaBIOS) Entry Subscription is essentially a pre-paid plan that is not automatically renewable. It guarantees you access to the latest updates and dedicated support, maximizing the value and lifespan of your PC Engines hardware. Our source code will always be open and available through Dasharo Github.

If you want to stay up to date, consider following these events:

Dasharo User Group: Join our community of enthusiasts and experts to stay informed about the latest developments, share insights, and contribute to the future of open-source firmware on PC Engines.

Dasharo Developers vPub This is an event series dedicated to discussing the challenges and opportunities of long-term maintenance through open-source firmware distribution. It's a platform for developers, contributors, and users to collaborate and innovate for the future of PC Engines.

Thank you for your continued support and enthusiasm. We can ensure a vibrant and secure future for PC Engines through open-source firmware.

Sincerely,
3mdeb Team

2023-02-03: Open-source firmware sponsorship announcement


Dear PC Engines hardware owners,

We regret to announce that PC Engines, a provider of small and low-power servers for network security, wireless networking, and embedded applications, has discontinued its sponsorship for open-source firmware. Although this is a significant change for the open-source firmware community, our commitment to supporting the hardware remains strong. At Dasharo, we aim to continue the legacy of PC Engines by distributing open-source firmware and putting the community's needs first. Our focus will be on releases and feature sets driven by community support. We are considering a subscription model to ensure stable and reliable firmware updates. Your input is important to us, and we would appreciate your feedback through our survey. Please help us understand how we can better serve the open-source firmware community and ensure its success in the future.

Full details.

Sincerely,
3mdeb Team

Release notes


Release notes describing changes, fixes and known issues in PC Engines apux releases.

Each binary (or archive in case of older images) is cryptographically signed by PC Engines Open Source Firmware Release Signing Key adequate to the official coreboot release (i.e. 4.9.0.x releases are signed by 4.9 Signing Key and 4.10.0.x by 4.10 Signing Key). Legacy releases starting from v4.0.28 are being signed with PC Engines Open Source Firmware Release 4.10 Signing Key. The keys are maintained and managed by 3mdeb company responsible for maintaining PC Engines firmware. Under each release binaries one may find an asciinema record showing example firmware signature verification using appropriate key. The public parts of the keys are available at 3mdeb-secpack repository. For the details of the change please refer to Canary #2.
Following new coreboot release 4.11, a new PC Engines Open Source Firmware Release 4.10 Signing Key has been enrolled. Since v4.11.0.1 and v4.0.30 firmware releases are signed by PC Engines Open Source Firmware Release 4.10 Signing Key. The public parts of the keys may be found on 3mdeb-secpack. The details of the change are also available on Canary #3.

The recommended firmware version is latest mainline v4.17.0.x. Reasons:

  • most of the new features are firstly introduced here in mainline
  • mainline version is more actively developed and maintained than legacy
  • mainline releases have extended validation comparing to legacy due to legacy limitations related to old toolchain and codebase
  • mainline releases are built with newest toolchains

OS status


Some operating system have problems running with different storage medias. These table shows currently tested systems on BIOS v4.10.0.x with corresponding medias:

OS SD card SATA disk mSATA disk USB stick
Voyage (1) OK OK OK(2)
Debian OK OK OK OK(2)
OPNSense OK OK OK OK(2)
pfSense OK OK(*) OK OK(2)

* - works well with BIOS v4.6.8 or later in mainline and all legacy releases; for v4.6.7 and older mainline versions issues with installation and system functionality (installation break, unwanted reboots), can be fixed by adding a hint hint.ahci.0.msi="0", for more information see this document

(2) - all apu boards have problems with USB 3.x stick detection in BIOS, system is working properly, but after reboot/warmboot/coldboot USB stick may not appear in BIOS boot menu (depends on the stick, well working sticks are mentioned in this document)

(1) - Voyage Linux is bootable on SD card and works well in read-only mode, remounting as read-write and writing changes to SD sometimes results in kernel panic which often leads to non-operable system

Read more...

Documentation


The list of most useful documents from documentation:

  • CPU Boost - document briefly describes what the Core Performance Boost is and how to verify it works in BIOS and operating system.
  • Fast Boot - document describing research for Fast Boot path for apu boards. The Fast Boot was intended to restore memory configuration from non-volatile storage and reduce the boot time of the platform. You will find the issues and limitations which did not allow to implement the feature.
  • ROCA TPM vulnerability - document describing ROCA TPM vulnerablity status and verification on TPM1a module form PC Engines.
  • APU mPCIe capabilities - list of all signals and interfaces present on mPCIe connectors for apu2/3/4 boards. The document also describes possible usage of the slots.
  • Cold reset - document describing reset types for the platform.
  • Firmware flashing - document describes how to flash new firmware for apu2 board on various operating systems. Also there is a description how to safely reboot the platform after a firmware update.
  • Microcode patching - a guide how to apply a microcode patch on the firmware level by building a custom firmware image.
  • mPCIe modules - list of supported and tested WiFi and LTE modules. The document also describes issues with certain modules and possible solutions/workarounds.
  • Old build system procedure (deprecated) - document describing build procedure for older PC Engines firmware releases. It is deprecated, do not use unless You want to build old binaries.
  • COM2 serial console - a practical guide how to build a firmware binary with native COM2 console support. If You want to use full RS232 COM1 port for other purposes, read the document how to change the main console port.
  • TPM menu - document describes the usage of TPM configuration menu in SeaBIOS.
  • TPM pin mapping - document showing the TPM1a module pinout. It may be useful for users that would like to connect the TPM1a module to boards other than apu2.
  • VBOOT HOWTO - document describing how to build a coreboot image with vboot support and measured boot mode
  • coreboot with Tianocore payload - document describes how to build a coreboot image with Tianocore payload
  • VBOOT HOWTO - document describing how to build a coreboot image with vboot support and measured boot mode
  • GPIO guide - quick guide how to manipulate GPIOs from Linux sysfs
  • Setup menu - briefly describes the runtime configuration options, setup menu and its usage
  • Runtime configuration - describes the runtime configuration options in detail and how to change the option from operating system without physical access to the machine

Mainline releases

v4.19.0.1

Release date: 2023-02-02

Release date: 2022-08-24

Release date: 2022-07-29

Release date: 2022-06-23

Release date: 2022-05-26

Release date: `2022-04-21`

Release date: 2022-03-29

Release date: 2022-03-08

Release date: 2022-02-16

Release date: 2022-01-11

Release date: 2021-12-03

Release date: 2021-11-05

Release date: 2021-10-19

Release date: 2021-09-17

Release date: 2021-08-06

Release date: 2021-06-29

Release date: 2021-05-31

Release date: 2021-05-05

Release date: 2021-04-02

Release date: 2020-02-26

Release date: 2021-01-27

Release date: 2020-12-28

Release date: 2020-11-27

Release date: 2020-10-28

Release date: 2020-09-29

Release date: 2020-08-27

Release date: 2020-07-29

Documentation


The list of most useful documents from documentation:

  • CPU Boost - document briefly describes what the Core Performance Boost is and how to verify it works in BIOS and operating system.
  • Fast Boot - document describing research for Fast Boot path for apu boards. The Fast Boot was intended to restore memory configuration from non-volatile storage and reduce the boot time of the platform. You will find the issues and limitations which did not allow to implement the feature.
  • ROCA TPM vulnerability - document describing ROCA TPM vulnerablity status and verification on TPM1a module form PC Engines.
  • APU mPCIe capabilities - list of all signals and interfaces present on mPCIe connectors for apu2/3/4 boards. The document also describes possible usage of the slots.
  • Cold reset - document describing reset types for the platform.
  • Firmware flashing - document describes how to flash new firmware for apu2 board on various operating systems. Also there is a description how to safely reboot the platform after a firmware update.
  • Microcode patching - a guide how to apply a microcode patch on the firmware level by building a custom firmware image.
  • mPCIe modules - list of supported and tested WiFi and LTE modules. The document also describes issues with certain modules and possible solutions/workarounds.
  • Old build system procedure (deprecated) - document describing build procedure for older PC Engines firmware releases. It is deprecated, do not use unless You want to build old binaries.
  • COM2 serial console - a practical guide how to build a firmware binary with native COM2 console support. If You want to use full RS232 COM1 port for other purposes, read the document how to change the main console port.
  • TPM menu - document describes the usage of TPM configuration menu in SeaBIOS.
  • TPM pin mapping - document showing the TPM1a module pinout. It may be useful for users that would like to connect the TPM1a module to boards other than apu2.
  • VBOOT HOWTO - document describing how to build a coreboot image with vboot support and measured boot mode
  • coreboot with Tianocore payload - document describes how to build a coreboot image with Tianocore payload
  • VBOOT HOWTO - document describing how to build a coreboot image with vboot support and measured boot mode
  • GPIO guide - quick guide how to manipulate GPIOs from Linux sysfs
  • Setup menu - briefly describes the runtime configuration options, setup menu and its usage

Mainline releases


Release date: 2020-07-29

See an example how to verify the signatures on asciinema

Release date: 2020-03-27

See an example how to verify the signatures on asciinema

Release date: `2019-05-10`

See an example how to verify the signatures on asciinema

Release date: 2019-03-08

See an example how to verify the signatures on asciinema

Release date: 2019-01-04

See an example how to verify the signatures on asciinema

Release date: 2018-12-10

See an example how to verify the signatures on asciinema

Release date: 2018-07-08

See an example how to verify the signatures on asciinema

Release date: 2018-06-08

See an example how to verify the signatures on asciinema

Release date: 2018-06-08

See an example how to verify the signatures on asciinema

Release date: 2018-05-11

See an example how to verify the signatures on asciinema

Release date: 2018-04-06

See an example how to verify the signatures on asciinema

Release date: 2018-03-01

See an example how to verify the signatures on asciinema

Release date: 2018-01-31

  • Fixed/added:
    1. SeaBIOS 1.11.0.3 - enabled UDMA for faster boot, fixed serial console disable bug
    2. screen is refreshed properly in Memtest86+
  • Known issues:
    1. pfSense installation may fail on hard disks
    2. pfSense can not be installed from USB due to xHCi disabled
    3. USB 3.x sticks are handled like USB 2.0 sticks, but are detected
    4. wrong names in SMBIOS causes some modules not being loaded on certain OSes
    5. SD card performance is lower than in legacy releases
    6. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.

See an example how to verify the signatures on asciinema

Release date: 2017-12-29

  • Fixed/added:
    1. SeaBIOS 1.11.0.2 - fixes bug with serial console output shift
    2. disabled xHCI, force EHCI controller on front ports
  • Known issues:
    1. pfSense installation may fail on hard disks
    2. pfSense can not be installed from USB due to xHCi disabled
    3. USB 3.x sticks are handled like USB 2.0 sticks, but are detected
    4. wrong names in SMBIOS causes some modules not being loaded on certain OSes
    5. refreshing screen dos not work properly in Memtest86+
    6. serial console disable option does not affect SeaBIOS
    7. SD card performance is lower than in legacy releases
    8. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.

See an example how to verify the signatures on asciinema

Release date: 2017-11-30

  • Fixed/added:
    1. apu4 support
    2. updated SeaBIOS 1.11.0.1 (removed sgabios)
    3. Memtest86+ is built from coreboot Memtest86+ repository
  • Known issues:
    1. pfSense installation may fail on hard disks - workaround
    2. USB 3.x sticks happen to not appear in boot menu
    3. wrong names in SMBIOS causes some modules not being loaded on certain OSes
    4. restoring default configuration in sortbootorder works only for bootorder
    5. refreshing screen dos not work properly in Memtest86+
    6. serial console disable option does not affect SeaBIOS
    7. SeaBIOS serial console output is sometimes wrongly shifted
    8. SD card performance is lower than in legacy releases
    9. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.

See an example how to verify the signatures on asciinema

Release date: 2017-10-30

  • Fixed/added:
    1. UARTc/c and mPCIe2 CLK enable/disable runtime configuration works now
  • Known issues:
    1. pfSense installation may fail on hard disks - workaround
    2. USB 3.x sticks happen to not appear in boot menu
    3. wrong names in SMBIOS causes some modules not being loaded on certain OSes
    4. restoring default configuration in sortbootorder works only for bootorder
    5. SD card performance is lower than in legacy releases
    6. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.

See an example how to verify the signatures on asciinema

Release date: 2017-09-29

  • Fixed/added:
    1. date format in sign-of-life string
    2. Memtest86+ does nto hang now
  • Known issues:
    1. pfSense installation may fail on hard disks - workaround
    2. USB 3.x sticks happen to not appear in boot menu
    3. wrong names in SMBIOS causes some modules not being loaded on certain OSes
    4. UARTc/c and mPCIe2 CLK enable/disable runtime configuration do not work
    5. restoring default configuration in sortbootorder works only for bootorder
    6. SD card performance is lower than in legacy releases
    7. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.

See an example how to verify the signatures on asciinema

Release date: 2017-08-30

  • Fixed/added:
    1. apu5 support
  • Known issues:
    1. pfSense installation may fail on hard disks - workaround
    2. USB 3.x sticks happen to not appear in boot menu
    3. wrong names in SMBIOS causes some modules not being loaded on certain OSes
    4. Memtest86+ hangs
    5. UARTc/c and mPCIe2 CLK enable/disable runtime configuration do not work
    6. restoring default configuration in sortbootorder works only for bootorder
    7. SD card performance is lower than in legacy releases
    8. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.

See an example how to verify the signatures on asciinema

Release date: 2020-02-25

See an example how to verify the signatures on asciinema

Release date: 2019-10-09

See an example how to verify the signatures on asciinema

Release date: 2019-09-10

See an example how to verify the signatures on asciinema

Release date: 2019-07-08

See an example how to verify the signatures on asciinema

Release date: 2019-06-07

See an example how to verify the signatures on asciinema

Release date: 2019-01-04

See an example how to verify the signatures on asciinema

Release date: 2018-12-10

See an example how to verify the signatures on asciinema

Release date: 2018-11-08

  • Fixed/added:
    1. SeaBIOS: updated to rel-1.11.0.6
    2. coreboot: fixed release date format in DMI tables
    3. coreboot: added console output redirection to COM2 option
  • Known issues:
    1. certain USB 3.x sticks happen to not appear in boot menu
    2. some PCIe cards are not detected on certain OSes and/or in certain mPCIe slots.Check the mPCIe modules document for solution/workaround.
    3. Sometimes pfSense hangs during boot on boards with legacy firmware when no USB stick present. Plugging USB stick workarounds the issue. Problem is during investigation.

See an example how to verify the signatures on asciinema

Release date: 2018-09-28

See an example how to verify the signatures on asciinema

Legacy releases

v4.0.33

Release date: 2020-10-28

Release date: 2020-07-29

Release date: 2020-06-27

Release date: 2020-02-25

Release date: 2019-10-09

Release date: 2019-09-10

Release date: 2019-07-08

Release date: 2019-06-07