Group: Hardware/Computers/Single Board Computers

From LibrePlanet
< Group:Hardware‎ | Computers
Revision as of 21:19, 7 November 2013 by Sudoman (talk | contribs) (A31 doesn't have a mali gpu.)
Jump to: navigation, search

Single-board computers (SBCs) are computers delivered as one circuit board that are powerful enough to run a real operating system. They generally contain a System-on-a-Chip (SoC) with an ARM processor. SBCs normally run the GNU/Linux system, but that doesn't mean that all is well for software freedom on these boards. Each existing SBC model has major flaws -- hardware that doesn't work without running a nonfree program.

These boards are basically usable in the free world, but important hardware features are nonfunctional. These flaws have workarounds, but the workarounds are far from painless.

  • The BeagleBoard (various versions) as well as the PandaBoard use the TI OMAP family of SoCs. These come with free startup software as well as free drivers for the peripherals.
    • However, the graphics accelerator (GPU) and the video decoding hardware for formats such as MPEG-2 are nonfunctional, because they require nonfree blobs to be installed into them. The workaround for these flaws is to do these jobs on the CPU with free software.
    • The Pandaboard has another serious flaw: a WiFi and Bluetooth chip that can't work without nonfree software. The workaround is to get an external USB device for these functions, if you want them. See the documentation of your board for information about using these USB devices with it.
  • The AllWinner A13/A10/A20 platforms come in many boards such as the A13-OLinuXino, Cubieboard (various versions), Gooseberry and Hackberry.
    • It seems like U-Boot-sunxi now supports internal memory. Prior to this, the device had to be booted from an SD card every time.
    • In addition, the GPU and the video decoding hardware are unusable in the free world, so these jobs must be done on the CPU.
    • The Gooseberry and some versions of the A13-OLinuXino contain a WiFi chip that doesn't work without nonfree software. See the documentation of your board for information about using these USB devices with it.
    • People are working on free software support for the internal memory, the Mali GPU and the Cedar A/V decoder. Please contribute to these projects! The free software for Mali is Lima, and info for CedarX is here.


Single-board computers with fatal flaws

  • The Raspberry Pi requires nonfree software to start up. It can't reach the point of executing free software unless this nonfree program is part of the installed system software.
    • The startup program is, in fact, the same program that runs the GPU and the video decoding hardware. Thus, the GPU and the video decoding hardware are unusable in the free world, but these jobs can be done with free software on the CPU.
    • That program appears to implement intentional restrictions, such as blocking the video decoding hardware for MPEG-2 and VC-1 in the absence of a key that is specific to the machine in hand.
  • The Odroid-X, Odroid-X2, Odroid-U, Odroid-U2 and Arndale boards use the Samsung Exynos SoC. It requires nonfree startup software. Making things even more hopeless, it is very difficult to replace that program with free software, since the board requires the startup software to have a checksum computed by a secret algorithm. In addition, the GPU and hardware video decoding require nonfree software, but these jobs can be done with free software on the CPU.
    • In addition, the Arndale is normally sold with a WiFi module board that requires nonfree software.
  • The Minnowboard's bootup software is only partially free software: non-free parts are required to setup its hardware during startup. Moreover, its GPU has a PowerVR core, which requires non-free software to work.
  • The Intel Galileo board, even though it is presented to be a microcontroller, runs a GNU/Linux operating system. While it would be possible to run a fully free system on the board, it needs non-free software to startup (the BIOS is proprietary).

Thanks to Paul Kocialkowski for collecting the information for this page.