Why The Newest Raspberry Pi Made My Jaw Hit The Table

June 25, 2019 by guest author, Bryan Crotaz

Guest Post: Bryan Crotaz, Silver Curve

You may have read about the Raspberry Pi 4 in the news. It’s big news for the whole world, from children’s code clubs, to office desktop use, to industrial applications such as digital signage.

Bryan Crotaz

At Silver Curve, we adore the Raspberry Pi Foundation and the Pi micro computer. I only got into technology through access to programmable computers as a child. It’s great to see children of today learning that if you have a computer that is open to being told what to do, the world is your mollusc of choice.

We’ve been using the Pi since the very first board release in 2012. I was talking to Eben about using it for signage within a couple of days of the first glimpse on BBC News in 2011. I’d been looking for 10 years for a low cost high performance platform for signage, and while at AMX I was developing ideas for feather light player hardware. The Pi went miles beyond my wildest dreams of what was possible at that price point, thanks to both the founders’ deep links into Broadcom and their sheer chutzpah.

I remember saying at that first meeting that Eben and his team had changed the world of computing – this tiny device was perfect for children, as intended, but was also wonderful for all sorts of industrial applications, and especially digital signage. It had more processing power and GPIO ports than a good automation controller, and at less than 10% of the price.

Since then, at Silver Curve, we have used the Pi both for graphics and automation. We built a player engine for for a client that performed as well as a PC platform, and did some behind the scenes work with other software and hardware vendors.

Even on the Pi 1 we were able to get perfect back to back HD video playback, and multiple layers of super smooth 3D animation in HD.

We use the Pi 1, 2, and 3 for automation – any equipment controlled over RS232 or GPIO gets a dedicated Pi to control it, running our Hermes on-premise IoT product to link them over the network. We could do it all from one Pi, but the hardware is so cheap, there’s no reason to take risks with resilience. This way if anything dies, we only lose one function, not everything.

If you’re watching the Cricket World Cup from Lord’s, this is how the video chain from the OB trucks and our scoreboard graphics to the scoreboards is managed from several web interfaces.

The other advantage of the Pi is that the firmware is open source, so it’s had all its bugs fixed. We haven’t had to reboot the OS in years of running. It’s stable, and it just works.

The problem we saw with Pi in the AV arena was that it was seen by many in the industry in the early years as a hobbyist device, unsuitable for professional use. I had great difficulty persuading most industry players to take it seriously five years ago, even though we had a working player in 2012 and a prototype OPS player the year after. This all changed when NEC took the leap to include the Pi Compute Module in their professional screens. I saw a step change in the reaction to talking about the Pi in the industry after that.

Raspberry Pi Foundation now sells over 100,000 devices per week, over 6 million a year, at minimal profit margins, which they can afford as they’re a charity. The profit they make from your order goes into children’s computing education programs, training the staff you will need in 5-15 years from now.

Raspberry Pi 4 is the first product we’ve produced that is subjectively equivalent to a PC for most users and use cases. We believe that the extra processing power, video decode capability and GPU throughput of the new product make it a high-performance, cost-effective fit for a wide range of digital signage applications,” says Eben Upton, Raspberry Pi Foundation co-founder.

This week, the Foundation launched the Pi4. And when I read the specs, my jaw hit the table. It’s an incredible piece of work from the team there to build something this good for the same good old $35 price point. This is a board that Intel needs to be worried about. It’s fast enough to be a good desktop machine, and a great signage box.

The specifications can be a little confusing for the non technical reader, so let’s explore them in real world terms, compared to the previous model, the Pi3.

Power

The Pi4 is a little more power hungry than its predecessors, but still much much cheaper to run than the PC equivalent.

The Pi3 equivalent runs at around 6.5W and the Pi4 runs at around 7.5W. Obviously if you add peripherals like cameras then this power will increase.

The key real world measurements when considering power are heat output and cost. The Pi4 will put out about 15-20% more heat than the Pi3, so be a little more careful with ventilation. As for cost, a good guideline is £1, $1 or €2 per Watt, if running 24/7 for a year. This is accurate within 10% in Europe and the US. So the Pi4 will cost under $10 or £10 per year to run, compared with $100 for a small PC.

There is a Power over Ethernet add-on board which is available in the UK for £15.

The power connector has been upgraded to USB-C in order to deliver the current the board needs with USB peripherals attached. This would ordinarily be a cost problem, as USB-C chargers are not cheap. So the Foundation has built their own, which retails for just £8 in the UK. Alternatively they have created an adapter from MicroUSB which is available at the frankly ridiculous price of £1. Their engineering and purchasing teams all need a knighthood for what they’ve achieved here.

Memory

The Pi3 has 1GB of LPDDR2 memory

The Pi4 has 1,2 or 4GB of LPDDR4 memory (2GB is $10 extra, or 4GB is $20 extra)

You can run a custom efficient graphics engine in 1GB of RAM (we split it 50-50 between computing and graphics/video). But if you’re trying to run HTML5, the extra RAM will be very useful.

According to my insiders, we have about 3x as much memory bandwidth in the new device. That’s really important. Think about fading between two HD images. That means to draw one pixel, you have to read the pixel from both source images, do the maths, and write it to the output frame. If you’re simultaneously scaling the input images (they might not be exactly the right size) then you need to read 4 pixels from each input image and do some more maths to scale them before writing that output pixel. 

The limitation you hit first is how fast you can read and write the pixels to and from memory – essentially the maths part is free of charge. Increasing frame rate or pixel count will have a multiplying effect on the memory bandwidth you need. Going from HD to 4K means 4x as many pixels being read and written, so 4x the required bandwidth. Going from 30fps to 60fps doubles the bandwidth required. Dual screens will double it again. 

The Pi4 can do about 9.6GB/s between CPU and memory, compared to about 3.2GB/s on the Pi3, so you can get about 3x the graphics performance. You could use that for 3x as many pixels per second, or 3x as many layers for example.

Cost versus grunt

In tests by other reviewers, the Pi4 has been compared in performance to a 12 year old Intel Core2. That’s not at all bad for a sub-£50 board (by the time you’ve added a case). Remember that that’s just the compute power – it’s also got a very powerful graphics processor to help out. 

You’re going to get the best out of the processor with multi-threaded code. With multiple threads you can run tasks in the background without holding up the task that’s handling the mouse, or the rendering. If you’re using a browser and running your code in Javascript, don’t expect to see anywhere near as much improvement – Javascript can only run in a single thread, so you’re leaving ¾ of the chip sitting twiddling its thumbs.

A modern AMD Ryzen desktop PC is about 6x faster than the Pi4. To put that in context, a PC based on that CPU costs 8-10x as much as a Pi4. So the bang for your buck with a Pi4 is really rather excellent.

HDMI Outputs

The previous Pi models had a single full size HDMI capable of 1080p60. The Pi4 has two micro HDMI connectors. You can get the following combinations out of them:

This last configuration isn’t guaranteed to be supported in future, so use at your own peril.

Being micro connectors, be careful not to be too rough with them.

Video Decoding

There’s enough CPU power to decode a video stream in software, but that’s a very inefficient way to do it. The GPU has a hardware decoder capable of:

If you want to decode anything else, especially with DRM, you’ll need to do it in software. Others are already blogging about how to do this.

In our experience, if you write your own low-level code, you can get multiple lower resolution videos out of these decoders. Total pixels per second appeared in previous models to be the limitation. Note: doing this is definitely non-trivial. Don’t do it if you like getting eight hours of sleep a night.

3D engine

The chip supports OpenGL ES 3.2, but this release of firmware only supports 3.0. I’m told by my insiders that the core gives a roughly 2x performance gain over the previous OpenGL ES 2 core. Expect to see firmware updates to enable 3.2 later.

The OpenGL driver used to sit on the GPU. Now it’s been brought up to the CPU layer, which enables windowed software to access it. So you’re able to run WebGL in a browser, or build 3D applications running on the desktop. For signage, you’d be better off not loading the desktop, building your application on bare linux, and taking exclusive control of the 3D engine. 

Temperature

The Pi4 runs about 10 degrees hotter than a Pi3, so you will definitely need a heatsink and some free air, but you probably won’t need a fan. One of the great advantages of a Pi is the lack of moving parts for long-term reliability, so I go for a bigger heatsink rather than a fan every time.

Connectivity

The Pi3 had a single USB port internally which was shared between all the USB ports and the ethernet. So if you were using a webcam, USB disk, and trying to stream video all at the same time, it would struggle.

The Pi4 has a new CPU with multiple connections, so the ports no longer share one bus. This means they’re not competing for bandwidth. I would expect a USB3 webcam, USB3 disk and video streaming over the network to work really well, all at the same time.

It should be possible to use USB3 capture devices to combine live video and graphics. We’ll be investigating this for our sports scoreboard projects.

In benchmarks I’ve seen from other reviewers, the new USB3 ports run almost 10x as fast as the old USB2 ports.

Serial control

The original Pis all had a single hardware serial port (UART in tech speak). The Pi4 now has 4 serial ports, of which 3 are shared with other IO services, so need to be enabled in the boot setup. This gives the option to control multiple serial devices.

Bluetooth 5

Bluetooth 5.0 Low Energy is included in the Pi4 and has theoretically the following benefits over Bluetooth 4.2 LE modes:

The real world performance will differ depending on your environment and how you mount it. Note that the range is in free air – walls, metal surfaces etc will lessen this.

This is great if you want to use a Pi as a beacon, although it’s unlikely that this use case would have given you problems on the Pi3. If you’re looking for more than 60m of range, it’s likely that having multiple zones would have been useful to segregate your devices.

There’s even enough bandwidth to be able to stream medium quality video over bluetooth if you fancy getting clever with code. Many online streaming services run at less than 2Mb/s.

  1. Wes Dixon says:

    I wonder, have you tried to make the new Pi4 do anything that a digital signage system does? Dave Haynes has already published that the video playback is still not very good, even at full screen… and I suspect (though our engineers will certainly investigate, because people will ask) when you have multiple Zones with videos, stills, RSS feeds, weather graphics, transitions, and external data integrated into templated pages, you will find that Pi4 is simply the new version of the same old $35 toy.

  2. Bryan Crotaz says:

    I’ve built full signage systems on the original Pi 1 with full screen perfect back to back video, multi layer HD 60fps animated graphics, live data… They’ve been rolled out to a large retailer in the UK, some years ago. One of our demos was a FIDS screen for an airport – took us a day to build using our Aperture graphics engine, and worked beautifully. Live data, animation etc.

    The new Pi has at least 10x the CPU power of that original and about 3-5x the GPU horsepower and memory bandwidth (which is always the limitation). Pixels per second is always the limit on these types of devices, so multi zone, or single zone doesn’t matter – it’s the same number of rendered pixels.

    The Pi is no toy. Well, it is a toy if you put it in the hands of a child, but it’s a tool if you put it in the hands of a professional.

    If you need any help getting your platform to run on Pi, Silver Curve can help you.

Leave a Reply to Wes Dixon Cancel reply