Raspbian 12 Bookworm and 11 Bullseye for Libre Computer Boards

Download the images from our distro server.

  1. Use the image with a suffix for your board! eg. +aml-s905x-cc.img.xz
    a. For boards with UEFI BIOS, please use the image with +arm64.img.xz.
    b. See Libre Computer Board Naming and Conventions
  2. Decompress/extract the xz compressed image .img.xz with 7-zip.
  3. Write to a MicroSD card with a bit-accurate flashing tool!
  4. Read the release notes regarding initial setup including default login info:
  • Raspbian 11 release notes especially pertaining to the ssh, user, and network setup. For a quick and dirty version, see headless/lite setup section below.

If you encounter any problems, please review the general troubleshoot guide. Please use the search function on the top right for any additional issue. If you cannot find your issue, please create a new thread detailing your issue .

Desktop images work best with 2GB+ boards. It will run very poorly on 1GB boards due to disk swapping.

We will be continuously releasing images to address the issues discovered.

Headless Lite Setup

The latest Raspbian images are different than before. There is no longer a pi user. See a full list of changes on Raspbian release notes. You can use Raspberry Pi Imager to perform this setup through the GUI on first boot or you can pre-configure the image by adding files in the first partition (/boot/efi):

  • To enable SSH by default, create a blank file called ssh with no file extension.
  • To setup an user by default, create a file called userconf.txt with one line in the format username:encrypted-password and replace username with the username you would like to use and encrypted-password generated from openssl passwd -6.
  • To setup wireless by default, create a file called wpa_supplicant.conf with the content below and replace the appropriate connection parameters COUNTRY_ISO_CODE, NETWORK_SSID, and NETWORK_PASSWORD
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

Changes from stock Raspbian for Raspberry Pi

  • Smaller image size for faster flashing (~40% smaller/faster)
  • Transparent disk resize to MicroSD card size without reboot
  • Checksummed disk data and metadata (reduces invisible MicroSD card errors/failures)
  • Copy-on-write and zstd compressed filesystem (reduces write-amplification and improves MicroSD card life)
  • GRUB bootloader
  • Latest Linux kernels with continuous updates
  • Desktop OpenGL ES 2.0 acceleration out of the box

What is different?

  • config.txt does not affect anything so dtoverlay entries do not work! Use our wiring tool.
  • cmdline.txt does not change kernel parameters! You need to follow normal Linux distro instructions and update /etc/default/grub and then run update-grub.
  • GPIO numbers need to be translated using the wiring tool.
  • Software that utilize Raspberry Pi specific hardware features will not work!

I have purchased 4 boards, I have worked through that it needs a bootloader to get an operating system to boot. I have tried armbian and raspbian. Im currently using raspbian, I cannot get internet to work no matter what I do. It seems to be at the hardware level, because I used jammy from armbian and bullseye and they are having the exact same issue and a pi 3 connected in the exact same way yields internet immediately

I’ve installed 2022-09-06-raspbian-bullseye-arm64-lite+aml-s905x-cc.img.xz on Le Potato. I can ping it, but SSH is disabled. I can connect via serial, but the pi password “raspberry” does not work. What is the default pi password?

Are you directly attached to your ISP’s modem? Some of them require you to release the IP on your existing device before it will give a new device its IP address.

It should work. We do not alter the image. Try on an HDMI monitor with a USB keyboard. We will double check on our end as well and post here if it is not working.

I wanted to provide some feedback with my testing with S905x. I ran into the same issues as the posts above. In the end, I will be using this as an interface to my Klipper install for my 3D printer, so the OS will be intended to boot into the GUI for eventual touchscreen use, once I can map the GPIOs.

Upon initial boot via the console, you are given a login prompt without any chance to create a new user. However, when booted via HDMI with video output, there is an initial setup that goes through the process of creating a new user. As this is based off of Debian 11, you won’t ever set a root password - everything with raised permissions will be done via sudo.

Once I was able to login with the new user I created, I plugged in my AC1200 USB RT8822BU based WIFI adapter and was surprised to find it was found and configured, showing me a list of available WIFI APs. I connected to my intended access point and saw that an IP was assigned successfully. Unfortunately, I couldn’t ping in or out, even to LAN devices. After looking into this on a higher Debian based level, I found out that your DHCP configuration may have issues or not fully supported by hardware.

To fix this, perform the following below:

  1. Make backup of /etc/dhcpcd.conf file
  2. Comment out all configuration options and add the following at the bottom of the file. This is a public Google DNS server.
static domain_name_servers= 
  1. Save these changes and reboot.

I was able to get a connection to the internet… but only for a few minutes. This brings me back to the RTL8822BU driver that I need to rebuild, as this is a 5.x kernel issue. USB tethering with my cell phone doesn’t have these dropouts and has been stable for an hour or so now.

Raspbian 11 (from the Raspberry Pi Foundation) only setup the initial configurator on tty1. To my knowledge, it’s not something that we are doing. If console setup works on a Raspberry Pi, let me know and I will look into it.

RTL8822BU has an upstream driver RTW88 but it’s still a work in progress by Pengutronix. It probably won’t be in good shape until Linux 6.1. We recommend using an vendor driver in the meantime and blacklisting the kernel driver. Once you do that, you shouldn’t need to modify DHCP client configuration.

The easy way to create a password for a user on a headless system is from another Linux system…

  1. Write image to SD card
  2. From the command line, enter:
echo 'new password here' | openssl passwd -6 -stdin
  1. Create a new file named userconf in the /boot partition of the SD card, and enter username:password. It should look like:
  1. Insert card into Le Potato and login from the console or via the serial interface. See other posts for how to enable SSH, if needed.

Did not know about Raspbian’s userconf facility. Good to know.

For everyone else, please note that this applies for Raspbian only and no other operating system. Do not confuse this with Ubuntu or other OSes as it will not work without the Raspbian specific userconf-pi package.

I am attached to a switch that goes into the router, I tried releasing the ip and renewing but i am getting nothing, I also have tried it on another le potato to see if the board was a dud and it did the exact same thing. I also followed 3 peoples steps to fix it on an orangepi with no success

Have you tried on another Raspberry Pi? It should have the same issue. Your ISP might be bound to the MAC address of the device. You can do the following:

  1. Call your ISP to release the MAC address and bind to the new host.
  2. Clone the MAC address of your Raspberry Pi.

What is the model of the modem? Is it Gigabit or Fast Ethernet? If Fast Ethernet, you also have to check if it has AutoMDIX. If it does not have AutoMDIX, you have to make sure you use a crossover cable.

I downloaded the image that corresponds with my board and I keep getting an error that says the disk image file is corrupted. Any ideas?

You have to be specific about where you are getting an error. What is saying the disk image is corrupt?


I’ve got my S905X-CC up and running using the v1 arm64 bullseye distro. Do I still need to follow the steps outlined on the Github repo to convert the image, or is it already set up and ready to go?


You are good to go. That script is only if the image is designed for Pi.

hi I am trying to setup a kiosk machine on my Potatoe. I don’t want all the overhead that comes with full blown version, therefore I’d like to go with Raspbian Lite and a minimal desktop just for a browser.
I was able to install via apt xserver-xorg, x11-xserver-utils, xinit, and openbox. However, when I try to start the xserver with startx, I get an error message “Cannot run in frambuffer mode. Please specifiy busIDs for all framebuffer devices”
Is there a workaround?


Use Ubuntu server with Weston and Chromium browser. It’s the fastest outside of using Chromium over KMS.

I’ll give it a shot, thanks for the fast reply!
Any thoughts on Armbian as an OS for that use case?

Armbian’s kernels are not as up to date since they have to support a ton of devices. For our products, use our images for the best performance.

1 Like

When I click the link “distro server”, it takes me to http://distro.libre.computer/ci/raspbian/. Not HTTPS! That’s a pretty serious security issue, and this got me worried.

Then I realized that https://distro.libre.computer/ci/raspbian/ also worked. Notice HTTPS there. So we have a work around for now, but please fix this.

In this day and age, websites should be available ONLY via HTTPS. You should abolish HTTP in your server configuration.