If a flurry of startup activity is any indication, the Internet of Things is upon us. And yes, there are real-world big-money IoT projects out there gaining traction—though they may be outnumbered by hobbyist Arduino mods and IFTTT-connected light switches. However, if you haven’t gotten on board yet, you haven’t missed much. Platform manufacturers are still in the early stages of rolling out developer-friendly environments and getting their input.
GE’s Predix IDE for industrial IoT applications is a perfect example: It’s only been generally available as of February 2016. The networking giant Cisco bought IoT platform vendor Jasper Technologies for US$1.4 billion that same month. The Firefox OS IoT open-source project was announced in March 2016. In April, IBM teamed up with Coursera for an entry-level IoT developer tutorial using the Raspberry Pi device, the IBM Bluemix cloud platform and the Node-RED programming environment. Cellular and telecom providers (Verizon and AT&T), chip makers (Intel, Qualcomm, ARM), cloud leaders (Amazon, Microsoft and Google), smartphone makers (Apple HomeKit, Samsung Artik), networking giants, beacon and wearables manufacturers, and myriad software companies from middleware to RFID solution providers to database vendors (Couchbase) are all angling toward IoT.
How is that affecting software developers who may still be grappling with the push for mobile apps? “For one, the term ‘mobile’ is losing its relevancy,” said Eric Shapiro, CEO of the app development studio ArcTouch. “With wearables, smarthomes and cars, and connected televisions, among others, there are 20 billion connected things that are coming by 2020, according to Gartner.
(Related: Mozilla details its first round of IoT products)
“These new devices offer the potential for businesses to connect in new ways with their most valuable customers. It’s an enormous opportunity that’s much bigger than what our industry originally defined as mobile. In 2016, we expect our work beyond phones and tablets to increase pretty dramatically. For a major U.S. sports franchise, we built an IoT automation solution for their stadium’s luxury suites. From the tablet in the suite, you can use our app to control the connected devices in the suite environment—such as the thermostat, lighting, TV and also order food and merchandise—which directly tie into their POS systems.”
Start with beacons
Beacons are little one-way radios that use Bluetooth LE or Google Eddystone or WiFi to communicate. In a retail setting, in conjunction with a smartphone app and a server (provided they navigate the crowded wireless spectrum and bouncing signals, have strong enough batteries, are within the correct temperature range and haven’t been jostled out of place), developers can use them to triangulate on a user’s location so the app can send relevant messages. In other words, programming beacons is not always as easy—or as useful—as it looks.
“One reason Apple iBeacon technology has failed so far is that 99% of the iBeacon experience happens the moment the user walks into a store and is bombarded with offers, deals and discounts,” said Praveen Kanyadi, CEO and cofounder of SpotCues, a Mountain View, Calif.-based startup. “You have to ensure that the location-based app provides enough value to the consumer. If you don’t have that, the consumer is not going to share their location. Another challenge is that location discovery requires constant pinging, and it becomes a battery-draining activity. If you penalize the customer by draining his battery with location services, again that’s a major issue.”
Finally, many beacon-detection optimizations are required at the device operating system level, according to Kanyadi.
The complexity and the opportunity are both big, which is why U.K.-based mobile developer Simon Judge launched BeaconZone, which resells 13 types of beacons and offers services to program for them as well.
According to his website: “While the idea of matching beacon IDs with information seems simple, in practice it’s more involved due to the complexities of assessing distance, idiosyncrasies of Bluetooth communication, peculiarities of some smartphones and implementation of strategies required for data caching and synchronization. The app can become much more complicated if it needs to regularly connect to beacons as opposed to only passively read the advertising data.”
Getting user permission for Bluetooth and location services, as well as proffering information about value to the user and protection of their privacy and data, are crucial to success—and not easy to enable if the moment isn’t right for such requests and explanations. Battery life is a major problem for the beacons themselves. And the app logic is non-trivial: Collect the beacon’s UUID, filter through lists of users at the location while maintaining their privacy, make reasonable guesses about where the user is, and collect statistics like traffic and popularity. Further, there are stringent Apple app store requirements for iBeacon apps, including security measures.
Apple’s HomeKit platform, for example, is designed for smart home devices, and pundits say it’s pushing the security envelope for this market. Apparently, Apple-certified HomeKit devices using Bluetooth low energy (LE) rather than WiFi struggle under the computational load of encrypting with 3072-bit keys and the elliptic Curve25519 for digital signatures. Some devices have reduced latency by adding memory and code optimizations.
Beacons themselves are improving rapidly. The Eddystone protocol for Bluetooth low energy (BLE) message formats works on existing BLE devices, so most beacons can now work for iOS or Android. Many are gaining multiple sensors and form factors. The waterproof AnkhMaway beacon iB003N, for example, has a motion sensor, acceleration sensor, temperature sensor, vibrator, and 90dB buzzer, and can broadcast radio, motion and acceleration information in addition to Bluetooth or the Eddystone open beacon uniform resource identifier (URI).
Machine-to-machine communication will also grow in importance for beacon-based solutions. “Peer-to-peer communication technologies like WiFi Direct allow multiple devices to connect and communicate with each other without the need for internet or access points,” said Dhawal Sheth, a senior software engineer at Events.com. “Developers can use it to build features from social messaging and multiplayer gaming to collaboration apps without the Internet. Android now comes with APIs to power your app with WiFi Direct.”
Writing software for the meetings and events industry means Events.com is well positioned to use IoT. Luckily, most software vendors will find themselves similarly at an advantage when it comes to IoT.
Show me the software
Much of the IoT business, almost by its definition as a ubiquitous technology, will quickly become a commodity market. Sensors and devices can be duplicated. The device platform, management and connectivity are also low on the food chain. Application development, user experiences and data science sit squarely on top of this foundation as value-added intellectual property.
Will this foundation, like the LAMP stack before it, be primarily open source? While some question why the world should revolve around port 80, others ask why not expose all devices on the Web? The somewhat frightening search engine Shodan, for example, crawls the internet for IP addresses with open ports, taking screen shots of live webcams that are using the Real Time Streaming Protocol (RTSP, port 554) without password authentication.
The user manual for the AnkhMaway beacon explains its support for URI Beacon (now part of Eddystone): “The UriBeacon specification is designed with one goal in mind: to create the easiest, most open way to discover and use nearby smart things. UriBeacon is a wireless broadcast format for broadcasting URIs to any nearby device. By leveraging the Open Web, it enables a real World Wide Web where every person, place and thing can have its own Web presence.”
There is a growing portfolio of open-source IoT projects to choose from. Eclipse IoT has 19, of which the newest are:
4DIAC, which provides an open-source infrastructure based on the IEC 61499 standard for building distributed industrial and automation systems.
RISE V2G, a reference implementation of the ISO/IEC 15118 standard for communication between charging stations and electric vehicles.
TinyDTLS, a lightweight C-based implementation for secure UDP communications such as Constrained Application Protocol (CoAP) for simple electronics, or lightweight machine-to-machine (LWM2M), a REST-based standard for remotely managing M2M devices.
With assistance from Verisign, Eclipse Tiaki is a Java and C-based implementation for IoT service discovery via such Internet standards as DNSSEC and DNS-SD.
hawkBit, from Bosch Software Innovations, to manage the difficult task of sending software and firmware updates to massive numbers of tiny devices.
The industrial Internet is huge
While many question how much consumer acceptance will happen around Internet-enabled household appliances and outlets (and enterprises are still starting out with IoT), agriculture, manufacturing, energy, retail and automotive industries are achieving some IoT maturity.
“About two years ago, we started seeing IoT being applied in an industrial setting,” said Ross Morel, CEO of FrogSlayer, a custom software development firm based in Texas. “GE, AT&T and Cisco have been pushing new ideas through their Industrial Internet Consortium (IIC). Since then, we’ve seen the emergence of connected sensors that collect data on anything and everything in an industrial setting. Some of the benefits of remote asset monitoring include increased safety on smart grids through real-time alerting and more valuable data for OEMs for repair and maintenance decisions.”
This has a nice tie-in for enterprise mobile app developers, said Morel. “The opportunities are nearly unlimited for app developers who are already well-positioned in industrial spaces,” he said.
“They can enable companies to unlock valuable sensor and asset data. We’ve experienced the advent of creating custom machine-to-mobile (M2Mo) apps with our own company in various spaces like energy management, oil and gas, manufacturing, and healthcare. Additionally, as more and more people transition to working from home remotely, whether they are full-time employees or contracting professionals, we really are seeing a transformation in the mobile workforce. There are lots of advancements in field-to-field capabilities through M2Mo applications, from shift management, scheduling, training, and
performance management.”
Smart buildings are becoming more commonplace. But one industry promises to spew more data than ever before: automotive.
Data exhaust is everywhere
“According to Audi CEO Rupert Stadler, an Audi A3 generates about 25GB of data per hour,” writes strategist Matthias Schorer of VMware and technologist Wayne Adams of EMC in their December 2015 IIC Journal article, “More Horsepower via a Download.” “Connected Cars will be generating even more. It will make no sense to process all of the exabytes of data generated by millions of connected cars in a traditional on-premise data center.”
The answer for cloud-based automotive diagnostics, they say, is to use a Software Defined Data Center such as the Pivotal Big Data suite, which GE uses to analyze airplane turbines and BMW uses for predictive car maintenance.
Data will be a big issue for IoT—not just because of size, but due to connectivity constraints. That’s good news for database vendors that have already been innovating for microservices, Big Data and mobile.
“Our mobile database technology is powering offline-first applications built with Predix, GE’s next-generation platform for IoT,” said Wayne Carter, chief architect of mobile at Couchbase, a NoSQL document store vendor. “Couchbase is delivering consistent performance in industrial environments where you don’t have connectivity because you are out in the field—or deliberately don’t have that connectivity due to things like wireless interference.”
Couchbase also recently unveiled an integrated solution for developers combining Couchbase Mobile with Gimbal’s beacon engagement platform, comprising geofencing, Bluetooth LE beacons and analytics.
With Big Data come questions of privacy and security, which, according to the IIC, are the biggest obstacles to IoT.
Security, privacy and other policy questions
“IoT adoption in the workplace is still slow,” said Nishant Patel, CTO of Built.io, which offers enterprise mobile Backend-as-a-Service (mBaaS) for fast mobile application development. “The problem with IoT in the workplace now is security. And we’re not convinced that IoT has solved that potential risk. As it stands now, consumers are willing to take the risk that IoT brings, whereas enterprise organizations simply can’t take that chance when customers’ sensitive data is at stake. A major shift needs to happen around security and privacy for IoT in the enterprise.”
According to Verizon’s most recent Internet of Things annual report, “IoT’s potential to change how we live, work and play is incredible. It could have a greater transformative impact than the internet itself.” Some are hailing a “fourth machine age” and envisioning artificial intelligence coupled with IoT to create truly smart sensor networks. But these statements are coming from governing bodies wanting to stay abreast of such potentially life-changing technologies.
The U.S. National Institute of Standards and Technology is drafting a reference architecture for cyber-physical systems and seeking public input to a vast array of questions such as:
- How IoT challenges and opportunities may be different from those societies addressed previously.
- How to classify the IoT landscape such as consumer vs. industrial, public vs. private, device-to-device vs. human interfacing, etc.
- Technological hurdles such as interoperability, standards, platforms, spectrum availability and network infrastructure.
- What types of infrastructure investment in information technology, communications and energy is needed for rapid growth of IoT services.
- How industrial practices (manufacturing, supply chains, agriculture) and jobs will be affected.
- How “dependence on embedded devices in all aspects of life raises questions about the confidentiality of personal data, the integrity of operations, and the availability and resiliency of critical services.”
- Questions around cybersecurity, privacy and economic equity.
This is one of several Internet of Things-related government plans and opportunities, which include a Global City Teams Challenge to foster smart cities, spectrum planning, testing by the Institute for Telecommunications Sciences of the effects of IoT on spectrum usage, and, of course, the Commission on Enhancing National Cybersecurity. In related areas, the International Trade Administration’s Office of Textiles and Apparel held a Smart Fabrics Summit on April 11, and the Federal Trade Commission held a privacy conference in January.
The Internet camp vs. the machine camp
Despite all the uncertainty, everyone agrees on one thing: IoT will involve an unprecedented level of collaboration among disparate parties.
In “IIC Business Strategy and Solution Lifecycle: Managing the IIoT Value Chain Transformation” (IIC Journal, December 2015), Dirk Slama of Bosch Software Innovations, Jacques Durand of Fujitsu North America and Jim Morrish of Machina Research lay out how best to achieve IoT plans in the enterprise.
For IoT to succeed, two worlds must meld, they write: “On the one hand, we have what is sometimes referred to as the ‘machine camp’: The traditional providers of industrial assets and equipment, who are used to working with long planning and design phases—because once the physical products are deployed in the field, applying changes is very challenging. On the other hand, we have the ‘Internet camp’: These companies are used to fast innovation cycles, working in perpetual beta (effectively using the end customer as beta testers), and constantly improving their software or cloud-based services.”
Much of what software developers will deal with in IoT comes from existing industries, however. Embedded systems will teach you about device constraints. Avionics will teach self-driving cars about separation of concerns and control module security. A vast RFID solutions space, made visible in the early 2000s by Walmart’s retail supply chain innovations, can teach IoT vendors how to package solutions for defense, aerospace, health and more. And software developers will be the ones coding the intelligence to makes these sensors revolutionary.
How to try IoT for fun and profit
The Internet of Things is both tiny and vast, making it hard to define. Start now and you’ll still have plenty of time to ride the hype wave, surf the trough of disillusionment, and possibly reach IoT nirvana. Here are a few of the many, many ways to get your feet wet in early 2016:
Get a mentor: GE Predix.io, in collaboration with the Cloud Foundry Foundation, has an Industrial Dojo program for developers to contribute code that enables the Industrial Internet.
Join a meetup: The Eclipse IoT Virtual IoT meetup group is eager for new members. You can also peruse recordings of previous sessions.
Become a contributor: You won’t get lost in the crowd: As of this year, Eclipse IoT has a growing but still small contingent of 170 contributors to its open-source projects for things like protocols (CoAP, LWM2M or MQTT) and frameworks (SmartHome, OM2M or Kura).
Play with beacons: U.K.-based BeaconZone, which resells 13 types of beacons with plenty of explanation about the types of situations each is best suited for, offers a sample beacon app to experiment with.
Give feedback: The U.S. Federal Trade Commission is requesting public comment on IoT technology, research, opportunities, risk and policy for a report it is preparing on the topic.
Write the standards: For $5,000 (for small industry; check the website for other membership levels, including academic and government), you can join the Industrial Internet Consortium (run as a non-profit by the Object Management Group, definers of the Unified Modeling Language). You’ll influence the direction of the industrial Internet, be listed in their public speakers directory, and gain access to their test beds, among other opportunities.
Go to a conference: Long active in the RFID market, the IEEE is now paying attention to IoT. The IEEE World Forum on Internet of Things will take place in Reston, Va. on Dec. 12-14, 2016. If you’d like to present there, manuscripts are due June 15.
Get a job: The job search engine Indeed.com reports in its blog that job postings for Internet of Things have been climbing precipitously since 2013. Jobs for such employers as Amazon, Honeywell and IBM range from R&D to evangelism, which Indeed claims indicates that the technology is maturing in the workplace.
Make it on reality TV: Intel’s new television show, “America’s Greatest Makers,” pits 24 teams of inventors against each other to earn a $1 million grand prize. Or, you can simply use Intel’s Arduino tutorial to make your self a heart-rate monitor so you can see how relaxing it is not being on reality TV.