It’s the start of the year and I am between jobs. Most people have multiple devices, but I don’t. I am not one to have a device for this and a device for that. I live and breathe off one device and this is by choice.
So whilst I am between jobs, I still need to do things. I have an older HP laptop kicking about but I thought with the advent of the Raspberry Pi5 with its impressive specs for a SBC (Single Board Computer) would it be possible to run my life off a Raspberry Pi 5 for 1 month?
I type this on the Raspberry Pi, almost a week in. What made me go down this path was
- I wanted to get more hands on (Python, Rust, etc)
- Its relatively cheap (Power Supply, 8GB RAM, Heat Sink Case all in this has cost $200AUD)
- Ubuntu 23.10 now supports the Raspberry Pi 5
- It has PCIe, and the performance is in most benchmarks 2x the Pi4 (which wasn’t a slouch)
- It supports dual 4k@60 (It will consume a lot more RAM in this mode)
- It’s fun, and as I say to everyone, “always be learning”
So with that said lets kick in to this quick and short post.
Installation was pretty straight forwards. I used the Raspberry Pi Imager on a Windows PC. I used an existing 512GB microSD card from an old phone. Follow the steps in the imager and about 1 hour later you will have a microSD with Ubuntu 23.10. Worth noting if you have used the Raspberry Pi Imager before, Ubuntu 23.10 took an eternity versus the standard Raspbian install.
I have opted for a Raspberry Pi 5, 8GB with a Heat Sink Case and am not running an overclock, nor am I leveraging one of the main party tricks of the Pi5 being nVME. The reason I have not gone down this path is there is no official nVME hat, the 100mb/sec from the SD card is fine for my use. There may be more gains in terms of performance via these methods.
There are certain amount of apps that I like to use above and beyond standard OS tooling
- Password Gorilla (Password Manager)
- Email (Ideally a thick client) but browser works
- ABC Radio Melbourne / News Radio
- Excel / Word
- Chat (Telegram/ WhatsApp / Messenger)
- Development – Visual Studio Code / Arduino IDE
- VNC Client (to access my PLC Pi)
- Video Conferencing (Zoom / Google Hangouts)
Whats works well.
There are some things that have really surprised me.
- Its Ubuntu – This is a full fat Ubuntu 23.10. All the trimmings are there. The ability to mount a NFS share works as I would expect. Al the core features of Ubuntu just works
- GSuite – My email for my domain (baldacchino.net), if you peak at the MX records is hosted by Google Apps. The native integration of GSuite in to Ubuntu (after you go through the oAuth process) is tied in better than Windows. (no pictures here for obvious reasons).
Google Drive is there and Thunderbird knows about my email. It is IMAP / POP3 but configuration was handled auto magically.
- Telegram – A native client, after fighting a lot with finding packages, as ARM64 is lacking, it was refreshing to have a package that just works with SNAP. Kudos
- Audio and Video – My audio system requires drivers under Windows. A Topping DX5 Pro DAC. It just works. The DAC is capable of 384khz/32bit, except it is defaulting to 48khz/16bit. This can be changed via a conf file. The Logitech Brio also is detected for both video and audio, resolution is limited to 192×1080. Both lack native adjustment.
- Screenshot / Snipping – The native Ubuntu snipping tool is the best I have used. Simply hit PrntScr and it launched
What Works But Was Hard’er Work ?
- My Screen Refresh Rate – I have a Phillips 32 Inch 4k screen (Model No 328P). It was quite laggy and the reason was it was running at 29hz (unsure why 29). It turned out because I was going from micro HDMI to HDMI. My screen, its old (and was cheap) only supported 4k@60hz over Display Port. Funnily enough there doesn’t appear to be any micro-hdmi to Display Port cables. I opted for an adapter. Flying at 60hz. The difference is huge from a quality of life, especially at 3840×2160
- Visual Studio Code – There is no listing in SNAP for VSCode but Microsoft have a ARM64 Debian package. It was a simple download and apt-get install. Nice one Microsoft
- Spotify – I gave up on this but came back to it. There is no native ARM Spotify client. I thought, alright I will look at whats available and after signing up to the Spotify Developer API, registering an application that runs on port 8080 on localhost, I still couldn’t get there. I then found an app (Psst-GUI which had zero reviews) and it just works.
- AWS CLI v2– Since 2020 Amazon has supported ARM64. Download and install, its not a package file but a zip file. Unzip and execute
- Azure CLI – Last time I looked at manipulating Azure via the CLI this was not available on ARM64 for Debian. A pleasant surprise to see this up and running. And it was smooth.
- Password Gorilla – You probably are saying what, but Password Gorilla was the default Password Management Tool at Amazon when I worked there, it is free open source and based on TCL TK
What Doesn’t Work
- Exams – I am contemplating time pending studying and taking an exam (or two) on this break. Pearson Vue’s requirements speak to OSX and Windows only
- Zoom (native)- Just no client. There is a Firefox plugin
- WhatsApp / Messenger – No native clients. At this stage I am going via the web (FireFox).
I don’t have graphs and this is more a seat of the pants description. I am finding this to be a hit and miss.
Is this computer as fast and as fluid as the desktops I have used in the past. No, but it also sips 15watts at most time. I/O doesn’t appear to be a bottle neck (it may) but the biggest issue I have, and I can live with it is, watching YouTube at 4k. At 4k, the tiny Pi is struggling, frame drop city (see stats for nerds). This is over a 1GBe wired Ethernet connection. With no native hardware acceleration its a struggle. If you aren’t a snob with the resolution, drop it down to 1080p and its fine.
Secondly I am well aware of the limited RAM ad closing apps. If you know me, I typically reboot when my device comes to a halt (often on Windows 11, that’s the reality over OSX). I keep 30-50 tabs open, all my apps. A bit of a mess. But with 8GB of ram, you can’t do that.
Thunderbird, Firefox (10 tabs), Psst-Gui (Spotify Clone) a few terminals and I am maxed out.
Creating the cover image for this post, I use LibreOffice Impress(PowerPoint), it was quite painful dragging images around. Usable but painful.
End of the day, this is a Raspberry Pi, set your expectations accordingly.
Boot time is snappy, < 10 second from power on to desktop login.
Can you use the Raspberry Pi 5 as a Desktop. Broadly speaking, yes! You can and I will daily this for the rest of the month. But it’s not going to be for everyone. It really depends firstly on your capabilities. Are you handy in the terminal? The combination of hardware and software, as great as it is, is not as polished as Windows / OSX running x64. I say x64 because a big part of these issues (minus Prometric Vue) is that Ubuntu has native packages or almost all of the applications I want to use, the overarching challenge is the ARM64 architecture. Software packages aren’t often in the App Center which means hunting down a deb file if they exist for ARM64.
I am finding this humbling, the Raspberry Pi 5 is cheap (and cheerful) and forces me to get back to my roots. On reflection, how easy are modern operating systems with their package managers and a huge eco-systems? Kind of like building a modern PC, no need to set FSB (Front Side Bus) and multipliers. Modern OS’es and the x86 architecture have just had more time to progress you could say.
ARM64 is a little bit of a challenge right now(but its getting easier). With Apple pushing forward and hard, I hope to see more and more native applications. In the fullness of time, perhaps the Raspberry Pi 6 will be my real daily driver
I am one week in and its usable, with the only one hard stop (Prometric Vue), this little device is indeed very very viable. The Raspberry Pi 5 is amazing, sips power, very capable and if you don’t have one, go and pick one up, it might just surprise you.
I am learning, so if you do have any comments I welcome them.