Update 10/23/2020 04:31 PT: We have tested Ubuntu 20.10 installation via an external NVMe drive connected using USB 3. We can confirm that this is possible and much simpler than previously indicated. The Ubuntu 20.10 image for Raspberry Pi 4 can be directly written to a USB drive using Balena Etcher or Raspberry Pi Imager. To boot from USB the Raspberry Pi 4 will need be configured using Raspberry Pi OS as per our guide.
Ubuntu 20.10, codename Groovy Gorilla has arrived and for the first time ever there is a release for Raspberry Pi available on launch day from Ubuntu’s download page! Ubuntu 20.10 is the latest Ubuntu and as such it comes with the latest Kernel and updates to Gnome. It further refines the 20.04 LTS (Long Term Support) release which came out in April 2020. Ubuntu 20.04 saw a release for the Raspberry Pi some time after the main version was released, but for 20.10 the team were committed to releasing the main release and a Raspberry Pi version together.
RATING: ★★★ (3 out of 5 stars)
+ Easy to install
+ Looks gorgeous
+ Very easy to use
- GPIO software not pre-installed
- A little slow, even when overclocked
- Thermal throttling limit hit during standard Stressberry test
Solid foundation for future releases, it is easy to use and looks great. Give it a try but not likely to replace Raspberry Pi OS just yet.
The biggest difference between 20.10 and previous versions of Ubuntu for Raspberry Pi is that this is not a server image with a desktop environment added later, for example Martin Wimpress’ Desktopify project. Ubuntu 20.10 for the Raspberry Pi was built as a full desktop image. It is great to see Ubuntu running on a Raspberry Pi. n the early days of the Pi, Ubuntu was considered to be the default operating system, as was Fedora, but both ultimately lost out to Raspbian (officially provided as Raspberry Pi OS).
We managed to take a look at a release candidate image and tested it with our Raspberry Pi 4 (4GB), the lowest spec officially supported machine. Ubuntu 20.10 can be run on lower specification machines but it may not be as smooth an experience. This same image can also be used with the new Raspberry Pi Compute Module 4. Compatibility is limited to Compute Module 4 with 4GB RAM or greater and 16GB eMMC.
The Ubuntu Experience
Installing Ubuntu 20.10 to a micro SD card can be accomplished by flashing a downloaded image using Balena Etcher, or via the Raspberry Pi Imager where Ubuntu 20.10 will be an option from launch day. A 16GB high speed micro SD card is a must to get the best. Ubuntu 20.10 on the Raspberry Pi is a 64 bit OS and this means it can take advantage of our 4GB RAM or our 8GB Raspberry Pi 4 if we chose to.
On first boot, we are asked a series of questions to configure our installation, all handled in a very clear and simple manner. With the installation complete, we see the Groovy Gorilla for the first time. If you are familiar with Ubuntu then the interface will no doubt be very familiar to you.
Those new to Ubuntu will notice to the left of the screen a launcher which contains our “favorite” applications. At bottom left we see a grid of nine squares, the applications grid. This will open a paged view of all the applications installed and accessible via the desktop. By dragging icons around this grid we can create groups of applications based on tasks or functions in a similar manner to creating groups of applications on Android devices. If we add more than nine apps to a group, then a new page is created inside the group.
A handy feature found in Ubuntu 20.10 and not limited to the Raspberry Pi is Wi-Fi hotspots. Found in the WiFi settings menu, it can turn our Pi into a Wi-Fi hotspot, along with a QR code which can be scanned to quickly connect our mobile device to the network.
In general using Ubuntu 20.10 on a Pi feels just like Ubuntu on any other machine, albeit a little slower than we are used to, but still solid. We wouldn’t jump ship and adopt Ubuntu 20.10 on Pi as our daily driver, Twister OS is still our OS of choice, but Ubuntu 20.10 is solid and reliable and comes with lots of community support.
The Raspberry Pi Ubuntu 20.10 Experience
Ubuntu 20.10 concentrates on the features present on the Raspberry Pi board and, as such, we can forget about HATs and accessories designed for use with Raspberry Pi OS. The vast majority won’t work.
With that in mind what does work? Well Bluetooth and WiFi (2.4GHz and 5GHz) works flawlessly and we were able to connect our Bluetooth headphones and watch an episode of The Pi Cast. Wi-Fi is solid and we encountered no issues connecting to different access points in our home.
A popular addition to the Raspberry Pi is the official Raspberry Pi Camera and with that in mind we tested two versions of the official Raspberry Pi Cameras and we are pleased to say that they work with Ubuntu 20.10. The basic camera and the newer HQ camera work flawlessly via the terminal commands raspistill and raspivid. The camera can also be used as a webcam for video calls, an essential tool in these troubling times.
Sadly there is no Picamera Python library installable at this time, and this means that to use the camera in a Python script we would need to make a call to the underlying OS, rather than a Pythonic approach.
GPIO Access on Ubuntu 20.10 for Raspberry Pi
The GPIO (see Raspberry Pi GPIO pinout) is a key feature of what makes the Raspberry Pi such an accessible device and via Ubuntu 20.10 there is GPIO access, if you are prepared to put a little work in. Firstly there are no pre-installed tools for working with the GPIO so in order to use the GPIO with Python we had to install the RPi.GPIO module. Typically we would do this via the Python packaging tool, pip, but in this case we found that we had to use the package stored in the apt repositories.
After installation, we fired up a Python 3 shell and imported the module for use in a short flashing LED test. We hit a problem and that was permissions. Our standard user did not have permission to access the GPIO. To fix this we ran a new Python 3 shell via sudo. That’s not an ideal way to do this but it worked.
We installed Microsoft’s Visual Studio Code and wrote a test script to flash the LED, using a variable to contain the on and off time duration. Again, the code could only be run using the elevated privileges which sudo provides, but we at least had a professional code editor in which to write the code.
Heat Testing on Ubuntu 20.10 for Raspberry Pi
An often underused command on the Raspberry Pi is vcgencmd. Using this command we can query the temperature of the CPU, check voltages and see the current CPU speed. Happily vcgencmd is part of Ubuntu 20.10 on the Pi and we used this command to monitor the CPU temperature prior to our Stressberry testing.
Typically we only measure CPU temperature when testing cases or enclosures, but we wanted to see if Ubuntu 20.10 made the CPU work harder than Raspberry Pi OS which in turn would generate more heat. For the test we used no cases or enclosures and no cooling. Our stock Raspberry Pi 4, running Raspberry Pi OS is used as a control and it measured 40 Celsius at idle, and a peak 65 Celsius during Stressberry tests. Compare this to Ubuntu 20.10 running at stock speeds on the same Raspberry Pi and we see a 7 celsius increase at idle, and a peak temperature of 77 Celsius during Stressberry.
We overclocked the install by editing /boot/firmware/config.txt and, using our suggested overclock values, took the Raspberry Pi to 2 GHz. At idle, the Pi sat at 50 celsius, but when we ran the Stressberry test, we hit the thermal throttle limit of 85 celsius and were unable to record the temperature any higher. If you intend to overclock your Raspberry Pi running Ubuntu, then you will need good cooling.
Use Cases for Ubuntu 20.10 for Raspberry Pi
You have Ubuntu 20.10 installed on your Raspberry Pi, but what can you use it for? Is it any good for media consumption via Netflix, Amazon, Hulu and Disney+? Well, no sadly. There is no hardware acceleration on offer and using the WebGL Aquarium test and an overclock to 2 GHz, we saw only 15 fps with one swimming shark. With 100 swimming creatures we saw 14 fps, 500 was 10 fps and, with 1000 swimming creatures, we saw 9 fps.
Ubuntu 20.10 is best suited to appliances and basic desktop duties, tasks which do not require too many resources.The OS can be installed to a USB drive / SSD but this is by no means a simple step and requires many commands at the terminal.
Ubuntu 20.10 is an example of listening to the community. There is clearly interest in using Ubuntu on the Raspberry Pi. Desktopify and Ubuntu Core show that there are domestic and industrial users interested in using the stability of Ubuntu with the harmonized platform which Raspberry Pi provides.
Taking Ubuntu 20.10 for a spin on your Raspberry Pi will cost you nothing except perhaps a few hours of your day. Give it a try and see if you like it. We do, but for now we shall stick to Twister OS for our Raspberry Pi 4.