Projects:Orange Pi 4 Workstation

From Dejvino's Knowledge Base
Revision as of 21:39, 23 April 2020 by Dejvino (talk | contribs)
Jump to navigation Jump to search

Project: Workstation computer built using Orange Pi 4 running Linux fulfilling Goal:Technology.

Requirements

  • open source software
    • ability to build all of the components and utilities from source
  • standalone and independent
    • ability to build on the target hardware in order to be independent
  • up-to-date software
    • mainline kernel (with only a few necessary patches)
    • actively maintained distribution
  • NO binary blobs

Hardware

Details: Orange Pi 4 Hardware

  • multiple 64-bit ARM cores which provides enough horsepower for common tasks
  • 4 GB of LPDDR4 RAM is sufficient for common tasks given it will run Linux
  • 1 Gbps Ethernet & WiFi & Bluetooth for solid connectivity
  • tiny form factor frees up lots of space (compared to a standard desktop tower PC)
  • low power consumption makes this cheap to run
  • low noise levels thanks to a single slow running fan

Software

Booting

(!) The Orange Pi 4 board is only usable with a strong and reliable power source!

USB-C and the barrel DC connector behave differently. When powering the board through USB-C the system booted. Using the barrel connector did not boot the board.

Experimental Stage

  1. Try pre-built images
  2. Try custom-built images
    • BSP Linux on Orange Pi 4: [+] collection of shell scripts useful for studying, [–] couldn't get it to boot, not very robust.
    • Armbian on Orange Pi 4: [+] generic build system, patch files applied to mainline repositories, [–] x86_64 Ubuntu build system not usable on the target device
      • Legacy kernel (4.4.213), Ubuntu Bionic, standard console image: OK
      • Current kernel (5.4.32), Ubuntu Bionic, minimal console image: OK
      • Current kernel (5.4.32), Ubuntu Bionic, standard console image: OK
      • Dev kernel (5.6.4), Ubuntu Bionic, minimal console image: OK
  3. Design a custom image-building process
  4. Build on the target device

Target Stage