The Pi 5 Breaks The Mold
Written by Harry Fairhead   
Wednesday, 29 November 2023

The Pi 5 is an exciting development bringing even more power for not much additional cost, but it also signals a bigger change in the Pi line-up, obscured by secretiveness.

The Pi 5 is said to be backwards compatible with other members of the range, but it isn't and it's all down to the RP1 custom chip. This is a Raspberry Pi-designed device that gives the Pi 5 its speedier access to the external world and supports I/O devices on the 40-pin connector. The connector may be the same, but what it supplies has changed a lot. If you need proof of this just check out how many HATs - that is Pi add-on boards support the Pi 5. Not many is the answer. Most external expansion cards need, at the very least, a driver re-write to support the new memory layout and register structure.


What this means is that old friends such as pigpio, rpi.gpio and many other low level libraries simply do not work any longer. There is also not much chance that they will be upgraded in the near future because of the amount of work involved.

To be clear, if you write programs for the Pi that simply use facilities provided by Linux then you are probably going to be fine. Even here, however, there are a few problems caused by the changeover to Wayland from X Windows, but this is a pain that all Linux distros are going to have to suffer in the near term. It's not fun but it should be worth it to move on to a modern windowing system. Also notice that this is a pain shared by the Pi 4 as its OS has been updated to Bookworm, the same as the Pi 5. The other Pis are still on Bullseye and could be for quite a while.

If you are working with IoT then the story is even more fraught with difficulty. Your Pi 4 program will not work on the Pi 5 without a complete rewrite. The reason is that the hardware access provided by the RP1 doesn't use the same memory layout or register structure as on previous Pis. In the past new Pis might move the location of the peripherals block a bit and might add additional facilities, but these were easy to fix up and even to extend to the extra hardware. The RP1 however looks much more like a Pico than a Pi when it comes to peripherals. At the moment the amount of documentation available is also very small and, according to a Raspberry Pi blog post, this is a matter of policy:

"That means that, unlike our documentation around our microcontroller product RP2040, today’s release doesn’t tell you everything about the RP1 silicon that you might want to know; instead, it’s there to help you port an operating system and make use of the features of Raspberry Pi 5. While we are looking at exposing more of the features of RP1, both in software and with further documentation, that’s going to be something you might see a little later on."

Wow and no one seems to have commented that Raspberry Pi seems to be deliberately withholding information? Why? Not very open source is it? It wouldn't be so bad if the documentation was even slightly helpful or complete.

The plot thickens when you start to consider the simple fact that the RP1 is proprietary and "there are no current plans to sell it". I doubt that there ever will be plans to sell it because keeping it in-house means that the only organisation that can make a Pi 5 is Raspberry Pi. Again, so much for open source hardware.

Next we come to the CM4 - the industrial version of the Pi which is mostly used in IoT situations. Will there be a CM5? This is an interesting question as a shift to a CM5 would mean that the software would have to be rewritten, as is the case with the Pi 5. Notice that even if you restrict your attention to Linux drivers there are rewrites to do as backward compatibility hasn't been maintained. For example the PWM driver works much as before but using pwmchip2 rather than pwmchip0 and a few other small inconsistencies.

Linus Torvalds famously ranted WE DO NOT BREAK USERSPACE! except, of course, people do especially when it is a hardware change.

So will there be a CM5? My guess is yes and for the simple reason that the RP1 means that no other company can create a clone of the device without reverse engineering it. In fact when you realize this simple fact it seems obvious that the desirable thing to do is to create a family of Pis that includes the Pi 5, a new Pi Zero using the RP1 and a CM5. This is the way to keep the crown jewels safe for the future and for that long-predicted IPO.




More Information

RP1: the silicon controlling Raspberry Pi 5 I/O, designed here at Raspberry Pi

Related Articles

Raspberry Pi 5 Announced

Raspberry Pi Back In Stock - Well Almost

Raspberry Pi At 10

Raspberry Pi Goes Public And For Profit?

Pi Pico W $6 WiFi

Raspberry Pi Zero 2 W

Raspberry Pi Chip Shortages Cause Price Hike

Raspberry Pi Most Popular Industrial IoT Device!

Pi Compute Module 4 - Time to Take Industrial Pi Seriously

Raspberry Pi 4 Sets New Performance High At Same Cost

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.



Swift 6 Adds Concurrent Code Mode

Apple has released details of what developers can expect in Swift 6, due to be released this year. The team says Swift 6 makes it easier to write concurrent code correctly with a new, optional languag [ ... ]

Apple Swift Student Challenge Results Now In

Apple's Swift Student Challenge is an annual competition  designed to encourage software coding among young people.This year 50 "Distinguished Winners" were invited to attend WWDC24 where, to the [ ... ]

More News

C book



or email your comment to:










Last Updated ( Wednesday, 22 May 2024 )