Raspberry Pi OS now comes with PulseAudio and a graphical printer manager

Big Presents

© Lead Image © piko72, 123RF.com

© Lead Image © piko72, 123RF.com

Article from Issue 247/2021
Author(s):

The Raspberry Pi Foundation regularly adds new features to the official operating system, Raspberry Pi OS. The December 2020 update added the PulseAudio sound server and a print manager.

In practice, Raspberry Pi OS fulfills many of the functions supplied by other operating systems and the popular Linux distributions; however, a few deficiencies exist. In particular, the configuration of printers and sound devices has never been trivial – until now. In the latest update [1], Raspberry Pi OS was extended to include PulseAudio and a better print manager. Bluetooth speakers can now be integrated more easily, and sounds from multiple sources can be output simultaneously.

Linux is a historically evolved system that changes continuously. New versions fix bugs or add features but do not bring about fundamental change. However, every few years, more profound innovations occur, such as the replacement of the X.Org display manager by Wayland, and before that the switch from the SysVinit to systemd, and before that the integration of the PulseAudio sound server.

PulseAudio

The advanced Linux sound architecture (ALSA) provides drivers in the kernel to integrate sound cards and takes care of configuration. However, ALSA reaches its limits on modern systems; for example, only one application can output sound at any given time. For example, while a YouTube video plays in the browser, a messenger program cannot play a notification sound. Also, Bluetooth devices can only be connected in a roundabout way.

As an intermediate layer, many distributions now use PulseAudio [2], and the latest version of Raspberry Pi OS is one of them. Right-clicking on the volume slider icon in the panel brings up a dialog that lets you select the current output and input devices (Figure 1). For example, if you switch from AV Jack to HDMI, the Raspberry Pi will no longer output sounds through the jack plug, but through the connected TV, and switching between audio devices no longer interrupts playback.

Figure 1: PulseAudio not only plays sound from multiple applications, but also facilitates the integration of Bluetooth speakers and headphones.

The Device Profiles menu item can be used specifically to disable individual audio devices or, especially for USB or Bluetooth audio devices (see the "Coupling" box), configure a device and select a different profile. For a Bluetooth headset, for example, you can choose between headset profile (HSP) and advanced audio distribution profile (A2DP). HSP lets you use the microphone and the headphones at the same time, but with far inferior audio quality compared with A2DP, whereas A2DP completely disables the microphone. PulseAudio is configured in such a way that the system automatically selects HSP as soon as you select a Bluetooth headset as the input device. If you use the headset as an output device, PulseAudio switches to A2DP.

Coupling

The revamped Raspberry Pi OS now connects far more easily with Bluetooth audio devices. In principle, you just have to left-click on the Bluetooth icon in the panel and select Add Device to call the wizard for adding new devices. As soon as you put the device into pairing mode, it appears in the dialog. However, before you pair it by clicking Pair, you do need to wait until the system has identified the headset or speaker as an audio device. This is signaled by the change from the yellow question mark icon to the speaker icon (Figure 2). If you close the dialog too quickly, the system will connect to it, but the device will not show up in the PulseAudio Manager.

Figure 2: When adding a Bluetooth speaker, you have to wait until the system identifies the new device (speaker icon in front of the name).

Printer

Until now, Raspberry Pi OS also lacked a user-friendly tool for setting up a printer. Most Linux distributions include the CUPS [3] printing service for this purpose, as well as configuration tools provided by the desktop environment. Alternatively, CUPS – and therefore a printer connected to the system – can be set up from the service's web front end. CUPS has always been in the Raspberry Pi OS package sources, but now the service forms a fixed part of the system together with a graphical front end.

To configure a printer, go to Settings | Print Settings. In this dialog, you can set up new printers, delete printers that are no longer in use, set a device as the default printer, or take a look at the printer maintenance queue. When adding a printer, CUPS tries to find the printer (Figure 3) and is usually very successful with network-capable printers. CUPS should also recognize most USB printers reliably. However, multifunction devices with integrated scanners often require drivers from the manufacturer – if the manufacturer supports Linux at all.

Figure 3: Printers used to be configured by the less intuitive web front end of the CUPS print service. The December update now includes the graphical printer manager shown here.

With an older laser printer from Samsung, mounting worked without any problems. A list of all printers and multifunction devices supported by CUPS can be found on Openprinting.org [4]. If a function or a certain setting is missing in the configuration interface, you can reach the CUPS service's web front end by calling http://localhost:631 in the browser. For administrative activities, the web front end requires you to enter access credentials. The username (usually pi) and password matches the data you use when logging in to the system.

Chromium

Chromium browser updates always mean a bit more work on Raspberry Pi OS than just pushing the latest build of the software into the package sources. The developers have to make sure, especially with hardware acceleration, that the web browser still harmonizes with the graphics hardware of the Raspberry Pi. Without proper hardware support, many modern web services would be restricted in how they work, especially video platforms or videoconferencing solutions. At the time of writing, the version of the preinstalled Chromium browser sits at 86.0.4240.197.

The computing power of a Raspberry Pi 4 is not yet sufficient to play YouTube videos in Full HD in the browser without dropping some frames. Only the C64-style keyboard computer, the Raspberry Pi 400, offers enough power. It plays most YouTube videos so efficiently at 1080p resolution (with its processor clocked at 1.8GHz – vs. 1.5GHz on the Raspberry Pi 4) that hardly any frames are lost. Videoconferencing solutions such as Jitsi and Google Meet also benefit from the latest optimizations. In this test, both services worked without problems, but sharing the desktop or individual application windows only worked under Jitsi (Figure 4).

Figure 4: Videoconferencing solutions such as Jitsi and Google Meet benefit from optimizations to the graphics driver.

Some maintenance has also been done to the Raspberry Pi configuration tool. On a device with a single status LED (e.g., the Pi Zero or the new Raspberry Pi 400), you can now set whether the LED flickers to indicate read/write access to the memory card or is permanently lit to indicate the operating status. If the Raspberry Pi is in a case with a fan connected to the GPIO, the system now supports simple fan control by entering the GPIO pin in the Performance tab, as well as the temperature above which the fan should switch on (Figure 5).

Figure 5: In the Raspberry Pi configuration tool, the Power LED of the Raspberry Pi 400 can now be configured, and a temperature threshold for fans connected over GPIO can be defined.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • PipeWire

    In the coming year, PipeWire will replace PulseAudio, resulting in better audio on Linux. If you can't wait, here's what you need to know to get started with PipeWire.

  • PulseAudio: New Version with Support in KDE 4.4

    Phonon in KDE 4.4 now supports PulseAudio. Ubuntu 9.10 users can install a new version of the sound server via Launchpad PPA.

  • PulseEffects

    A wildly flashing equalizer once was part of the basic equipment of every decent stereo system. PulseEffects upgrades the PulseAudio server to include these slide controls – and offers even more.

  • Adding a Bluetooth Speaker to Linux
  • GNOME 2.28 Switches to WebKit

    GNOME 2.28 provides a few new features and improvements to well-known functions and components. So the GNOME Epiphany browser now uses the sleak WebKit that makes apps such as Google Chrome work faster.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News