This is a very old post about a board first released in 2021 and which is still sold by
LoveRPi and supported by the manufacturer
Libre Computer. It also remains supported by
Armbian.
Many links to OS images given below are no longer valid. If you get a 404 error, try
https://distro.libre.computer/ci/ which has images for Debian 11 and 12, Raspbian 10, 11 and 12, and Ubuntu 20.04, 22.04 and 23.04. Select an image with the
+arm64 suffix as in
debian-12-base-arm+arm64.img.xz or
ubuntu-23.04-preinstalled-server-arm+arm64.img.xz.
This is from Install An Operating System in the GitHub repository Libre Computer La Frite AML-S805X-AC by Paul Jobson (pjobson) which contains much more current information.
Most links to resources found on
loverpi.com are no longer valid.
Libre Computer may have the desired information.
2025-10-14
Back on the October 17, 2018, I backed a Kickstarter project by Libre
Computer, named La Frite: Open Source Fries. This is another single board
computer, but with two twists: it is based on the Amlogic S805X SoC and there
is no SD card. This was the first time I took a chance on a crowd funded
project and I got in near what I thought was the end of the funding campaign
as delivery was slated for November 2018. There was a slight delay, and I
received the package in the mail yesterday (July 10).
Reading some comments on the Web from backers who had received their
board a few days before, I expected to have some problems. However, I
managed to get Debian Stretch running in a couple of hours, including time
spent trying to assemble information.
Table of Contents
- Dirth of Information
- First Boot from eMMC Module
- Second Boot from USB Drive
- Transferring the OS to the eMMC Module
- Some Basic Steps
- Wi-Fi
- System Temperature
- Headers and UART
- Installing Another Image: Ubuntu
- Conclusion
I had ordered the Small Meal with Large Fries package which included:
- La Frite 1GB,
- 8GB eMMC,
- 2.5A Power Supply with LED and Power Button,
- HDMI Cable.
The last two items were not needed but I was happy to get an eMMC module
with a preloaded OS.
When the package arrived, it contained exactly what was listed, without
any other information except for a URL on the box. YouTuber djismGAMING
obtained the same package and has put up a video entitled La Frite |
Pledge Unboxing | Libre Computer. For those who already have the Small
Meal, there is not much to be learned from it as it is strictly and
unboxing without any attempt at connecting the SBC. For those that are
curious about the board it might be interesting. I strongly recommend that
all watch the second video put out by djismGAMING just a couple of hours ago:
La
Frite Debian 9 XFCE | eMMC install and flash. It covers sections 2, 3
and 4 of this post but using an attached keyboard, mouse and
monitor. I prefer running the SBC in headless mode.
The URL on the box, www.libre.computer, turned out to be a link to another
Libre Computer project, but I did find the La Frite in the
Products/Boards menu. Most of the tabs are empty pages. Clearly
Libre Computer has not had time to set up the Web site. So I went on a hunt
and this is the list of links to sites with information on La Frite that I
found.
- Wiki
- http://wiki.loverpi.com/sbc:libre-computer-aml-s805x-ac
- Forum
- https://forum.loverpi.com/categories/libre-computer-aml-s805x-ac
- GitHub
- https://github.com/libre-computer-project
- Redit
- https://www.reddit.com/r/LaFrite/
- Downloadable Debian Stretch Images
- http://share.loverpi.com/board/libre-computer-project/libre-computer-board/image/debian/
- Downloadable Ubuntu Bionic Images
- http://share.loverpi.com/board/libre-computer-project/libre-computer-board/image/ubuntu/
- Linux for Amlogic Meson
- linux-mason
I plugged the eMMC module into the socket on the bottom side of the
board, the power supply into the micro-USB socket and an Ethernet cable
into the RJ-45 connector and powered up the board. It should have booted
as the description of the Small Meal with Fries clearly indicated
that at least one OS would be on the module.
Don't have time to mess around with flashing software? Get an out
of the box plug and play kit with the option of Ubuntu 18.04 Bionic LTS or
Android 8 Oreo for less than a Raspberry Pi 3.
It did not boot, but I was not surprised having read some comments on
the Forum and Redit page. Time to power down the board and go look
for an image.
I had no way to load an image on the eMMC module. But La Frite can boot
from a USB thumb drive. Here are the steps I took to boot this new board as a
headless server(i.e. no monitor, no keyboard and no mouse). For this to work
the SBC must be connected to the local area network with an Ethernet cable,
and a desktop computer must be connected to the same LAN. My desktop runs
Linux, but the steps described here can be done with a Mac or Windows
computer.
- I downloaded the first of the four images of Debian Stretch provided by
Libre Computer to my desktop computer.
- Using Balena Etcher, I burned that image onto a Verbatim 32 GB Store
'n' Flip USB 2.0 drive that was not being used. A smaller drive would have
been sufficient; the eMMC module is only 8 GB.
- I plugged the USB stick int the USB port furthest from the IR receiver
and GPIO double row header. In other words, it's the USB port on the
bottom right when looking at La Frite from above with the HDMI, RJ45 and
micro-USB connectors at the top. The machine will not boot from a USB drive
containing an OS if the device is connected to the other USB port.
- I powered up the board and waited until the red and green LEDs on the
board were lit. I waited some more until the activity of the two LEDs on the
RJ45 connector showed that an Ethernet connection has been
established.
- A Quick Scan with Zenmap (nmap) of the network, in my case
192.168.1.0/24 reported a new device:
Nmap scan report for 192.168.1.126
Host is up (0.0070s latency).
Not shown: 99 closed ports
PORT STATE SERVICE
22/tcp open ssh
MAC Address: 18:xx:xx:xx:xx:xx (Unknown)
It was then possible to open an SSH session from my
desktop computer named hp.
michel@hp:~$ ssh libre@192.168.1.126
The authenticity of host '192.168.1.126 (192.168.1.126)' can't be established.
ECDSA key fingerprint is SHA256:aHHwrnhl89PYVaBKHz8FipIuWF8gmj2CPBqiA6oKR0Agg.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.126' (ECDSA) to the list of known hosts.
libre@192.168.1.126's password: computer this is not echoed to the screen
Linux libre-computer 4.19.57+ #55 SMP PREEMPT Thu Jul 4 13:38:48 EDT 2019 aarch64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Apparently some had problems updating and upgrading their system which,
according to dedxi, was caused by an incorrect specification
in /etc/fstab. I checked the file and found that the UUID for
the /boot/efi partition was specified so it was not necessary to change
anything. Just to confirm, I updated and upgraded the system without problem.
libre@libre-computer:~$ sudo apt update && sudo apt upgrade -y
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for libre: computer this is not echoed to the screen
Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]
...
The following packages will be upgraded:
debian-archive-keyring
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 73.9 kB of archives.
After this operation, 30.7 kB of additional disk space will be used.
...
Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg ...
Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg ...
libre@libre-computer:~$ sudo reboot
Connection to 192.168.1.126 closed by remote host.
Connection to 192.168.1.126 closed.
michel@hp:~$ ssh libre@192.168.1.126
ssh: connect to host 192.168.1.126 port 22: Connection refused
michel@hp:~$ ssh libre@192.168.1.126
ssh: connect to host 192.168.1.126 port 22: No route to host
...
after waiting a little longer
...
michel@hp:~$ ssh libre@192.168.1.126
libre@192.168.1.126's password: computer this is not echoed to the screen
Linux libre-computer 4.19.57+ #55 SMP PREEMPT Thu Jul 4 13:38:48 EDT 2019 aarch64
...
libre@libre-computer:~$ sudo apt update just checking
...
Reading state information... Done
All packages are up to date.
This shows that booting the July 6 version of Debian from a USB stick
not only works like a charm, but it was also possible to update and
upgrade the system. It seems that the new OS image has resolved many
problems experienced by others before. What a Difference a Day Makes
as the song says. The next step is to move the OS to the eMMC module.
Looking at storage devices, we see the USB stick as device sda
and the eMMS module as device mmcblk0 which is empty.
libre@libre-computer:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 28.9G 0 disk
├─sda1 8:1 1 255M 0 part /boot/efi
├─sda2 8:2 1 27.8G 0 part /
└─sda3 8:3 1 872M 0 part [SWAP]
mmcblk0 179:0 0 7.3G 0 disk
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk
The lc_distro_transfer utility is used to copy the OS image
over to the eMMC module. It is possible to run the program in a semi-interactive
way to build up the full command needed to copy the image.
libre@libre-computer:~$ sudo lc_distro_transfer
[sudo] password for libre: computer this is not echoed to the screen
Available Vendor/Model List:
libre-computer/aml-s805x-ac
libre@libre-computer:~$ sudo lc_distro_transfer libre-computer/aml-s805x-ac
Available Block Device List:
/dev/mmcblk0 emmc
/dev/sda
libre@libre-computer:~$ sudo lc_distro_transfer libre-computer/aml-s805x-ac /dev/mmcblk0
Transferable Distro List:
lc-debian-9-headless
libre@libre-computer:~$ sudo lc_distro_transfer libre-computer/aml-s805x-ac /dev/mmcblk0 lc-debian-9-headless
1+0 records in
1+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0305297 s, 34.3 MB/s
Welcome to fdisk (util-linux 2.29.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x7849383b.
Command (m for help): Created a new DOS disklabel with disk identifier 0x8a6ed536.
Command (m for help): Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): Partition number (1-4, default 1): First sector (2048-15269887, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-15269887, default 15269887):
Created a new partition 1 of type 'Linux' and of size 255 MiB.
Command (m for help): Selected partition 1
The bootable flag on partition 1 is enabled now.
Command (m for help): Selected partition 1
Partition type (type L to list all types): Changed type of partition 'Linux' to 'EFI (FAT-12/16/32)'.
Command (m for help): Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): Partition number (2-4, default 2): First sector (524288-15269887, default 524288): Last sector, +sectors or +size{K,M,G,T,P} (524288-15269887, default 15269887):
Created a new partition 2 of type 'Linux' and of size 7 GiB.
Command (m for help): Disk /dev/mmcblk0: 7.3 GiB, 7818182656 bytes, 15269888 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x8a6ed536
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 * 2048 524287 522240 255M ef EFI (FAT-12/16/32)
/dev/mmcblk0p2 524288 15269887 14745600 7G 83 Linux
Command (m for help): The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
mkfs.fat 4.1 (2017-01-24)
btrfs-progs v4.7.3
See http://btrfs.wiki.kernel.org for more information.
Detected a SSD, turning off metadata duplication. Mkfs with -m dup if you want to force metadata duplication.
Label: SYSTEM
UUID:
Node size: 16384
Sector size: 4096
Filesystem size: 7.03GiB
Block group profiles:
Data: single 8.00MiB
Metadata: single 8.00MiB
System: single 4.00MiB
SSD detected: yes
Incompat features: extref, skinny-metadata
Number of devices: 1
Devices:
ID SIZE PATH
1 7.03GiB /dev/mmcblk0p2
At subvol /tmp/tmp.KevI54w60Y/@lc-debian-9-headless
At subvol @lc-debian-9-headless
539MiB [9.87MiB/s] [====================================================================> ] 52%
Create a snapshot of '/tmp/tmp.ALK3IJXKmi/@lc-debian-9-headless' in '/tmp/tmp.ALK3IJXKmi/@'
/usr/sbin/grub-install
Installing for arm64-efi platform.
Installation finished. No error reported.
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.19.57+
Found initrd image: /boot/initrd.img-4.19.57+
done
DEVICE /dev/mmcblk0 READY!
libre@libre-computer:~$ lsblk just curious!
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 28.9G 0 disk
├─sda1 8:1 1 255M 0 part /boot/efi
├─sda2 8:2 1 27.8G 0 part /
└─sda3 8:3 1 872M 0 part [SWAP]
mmcblk0 179:0 0 7.3G 0 disk
├─mmcblk0p1 179:1 0 255M 0 part
└─mmcblk0p2 179:2 0 7G 0 part
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk
I decided to shutdown the system, remove the USB stick and restart the
La Frite to check that booting from the eMMC module was now possible.
libre@libre-computer:~$ sudo shutdown now
Connection to 192.168.1.126 closed by remote host.
Connection to 192.168.1.126 closed.
wait a while, then turn power off and remove the USB stick,
turn the power on and wait until booting is completed
michel@hp:~$ ssh libre@192.168.1.126
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:8045VFRsnB/5iIc4SYf2pYIdusye3uzFepKfOm6LnZQ.
Please contact your system administrator.
Add correct host key in /home/michel/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/michel/.ssh/known_hosts:52
remove with:
ssh-keygen -f "/home/michel/.ssh/known_hosts" -R "192.168.0.126"
ECDSA host key for 192.168.1.126 has changed and you have requested strict checking.
Host key verification failed.
michel@hp:~$ ssh-keygen -f "/home/michel/.ssh/known_hosts" -R "192.168.0.126"
# Host 192.168.1.126 found: line 52
/home/michel/.ssh/known_hosts updated.
Original contents retained as /home/michel/.ssh/known_hosts.old
michel@hp:~$ ssh libre@192.168.1.126
The authenticity of host '192.168.0.126 (192.168.1.126)' can't be established.
ECDSA key fingerprint is SHA256:8045VFRsnB/5iIc4SYf2pYIdusye3uzFepKfOm6LnZQ.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.126' (ECDSA) to the list of known hosts.
libre@192.168.0.126's password: computer this is not echoed to the screen
Linux libre-computer 4.19.57+ #55 SMP PREEMPT Thu Jul 4 13:38:48 EDT 2019 aarch64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
libre@libre-computer:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 7.3G 0 disk
├─mmcblk0p1 179:1 0 255M 0 part /boot/efi
├─mmcblk0p2 179:2 0 6.3G 0 part /
└─mmcblk0p3 179:3 0 800M 0 part [SWAP]
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk s
libre@libre-computer:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 352M 0 352M 0% /dev
tmpfs 97M 2.8M 94M 3% /run
/dev/mmcblk0p2 6.3G 392M 5.7G 7% /
tmpfs 483M 0 483M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 483M 0 483M 0% /sys/fs/cgroup
/dev/mmcblk0p1 255M 212K 255M 1% /boot/efi
tmpfs 97M 0 97M 0% /run/user/1000
It was possible to boot from eMMC module. The root partition is 6.3 GB of
which 93% is free. There is also a 800 MB swap partition.
The image copied to the eMMC module did not include upgrades done to the
image on the USB thumb drive.
libre@libre-computer:~$ sudo apt update
Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]
...Reading state information... Done
1 package can be upgraded. Run 'apt list --upgradable' to see it.
libre@libre-computer:~$ sudo apt upgrade -y
Reading package lists... Done
...
Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg ...
Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg ...
This is a rather bare distribution.
libre@libre-computer:~$ sudo dpkg-query -l
...
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==========================-==================-==================-=========================================================
ii adduser 3.115 all add and remove users and groups
ii apt 1.4.9 arm64 commandline package manager
ii apt-utils 1.4.9 arm64 package management related utility programs
ii base-files 9.9+deb9u9 arm64 Debian base system miscellaneous files
ii base-passwd 3.5.43 arm64 Debian base system master password and group files
ii bash 4.4-5 arm64 GNU Bourne Again SHell
ii bluez-firmware 1.2-3 all Firmware for Bluetooth devices
ii bsdmainutils 9.0.12+nmu1 arm64 collection of more utilities from FreeBSD
ii bsdutils 1:2.29.2-1+deb9u1 arm64 basic utilities from 4.4BSD-Lite
ii btrfs-progs 4.7.3-1 arm64 Checksumming Copy on Write Filesystem utilities
ii btrfs-tools 4.7.3-1 arm64 transitional dummy package
ii busybox 1:1.22.0-19+b3 arm64 Tiny utilities for small and embedded systems
ii coreutils 8.26-3 arm64 GNU core utilities
ii cpio 2.11+dfsg-6 arm64 GNU cpio -- a program to manage archives of files
ii cron 3.0pl1-128+deb9u1 arm64 process scheduling daemon
ii dash 0.5.8-2.4 arm64 POSIX-compliant shell
ii dbus 1.10.28-0+deb9u1 arm64 simple interprocess messaging system (daemon and utilitie
ii debconf 1.5.61 all Debian configuration management system
ii debconf-i18n 1.5.61 all full internationalization support for debconf
ii debian-archive-keyring 2017.5 all GnuPG archive keys of the Debian archive
ii debianutils 4.8.1.1 arm64 Miscellaneous utilities specific to Debian
ii diffutils 1:3.5-3 arm64 File comparison utilities
ii dmidecode 3.0-4 arm64 SMBIOS/DMI table decoder
ii dmsetup 2:1.02.137-2 arm64 Linux Kernel Device Mapper userspace library
ii dosfstools 4.1-1 arm64 utilities for making and checking MS-DOS FAT filesystems
ii dpkg 1.18.25 arm64 Debian package management system
ii e2fslibs:arm64 1.43.4-2 arm64 ext2/ext3/ext4 file system libraries
ii e2fsprogs 1.43.4-2 arm64 ext2/ext3/ext4 file system utilities
ii efibootmgr 14-2 arm64 Interact with the EFI Boot Manager
ii ethtool 1:4.8-1+b1 arm64 display or change Ethernet device settings
ii findutils 4.6.0+git+20161106 arm64 utilities for finding files--find, xargs
ii firmware-amd-graphics 20161130-5 all Binary firmware for AMD/ATI graphics chips
ii firmware-atheros 20161130-5 all Binary firmware for Atheros wireless cards
ii firmware-brcm80211 20161130-5 all Binary firmware for Broadcom 802.11 wireless cards
ii firmware-libertas 20161130-5 all Binary firmware for Marvell wireless cards
ii firmware-linux 20161130-5 all Binary firmware for various drivers in the Linux kernel (
ii firmware-linux-free 3.4 all Binary firmware for various drivers in the Linux kernel
ii firmware-linux-nonfree 20161130-5 all Binary firmware for various drivers in the Linux kernel (
ii firmware-misc-nonfree 20161130-5 all Binary firmware for various drivers in the Linux kernel
ii firmware-realtek 20161130-5 all Binary firmware for Realtek wired/wifi/BT adapters
ii firmware-ti-connectivity 20161130-5 all Binary firmware for TI Connectivity wifi and BT/FM/GPS ad
ii firmware-zd1211 1:1.5-4 all binary firmware for the zd1211rw wireless driver
ii gcc-6-base:arm64 6.3.0-18+deb9u1 arm64 GCC, the GNU Compiler Collection (base package)
ii gdisk 1.0.1-1 arm64 GPT fdisk text-mode partitioning tool
ii gettext-base 0.19.8.1-2 arm64 GNU Internationalization utilities for the base system
ii gnupg 2.1.18-8~deb9u4 arm64 GNU privacy guard - a free PGP replacement
ii gnupg-agent 2.1.18-8~deb9u4 arm64 GNU privacy guard - cryptographic agent
ii gpgv 2.1.18-8~deb9u4 arm64 GNU privacy guard - signature verification tool
ii grep 2.27-2 arm64 GNU grep, egrep and fgrep
ii groff-base 1.22.3-9 arm64 GNU troff text-formatting system (base system components)
ii grub-common 2.02~beta3-5+deb9u arm64 GRand Unified Bootloader (common files)
ii grub-efi-arm64 2.02~beta3-5+deb9u arm64 GRand Unified Bootloader, version 2 (ARM64 UEFI version)
ii grub-efi-arm64-bin 2.02~beta3-5+deb9u arm64 GRand Unified Bootloader, version 2 (ARM64 UEFI binaries)
ii grub2-common 2.02~beta3-5+deb9u arm64 GRand Unified Bootloader (common files for version 2)
ii gzip 1.6-5+b1 arm64 GNU compression utilities
ii hostname 3.18+b1 arm64 utility to set/show the host name or domain name
ii ifupdown 0.8.19 arm64 high level tools to configure network interfaces
ii init 1.48 arm64 metapackage ensuring an init system is installed
ii init-system-helpers 1.48 all helper tools for all init systems
ii initramfs-tools 0.130 all generic modular initramfs generator (automation)
ii initramfs-tools-core 0.130 all generic modular initramfs generator (core tools)
ii iproute2 4.9.0-1+deb9u1 arm64 networking and traffic control tools
ii iptables 1.6.0+snapshot2016 arm64 administration tools for packet filtering and NAT
ii iputils-ping 3:20161105-1 arm64 Tools to test the reachability of network hosts
ii isc-dhcp-client 4.3.5-3+deb9u1 arm64 DHCP client for automatically obtaining an IP address
ii isc-dhcp-common 4.3.5-3+deb9u1 arm64 common manpages relevant to all of the isc-dhcp packages
ii klibc-utils 2.0.4-9 arm64 small utilities built with klibc for early boot
ii kmod 23-2 arm64 tools for managing Linux kernel modules
ii krb5-locales 1.15-1+deb9u1 all internationalization support for MIT Kerberos
ii libacl1:arm64 2.2.52-3+b1 arm64 Access control list shared library
ii libapparmor1:arm64 2.11.0-3+deb9u2 arm64 changehat AppArmor library
ii libapt-inst2.0:arm64 1.4.9 arm64 deb package format runtime library
ii libapt-pkg5.0:arm64 1.4.9 arm64 package management runtime library
ii libassuan0:arm64 2.4.3-2 arm64 IPC library for the GnuPG components
ii libattr1:arm64 1:2.4.47-2+b2 arm64 Extended attribute shared library
ii libaudit-common 1:2.6.7-2 all Dynamic library for security auditing - common files
ii libaudit1:arm64 1:2.6.7-2 arm64 Dynamic library for security auditing
ii libblkid1:arm64 2.29.2-1+deb9u1 arm64 block device ID library
ii libbsd0:arm64 0.8.3-1 arm64 utility functions from BSD systems - shared library
ii libbz2-1.0:arm64 1.0.6-8.1 arm64 high-quality block-sorting file compressor library - runt
ii libc-bin 2.24-11+deb9u4 arm64 GNU C Library: Binaries
ii libc-l10n 2.24-11+deb9u4 all GNU C Library: localization files
ii libc6:arm64 2.24-11+deb9u4 arm64 GNU C Library: Shared libraries
ii libcap-ng0:arm64 0.7.7-3+b1 arm64 An alternate POSIX capabilities library
ii libcap2:arm64 1:2.25-1 arm64 POSIX 1003.1e capabilities (library)
ii libcomerr2:arm64 1.43.4-2 arm64 common error description library
ii libcryptsetup4:arm64 2:1.7.3-4 arm64 disk encryption support - shared library
ii libdb5.3:arm64 5.3.28-12+deb9u1 arm64 Berkeley v5.3 Database Libraries [runtime]
ii libdbus-1-3:arm64 1.10.28-0+deb9u1 arm64 simple interprocess messaging system (library)
ii libdebconfclient0:arm64 0.227 arm64 Debian Configuration Management System (C-implementation
ii libdevmapper1.02.1:arm64 2:1.02.137-2 arm64 Linux Kernel Device Mapper userspace library
ii libdns-export162 1:9.10.3.dfsg.P4-1 arm64 Exported DNS Shared Library
ii libedit2:arm64 3.1-20160903-3 arm64 BSD editline and history libraries
ii libefiboot1:arm64 30-2 arm64 Library to manage UEFI variables
ii libefivar1:arm64 30-2 arm64 Library to manage UEFI variables
ii libelf1:arm64 0.168-1 arm64 library to read and write ELF files
ii libestr0 0.1.10-2 arm64 Helper functions for handling strings (lib)
ii libexpat1:arm64 2.2.0-2+deb9u2 arm64 XML parsing C library - runtime library
ii libfastjson4:arm64 0.99.4-1 arm64 fast json library for C
ii libfdisk1:arm64 2.29.2-1+deb9u1 arm64 fdisk partitioning library
ii libffi6:arm64 3.2.1-6 arm64 Foreign Function Interface library runtime
ii libfreetype6:arm64 2.6.3-3.2 arm64 FreeType 2 font engine, shared library files
ii libfuse2:arm64 2.9.7-1+deb9u2 arm64 Filesystem in Userspace (library)
ii libgcc1:arm64 1:6.3.0-18+deb9u1 arm64 GCC support library
ii libgcrypt20:arm64 1.7.6-2+deb9u3 arm64 LGPL Crypto library - runtime library
ii libgdbm3:arm64 1.8.3-14 arm64 GNU dbm database routines (runtime version)
ii libgmp10:arm64 2:6.1.2+dfsg-1 arm64 Multiprecision arithmetic library
ii libgnutls30:arm64 3.5.8-5+deb9u4 arm64 GNU TLS library - main runtime library
ii libgpg-error0:arm64 1.26-2 arm64 library for common error values and messages in GnuPG com
ii libgpm2:arm64 1.20.4-6.2+b1 arm64 General Purpose Mouse - shared library
ii libgssapi-krb5-2:arm64 1.15-1+deb9u1 arm64 MIT Kerberos runtime libraries - krb5 GSS-API Mechanism
ii libhogweed4:arm64 3.3-1+b2 arm64 low level cryptographic library (public-key cryptos)
ii libidn11:arm64 1.33-1 arm64 GNU Libidn library, implementation of IETF IDN specificat
ii libidn2-0:arm64 0.16-1+deb9u1 arm64 Internationalized domain names (IDNA2008) library
ii libip4tc0:arm64 1.6.0+snapshot2016 arm64 netfilter libip4tc library
ii libip6tc0:arm64 1.6.0+snapshot2016 arm64 netfilter libip6tc library
ii libiptc0:arm64 1.6.0+snapshot2016 arm64 netfilter libiptc library
ii libisc-export160 1:9.10.3.dfsg.P4-1 arm64 Exported ISC Shared Library
ii libk5crypto3:arm64 1.15-1+deb9u1 arm64 MIT Kerberos runtime libraries - Crypto Library
ii libkeyutils1:arm64 1.5.9-9 arm64 Linux Key Management Utilities (library)
ii libklibc 2.0.4-9 arm64 minimal libc subset for use with initramfs
ii libkmod2:arm64 23-2 arm64 libkmod shared library
ii libkrb5-3:arm64 1.15-1+deb9u1 arm64 MIT Kerberos runtime libraries
ii libkrb5support0:arm64 1.15-1+deb9u1 arm64 MIT Kerberos runtime libraries - Support library
ii libksba8:arm64 1.3.5-2 arm64 X.509 and CMS support library
ii liblocale-gettext-perl 1.07-3+b1 arm64 module using libc functions for internationalization in P
ii liblogging-stdlog0:arm64 1.0.5-2+b2 arm64 easy to use and lightweight logging library
ii liblognorm5:arm64 2.0.1-1.1+b1 arm64 log normalizing library
ii liblz4-1:arm64 0.0~r131-2+b1 arm64 Fast LZ compression algorithm library - runtime
ii liblzma5:arm64 5.2.2-1.2+b1 arm64 XZ-format compression library
ii liblzo2-2:arm64 2.08-1.2+b2 arm64 data compression library
ii libmnl0:arm64 1.0.4-2 arm64 minimalistic Netlink communication library
ii libmount1:arm64 2.29.2-1+deb9u1 arm64 device mounting library
ii libncurses5:arm64 6.0+20161126-1+deb arm64 shared libraries for terminal handling
ii libncursesw5:arm64 6.0+20161126-1+deb arm64 shared libraries for terminal handling (wide character su
ii libnetfilter-conntrack3:ar 1.0.6-2 arm64 Netfilter netlink-conntrack library
ii libnettle6:arm64 3.3-1+b2 arm64 low level cryptographic library (symmetric and one-way cr
ii libnewt0.52:arm64 0.52.19-1+b1 arm64 Not Erik's Windowing Toolkit - text mode windowing with s
ii libnfnetlink0:arm64 1.0.1-3 arm64 Netfilter netlink library
ii libnpth0:arm64 1.3-1 arm64 replacement for GNU Pth using system threads
ii libp11-kit0:arm64 0.23.3-2 arm64 library for loading and coordinating access to PKCS#11 mo
ii libpam-modules:arm64 1.1.8-3.6 arm64 Pluggable Authentication Modules for PAM
ii libpam-modules-bin 1.1.8-3.6 arm64 Pluggable Authentication Modules for PAM - helper binarie
ii libpam-runtime 1.1.8-3.6 all Runtime support for the PAM library
ii libpam-systemd:arm64 232-25+deb9u11 arm64 system and service manager - PAM module
ii libpam0g:arm64 1.1.8-3.6 arm64 Pluggable Authentication Modules library
ii libparted2:arm64 3.2-17 arm64 disk partition manipulator - shared library
ii libpcre3:arm64 2:8.39-3 arm64 Old Perl 5 Compatible Regular Expression Library - runtim
ii libpipeline1:arm64 1.4.1-2 arm64 pipeline manipulation library
ii libpng16-16:arm64 1.6.28-1+deb9u1 arm64 PNG library - runtime (version 1.6)
ii libpopt0:arm64 1.16-10+b2 arm64 lib for parsing cmdline parameters
ii libprocps6:arm64 2:3.3.12-3+deb9u1 arm64 library for accessing process information from /proc
ii libpsl5:arm64 0.17.0-3 arm64 Library for Public Suffix List (shared libraries)
ii libreadline7:arm64 7.0-3 arm64 GNU readline and history libraries, run-time libraries
ii libseccomp2:arm64 2.3.1-2.1+deb9u1 arm64 high level interface to Linux seccomp filter
ii libselinux1:arm64 2.6-3+b3 arm64 SELinux runtime shared libraries
ii libsemanage-common 2.6-2 all Common files for SELinux policy management libraries
ii libsemanage1:arm64 2.6-2 arm64 SELinux policy management library
ii libsepol1:arm64 2.6-2 arm64 SELinux library for manipulating binary security policies
ii libslang2:arm64 2.3.1-5 arm64 S-Lang programming library - runtime version
ii libsmartcols1:arm64 2.29.2-1+deb9u1 arm64 smart column output alignment library
ii libsqlite3-0:arm64 3.16.2-5+deb9u1 arm64 SQLite 3 shared library
ii libss2:arm64 1.43.4-2 arm64 command-line interface parsing library
ii libssl1.0.2:arm64 1.0.2s-1~deb9u1 arm64 Secure Sockets Layer toolkit - shared libraries
ii libssl1.1:arm64 1.1.0k-1~deb9u1 arm64 Secure Sockets Layer toolkit - shared libraries
ii libstdc++6:arm64 6.3.0-18+deb9u1 arm64 GNU Standard C++ Library v3
ii libsystemd0:arm64 232-25+deb9u11 arm64 systemd utility library
ii libtasn1-6:arm64 4.10-1.1+deb9u1 arm64 Manage ASN.1 structures (runtime)
ii libtext-charwidth-perl 0.04-7+b3 arm64 get display widths of characters on the terminal
ii libtext-iconv-perl 1.7-5+b3 arm64 converts between character sets in Perl
ii libtext-wrapi18n-perl 0.06-7.1 all internationalized substitute of Text::Wrap
ii libtinfo5:arm64 6.0+20161126-1+deb arm64 shared low-level terminfo library for terminal handling
ii libudev1:arm64 232-25+deb9u11 arm64 libudev shared library
ii libunistring0:arm64 0.9.6+really0.9.3- arm64 Unicode string library for C
ii libustr-1.0-1:arm64 1.0.4-6 arm64 Micro string library: shared library
ii libuuid1:arm64 2.29.2-1+deb9u1 arm64 Universally Unique ID library
ii libwrap0:arm64 7.6.q-26 arm64 Wietse Venema's TCP wrappers library
ii libx11-6:arm64 2:1.6.4-3+deb9u1 arm64 X11 client-side library
ii libx11-data 2:1.6.4-3+deb9u1 all X11 client-side library
ii libxapian30:arm64 1.4.3-2+deb9u3 arm64 Search engine library
ii libxau6:arm64 1:1.0.8-1 arm64 X11 authorisation library
ii libxcb1:arm64 1.12-1 arm64 X C Binding
ii libxdmcp6:arm64 1:1.1.2-3 arm64 X11 Display Manager Control Protocol library
ii libxext6:arm64 2:1.3.3-1+b2 arm64 X11 miscellaneous extension library
ii libxmuu1:arm64 2:1.1.2-2 arm64 X11 miscellaneous micro-utility library
ii libxtables12:arm64 1.6.0+snapshot2016 arm64 netfilter xtables library
ii linux-base 4.5 all Linux image base package
ii linux-headers-4.19.57+ 4.19.57+-55 arm64 Linux kernel headers for 4.19.57+ on arm64
ii linux-image-4.19.57+ 4.19.57+-55 arm64 Linux kernel, version 4.19.57+
ii locales 2.24-11+deb9u4 all GNU C Library: National Language (locale) data [support]
ii login 1:4.4-4.1 arm64 system login tools
ii logrotate 3.11.0-0.1 arm64 Log rotation utility
ii lsb-base 9.20161125 all Linux Standard Base init script functionality
ii mawk 1.3.3-17+b3 arm64 a pattern scanning and text processing language
ii mount 2.29.2-1+deb9u1 arm64 tools for mounting and manipulating filesystems
ii multiarch-support 2.24-11+deb9u4 arm64 Transitional package to ensure multiarch compatibility
ii nano 2.7.4-1 arm64 small, friendly text editor inspired by Pico
ii ncurses-base 6.0+20161126-1+deb all basic terminal type definitions
ii ncurses-bin 6.0+20161126-1+deb arm64 terminal-related programs and man pages
ii ncurses-term 6.0+20161126-1+deb all additional terminal type definitions
ii netbase 5.4 all Basic TCP/IP networking system
ii openssh-client 1:7.4p1-10+deb9u6 arm64 secure shell (SSH) client, for secure access to remote ma
ii openssh-server 1:7.4p1-10+deb9u6 arm64 secure shell (SSH) server, for secure access from remote
ii openssh-sftp-server 1:7.4p1-10+deb9u6 arm64 secure shell (SSH) sftp server module, for SFTP access fr
ii os-prober 1.76~deb9u1 arm64 utility to detect other OSes on a set of drives
ii parted 3.2-17 arm64 disk partition manipulator
ii passwd 1:4.4-4.1 arm64 change and administer password and group data
ii perl-base 5.24.1-3+deb9u5 arm64 minimal Perl system
ii pinentry-curses 1.0.0-2 arm64 curses-based PIN or pass-phrase entry dialog for GnuPG
ii procps 2:3.3.12-3+deb9u1 arm64 /proc file system utilities
ii pv 1.6.0-1+b1 arm64 Shell pipeline element to meter data passing through
ii readline-common 7.0-3 all GNU readline and history libraries, common files
ii rng-tools 2-unofficial-mt.14 arm64 Daemon to use a Hardware TRNG
ii rsyslog 8.24.0-1 arm64 reliable system and kernel logging daemon
ii sed 4.4-1 arm64 GNU stream editor for filtering/transforming text
ii sensible-utils 0.0.9+deb9u1 all Utilities for sensible alternative selection
ii ssh 1:7.4p1-10+deb9u6 all secure shell client and server (metapackage)
ii sudo 1.8.19p1-2.1 arm64 Provide limited super user privileges to specific users
ii systemd 232-25+deb9u11 arm64 system and service manager
ii systemd-sysv 232-25+deb9u11 arm64 system and service manager - SysV links
ii sysvinit-utils 2.88dsf-59.9 arm64 System-V-like utilities
ii tar 1.29b-1.1 arm64 GNU version of the tar archiving utility
ii tasksel 3.39 all tool for selecting tasks for installation on Debian syste
ii tasksel-data 3.39 all official tasks used for installation of Debian systems
ii tcpd 7.6.q-26 arm64 Wietse Venema's TCP wrapper utilities
ii tzdata 2019a-0+deb9u1 all time zone and daylight-saving time data
ii ucf 3.0036 all Update Configuration File(s): preserve user changes to co
ii udev 232-25+deb9u11 arm64 /dev/ and hotplug management daemon
ii util-linux 2.29.2-1+deb9u1 arm64 miscellaneous system utilities
ii vim 2:8.0.0197-4+deb9u arm64 Vi IMproved - enhanced vi editor
ii vim-common 2:8.0.0197-4+deb9u all Vi IMproved - Common files
ii vim-runtime 2:8.0.0197-4+deb9u all Vi IMproved - Runtime files
ii vim-tiny 2:8.0.0197-4+deb9u arm64 Vi IMproved - enhanced vi editor - compact version
ii wget 1.18-5+deb9u3 arm64 retrieves files from the web
ii whiptail 0.52.19-1+b1 arm64 Displays user-friendly dialog boxes from shell scripts
ii xauth 1:1.0.9-1+b2 arm64 X authentication utility
ii xxd 2:8.0.0197-4+deb9u arm64 tool to make (or reverse) a hex dump
ii zlib1g:arm64 1:1.2.8.dfsg-5 arm64 compression library - runtime
There is no Python and no nice configuration utility such as
Raspi-config or Armbian-config. Everything will
have to be done the old-fashioned way: by hand.
The first thing to do is to change the password. And while at it,
I edited the sudoers file so that a password will no longer be
required when user libre uses the sudo prefix.
libre@libre-computer:~$ passwd
Changing password for libre.
(current) UNIX password: computer this is not echoed to the screen
Enter new UNIX password: my_new_pwd this is not echoed to the screen
Retype new UNIX password: my_new_pwd this is not echoed to the screen
passwd: password updated successfully
libre@libre-computer:~$ sudo nano /etc/sudoers
Add the following line in the file.
libre ALL=(ALL:ALL) NOPASSWD: ALL
I also decided to install the avahi-daemon. This is included
in Raspbian (but not Armbian) and it makes it easy to open an SSH
session without knowning the IP address of the SBC. This is quite useful
when the latter is running in headless fashion.
libre@libre-computer:~$ apt-cache policy avahi-daemon
avahi-daemon:
Installed: (none)
Candidate: 0.6.32-2
Version table:
0.6.32-2 500
500 http://deb.debian.org/debian stretch/main arm64 Packages
libre@libre-computer:~$ sudo apt install -y avahi-daemon
I also modified the configuration file so that avahi-daemon
will publish the IP address as a workstation.
libre@libre-computer:~$ sudo nano /etc/avahi/avahi-daemon.conf
...
[publish]
...
publish-workstation=yes
...
Because avahi-daemon uses the hostname to create the
.local device URL, it is best to change the default hostname
just in case a second board from Libre Computer is installed on the local
area network.
libre@libre-computer:~$ sudo hostnamectl set-hostname la-frite
libre@libre-computer:~$ hostnamectl
Static hostname: la-frite
Icon name: computer
...
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.19.57+
Architecture: arm64
libre@libre-computer:~$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 libre-computer
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
The name has not been changed in the second line of the
hosts file. This can cause problems, so the file
/etc/hosts/ was updated. Time to reboot and test that this is
all working.
libre@la-frite:~$ sudo reboot
Connection to 192.168.1.126 closed by remote host.
Connection to 192.168.1.126 closed.
wait some time
michel@hp:~$ ssh libre@la-frite.local
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: POSSIBLE DNS SPOOFING DETECTED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
The ECDSA host key for la-frite.local has changed,
and the key for the corresponding IP address 192.168.0.126
is unchanged. This could either mean that
DNS SPOOFING is happening or the IP address for the host
and its host key have changed at the same time.
Offending key for IP in /home/michel/.ssh/known_hosts:55
remove with:
ssh-keygen -f "/home/michel/.ssh/known_hosts" -R "192.168.0.126"
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:Z7zPHJT+3bpk3LBaq73YTGehNLyJhDK8Jgfsl+mwQiw.
Please contact your system administrator.
Add correct host key in /home/michel/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/michel/.ssh/known_hosts:53
remove with:
ssh-keygen -f "/home/michel/.ssh/known_hosts" -R "la-frite.local"
ECDSA host key for la-frite.local has changed and you have requested strict checking.
Host key verification failed.
michel@hp:~$ ssh-keygen -f "/home/michel/.ssh/known_hosts" -R "la-frite.local"
# Host la-frite.local found: line 53
/home/michel/.ssh/known_hosts updated.
Original contents retained as /home/michel/.ssh/known_hosts.old
michel@hp:~$ ssh libre@la-frite.local
The authenticity of host 'la-frite.local (192.168.0.126)' can't be established.
ECDSA key fingerprint is SHA256:9aBYTGehNLyJhDK8Z7l+mwQiwzPHJT+3bpk3LBaJgfs.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'la-frite.local' (ECDSA) to the list of known hosts.
libre@la-frite.local's password: my_new_pwd not echoed to screen
Linux la-frite 4.19.57+ #55 SMP PREEMPT Thu Jul 4 13:38:48 EDT 2019 aarch64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Jul 11 21:49:28 2019 from 192.168.0.118
The La Frite does not come with wireless connectivity.
libre@la-frite:~$ ip -4 address
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc mq state UP group default qlen 1000
inet 192.168.0.126/24 brd 192.168.0.255 scope global eth0
valid_lft forever preferred_lft forever
I hot plugged in a Wi-Fi dongle and in a short order, the system found
it.
libre@la-frite:~$ ip address
...
3: wlxc8fe30ffdb63: mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether c8:fe:30:ff:db:63 brd ff:ff:ff:ff:ff:ff
Of course the link is DOWN. I think the simplest way to get WI-FI
running was to install Network Manager, although in the long run I may go a
different route (WPA Supplicant et al).
libre@la-frite:~$ sudo apt install -y network-manager
Reading package lists... Done
...
Need to get 12.8 MB of archives.
After this operation, 49.3 MB of additional disk space will be used.
...
Processing triggers for systemd (232-25+deb9u11) ...
Processing triggers for dbus (1.10.28-0+deb9u1) ...
I used the text based graphical network manager utility to
setup the Wi-Fi connection.
libre@la-frite:~$ sudo nmtui
First activate the connection.

Select the WI-FI network to activate.

You will then be asked for the password and then Network Manager will
display a Connecting message and once that is done a
star will appear to the left of the network name. Go back to the
start screen.

Quit the application.

Checking that both interfaces are up.
libre@la-frite:~$ ip -4 address
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc mq state UP group default qlen 1000
inet 192.168.1.126/24 brd 192.168.0.255 scope global eth0
valid_lft forever preferred_lft forever
3: wlxc8fe30ffdb63: mtu 1500 qdisc mq state UP group default qlen 1000
inet 192.168.1.127/24 brd 192.168.0.255 scope global dynamic wlxc8fe30ffdb63
valid_lft 604743sec preferred_lft 604743sec
I have not thoroughly tested but it does appear that the WiFi dongle must
be connected into the USB port furthest from the IR receiver and GPIO double
row header (the same USB port as used for the USB stick previously) if
Ethernet is also connected or else the system will not boot properly.
Also it seems that the wireless interface will not come up when powering up
the board if Ethernet is not connected. Shades of the Orange Pi Zero? For the
time being I will put that down to my slapdash non installation of
Network Manager.
The CPU temperature can be read and the board was relatively cool,
initially when only the Ethernet connection was enabled.
libre@libre-computer:~$ cat /sys/class/hwmon/hwmon0/temp1_input
44000
I did manage to get the temperature up to 45°C when transferring part of
the source files for this site. With the USB-WIFI dongle, the temperature
is closer to 49°C: and it looks like the memory chips, DRAM and eMMC are
running somewhat hotter than the SoC.
The photograph of La Frite shown on the Libre Computer web site and
elsewhere is outdated. Instead of three three pin headers and a single two
pin header, there are two four pin headers and a three pin header with a
jumper. I have not found any information about the latter. I had hoped that
one of the other headers was a UART port but that is not the case. From the
picture on the box in which La Frite was shipped, the four pin header near
the micro-USB power port is labelled CVBS which might an Audio/Video port
(Composite Video Baseband Signal) as an article by Jean-Luc Aufranc (CNXSoft) seems to confirm.
The other 4 pin is identified as an ADC header which would be a connection to
analog-to-digital converter (or converters) on the SoC.
On the forum there is a topic of interest, UART/Serial Connection in which loverpi
(the "official voice" of whom exactly ?) writes the following.
For UART, it's pin 3,5,6 for TX,RX,GND respectively
I could not find pinouts for any header of La Frite but there is much
more information for its big brother (or should I say mother) Le Potato
including a GPIO Headers Reference for AML-S905X-CC. It made sense to
assume that pin 1 of the 40 pin header would be the pin nearest the IR
receiver on La Frite as on Le Potato. Nevertheless, I powered down the SBC
and used an ohmmeter to identify the orientation of the 40 pin header by
checking that the ground pins were all connected together. The assumption was
right. The actual pinout can be obtained from a document entitled AML-S905X-CC-V1.0A Headers from which we get the
following.
Pin 3 GPIOA0_5 (GPIO 5) is UART_RX_A0_B
Pin 5 GPIOA0_4 (GPIO 4) is UART_TX_A0_B
Pin 6 is Ground
As usual, the USB-TTL converter TX and RX lines need to be connected to
the RX and TX ports of the SoC (which is what loverpi meant that
the pins 3 and 5 were for TX and RX). So I connected the
serial converter cable as shown below.

It was then that I noticed that a little triangle identified pin 1 of
the 40 pin header.
When I connected the cable to a USB port on the destkop computer I
noticed that it showed up as device ttyUSB0. So I started
screen with the following command, more or less guessing what
the right baud rate would be.
michel@hp:~$ screen /dev/ttyUSB0 115200
The nice part of having a UART connection when running in headless
fashion is that it is possible to see the boot sequence. At one point in that
sequence the following is displayed.
Autoboot in 1 seconds
I tried pressing the U-Boot button (it's the only button on La Frite) when
that message came up without managing to get the U-Boot prompt. Then I tried
pressing twice and then I tried booting with the button depressed without any
more success. Apparently, the booting process can be interrupted by pressing
the Esc key on a connected keyboard (see the
loverpi message
referenced above), but I did not have a keyboard on hand to test this.
As before, download the desired OS image from the loverpi
site. I tried the first Ubuntu Bionic headless image in the list at the
loverpi download page. The next step is to use Balena Etcher to
burn the image onto a USB thumb drive. Placing the USB drive into the proper
USB port (the one furthest from the 40 pin header) and rebooting changed
nothing. La Frite booted from the Debian image on the eMMC module.
If I could interrupt the boot sequence, it would be possible to
instruct U-Boot to boot from the USB drive. But as explained above I
cannot do that. However it is possible to "format" the eMMC module
so that U-Boot will no longer find the boot partition and it will then
search for an OS image on the USB drive.
libre@la-frite:~$ sudo dd if=/dev/zero of=/dev/mmcblk0 bs=10M count=1
1+0 records in
10485760 bytes (10 MB, 10 MiB) copied, 0.0184574 s, 568 MB/s
libre@la-frite:~$ sudo reboot
...
U-Boot 2019.04+ (Apr 11 2019 - 01:57:41 -0400) Libre Computer AML-S805X-AC
Model: Libre Computer Board AML-S805X-AC
DRAM: 1 GiB
MMC: mmc@74000: 0
Loading Environment from SPI Flash... SF: Detected gd25lq128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
** No device specified **
[BL31]: tee size: 0
using random mac address: 18:66:C7:61:81:fd
** No partition table - mmc 0 ** Of course not, it was just erased!
Error: could not access storage.
Net: eth0: ethernet@c9410000
starting USB...
USB0: Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
scanning usb for storage devices... 1 Storage Device(s) found
Autoboot in 1 seconds
switch to partitions #0, OK
.... Booting from the USB drive
Ubuntu 18.04.2 LTS libre-computer ttyAML0
libre-computer login: libre
Password: computer not echoed
Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.19.57+ aarch64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.
libre@libre-computer:~$ cat /etc/*version
buster/sid
libre@libre-computer:~$ cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.2 LTS"
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
libre@libre-computer:~$ lscpu
Architecture: aarch64
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
NUMA node(s): 1
Vendor ID: ARM
Model: 4
Model name: Cortex-A53
Stepping: r0p4
BogoMIPS: 48.00
L1d cache: unknown size
L1i cache: unknown size
L2 cache: unknown size
NUMA node0 CPU(s): 0-3
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
The above is captured from the UART connection. It would not
be possible to do this from a wireless connection as the Wi-Fi is not
set up in the Ubuntu image.
There is much left to test and there the lack of information is
disconcerting. For example, I could not find how to deal with the onboard
LEDs. There is no specific configuration utility at least in the
Debian image. This will make the board less user friendly for neophytes
such as myself. This is surprising because Libre Computer is squarely aiming
its board at the Raspberry Pi crowd. There may be problems with WiFi but
the jury is still out on that score.
On the plus side, I found the system very responsive. Ethernet
connections seem solid, Opening an SSH session was never a
problem, file transfers with Filezilla occurred without problems. As far as I
can tell, there are no delays or suspended operation of the
avahi-daemon that have been plaguing the Orange Pi Zero
purchased some time ago. Furthermore, it does seem that Libre Computer is
busy releasing improved OS images. Perhaps the Ubuntu images already provide
better support for the hardware; I need to look into that.
My first impression is that the little card has a lot of potential.
Hopefully Libre Computer will release the information in the near future that
will make it easier to fully exploit the hardware. It did say that La Frite
was an Open source project on Kickstarter. Hopefully, I will not regret this
purchase and I will remember why I ordered this in the first place.