Raspberry Pi 3, Firmware

$ vcgencmd get_config int
$ vcgencmd version
$ vcgencmd codec_enabled { H264, MPG2, WVC1, MPG4, MJPG, WMV9 }

RPI vcgencmd usage
Raspberry Pi: Systeminformationen ermitteln
Raspberry Pi: vcgencmd nachinstallieren

Freie Firmware für Raspberry Pi startet Linux-Kernel

“When the pi was release, we were playing around with buildroot distros, firmware was getting updated frequently and many changes were quite important. So we needed a way to upgrade the firmware. The way to do it was to update from the repo and then copy the firmware files, the kernel and the modules to the relevant folders. Hexxeh made rpi-update and it was pretty useful at the time. However, I am of the opinion that it is indeed a hack. It’s not “the right way” to do things, but it is better than having to do it manually or having each person use their own scripts. And since it allowed to downgrade the firmware and get an exact revision, it was awesome.

Now the firmware is a part of the raspberrypi-bootloader package, which also contains the kernel. There are libraspberrypi-* packages which contain some extra userspace stuff like the vc libs and binaries. These are not updated too often, but often enough to ensure that the standard apt-get update; apt-get dist-upgrade; commands will keep your firmware up to date.

However, you may be asked by Dom to upgrade your firmware to a specific revision or the latest version if there is an issue. That is to check if a recently pushed update has fixed the issue. Sometimes people think that they are having problems because of firmware updates, so they may feel like they need to downgrade in order to get a stable system. In other words, there are legitimate uses for rpi-update still.

The problem is that it overwrites files which should be and are typically managed by the distro’s package manager. It is possible to end up with a broken install or a version mismatch between the userspace libraries and the firmware. It’s a bit like installing a package using apt-get, the downloading a different version, compiling it and overwriting the system’s version. There are no ‘real’ problems with any of this, but for purists, it’s just not the right way to do things.

I would say, as a rule of thumbs, use rpi-update if you are helping test the firmware while investigating a potential bug, if you are working on a distro that doesn’t keep the firmware up to date (the important ones do), if the raspberrypi-bootloader package has not been updated in a long time and important updates have been released on github or if you just know what you’re doing and feel like it’s necessary. But I don’t think it’s good practice to just run it all the time without even checking the commits on github. A recent example where rpi-update was a good idea was when some SD corruption fixes were pushed but the raspberrypi-bootloader package was 3 months out of date.”

Leave a Reply

Your email address will not be published. Required fields are marked *