While Linux is indispensable on server systems these days, most low-cost digital signage players based on Android for a few years. This article describes in detail why it still makes sense to consider Linux as an alternative. You will also learn where the problems are and who is responsible for them. At the end, there you find tips on what to look for when buying Linux hardware.
What is Linux and what are the differences to Android
To be precise, Linux is only the kernel. Together with the GNU software packages, it forms the unixoid operating system GNU/Linux.
Is Digital Signage with Linux Possible?
Linux suits excellently for digital signage. This is true for server systems (CMS) as well as for players. Stable, free without artificial restrictions and continuously developed by thousands of companies as well as volunteers. This makes Linux very secure and reduces the risk of malfunctions.
Surely, you heard names like Debian, Ubuntu, Arch, Gentoo, Mint, etc.. These so-called Linux distributions include a package manager for installing the operating system and also application. With the package manager you keep your Linux installation and applications up-to-date. The process is highly convenient. A complete Office installation or its update takes less than a minute. Total updates also do not block startup and shutdown for hours.
A free community maintains most Linux distributions. However, there are also companies such as Canonical (Ubuntu), Red Hat or S.u.s.e. They offer paid and professional support in addition to a free variant. Furthermore, these providers also certify hardware. Red Hat, which belongs to IBM, meanwhile, offers even up to 10 or 15 years of long-term support.
Differences from Android
The Android known from smartphones and tablets is based on a Linux kernel specially adapted by Google. However, the system is conceptually different. For example, it uses a different C library (Bionic) and most of its apps are based on a special Java runtime environment called ART (Android Runtime). Because of these differences, some experts do not consider Android to be a classic Linux distribution.
Linux's systems belong to the free software solutions. Everything is open. This also applies to the development process and to the documentation. Therefore, the advantages of Linux go hand in hand with those of open-source software in general.
Stability is no longer an Argument
Allow me to say one thing in advance: You will often hear arguments like virus-free and stability. This is only half of the truth. Other systems also run stable. This is now considered a minimum requirement in the 21st century. Fortunately, even the time of regular Windows blue screens is over. Of course, there are also fewer viruses for Linux, but any platform can be attacked nowadays.
The real advantages of Linux can be reduced to one word: Freedom! But what does that mean in concrete for Digital Signage?
What are the Advantages of Linux for Digital Signage Players?
Digital signage players based on Linux do not need a window manager. There are no embarrassing pop-up dialog boxes and services that can't be switched off, as is the case with Windows and Android. You configure your player hardware down to the last detail according to your demands.
The incredible flexibility of Linux brings many advantages in terms of security, stability and resource consumption, especially for our digital signage players:
No Window Manager necessary
A media player can be put together extremely resource-saving without a window manager. The used media player acts as a graphical user interface at the same time. Advantage: The operating system does not display unexpected dialogs, error messages or installation notes on the screens.
In 2008, I worked as a DevOps in a company that assembled media player PCs based on Windows XP. One of the more annoying tasks was to write scripts to suppress Windows messages. The customers were not happy at all when dialogs popped up on their keyboard- and mouse-less digital signage totems.
With Linux, all notifications can be redirected elegantly into logs files and become invisible. The player sends these files automatically. Your customers and the technicians will love this solution.
Disable unneeded Services
Your requirements decide which services run and not the operating system manufacturer. This saves resources and increases stability as well as security. Every additional component and service increases the complexity of your system. Additional complexity increases the probability of errors and, in the worst case, opens the gates for viruses or Trojans. The less running on your digital signage solution, the better.
Savings on the Hardware Costs
The reasons described up to here already save costs. You will need less memory and a less powerful CPU for your digital signage hardware.
In the summer of 2016, out of sheer curiosity, I managed to get my garlic-player working on a first-generation Raspberry Pi Zero. Even HD videos played. Just try to install Windows or Android on such a 5 EUR hardware and play videos.
Easier Monitoring and Error Analysis
As mentioned in the last paragraph, virtually any notification can be redirected to log files. A quick-to-learn scripting language makes it possible to monitor the state of the system (memory, CPU) and send it regularly to one or more recipients.
Linux includes many small utilities out of the box. These work according to the Unix philosophy. That means, they do perfectly only their one specific task. UNIX is about cooperation, automation and combinability. You can solve many requirements with on-board tools without having to buy extra software.
In case of a fault, a team of technicians does not need VNC, Remote Desktop or TeamViewer. They analyze and repair the device remotely efficiently with a text console.
No unsafe “rooting” necessary
To run Android media players as an interactive kiosk system, the manufacturer usually roots them. Root is called the system administrator in unixoid operating systems. But why does an Android device have to be rooted?
Root permissions allow remote management to reboot or install software without prompting. In a digital signage network, remote maintenance capabilities are essential. No one wants to send expensive technicians to a device for every little thing. Without root, Android prompts the user for confirmation every time the device is rebooted or software is updated.
Hide Status Bar
Furthermore, the Android status bar can be hidden permanently. A functional status bar not only looks unprofessional in a kiosk system, but also carries the risk of abuse.
Indeed, the status bar allows the user to exit the kiosk program to get to the Android interface. Some manufacturers modify the Android operating system to allow an additional configuration option that hides the status bar. A suboptimal solution: These changes are incompatible with each other and complicate operating system updates.
Disadvantages of Rooting
A rooted Android causes a problem for digital signage security. Root means: Any program can manipulate files or (de)install apps. So, further security measures have to be taken. These, in turn, increase complexity. More complexity means more opportunities for errors and security holes. A vicious circle!
Therefore, I consider the use of TeamViewer to be a poor crutch. Besides, it is costly and troublesome to administer hundreds of devices with TeamViewer.
With a Linux-based digital signage hardware, this effort would not be necessary!
Meanwhile, Google has mitigated some of these disadvantages with the so-called device owner mode. Unfortunately, this has not yet caught on with most Asian manufacturers. More on this in a later post.
Investment Security and fewer Dependencies
The source codes of Linux are under a free license. This is usually the GPL. That means: source texts may be changed and adapted at any time.
Advantage: Your digital signage solution is not dependent on a manufacturer (vendor lock-in). In the worst case, the vendor can discontinue support for its product. You might have many problems then. With Linux and Open-Source Software, you choose another service provider with the appropriate know-how or take care of it yourself.
What are the Advantages of Linux for Digital Signage Servers?
A digital signage CMS needs a stable and secure foundation. Linux has become the leading server operating system over the last 30 years because it guarantees this. Due to the possibility to deactivate all unnecessary services and the unreachable high configurability, it can be perfectly hardened against hacker attacks and errors.
I raise the point only for completeness because I don't like this argumentation. Free software means, of course: no license fees. The money saved by this can, of course, be a relevant factor.
However, everyone should be aware of this in the professional environment: Good support services are not available free. Digital Signage Software operated on the Internet requires continuous care and maintenance. Errors and security vulnerabilities that are found must be eliminated over the entire runtime. A professional digital signage installation always includes a service contract.
The freedom of open-source software reduces dependencies and decreases business risks. In my view, this is the key advantage of Linux and free software. I see the free availability as a pleasant side effect.
Digital Signage with Linux in Practice
With Linux, you build efficient digital signage media players tailored exactly to the application profile. However, this freedom comes at a price. It is difficult to find devices on the market that fully support Linux.
This is not a problem for PCs with Intel or AMD processors and enough budget. However, many users want to play HD or 4K videos or display images only. Small, cost-effective devices from the Internet of Things (IoT) are sufficient for this. These usually manage without moving parts, such as fans, and hardly consume any power.
East Asian providers offer an almost limitless number of low-cost media players. Most run Android, but some devices offer the option of installing Linux as an alternative. However, keep an eye on the support when evaluating.
Basically, be cautious when choosing your hardware. Pay attention to whether the manufacturer offers regular updates. After all, this tends not to happen with the particularly cheap devices. Beyond that, you won't even get accurate information.
Some manufacturers do state Linux or Ubuntu support in their specifications, but are silent on the details like kernel version, video acceleration or support periods. That means, you might get devices with outdated operating systems.
Reasons for poor driver support
On the one hand, the lack of care is of course the fault of manufacturers who calculate sharply, as well as their buyers who only care about the price. On the other hand, the business practices of ARM Ltd. are also considerably to blame. ARM is a British microprocessor provider that doesn't manufacture CPUs itself, but merely designs them.
Companies such as Qualcomm, Samsung, Rockchip, as well as Apple, Intel, and others license a particular processor design and customize it for their product. The licensees usually have “their” CPUs produced as so-called “Systems On a Chip” (SoC).
In contrast to the Linux philosophy, SoC producers offer non-free binary drivers for apparent patent reasons. Of course, these are not available in source code. Free programmers cannot customize or compile them. In addition, non-free drivers work only with a fixed kernel version. Therefore, these drivers also does not come into the so-called upstream or mainline kernel.
But this would be important because only from this original Linux kernel new improved versions are released on average every 8-9 weeks. A free upstreamable driver in the mainline kernel ensures that the hardware will still run properly with future updates over the next years.
At the same time, device specifications, especially for the graphics and video processors (GPU/VPU) that are so important for us, are again kept protected for patent reasons. ARM (Mali) and also other GPU manufacturers like Imagination (PowerVR) fear that open drivers would reveal something about the internal workings of their chips to competitors.
Thus, even drivers voluntarily programmed by the OSS-community can only be developed very laboriously through reverse engineering. Unfortunately, the video acceleration is then often missing first.
In the past, the company Allwinner was considered an especially negative example. Although their processors are widely used, the software support was more than questionable, both legally and technically.
In addition, many Asian low-cost providers only solder the chips onto a circuit board and do not offer any further support themselves. This might be okay for private Netflix users, but an absolute no-go for a professional digital signage network!
Even their documentation is declared state secrets by some companies. In 2014, SmilControl and two resellers tried to get documentation from a well-known electronics multinational on how to address its integrated player.
We had customer requests at the time expressing interest in buying a high number of its SoC displays if their player worked with our CMS. The people in charge of this company ignored even requests from their own sales managers, and we were not given proper documentation, although we signed non-disclosure agreements.
In the end, both customers reinvented the wheel. They programmed their player solution and bought the displays of a competitor. Since then, I developed the Garlic player as open source, work only with SMIL and basically refuse requests to support proprietary solutions.
Where is the Problem?
The mainline kernel continues to evolve. Buyers of poorly supported hardware are left with outdated, no longer customizable software. They do not benefit from the innovations and bug fixes of the further developed Linux kernel.
If the manufacturer does not care because from his perspective he does not earn money with it anymore, even serious bugs will not be fixed. This often happens and affects both Android and Linux devices. However, Linux has a large community. This can mitigate the consequences over time through reverse engineering.
Consequence: Costs due to Security Leaks
In September 2017, for example, BlueBorne became known. This is a security vulnerability in the so-called Bluetooth stack, which affects all systems (Windows, Linux, Android …). That means, there are now millions of vulnerable devices in circulation which will never be fixed. The only effective protection is to disable a functionality that was once paid for.
Those who operate an affected device pool and rely on Bluetooth are now faced with two alternatives: either live with the gap and the associated risk, or destroy working, tried-and-tested hardware.
That cuts into both the cost and ecological balances. More openness and open-source drivers could prevent this and significantly increase the lifetime of the hardware.
The issues with the Bluetooth stack serve as just one example. The TCP/IP network stack and many other essential components of your digital signage solution also contain errors that will only become apparent years later. Error-free software does not exist. Development is a continuous process.
Consequence: Damages by botnets
An underestimated and dangerous problem of a lack of sustainability in drivers, especially in the IoT, is security. In the future, there will be billions of networked devices and thus a massive potential for attack vectors. Unfortunately, manufacturers often spend too small or no resources on the security problem.
This leads to an unnecessarily high risk from new botnets. These networks send out spam, attack other computers or “mine” cryptocurrencies such as Bitcoins or Ethereum on the electricity bill of you or your customers.
To avoid this, quality assurance will become increasingly important in the future. However, this is time-consuming and expensive. With an open and free development process like in Linux, quality assurance can be implemented more effectively and at lower cost. The distributions demonstrate it to us for decades.
The situation has been improving for a few years now. Especially with the drivers for video acceleration, which is so important for digital signage. There is a rethinking at some chip manufacturers because of the mentioned security factor.
Manufacturer with better support
Rockchip works together with the Community and publish free and non-free drivers that integrate more easily with the mainline kernel.
Broadcom (Raspberry Pi)finances development of free drivers directly.
AmLogic works with developer company BayLibre since 2016, to bring their driver into the Mainline-Kernel.
The laborious reverse engineering at the Sunxi OSS community regarding Allwinner chips is also bearing fruit in the meantime. The functionality of the CPUs and GPUs (Mali) have now been almost completely decoded.
A crowdfunding campaign to support video acceleration in the mainline kernel for Allwinner CPUs exceeded its funding goal in February 2018 after less than 5 days. Since the end of 2018, many Allwinner cpus have free video acceleration even without vendor support.
Thanks to the Freedreno reverse engineering project, Qualcomm Adreno GPUs will be able to accelerate video playback under Linux by default. Even Google and Qualcomm are now working with the Community, to get the drivers of the Snapdragon into the Linux-Mainline-Kernel.
Our industry will benefit from these developments in the long term. In the future, we will successively be able to run more and more low-cost player hardware more comfortably over very long periods of time safely using Linux. Many project requirements do not need high-end processors. An older, proven processor generation such as an A10 is perfectly sufficient.
If this continues to be perfectly supported by free software technology in the coming years, we will reduce operating costs through well-adapted power-saving functions and longer operating times. In the same way, we are doing something for environmental sustainability, saving resources and helping to avoid electronic waste.
It is easily possible to assemble and market distributions specific to digital signage solutions. Alliances of several manufacturers establish universal digital standards, such as SMIL.
We can force the providers to be more sustainable and open with our purchasing decisions for Open Source Digital Signage. The Raspberry Pi enjoys great popularity and distribution despite its comparably under-powered hardware. One reason for this is that it was almost completely open from the beginning.
However, in my view, a Raspberry Pi is limited as a digital signage device.
Conclusion to Digital Signage with Linux
Running low-cost media players on Linux is still difficult, but the situation is improving. It requires more personal effort and research than is actually necessary, but eventually the advantages outweigh the disadvantages.
There are clear rays of hope, and the future gives reason for that. Due to the developments mentioned above, the coming years will be more and more interesting in terms of digital signage player hardware. For Linux, it is currently recommended to consider hardware with a Rockchip CPU.
There are more alternatives than just the Raspberry Pi or catastrophically supported Android devices. The effort to install the free operating system is worth it. Open source offers more opportunities to put together secure Linux-based digital signage solutions at low cost. The cherry on top is also the reduced vendor dependency. You get full control over your devices.