It would surprise many people, therefore, to learn that the software that features a human user interface is just the tip of the software iceberg. Consider the following examples of software that people never touch directly.
- Telecommunications: Everything from the switchgear that routes internet traffic to mobile-phone base stations and communications satellites relies on software to ensure the signals get from A to B without error, and to gracefully handle faults to keep the communications lines open.
- Electric power grid: The generation and distribution of electric power are increasingly managed by software to keep the power flowing and keep the grid stable, particularly in the face of growing intermittent and distributed generators (that is, solar and wind power).
- Automobiles: Never mind self-driving cars, even regular cars these days, especially hybrids and electrics, couldn’t move an inch without software to manage the engine and drivetrain for maximum performance and efficiency.
- Finance: News stories about financial markets often include photos or video of floor traders on some exchange, but floor traders actually manage only a tiny fraction of transactions in the stock, bond, currency, and commodities markets. Most trading is performed by automated software that can react much faster to changing price signals than humans can.
Someone, of course, has to write and test all this software. So although this type of software doesn’t make the headlines (unless something goes wrong with it), it’s still big business.
Rumors of Firmware’s Death Are Exaggerated
A special branch of this “invisible software” is what’s known as firmware. Firmware, for the uninitiated, is the programming that governs the low-level operation of hardware devices. Most firmware is not particularly sophisticated, designed for tasks such as power management and communications protocols. Lots of devices have firmware: Wi-Fi routers, digital cameras, point-of-sale credit card terminals, and pretty much anything that communicates with your computer via USB, to name a few.
From a software developer’s perspective, the trouble with firmware is that it’s old-school: Not only is it “invisible,” most of the techniques for firmware development are well-established, and the perception is that there is little innovation left to do in the world of firmware.
At AndPlus, we believe this perception of firmware is incorrect. Why?
Three words, friends: Internet of Things.
IoT and the Renaissance of Firmware
Opinions vary on the exact number and timeframe, but many observers believe that the era of the Internet of Things (IoT) will result in the deployment of billions of devices over the next 10 to 20 years. By definition, these devices will want to communicate to accomplish the tasks for which they were designed, whether wirelessly or over a physical medium (copper wires or fiber optics).
All these chatterboxes talking more or less at once are going to require new approaches to their firmware. For example:
- Power management. Many wireless IoT devices will operate on batteries or solar cells; some will even need to harvest energy from environmental sources such as natural vibrations or changes in temperature. These devices need to be super energy efficient, and thus not only will the firmware that runs them need to make sure the device components operate only when needed, but the firmware itself needs to be ultra-efficient in order to conserve energy.
- Communications. Some sets of devices will need to work together, which means they will need to communicate with each other and with whatever central device is in charge of them all. This requires new protocols and algorithms to make sure they all can communicate without talking over each other or losing messages in transit—all while being mindful of energy constraints.
For these reasons, among others, we at AndPlus believe there are many opportunities for innovation in the firmware space. Old-school it is not.
We are currently working with device makers such as Honeywell to build firmware from the ground up. We’re excited about the opportunity to make these devices work at maximum efficiency and with as much intelligence and capability as we can pack into a necessarily small, energy-constrained form factor.
If you have an idea for an innovative new device, give us a call. We understand the importance of well-written firmware and are eager to discuss solutions with you.