[UPDATED in January 2023] Ninety percent of companies that took part in the 2021 Microsoft IoT Signals survey have already adopted the Internet of Things solutions to reduce operating costs, unlock additional revenue streams, and gain a competitive edge.
Regarding custom IoT product development, however, 35% of IoT projects stall at the proof-of-concept (POC) stage. And 75% of all IoT initiatives never materialize into market-ready products.
Companies that struggle with IoT product development typically cite high scalability costs, technical challenges, and vague ROI perspectives as the key reasons for IoT project failure.
High scalability costs top the list of custom IoT product development challenges. Source: Microsoft
As a startup looking to create an IoT solution, you could avoid most of these challenges by carefully planning your IoT pilot in advance.
Here’s where our guide to IoT solution development comes in useful.
Table of Contents
Understanding Custom IoT Product Development
What Is an IoT Product?
What Does an IoT Solution Architecture Look Like?
What Stages Does the Custom IoT Product Development Lifecycle Span?
IoT Product Idea Validation
IoT Product Discovery
IoT MVP Development
Custom IoT Hardware Development
IoT Infrastructure Development and Setup
The Internet of Things App Development
IoT Product Launch and Scaling
Five Ways Your IoT Product Development Project Could Go Awry
To help you build an IoT device and the accompanying software ecosystem in a risk-free way, we're starting an article series that dives into the Internet of Things technologies and IoT product development best practices. Check out our blog to better navigate the dynamic IoT technology landscape!
This time, we’ll focus on the Internet of Things definition, architecture, and stages your connected product goes through before hitting the shelves.
The Internet of Things (IoT) is a network of physical objects connected to the Internet and/or each other over a wired or wireless network.
The “things” term may apply to electronic devices, such as fitness trackers, and non-electronic objects enhanced with sensors and lightweight control gadgets (think smart curtains operated via a relay and mobile app).
There are two types of IoT solutions you could create:
- Sensing devices, which measure information on the surrounding environment and convert it into digital signals
- Actuating devices, which receive digital signals from the network and act upon them
These devices can talk to the nodes within an IoT ecosystem (i.e., peer-to-peer communication), connect to the network via a gateway, or establish gateway-less connections.
For companies looking to tap into custom IoT product development, It is essential to understand how connected solutions function under the hood.
Our custom IoT product development guide would not be complete without an IoT reference architecture. The diagram above can be enhanced with an additional tier — i.e., an intermediary edge layer accumulating data that should be analyzed immediately. Source: ITU-T
The Internet of Things architecture comprises four levels:
- Application layer. This layer features embedded software — i.e., firmware or proper operating systems — that runs on sensing and actuating devices. It may also include mobile, web, and desktop applications helping users interpret sensor data and manage gadgets. So if you’re looking to create an IoT app, we’ve bad news: applications are just the tip of the IoT iceberg.
- Service and application support layer. This is the IoT infrastructure layer where data aggregation, storage, and processing operations occur. To save costs and ensure uninterrupted device/service performance, IoT startups often choose to set up this infrastructure in the cloud (as opposed to on-premises servers).
- Network layer. On the network level, IoT engineers can implement cellular, Wi-Fi, and wired connectivity technologies to interface the components of an IoT ecosystem — i.e., “things,” back-end infrastructure, and user applications.
- Device layer. We could segment the functionality enabled by the device layer into:
- Gateway capabilities. IoT gateways support devices connected through wired and wireless IoT communication protocols, such as Bluetooth, Zigbee, Z-Wave, and LPWANs, and perform protocol conversions, enabling devices with different connectivity tech stacks to communicate.
- Regular device capabilities. IoT nodes typically collect and share data. But they can also construct networks on the fly to accommodate new nodes or replace an existing malfunctioning device. Also, some IoT devices can display limited data processing functionality (i.e., edge IoT deployments) and switch between sleep and awake modes to save energy.
The Internet of Things architecture also incorporates device management and security components.
The former helps resolve traffic congestion issues, monitor IoT product performance, roll out software updates, and track device activation and deactivation.
The latter ensures privacy protection and data confidentiality and supports application-specific requirements, like facilitating secure mobile payments.
Commonly, this functionality is baked into popular IoT platforms, such as Google Cloud IoT, AWS IoT Core, and ThingWorx.
Prominent IoT infrastructure vendors like Microsoft and Google distinguish four stages of the IoT development process:
- Trial/proof of concept
Here at Expanice, we prefer a slightly different classification, which, in our humble opinion, better aligns with the IoT product development stages startups go through:
- IoT product idea validation
- IoT product discovery
- Minimum viable product (MVP) development
- Market launch and MVP scaling
Let’s inspect the activities undertaken during the custom IoT product development lifecycle phases.
By 2025, the Internet of Things could become an $11.1 trillion market with a whopping 41 billion connected devices deployed globally.
To build a product with strong commercial appeal, your startup should start its custom IoT product development journey with thorough market research. Its elements include:
- Assessing the demand for your IoT solution. Besides studying research papers issued by technology consulting companies like Gartner and Accenture, your startup could conduct in-depth interviews with experts and potential customers from your target domain — e.g., healthcare, wellness, manufacturing, retail, etc. Next, analyze the macro- and micro-environmental factors affecting your business using marketing frameworks like TEMPLES, VRIO, and Porter’s Five Forces. You should pay special attention to the data privacy and security laws governing IoT adoption in your target geographic locations and industry-specific regulations for IoT product development, such as HIPAA, HL7, and NIST.
- Getting to know your competition. Being part of the macro-environmental audit, competitive analysis allows you to determine the optimum feature set, pricing, and marketing strategy for your IoT product. Your goal here is to identify an unoccupied niche and offer something — i.e., a piece of functionality, competitive price, superior quality, or five-star customer service — that your competitors are missing.
- Choosing a suitable IoT business model. Drawing on the insights obtained from the market and competitor research, your company should choose an appropriate business model to monetize your IoT product. Some popular options include one-time purchases, subscriptions, and the monetization of accompanying services and products, such as sensor data analysis. To better align your service offering with your company’s mission, resources, and marketing mix, you could use the Business Model Canvas template by Alexander Osterwalder.
- Estimating the efforts required to build an IoT device. In this step, you need to summarize your market research findings using the SWOT analysis and determine what resources and capabilities you are lacking to create an IoT device and the applications supporting its logic. Based on your company’s primary focus (hardware, embedded, web, or mobile), you’ll figure out which parts of custom IoT product development need to be outsourced.
In the IoT product development lifecycle, the discovery phase helps verify your IoT product idea against your business needs, evaluate your project scope, and create a preliminary technical vision for your custom IoT solution.
To reach these objectives, enlist the help of a skilled business analyst. The IT specialist will collaborate with your company’s internal and external stakeholders and determine what the IoT solution should do and how it is supposed to function.
These characteristics are known as functional and non-functional requirements for IoT product development.
Following the discovery phase, you’ll get definite answers to such questions as:
- What tasks and processes would your IoT system enhance or automate?
- What type of data-capturing devices are you going to use?
- Which IoT communication protocols will your device rely on?
- Where will sensor data be stored and analyzed — and how will it be presented to end users?
- How will your custom IoT solution interface with third-party devices and services?
- What is the approximate size of the user base you’re targeting?
Based on this information, you’ll be able to select a suitable technology stack for your project, lay a foundation for an IoT architecture that would flexibly scale along with your product, and get a realistic IoT cost estimate.
Using off-the-shelf IoT development boards is a sure-fire way to test your Internet of Things idea without breaking the bank
The prototyping phase of the IoT product development lifecycle revolves around creating a proof-of-concept version of your connected device, identifying technology roadblocks, and testing the prototype with real users to further refine its functional and non-functional requirements.
One of our customers, for instance, wanted to create a smart home security system based on motion sensors. These sensors were supposed to track movement both inside and outside residential buildings. During the discovery phase, our IoT product development team discovered that the ratio between the measured data properties prevented the software from timely notifying users of suspicious activities. As a result, we replaced the sensors with Wi-Fi-enabled video cameras.
To build an IoT device prototype, you (or the vendor of your choice!) could leverage off-the-shelf single-board computers and microcontrollers like Arduino Uno and Raspberry Pi.
Such IoT development boards come with various features, including USB support, SIM card slots, multiple digital inputs and outputs, robust connectivity options (BLE, Wi-Fi, cellular), and decent processing capabilities. Additionally, they are compatible with different open-source hardware components and development kits and could be connected to popular cloud IoT platforms — for instance, AWS IoT.
The choice of ready-made IoT prototyping tools is based on initial hardware requirements, such as connectivity, power consumption, RAM and flash memory, system architecture, and the availability of SDKs.
The benefits of prototyping in IoT are mostly cost-related. For example, you could create a working version of your connected solution at a small fraction of what it would cost you to design a custom device. Also, you can start developing firmware, back-end infrastructure, and mobile apps faster — and rule out technology limitations early on.
As mentioned earlier, custom IoT product development is not limited to creating electronic devices. If you’re working on an asset-tracking solution based on BLE beacons, you don’t have to design custom hardware and could focus solely on setting up supporting software infrastructure.
Otherwise, your IoT minimum viable product development project would span three stages:
- Hardware design (plus certification)
- Infrastructure setup
- Application development
How to create an IoT device? Well, pretty much like the other IoT product development activities, the custom hardware design process involves several steps:
- Analysis. From concept development to technical requirements specification, the analysis phase largely builds on the insights you’ve gleaned from IoT product discovery.
- Modeling. You collaborate with hardware engineers and industrial designers to devise printed circuit board (PCB) layout schemes and visualize the gadget’s case in 3D CAD.
- Prototyping. Do not confuse the IoT prototyping activities described in the discovery section with custom device prototyping. You won’t be using BeagleBoard, Raspberry Pi, and other off-the-shelf IoT development boards this time. Instead, you need to contact a hardware manufacturing company and produce up to ten PCBs based on the layout schemes created in the previous step. Your hardware vendor will run extensive tests to validate the PCBs meet your performance requirements, debug them if necessary, and update the technical documentation.
- Testing. At this stage of the IoT product development lifecycle, engineers will transform successful prototypes into pre-production models while using different materials for the device case. Next, you’ll need to conduct electrical safety, pre-certification, and user tests. Do not be surprised if critical errors surface in the process. This is not uncommon, and your custom IoT device could spend anything between six months and two years before you achieve your performance and safety goals.
- Certification. When doing market research, you have learned about the Internet of Things regulations effective in your target markets. Depending on your gadget’s scope of application, you might need to procure various certificates before selling the IoT solution to end users. These may include the Restriction of Hazardous Substances (ROHS) and Energy Star compliance, the Electrotechnical Commission (EC) and Underwriters Laboratories (UL) certifications, Bluetooth Sig Qualification clearance, as well as industry- and product-specific test certificates for gadgets that collect user data or come in direct contact with the skin.
The Internet of Things solution infrastructure term can define a multitude of things — from a back end giving voice to your connected device to a dedicated customer department ready to solve user problems 24/7
The infrastructure layer of an IoT system includes several components:
- Embedded software. Firmware, middleware, device drivers, and full-fledged operating systems interface the hardware components of your custom IoT device, allow it to perform its intended sensing and actuating operations, and help integrate the gadget with other devices and components of an IoT infrastructure. Typically, the hardware vendor you’re working with can handle the embedded part, too, although you might need to hire a separate team.
- Connectivity. Again, it’s your embedded team who tackles the networking part. Your gadget will rely on short-range or long-range wireless connectivity technologies to send sensor data to a gateway or directly to the cloud. When selecting a connectivity tech stack, you should consider networking costs beforehand. For instance, if you opt for cellular technologies, you might spend $0.04 per every megabyte of data your gadget sends over the network.
- Cloud infrastructure. Based on the requirements identified during the IoT product development lifecycle discovery phase, you’ll need to select a cloud platform supporting your gadget’s business logic. Here’s where sensor data will be aggregated, stored, analyzed, and visualized using dynamic dashboards. Cloud service providers like Google, Amazon, and Microsoft typically charge per the amount of server calls your gadget makes — or the number of devices within an IoT ecosystem. But the cloud providers’ fees are not the only issue to consider here. When designing a blueprint architecture of your IoT solution, you should make the necessary provisions regarding your user base, the amount of data traversing the network, and the overall complexity of your system. Suppose you’re planning to deploy a machine learning model to interpret sensor data at some point in the future. In that case, you should be able to do so without a complete infrastructure overhaul. The same goes for device management, over-the-air (OTA) software updates, and ongoing performance optimization through DevOps.
- Supporting infrastructure. Setting up a data warehouse or data lake solution in the cloud and configuring some analytics capabilities is only half the job. Complex IoT products like remote patient monitoring (RPM) or smart home solutions require a dedicated customer support department — and a plethora of related software tools like mobile, web, and desktop apps enabling end users and admins to operate connected devices. As part of custom IoT product development, you should address these issues beforehand.
Being part of the IoT product infrastructure, user-facing applications help configure and manage connected devices — and visualize sensor data processed in the cloud.
Depending on your overall IoT product requirements and target audience, you might need to create:
- Native or cross-platform mobile applications, which act as a remote control for IoT products
- Embedded human-machine interfaces (HMIs) that allow users to operate devices without a mobile or web app
- Web-based or desktop applications that mirror the functionality of their mobile counterparts and allow IoT product admins to manage user accounts
Speaking of IoT MVP development, it normally takes three to six months to create a complete software ecosystem for an IoT device.
The good news is, that software development activities can run in parallel with custom hardware design. And if you’re developing IoT devices on a shoestring budget in the hope of getting funded, you can skip the hardware design part altogether and make do with an off-the-shelf board for the time being.
For example, MedAngel, a healthcare technology startup from Germany, came up with an idea of a temperature tracking device for insulin. The company chose the WunderBar platform as their primary custom IoT product development tech stack, placed the IoT board inside a keyring-like plastic case, and built simple mobile apps for sensor data interpretation. With an MVP on their hands, the MedAngel team got some media coverage, took part in several tech contests, and launched a successful Indiegogo campaign. The company then scaled the IoT product’s use cases across other temperature-sensitive medications and revamped the gadget design.
Congratulations! You’ve built your first connected device containing enough features to meet user expectations and differentiate your company from the competition. Now it’s time to get your IoT solution to the market, analyze initial user feedback, and tweak your product accordingly.
Technically, going to market is not part of the IoT product development lifecycle, which is why IoT companies often overlook it. Here’s what you can do to avoid getting stuck in the IoT startup limbo:
- Assemble a beta user group to test your MVP and adjust your product — i.e., the applications and the gadget itself — to better meet user needs
- Develop a marketing plan covering content production, participation in industry-specific and technology events, and partnerships with influencers
- Gradually expand your product’s feature set by adding new functionality and use cases once you hit your initial revenue targets
- Go the extra mile to provide superior customer experience: after all, acquiring new customers costs five times as much as keeping existing ones
From overstuffing your MVP with features to ignoring the innate Internet of Things security issues, there are many ways your custom IoT product development project could go off the right track
Finally, we’d like to draw your attention to common IoT challenges startups face when developing connected devices:
- Stumbling upon technology roadblocks late in the IoT product development process. Creating a luxurious gold bracelet with physical activity tracking capabilities might be a good idea, but what if the metal case would interfere with the Bluetooth signal, preventing the gadget from sending sensor data to a mobile app? A surefire way to avoid such scenarios is to kick your project off with a discovery phase and ensure extensive test coverage before sending the device to production.
- Struggling with multi-vendor IoT project management. Few companies possess the required IoT product development expertise and personnel to build all components of an IoT system under one roof. As an IoT startup owner, you should elevate your project management knowledge and choose appropriate project-tracking software to keep your distributed hardware and software development teams on the same page.
- Incorporating too many features into an IoT product MVP. The results of your market research might indicate that users want a self-learning smart home system with biometric control options. In reality, you most likely lack the skills and resources to create such a complex IoT device from the ground up (and within a single iteration). At Expanice, we recommend that our clients start their custom IoT product development journey by creating an MVP containing just enough features to ignite user interest and get investors on board.
- Ignoring IoT scalability and hidden infrastructure costs. To choose the right development tech stack and design an IoT solution architecture that would grow along with your business, you should partner with a skilled business analyst during the product discovery phase, interview stakeholders both within and outside your company, and hire top-notch software architects, no matter the price.
- Taking IoT security lightly. Despite the global IT community and government efforts, the Internet of Things remains a low-hanging fruit for cybercriminals. From hard-coding device passwords to using open-source software development tools containing documented vulnerabilities, there are a million ways to overlook IoT security loopholes in your cyber-physical system — and let your customers down. That’s why “security by design” should be your IoT product development mantra from day one.
Stay tuned for more — and follow Expanice on social media to not miss our next article about IoT-enabling technologies! Or drop us a line to discuss your upcoming or ongoing Internet of Things project ;)