<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Andrey Solovev</title>
    <description>The latest articles on DEV Community by Andrey Solovev (@integrasources).</description>
    <link>https://dev.to/integrasources</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F675127%2Fc5cf83c4-8098-4264-9230-20a825f2b826.png</url>
      <title>DEV Community: Andrey Solovev</title>
      <link>https://dev.to/integrasources</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/integrasources"/>
    <language>en</language>
    <item>
      <title>IT Project Discovery Phase: What's That, and What Does It Do?</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Sat, 28 Dec 2024 08:49:09 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/it-project-discovery-phase-whats-that-and-what-does-it-do-3bae</link>
      <guid>https://dev.to/integrasourcesltd/it-project-discovery-phase-whats-that-and-what-does-it-do-3bae</guid>
      <description>&lt;p&gt;Projects in various fields, in an amicable way, need the discovery phase. In our article, we will talk about IT projects and features of research work in this area, and explore when your project requires a Discovery Phase.&lt;/p&gt;

&lt;h2&gt;
  
  
  Discovery Phase Purposes
&lt;/h2&gt;

&lt;p&gt;Every project is unique and requires a special approach to its development. How to define and find the best one for creating your product? What approach will suit your idea implementation perfectly? The discovery phase is conducted to answer these crucial questions.&lt;/p&gt;

&lt;p&gt;This is the initial stage of project development. The project's success largely depends on the conclusions obtained in this phase.&lt;/p&gt;

&lt;p&gt;At this stage, developers evaluate their capabilities, needs, and the necessary efforts to achieve the goal and gather essential requirements for the project.&lt;/p&gt;

&lt;p&gt;The goal is to have a product that satisfies the end-users' wishes. &lt;/p&gt;

&lt;p&gt;The opening stage is about drawing up a plan for spending time and money. The outsourcing company adheres to this plan throughout the project, making its work transparent and understandable to the customer.&lt;/p&gt;

&lt;p&gt;The discovery phase is individual for every project. However, there are some common factors it depends on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Company's involvement in a project.&lt;/strong&gt; The discovery phase duration and the things to be analyzed depend on which development stage the team started conducting the discovery phase. For example, it can be conducted as an initial step of your idea evaluation, as a separate stage for analyzing a specific part of your project, or it can be a remake of someone else’s work.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;IT services featured.&lt;/strong&gt; The level of the discovery phase significance varies from one service to another. The matter is that this phase results in defining critical things for your project. For example, you can find out whether this or that change or addition can influence the development of software, hardware, Machine Learning, IoT solutions development, or firmware implementation. Each of these &lt;a href="https://www.integrasources.com/services/" rel="noopener noreferrer"&gt;IT services&lt;/a&gt; has its own peculiarities and level of flexibility.&lt;br&gt;&lt;br&gt;
Hardware, IoT, embedded software, and firmware solutions are less flexible than software or &lt;a href="https://www.integrasources.com/services/machine-learning-and-artificial-intelligence/" rel="noopener noreferrer"&gt;machine learning&lt;/a&gt; ones. This means that any changes can turn out to be difficult and expensive to implement.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Budget.&lt;/strong&gt; This is one of the greatest concerns about the discovery phase. It is a separate step in your product development, and it requires additional expenses.  However, if your budget is limited, and you would like to save it, here comes the project discovery phase for your help.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxxr57jj7m25mpcyg53cy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxxr57jj7m25mpcyg53cy.png" alt="Image description" width="725" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;However, the initial stages of various projects have similar steps, which are the basis for subsequent design and development:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;to clarify the customer's vision of the product,&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;to align the customer's wishes with the needs of the end users,&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;to conduct initial technical development expertise to ensure development team’s technical and other product development capabilities.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This process can take a fair amount of time and effort and cost a pretty penny, but it is essential for the success of further actions and the whole project.&lt;/p&gt;

&lt;h2&gt;
  
  
  Discovery Phase Deliverables
&lt;/h2&gt;

&lt;p&gt;The result of this step usually includes a Discovery Phase Report with a description of one or several possible approaches, a system mock-up, proof of Concept, and technical documentation.&lt;/p&gt;

&lt;p&gt;The main thing is that a discovery phase report contains the key fruits of research about the project and recommendations on how to create particular parts of your solution. &lt;br&gt;&lt;br&gt;
In addition, by having a discovery phase report, the customer is confident in receiving the product with the required characteristics within the allotted time and budget.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image02.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image02.png%2520align%3D" alt="A list of the main results of the Discovery Phase." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Is the Discovery Phase Necessary?
&lt;/h2&gt;

&lt;p&gt;The discovery phase is one of the most critical steps in product development, however, it is often the least clear to the customer.&lt;/p&gt;

&lt;p&gt;Customers typically consider this step, at best, a necessary cost item. In the worst case, they see this phase as a waste of money and try to skip it.&lt;/p&gt;

&lt;p&gt;Meanwhile, this phase is intended to discover all the traps and pitfalls of the project, minimize risks, save time and budget, and find the most suitable approach for solution development.&lt;/p&gt;

&lt;p&gt;Ignoring a discovery phase can result in unexpected issues in the way of building your solution:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;continuous expansion of the development process;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;increasing costs; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;blurred deadlines and delayed launches;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;failures in achieving the desired results.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Discovery Phase Benefits
&lt;/h2&gt;

&lt;p&gt;The Discovery Phase is a good start for building your product and optimizing business processes connected with it. The results of this stage will lead to a well-planned journey of your idea implementation and will allow you to save budget and time.&lt;/p&gt;

&lt;p&gt;Let’s see what benefits you can get upon the discovery phase completion:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;a properly organized and transparent process of your product development;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;your development team is aware of all the challenges that they can face and knows how to solve them successfully;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;your budget targeted at your product development is safe, as risk minimization helps to prevent extra expenses and shorten the time period between your product development and its launching;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;the alternative ways of creating your product are determined;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;a mock-up or a Proof of Concept that allows for visualizing your future product. It will help you to define possible changes and understand whether your product idea is aligned with your target audience’s interests and expectations.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image03.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image03.png%2520align%3D" alt="Benefits received upon Discovery Phase completion." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In a nutshell, the discovery phase builds a bridge between your idea and its implementation. Let’s explore what makes this bridge solid and reliable for various types of projects.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Discovery Phase in Software Projects
&lt;/h2&gt;

&lt;p&gt;The peculiarities of the discovery phase differ from one project type to another. For instance, the software discovery and hardware discovery stages won’t be the same. They can vary in duration, results, discovered aspects, the team members involved, equipment used, and cost to name a few.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Software discovery phase&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In this section, we are going to talk about the discovery phase of software and Machine Learning projects.&lt;/p&gt;

&lt;p&gt;Firstly, it is significant to collect all the necessary business requirements. It allows the software developers to understand the general idea of a software product. Here, the customer and technical team should focus on the details that are essential for implementing the software being considered. These details are the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The users of the software;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The usage of the software after finishing the development;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The data that the software will process;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The output that the software should give after processing;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The User Story and Use Case.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These points are the basis for the overall pattern that the software developers will use. The next step is analyzing the collected information and checking it for validity. &lt;/p&gt;

&lt;p&gt;This process leads to the creation of a requirement specification document, which describes the nature of the software product and the functionality necessary for meeting the stakeholders’ demands.&lt;/p&gt;

&lt;p&gt;In so doing, upon the completion of the software discovery phase, you will get the following deliverables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The mock-up or Proof of Concept of the most suitable UX design for your software solution;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The mock-up or Proof of Concept of the whole &lt;a href="https://www.integrasources.com/services/system-application-software-development/" rel="noopener noreferrer"&gt;software solution&lt;/a&gt; or its part studied in the discovery phase;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The prepared requirement specification document;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The lists of Use Cases and User Story descriptions.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image04.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image04.png%2520align%3D" alt="The main aspects of the Software Discovery Phase." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The main aspects of Software Discovery Phase&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For example, we conducted the discovery phase for the project about developing &lt;a href="https://www.integrasources.com/cases/software-development-led-matrix-display/" rel="noopener noreferrer"&gt;LED Matrix displays&lt;/a&gt; software for monitoring situations on freeways and visualizing information about weather conditions, traffic jams, and road signs for drivers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image05.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image05.png%2520align%3D" alt="An LED display that visualizes the road sign “Winter Conditions. Drive with Care”." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Our customer decided to enable users to monitor this information remotely and asked us to find out whether it is better to build a mobile app or a web app for it. &lt;/p&gt;

&lt;p&gt;We analyzed the sensors and other technologies used for the LED displays and their compatibility with various wireless protocols, compared the costs for building mobile and web apps, and analyzed what solution will be more comfortable for users. &lt;/p&gt;

&lt;p&gt;After the research, our Integra team came to the conclusion that a web application is the best choice for implementing this feature.  &lt;/p&gt;

&lt;p&gt;A significant point here is that this LED displays should work with UTMC protocol for connecting to the Intelligent Transportation System. Building a web portal is the most efficient way to implement it. &lt;/p&gt;

&lt;p&gt;The reason is that it is a more cost-efficient solution and it helps to achieve real-time visualization of data collected from the LED displays and their sensors.&lt;/p&gt;

&lt;p&gt;Other weighty aspects in the software development are Use Cases and User Story, and our engineering team treats them seriously. &lt;/p&gt;

&lt;p&gt;Thus, we gather our customer’s requirements to the UI/UX design, features, functionalities of the future software. The next step we take is describing the algorithm of using the key functions by users or any other roles. For instance, we conducted Discovery Phase for the software part of the project about developing a &lt;a href="https://www.integrasources.com/cases/wi-fi-hot-tub-controller/" rel="noopener noreferrer"&gt;Wi-Fi-enabled controller for hot tubs.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image06.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image06.png%2520align%3D" alt="The hardware part and the mobile application for controlling hot tubs remotely." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;During the Discovery Phase, we worked out a UI/UX design for a iOS and Android mobile application that allows for controlling hot tubs’ sensors and pumps remotely. &lt;/p&gt;

&lt;p&gt;This mobile app is connected with a number of sensors and hot tub’s parts and our customer wanted the application to be intuitive and user-friendly. So, we defined the most comfortable process of using the application and described the comfortable process of the user experience.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image07.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image07.png%2520align%3D" alt="The Use Case description: the first run of the mobile application and connection to an SPA controller." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Machine Learning discovery stage&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In building Machine Learning and AI-driven solutions, identifying the right dataset is of great significance. Another crucial aspect is clearly stating the problem that your Machine Learning solution should solve.&lt;/p&gt;

&lt;p&gt;During the discovery stage of a Machine Learning project, we should find out the following critical things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The main objective of the discovery phase;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The target features: algorithm accuracy and operation speed, its integration and operation with other software;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The input data and its availability;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The dataset availability;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The problem that the future product can solve;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The possible improvement of the Machine Learning solution;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These points are formulated specifically for Machine Learning projects. However, we should also add the questions from the software discovery phase as well.Our Integra team developed &lt;a href="https://www.integrasources.com/cases/computer-vision-system-for-preventing-falls-in-the-elderly/" rel="noopener noreferrer"&gt;a camera system based on Computer Vision algorithms&lt;/a&gt; for detecting falls of the elderly. This is a complex solution, and we offered our client to start with the discovery phase, as it was necessary to determine the project feasibility.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image08.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image08.png%2520align%3D" alt="A depth camera and marked human silhouette in the background." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;During the discovery phase, we selected the right amount of depth camera sensors and defined what type of data is necessary for training a Machine Learning model for tracking human movements and recognizing falls.&lt;/p&gt;

&lt;p&gt;One of the main results of this Discovery Phase is the feasibility of communication system development for this solution. We defined that it is possible to implement a computational unit for gathering the data from all the cameras and/ in case of a fall, sending a signal to caregivers. Thus, upon the Discovery Phase completion, we created a Proof of Concept of a complete solution for taking care of elder people.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Discovery Phase in Firmware and Hardware Development
&lt;/h2&gt;

&lt;p&gt;It is worth mentioning that firmware and &lt;a href="https://www.integrasources.com/services/electronic-design-services/" rel="noopener noreferrer"&gt;hardware development&lt;/a&gt; is not as flexible as software implementation, and making changes in the hardware or firmware solutions can lead to complete hardware redesign. So, it will cost you time and money.&lt;/p&gt;

&lt;p&gt;This peculiarity amplifies the value of the discovery phase for the projects of devices and embedded systems development, and &lt;a href="https://www.integrasources.com/services/embedded-software-development/" rel="noopener noreferrer"&gt;low-level programming&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Before proceeding to the development itself, it is significant to define the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;What design restrictions does your solution have?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What problems does your hardware or firmware product solve?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What market are you going to target? Is this &lt;a href="https://www.integrasources.com/blog/hardware-development-industrial-solutions/" rel="noopener noreferrer"&gt;industrial hardware&lt;/a&gt; or consumer electronics?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Is it possible to create your hardware or firmware product by using the existing technologies?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What technologies and approaches are the most suitable for your product development?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What changes can influence further development of your hardware or firmware product?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What features can improve the performance of your solution?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What part of your hardware or firmware solution can turn out to be the most difficult?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What software should your device or system communicate with?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The hardware and firmware discovery phase is intended to detect these key constraints of your hardware solution development and firmware implementation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image09.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image09.png%2520align%3D" alt="The key constraints in the firmware and hardware development that can be detected by conducting the discovery phase." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The main aspects of firmware and hardware development process&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Let’s study one of our previous works that started with the Discovery Phase.Our team was requested to conduct a Discovery Phase and find out the possible solutions for developing custom capacitive keyboard electronics and define the most suitable components for building this product.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image10.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image10.png%2520align%3D" alt="The diagram shows how the Topre switch is built." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A system of a capacitive switch for keyboards&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The customer’s requirements for the keyboard included capacitive sensing, detection of the spring collapses above the electrode pads on the PCB, simultaneous detection of all the pressed keys, and compatibility with the QMK keyboard.&lt;/p&gt;

&lt;p&gt;Our Integra team studied various possible approaches for measuring capacity and defined that it required the application of a high-frequency signal to columns one by one, amplification of each row signal, and amplitude demodulation and peak detection. &lt;/p&gt;

&lt;p&gt;We found two ways how to do it: 1) using discrete components and 2) using capacitive sensor IC.&lt;/p&gt;

&lt;p&gt;We simulated the first solution and suggested finding a balance between the number of channels and the keys polling speed. It turned out to be the best approach, as it fulfilled all the customer’s requirements for the capacitive keyboard product.&lt;/p&gt;

&lt;p&gt;The second solution required to use 2 sensor ICs for creating this capacitive keyboard. However, upon the completion of our research work, we understood that using the sensor ICs didn’t provide accurate sensing.&lt;/p&gt;

&lt;p&gt;As a result, we provided the customer with the detailed report that describes these two solutions. The customer decided to use the first solution with the discrete components as it was cost-efficient and allowed them to achieve all the goals successfully.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Discovery Phase in IoT projects
&lt;/h2&gt;

&lt;p&gt;As a rule, &lt;a href="https://www.integrasources.com/iot/" rel="noopener noreferrer"&gt;IoT solutions development&lt;/a&gt; combines building software, firmware, and hardware parts, that is 3 in 1. It means that all these parts are interconnected with each other, and making changes in one of them will influence the rest. &lt;/p&gt;

&lt;p&gt;An IoT system is a complex of IoT devices, sensors, databases, software applications, web services, and other network items. Secure and stable communication among them is a vital thing for an IoT solution. So, every component of an IoT system should be efficient and you should choose high-quality ones. &lt;/p&gt;

&lt;p&gt;Making updates, adding or removing features, and replacing a particular component cause difficulties and may lead to a complete redesign of the whole IoT system. As a consequence, it can make you spend more time, budget, and other resources. However, you can avoid these things by starting your IoT project with a Discovery Phase. It will help you define the suitable components, features, and possible challenges early in the game.&lt;/p&gt;

&lt;p&gt;Upon the completion of the IoT project Discovery Phase, you will get a report with the following deliverables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A detailed description of the purpose, behavior, and requirements of the IoT system.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The list of the physical and virtual units, devices, sensors, and services necessary for your IoT solution development.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The specification of the information in your IoT system.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The list with the description of suitable communication and data storage options.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A mock-up or proof of Concept of your entire IoT solution or the part that is studied in the Discovery Phase.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Possible solutions and approaches for building your IoT system.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image11.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image11.png%2520align%3D" alt="The figure shows the main results of the IoT Discovery Phase." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For instance, our Integra team conducted a Discovery Phase for an IoT system for monitoring and controlling recreational vehicle equipment remotely. &lt;/p&gt;

&lt;p&gt;The customer asked us to select the right components (MCU and sensors) for a BLE gateway device, define compatible remote services for data storage and processing, and find suitable options for power supply.&lt;/p&gt;

&lt;p&gt;We analyzed our customer’s requirements for this monitoring IoT system and defined cost-efficient components with the desired functionality. As for the software part of the IoT system, we worked out a mockup of an IoT software solution with mobile and web applications, cloud services, and a dashboard.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image12.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image12.png%2520align%3D" alt="A ship in the sea is monitored via an IoT system remotely." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The results of this Discovery Phase helped our customers choose the right approach for their project development. This IoT product is now close to launching.&lt;/p&gt;

&lt;h2&gt;
  
  
  Our Approach to the Discovery Stage
&lt;/h2&gt;

&lt;p&gt;Our &lt;a href="https://www.integrasources.com/how-we-work/" rel="noopener noreferrer"&gt;Integra Sources team&lt;/a&gt; uses agile methods in conducting project discovery phase. It allows us to look at your solution from all angles and find out the most efficient approach for its development.&lt;/p&gt;

&lt;p&gt;Our agile discovery phase template includes several stages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;gathering a customer’s requirements for the functionality, cost, features, and other characteristics of the future product or its part;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;involving developers with the required technology stack in the discovery phase team;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;doing research for answering the customer’s questions and defining approaches for building a solution or its part;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;building a mockup or a Proof-of-Concept;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;creating a discovery phase report with the detailed description of its results and introducing them to a customer;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;developing a roadmap with timelines, budget, milestones;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;agreeing upon next steps.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Depending on the project complexity, the discovery phase can require from 40 to 200 man-hours.Our discovery phase team usually includes a project manager, several developers, a tech lead, and customer’s team. However, if we should examine a complex solution or an innovative product, we involve more engineers in the discovery phase.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image13.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.integrasources.com%2Fmedia%2Ffiles%2FDiscovery_Phase_image13.png%2520align%3D" alt="The scheme shows the process of conducting a Discovery Phase in Integra Sources." width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Our team has extensive experience in researching and developing software, Machine Learning, firmware, hardware, and IoT projects and leading them from the very start to complete functional products. If you have an idea to check for feasibility, &lt;a href="https://www.integrasources.com/contact-us/" rel="noopener noreferrer"&gt;feel free to contact us&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Developing a new product or implementing a new feature can turn out to be a challenging journey. However, if this journey is well-planned, it will bring a smooth and transparent development process to you and your technical team.&lt;br&gt;&lt;br&gt;
The main purpose of the discovery phase is to take care of the future of your idea implementation and save you from possible risks.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Ins &amp; Outs of Estimating Software Projects</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Tue, 24 Dec 2024 09:41:36 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/ins-outs-of-estimating-software-projects-4709</link>
      <guid>https://dev.to/integrasourcesltd/ins-outs-of-estimating-software-projects-4709</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy2bebu6z8b5y9aawq3im.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy2bebu6z8b5y9aawq3im.jpg" alt="Image description" width="800" height="362"&gt;&lt;/a&gt;&lt;br&gt;
Rarely can a project be successfully completed without evaluation and careful planning. The customer uses the project estimate to gauge the outsourcing team’s competitiveness and draw up a short-term and long-term budget. The outsourcing team uses the project estimate to share the workload.&lt;br&gt;&lt;br&gt;
The ability to correctly evaluate a project and stay within budget gives a huge advantage to an outsourcing team. We at Integra Sources have experience estimating software and hardware projects of different complexity and scale and are here to share with you all the details of the evaluation process.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;What Is Software Development Estimation?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The success of a project largely depends on its accurate assessment. Estimating a software project is challenging as it requires an understanding of all stages of the project, experience in solving similar tasks, and a good command of software tools.&lt;/p&gt;

&lt;p&gt;Each development company works on a project in its own way, so we are going to tell you how a software development project is evaluated here at Integra Sources.&lt;/p&gt;

&lt;p&gt;When &lt;a href="https://www.integrasources.com/contact-us/" rel="noopener noreferrer"&gt;a customer comes to us&lt;/a&gt; with an idea for a software product, he or she, at the outset, wants to know the development duration and cost.&lt;/p&gt;

&lt;p&gt;First, the customer receives a rough estimate. It may differ from the final cost, but the customer immediately gets an idea of how long the development will take and how much it will cost.&lt;/p&gt;

&lt;p&gt;Then, specialists delve into the development details and create a detailed table, which displays the minimum and maximum estimated hours for each project stage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5lz1tcl1u9i33is2hqg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5lz1tcl1u9i33is2hqg.png" alt="Image description" width="725" height="1001"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Detailed software and hardware project estimate.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The estimate always contains a range of minimum and maximum estimated hours. The range can be small if we’re dealing with a routine project and significant if the project is complicated.&lt;/p&gt;

&lt;p&gt;The minimum number of hours can be spent in the ideal course of the process when everything goes like clockwork, which rarely happens in real life. The maximum number of hours includes the time needed for correcting bugs, searching for optimal solutions, etc.&lt;/p&gt;

&lt;p&gt;In addition to the &lt;em&gt;project duration&lt;/em&gt; and &lt;em&gt;cost&lt;/em&gt;, customers often want to know what &lt;em&gt;software tools&lt;/em&gt; will be used to create the program: programming languages, libraries, and frameworks.&lt;/p&gt;

&lt;p&gt;A &lt;a href="https://www.integrasources.com/services/desktop-application-development/" rel="noopener noreferrer"&gt;software app project&lt;/a&gt; estimate may have a portfolio with &lt;em&gt;apps&lt;/em&gt; &lt;em&gt;created by the team&lt;/em&gt; and app screenshots so that a client could evaluate the team’s UI/UX design skills.&lt;/p&gt;

&lt;p&gt;Project estimates may also include &lt;em&gt;team size&lt;/em&gt; if the client needs to meet strict deadlines or wants the work to be done as quickly as possible.&lt;/p&gt;

&lt;p&gt;Software project evaluation depends on many factors. Let’s list just a few of them.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Project development specification&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The team should clearly understand the objective and scope of the project to make accurate software development estimates. The more details the client provides about the future software solution, the more precisely the development team can estimate the project duration.&lt;/p&gt;

&lt;p&gt;All customer’s ideas and requirements regarding the software product are set out in the &lt;a href="https://www.integrasources.com/blog/product-development-specification/" rel="noopener noreferrer"&gt;project development specification&lt;/a&gt;. The customer can prepare a requirement document in-house or entrust it to an outsourcing development team.&lt;/p&gt;

&lt;p&gt;Some project categories, such as &lt;a href="https://www.integrasources.com/blog/healthcare-electronics-development-project-key-points/" rel="noopener noreferrer"&gt;medical software and electronics development&lt;/a&gt;, require the customer to carry out a lot of preparatory work. The client prepares &lt;a href="https://www.integrasources.com/blog/project-discovery-phase/" rel="noopener noreferrer"&gt;a discovery phase report&lt;/a&gt; that contains a detailed product description, a proof-of-concept, software UI/UX design, and many other details. The team uses such a report first to evaluate the project and then throughout development.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Project size and complexity&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The larger the project and the more tasks it contains, the more difficult it is to estimate its duration. Complex project evaluation is usually carried out by all the team members involved in the development.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Experience in developing similar software products&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Evaluating a typical project (for example, &lt;a href="https://www.integrasources.com/cases/virtual-camera-driver-application-development/" rel="noopener noreferrer"&gt;Windows audio and video drivers&lt;/a&gt;) will not take much time or cause any difficulties. A rough estimate will practically correspond to the final development cost.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe771rkzaqo390xx0wzbt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe771rkzaqo390xx0wzbt.png" alt="Image description" width="725" height="486"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Windows driver development estimate.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Estimating the development of a completely unfamiliar software product is much more challenging because the team has no experience with similar solutions.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Software team skills&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If software developers are fluent in all the tools necessary for a given project (programming languages, libraries, frameworks, and development environments), then it is much easier for them to estimate the duration of each project stage since they clearly understand all the tasks and can foresee possible issues.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;What Does a Project Estimate Consist of?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The hours allocated for a project can be divided into two parts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;development hours;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;hours of additional activities.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let’s talk about &lt;em&gt;the hours allocated for development&lt;/em&gt;. The team uses different criteria for software and hardware development estimates since the objects of evaluation are different.&lt;/p&gt;

&lt;p&gt;Software development can include application design, interface layout, database design, server software development, library creation, frontend and backend development, etc.&lt;/p&gt;

&lt;p&gt;Electronics development may include schematic and &lt;a href="https://www.integrasources.com/services/pcb-design-and-layout/" rel="noopener noreferrer"&gt;PCB design&lt;/a&gt;, PCB assembly, &lt;a href="https://www.integrasources.com/services/fpga-design/" rel="noopener noreferrer"&gt;FPGA design&lt;/a&gt;, and embedded software development (very often, it goes without an interface, so the embedded software estimate will be different from the app estimate).&lt;/p&gt;

&lt;p&gt;Development duration also includes the time required for electronic components (for hardware development) or the customer’s device (for software development) to arrive.&lt;br&gt;&lt;br&gt;
Pauses caused by long component delivery and parallel development processes are clearly visible on a Gantt chart. It is a must-have for IT project estimation as it shows the project schedule to the customer and helps distribute the workload between developers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnfmz7ec0u0wh56tjyes2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnfmz7ec0u0wh56tjyes2.png" alt="Image description" width="725" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Gantt chart for an 876-hour software and hardware project.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The &lt;em&gt;additional hours estimate&lt;/em&gt; has the same components for both software and hardware projects. It includes testing, debugging, preparing documents, project management, communication, and handover. Additional activities take up half the project time, or even more, and grow with the project size. The larger the project, the more time is spent on it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.integrasources.com/blog/pcb-and-electronics-testing-and-during-manufacturing-importance-and-methods-implementation/" rel="noopener noreferrer"&gt;PCB and electronics testing&lt;/a&gt; can be carried out in special laboratories if necessary, which increases the number of testing hours.&lt;/p&gt;

&lt;p&gt;The project budget can also include pre-certification activities.&lt;/p&gt;

&lt;p&gt;When developing an electronic device and its &lt;a href="https://www.integrasources.com/services/embedded-software-development/" rel="noopener noreferrer"&gt;embedded software&lt;/a&gt;, we first estimate the hardware development hours since the software part will depend on what electronic components we will use. If the task is to design a device and a &lt;a href="https://www.integrasources.com/services/mobile-app-development/" rel="noopener noreferrer"&gt;mobile application&lt;/a&gt; for communicating with it, then the evaluations of the hardware and software parts can proceed in parallel.&lt;/p&gt;

&lt;p&gt;Please note that changes in electronic component selection will invariably affect embedded software, meaning development hours can increase significantly.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Estimation Techniques&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;There are many approaches to effectively estimating a software project and its critical parameters such as cost, scope, and time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Analogous estimating&lt;/strong&gt; is based on comparing the effort needed to complete a project with a similar project finished in the past. It is suitable for typical projects or stages where experts are confident in every development step. Analogous estimating helps save time and resources as the team does not evaluate each task from scratch.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Top-down estimating&lt;/strong&gt; is a form of analogous estimating and is based on expert opinions.&lt;/p&gt;

&lt;p&gt;Bottom-up estimating covers the entire scope of a project and implies calculating the cost and time for each task. This detailed approach involves all team members and focuses on the smallest details.&lt;/p&gt;

&lt;p&gt;The bottom-up approach is suitable for non-standard projects or stages, especially if the team has no history of running similar tasks. By working through all the development steps, programmers can find ingenious ways to complete a task in a shorter time without losing quality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Three-point estimating&lt;/strong&gt; uses optimistic, pessimistic, and most likely scenarios to find an accurate project estimate.&lt;/p&gt;

&lt;p&gt;There are two calculation formulas.&lt;/p&gt;

&lt;p&gt;1. The triangular distribution is a weighted average of the optimistic estimate (o), the pessimistic estimate (p), and the most likely estimate (m).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5bwc3cr9v1rjf4ap0akl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5bwc3cr9v1rjf4ap0akl.png" alt="Image description" width="725" height="74"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2. The Beta distribution (or PERT) is a weighted average, with the most likely scenario given four times more weight than the optimistic and pessimistic estimates.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2z6p2b88bh4xrjmmqppg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2z6p2b88bh4xrjmmqppg.png" alt="Image description" width="725" height="73"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Generally, the PERT distribution results in a more accurate estimate than the triangle method.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Wideband Delphi&lt;/strong&gt; method is based on a peer assessment of the time required to complete a task. The technique involves conducting several rounds of task assessments made anonymously. Team members discuss results between rounds and can revise their estimates. Eventually, the team should reach the most accurate estimate.&lt;/p&gt;

&lt;p&gt;IT project estimation techniques can be associated with a particular project management approach. Agile project management (APM) is based on the ability of the team to quickly adapt to changing development requirements. APM uses flexible approaches to project evaluation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;T-shirt sizing&lt;/strong&gt; is a method that considers project task sizes as if they were T-shirt sizes, such as XS, S, M, L, and XL. Everyone knows approximately the difference between T-shirts in XS and XL sizes. Likewise, the developers are well versed in the task sizes without the need to measure each of them.&lt;/p&gt;

&lt;p&gt;The T-shirt size technique implies that the development team does not estimate the time required to complete a task or predict a specific deadline but compares the size of one part to the size of another.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Planning poker (or Scrum poker)&lt;/strong&gt; is an estimation technique used in the Scrum management methodology. Projects are estimated with the help of poker cards. This technique minimizes the anchoring effect: when participants’ estimations are influenced by a judgment previously expressed by another team member (especially a reputable one).&lt;/p&gt;

&lt;p&gt;Each technique has pros and cons, so you can use holistic project estimation methods to reach a high level of certainty and improve the reliability of the estimates. Thus, the PERT estimating method is often used with analogous estimating or with top-down technique.&lt;/p&gt;

&lt;p&gt;You can mix methods for different stages of the project. For example, the poker planning method can be used at the beginning when there is still uncertainty and insufficient information, and the three-point estimation technology can be used later when all the necessary information has been collected.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Techniques Our Experts Use&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The Integra Sources team uses holistic project estimation approaches when evaluating software development. When getting started on a project, we rely on estimates of similar past projects and consider the expert opinions of the developers. We also use a three-point technique to provide a detailed project duration and cost estimate.&lt;/p&gt;

&lt;p&gt;If a project is complex or contains challenging tasks, we apply the bottom-up technique, breaking down the project into smaller tasks and estimating how much time and effort each task will take.&lt;/p&gt;

&lt;p&gt;Sometimes, but not as often, our team uses scrum methods, like T-shirt sizing, Planning poker, etc., to understand how quickly we can move through development stages and how we can optimize processes.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Who Makes Software Project Budgeting?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The project manager is responsible for software project planning. The PM adds all the necessary additional activity hours to the project estimate. Different specialists may be responsible for estimating development hours, depending on the IT project estimation technique chosen.&lt;/p&gt;

&lt;p&gt;At Integra Sources, the project is evaluated by technical leads and developers. Furthermore, the CTO always validates the final project estimate before sending it to the customer.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Software Project Estimate Issues&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;First, the effort spent on estimation depends on the project itself. Large, complex, and unique projects make estimation more difficult and errors more likely to occur.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://quixy.com/blog/important-project-management-statistics/" rel="noopener noreferrer"&gt;According to statistics&lt;/a&gt;, poor estimates during project planning are one of the most common causes of project failure.&lt;/p&gt;

&lt;p&gt;What does underestimating a project lead to?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The project goes far beyond the budget in terms of time and cost, which cannot but affect its results and further cooperation. Exceeding the budget rates leads to misunderstandings and disputes. The team and the customer spend even more time trying to figure out what went wrong.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Software product quality may suffer due to haste caused by deviations from the schedule. As a result, the customer either receives a solution with many shortcomings or has to wait longer until the developers fix the bugs caused by the rush.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The &lt;em&gt;better safe than sorry&lt;/em&gt; principle is not always true when it comes to project evaluation. Yes, the final estimate includes additional time to resolve possible difficulties and unexpected situations since there are no ideal projects. However, an overestimated project can scare away the customer, whose natural desire is to have software developed faster and for less money.&lt;/p&gt;

&lt;p&gt;An incorrect assessment has ruined more than one project, and, unfortunately, we have had such an experience, too.&lt;/p&gt;

&lt;p&gt;Our development team conducted a rough estimate of electronics and embedded software development. There were some doubts about whether we correctly understood the customer’s wishes and would be able to implement the project. We advised the client to conduct pre-project preparation and write a thorough requirement document.&lt;/p&gt;

&lt;p&gt;Having carefully studied the specification document, our developers increased the estimate by 1.5 times since the project turned out to be more complicated than we expected and the customer added new requirements. The new cost appeared too high for the customer, and he stopped the project.&lt;/p&gt;

&lt;p&gt;The biggest lesson we have taken from that unsuccessful project many years ago, at the very beginning of our activities, is that we should evaluate projects as carefully as possible, clarifying in advance all the unclear moments with the customer.&lt;/p&gt;

&lt;p&gt;Another thing that can scare customers away is when estimates change too much.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Why Might the Estimate Change?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Fluctuations in project estimates can occur for many reasons. Here are the most common ones:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Software developers misunderstood the customer’s wishes.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most often, this happens due to a poorly drafted requirements document or when there is no document and all the requirements are explained verbally.&lt;/p&gt;

&lt;p&gt;High-quality pre-project work and a thorough specification can minimize the risks of incorrect project estimates.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The task took longer than planned.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some development stages may turn out to be more difficult than initially expected, or there may be many nuances, for example, when developing medical solutions. Programmers may spend more time when they do not have enough expertise in a specific programming language or software tools.&lt;/p&gt;

&lt;p&gt;Such moments are difficult to avoid or predict, and a competent estimate of software development should include additional hours for challenging tasks and unforeseen circumstances.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The customer wanted to make changes to the electronics functionality or add new software features.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most often, it happens to software projects (e.g., app development) since the client’s wishes are not limited by the hardware architecture’s capabilities.&lt;/p&gt;

&lt;p&gt;Keep in mind that even seemingly small changes in software design or functionality can result in a large number of additional development hours.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;It is not that easy to accurately estimate software development duration and cost. There are many things to consider, including time for force majeure, logistical delays, and finding solutions to challenging tasks.&lt;/p&gt;

&lt;p&gt;Incorrect project evaluation can cause the loss of a project and a client. That is why precisely estimating the time and effort put into development is so vital.&lt;br&gt;&lt;br&gt;
Diverse development experience and mastery of various project evaluation methods will help the outsourcing team achieve accurate budgeting. Tell us your ideas, and we will estimate how long it will take to put them into practice and how much it will cost.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Choose the MQTT Protocol for your IoT Devices (with some caveats)</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Thu, 12 Dec 2024 06:19:18 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/why-choose-the-mqtt-protocol-for-your-iot-devices-with-some-caveats-3nf7</link>
      <guid>https://dev.to/integrasourcesltd/why-choose-the-mqtt-protocol-for-your-iot-devices-with-some-caveats-3nf7</guid>
      <description>&lt;p&gt;You might have heard a lot about the MQTT protocol. The technology is over twenty years, and it is commonly used in communication networks of different types. The Internet of Things is one of the most popular application fields for this protocol. Here, we will provide insight into MQTT and its use in IoT applications. We will talk about the strong and weak points of this messaging standard and compare it with other competing technologies.&lt;/p&gt;

&lt;p&gt;MQTT is a high-usage technology that was initially used to build connections within a satellite-based network. The lightweight protocol allowed for low bandwidth and power consumption.&lt;/p&gt;

&lt;p&gt;The resource efficiency of MQTT played a major role in the system, working via the costly satellite link. Later on, MQTT has come into use with more accessible and low-cost communication channels and in various application areas, including the Internet of Things (IoT).&lt;/p&gt;

&lt;p&gt;So what is the MQTT protocol? Are there advantages of using it for your IoT device instead of other protocols? What are these advantages? We will figure all this out in the article.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;What Is MQTT Protocol?&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;In 1999, IBM and Eurotech developers established the first version of Message Queuing Telemetry Transport, or MQTT. It is an open &lt;a href="https://en.wikipedia.org/wiki/Transmission_Control_Protocol?ref=hackernoon.com" rel="noopener noreferrer"&gt;TCP&lt;/a&gt;/&lt;a href="https://en.wikipedia.org/wiki/Internet_Protocol?ref=hackernoon.com" rel="noopener noreferrer"&gt;IP&lt;/a&gt;-based protocol that provides data exchange within a network of devices.&lt;/p&gt;

&lt;p&gt;In 2014, this client-server communication standard came under the umbrella of &lt;a href="https://www.oasis-open.org/?ref=hackernoon.com" rel="noopener noreferrer"&gt;Oasis&lt;/a&gt;. The international organization for standardization released &lt;a href="http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html?ref=hackernoon.com" rel="noopener noreferrer"&gt;MQTT version 3.1.1&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In 2016, &lt;a href="https://www.iso.org/home.html?ref=hackernoon.com" rel="noopener noreferrer"&gt;ISO&lt;/a&gt; set it as &lt;a href="https://www.iso.org/standard/69466.html?ref=hackernoon.com" rel="noopener noreferrer"&gt;ISO/IEC 20922:2016.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;How does MQTT work? The protocol uses a publish-subscribe pattern and includes the following components:&lt;/p&gt;

&lt;p&gt;A server, or broker, communicates with the clients (publishers and subscribers) via an internet connection or a local network. A publisher creates messages and publishes them on a certain topic. A subscriber receives the messages relevant to the topic to which it is subscribed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7j9kjlabjkm1nmcfafhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7j9kjlabjkm1nmcfafhy.png" alt="Image description" width="725" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;MQTT workflow&lt;/p&gt;

&lt;p&gt;Publishers and subscribers may switch roles, and sometimes MQTT clients take on the role of both. The number of publishers and subscribers can be unlimited. This will only depend on your server’s capacity. The clients have IDs by which the server identifies them.&lt;/p&gt;

&lt;p&gt;Each topic comprises different subtopics, or levels, that form a hierarchy. By publishing messages to the exact subtopics, the publisher will be able to reach the intended recipient that has a subscription for the same topic levels.&lt;/p&gt;

&lt;p&gt;Like any other binary protocol, MQTT has an edge over text protocols in machine-to-machine communication. Devices can send and receive the binary data without extra processing, which speeds up the messaging within the network.&lt;/p&gt;

&lt;p&gt;MQTT transmits messages in packets. A packet consists of a:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fixed header&lt;/strong&gt; — This is a mandatory part of the message comprising a control header and a packet size. The minimum size is 2 bytes, and the maximum size is 5 bytes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Variable header&lt;/strong&gt; — This is an optional part of the message that provides additional information. Its size may vary, depending on the message type.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Payload&lt;/strong&gt; — This is an optional part of the message with a maximum size of 256 MB. It may include different commands, like switching on/off, data exchange, and reading sensor data.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzal73bdcs13yj6g2awd3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzal73bdcs13yj6g2awd3.png" alt="Image description" width="725" height="199"&gt;&lt;/a&gt;&lt;br&gt;
MQTT message structure&lt;/p&gt;

&lt;p&gt;Depending on the CPU capabilities, MQTT can connect many thousands or even millions of devices. Besides the scalability, it is simple to use. It has low system requirements and high compatibility with Internet-connected applications.&lt;/p&gt;

&lt;p&gt;That is why this network technology is so popular in the IoT. It also finds wide use in consumer electronics, automotive, and industrial applications.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Why MQTT Protocol Is Used in IoT&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;To keep it simple, an IoT system is a network of connected devices communicating with each other. MQTT fits well into this concept. It is a light protocol with a fast response time. It makes the interaction between devices efficient, whatever the number of devices there is.&lt;/p&gt;

&lt;p&gt;An attractive feature native to the MQTT protocol architecture is the minimum overhead. It ensures smooth data transfer with low bandwidth and reduces the load on the CPU and RAM.&lt;/p&gt;

&lt;p&gt;We used MQTT as a light and energy-efficient communication protocol in our &lt;a href="https://www.integrasources.com/cases/customizable-gps-tracking-platform-for-monitoring-assets/?ref=hackernoon.com" rel="noopener noreferrer"&gt;customizable GPS tracking solution&lt;/a&gt;. In this IoT project, a GPS tracker collects beacon data and sends it to the cloud with real-time display on the front end. MQTT was a good choice for a small-sized device with low power consumption.&lt;/p&gt;

&lt;p&gt;The MQTT IoT protocol can transfer data even with unstable connections. It provides three options for Quality of Service (QoS), which is responsible for the message delivery. The choice of the option depends on data criticality and connection stability.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;QoS 0&lt;/strong&gt; (set as default): A publisher sends a message without requesting guaranteed delivery. You can use it when the information transmitted is not critical and the connection is stable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;QoS 1&lt;/strong&gt;: A publisher sends a message until it gets a delivery confirmation. You can use it when the information transmitted is critical and the connection is not stable. QoS 1 makes sure the subscriber receives the message.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;QoS 2&lt;/strong&gt;: A publisher sends a message only once with guaranteed delivery. You can use it when the information transmitted is critical, and the connection is not stable. QoS 2 makes sure the subscriber receives the message only once without its duplicates and overhead.&lt;/p&gt;

&lt;p&gt;MQTT is an open protocol with standard documentation. It has a set of ready-made libraries for C/C++, Java, JavaScript, Python, and other programming languages.&lt;/p&gt;

&lt;p&gt;The open-source MQTT libraries and public brokers minimize the development costs and speed up the development process.&lt;/p&gt;

&lt;p&gt;Freely available documentation and a large developer community make the implementation of MQTT protocol easy and possible in any environment, with either pre-made or custom libraries.&lt;/p&gt;

&lt;p&gt;To deploy the MQTT protocol for IoT devices, you need a library and a broker that can be your local server, or a cloud-based one. The cost of deployment will depend on the choice of development tools and environment.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;MQTT Security&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;If you’re planning to use MQTT in your IoT application, you need to make sure the transmitted data is confidential and secure.&lt;/p&gt;

&lt;p&gt;MQTT protocol security relies on &lt;a href="https://en.wikipedia.org/wiki/Transport_Layer_Security?ref=hackernoon.com" rel="noopener noreferrer"&gt;the TLS/SSL cryptographic protocols&lt;/a&gt; and rather weak authentication. So MQTT is not among the top protocols in terms of security. You can introduce additional features to make MQTT well-secured and protect your IoT system against vulnerabilities.&lt;/p&gt;

&lt;p&gt;You can add security mechanisms on different levels. For example, you can use a firewall for the broker security on the network level. Or you can use encryption algorithms to make MQTT secure on the application level. Implementation of end-to-end encryption enables confidential messaging between clients.&lt;/p&gt;

&lt;p&gt;You can also use an access token to identify clients and prevent your system from unwanted access.&lt;/p&gt;

&lt;p&gt;To improve authentication, you need to modify the protocol, and therefore the broker. Since an off-the-shelf broker does not allow for such modifications, you will have to deploy your own broker and customize it.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;IoT Applications Which Use MQTT Protocol&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;MQTT is a flexible and easy-to-use technology that provides effective communication within an IoT system. So, no wonder there are many popular IoT applications that use the MQTT protocol.&lt;/p&gt;

&lt;p&gt;For example, the &lt;a href="https://www.ibm.com/support/knowledgecenter/en/SSQP8H/iot/platform/devices/mqtt.html?ref=hackernoon.com" rel="noopener noreferrer"&gt;IBM Watson IoT Platform&lt;/a&gt; uses MQTT as the main communication protocol.&lt;/p&gt;

&lt;p&gt;Amazon Web Services used MQTT as a basis for &lt;a href="https://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html?ref=hackernoon.com" rel="noopener noreferrer"&gt;AWS IoT&lt;/a&gt; services. AWS IoT Core has an MQTT-based message broker, and it supports two levels of MQTT QoS.&lt;/p&gt;

&lt;p&gt;In one of our IoT projects, we developed an AWS cloud solution for a &lt;a href="https://www.integrasources.com/cases/aws-cloud-for-monitoring-solar-energy-consumption-in-households/?ref=hackernoon.com" rel="noopener noreferrer"&gt;solar monitoring system&lt;/a&gt;. We used MQTT to send solar battery data to the cloud dashboard.&lt;/p&gt;

&lt;p&gt;Microsoft Azure offers the Azure IoT Hub service to build IoT applications &lt;a href="https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-mqtt-support?ref=hackernoon.com" rel="noopener noreferrer"&gt;using the MQTT protocol&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;McAfee, Red Hat, Cisco, and IECC are also among the companies that have chosen MQTT for various tasks.&lt;/p&gt;

&lt;p&gt;But is MQTT the best IoT protocol? Other communication protocols, such as HTTP, CoAP, AMQP have similar functionality. You can also use them in IoT applications.&lt;/p&gt;

&lt;p&gt;To get a true picture of the performance and relevance of the MQTT protocol for Internet of Things, let’s put things into perspective.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;MQTT Alternatives and Their Benchmarking&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Seamless communication is one of the key points of a well-functioning IoT system. You can achieve this by choosing a suitable communication protocol. MQTT can become a good option for your IoT product, but there are alternatives too.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;HTTP vs. MQTT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The history of the Hypertext Transfer Protocol (HTTP) dates back to 1989. As an open standard, it was established by &lt;a href="https://en.wikipedia.org/wiki/Internet_Engineering_Task_Force?ref=hackernoon.com" rel="noopener noreferrer"&gt;IETF&lt;/a&gt; and &lt;a href="https://en.wikipedia.org/wiki/World_Wide_Web_Consortium?ref=hackernoon.com" rel="noopener noreferrer"&gt;W3C&lt;/a&gt; in 1997. It uses TCP/IP as transport protocols, but the upcoming HTTP/3 will be &lt;a href="https://en.wikipedia.org/wiki/User_Datagram_Protocol?ref=hackernoon.com" rel="noopener noreferrer"&gt;UDP&lt;/a&gt;-based.&lt;/p&gt;

&lt;p&gt;HTTP is a web protocol, and it is often used together with HTML to communicate with web browsers.&lt;/p&gt;

&lt;p&gt;HTTP is a text protocol that works on a request/response model and uses &lt;a href="https://en.wikipedia.org/wiki/Uniform_Resource_Identifier?ref=hackernoon.com" rel="noopener noreferrer"&gt;URI&lt;/a&gt; or &lt;a href="https://en.wikipedia.org/wiki/URL?ref=hackernoon.com" rel="noopener noreferrer"&gt;URL&lt;/a&gt; as message topics. A client sends a request to a server, and the server sends back a response. There are no specific limits to the message size; it is the server that places the limitations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overhead&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Unlike MQTT, HTTP is heavyweight because it is a text protocol. This implies the transmission of large-size messages and high overhead.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory/power consumption&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;HTTP is heavy. It needs more power and memory resources than MQTT and any other lightweight protocol.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Licensing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;HTTP is an open standard&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Documentation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Freely available&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scalability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;HTTP can be used with multiple devices. However, the more devices you add, the more load you put on the server. This negatively affects overall performance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reliability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;HTTP has no Quality of Service or other services, so it relies on TCP only as a guarantee of message delivery.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Originally, HTTP was designed with no security mechanisms. HTTPS is the encrypted HTTP that has the same level of security as MQTT. It uses TLS/SSL to authenticate clients and encrypt the transferred data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CoAP vs. MQTT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Constrained Application Protocol (CoAP), developed by IETF, is a UDP-based protocol. It has much in common with HTTP, and these two protocols reliably work with each other.&lt;/p&gt;

&lt;p&gt;CoAP is a binary protocol that supports two modes of communication: publish/subscribe and request/response. Like HTTP, it publishes messages to URI. The maximum message size is determined by the server capacity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overhead&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As intended for constrained devices, CoAP has a small message size and minimum overhead. Besides, CoAP uses UDP, which is a simple transport protocol that has no handshakes and guaranteed delivery. This also minimizes overhead and message size. In this case, CoAP has the upper hand over MQTT. Despite the lightweight architecture and low message size, MQTT runs on TCP that contains connection requests, handshakes, and a delivery guarantee.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory/power consumption&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CoAP is designed for resource-limited devices. So its major advantages are power efficiency and low memory consumption. Sometimes, CoAP can be more resource-efficient than MQTT.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Licensing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CoAP is an open standard&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Documentation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Freely available&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scalability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Extremely low overhead makes CoAP a scalable protocol that can be used with a large number of connected devices.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reliability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is not a strong point of this protocol. Unlike MQTT, CoAP has no Quality of Service, and it runs on UDP, which has no guaranteed delivery. To ensure delivery, it uses confirmable and non-confirmable messages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As a UDP-based protocol, CoAP can’t encrypt data using TLS as MQTT does. So it uses the &lt;a href="https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Security?ref=hackernoon.com" rel="noopener noreferrer"&gt;DTLS&lt;/a&gt; and &lt;a href="https://en.wikipedia.org/wiki/IPsec?ref=hackernoon.com#:~:text=In%20computing%2C%20Internet%20Protocol%20Security,virtual%20private%20networks%20(VPNs)." rel="noopener noreferrer"&gt;IPsec&lt;/a&gt; security protocols for encryption and authentication.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AMQP vs. MQTT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Advanced Message Queuing Protocol (AMQP) was developed at &lt;a href="https://en.wikipedia.org/wiki/JPMorgan_Chase?ref=hackernoon.com" rel="noopener noreferrer"&gt;JPMorgan Chase &amp;amp; Co.&lt;/a&gt; in 2003 as an open messaging protocol for banking systems.&lt;/p&gt;

&lt;p&gt;AMQP is a binary TCP-based protocol that can use either a publish/subscribe model or a request/response pattern.&lt;/p&gt;

&lt;p&gt;The exchange component of the protocol gets a message from the publisher and routes it to a queue. The queue stores the message until the client can process it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overhead&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AMQP is light, and it doesn’t have much overhead. But it puts a strong emphasis on message delivery that adds overhead and makes it high compared to MQTT.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory/power consumptio&lt;/strong&gt;n&lt;/p&gt;

&lt;p&gt;AMQP doesn’t take too much RAM and CPU resources. However, it consumes them more than MQTT due to a more complex messaging system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Licensing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AMQP is an open standard&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Documentation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Freely available&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scalability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AMQP is scalable, and it allows for using multiple connections.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reliability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Both protocols, AMQP and MQTT, have features and opportunities to provide reliable messaging. They run on TCP and apply QoS to provide stable and ensured data transfer. AMQP provides two levels of QoS, while MQTT has three of them. Besides, MQTT has the so-called “last will and testament” option. It guarantees the delivery of a message to the client in case of disconnection.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AMQP has the edge over MQTT in terms of security. It uses various TLS extensions, including &lt;a href="https://en.wikipedia.org/wiki/Server_Name_Indication?ref=hackernoon.com" rel="noopener noreferrer"&gt;SNI&lt;/a&gt;, and &lt;a href="https://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer?ref=hackernoon.com" rel="noopener noreferrer"&gt;SASL&lt;/a&gt; for client authentication and data encryption.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Throughput and Latency Benchmarking&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To provide a clearer picture of MQTT performance in comparison with its alternatives, we carried out our own benchmark analysis. We created a testing environment to measure latency and throughput. These are the measurable parameters that highlight a protocol’s performance.&lt;/p&gt;

&lt;p&gt;We defined throughput as the maximum number of messages per second sent from the publisher to the broker or server. Measuring the latency, we took the minimum server’s response time. We used &lt;a href="https://jmeter.apache.org/?ref=hackernoon.com" rel="noopener noreferrer"&gt;Apache JMeter&lt;/a&gt; and its plugins as a load testing tool.&lt;/p&gt;

&lt;p&gt;The publisher’s hardware ran on a single-core processor with an operating frequency of 700 MHz and 512 MB of RAM. The server hardware used a single-core processor with 2GB RAM. The payload size of each message that we sent using the protocols was 64 KB.&lt;/p&gt;

&lt;p&gt;In our benchmarking, we considered MQTT with different levels of QoS.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwxj641hah2nwm8e4oqtg.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwxj641hah2nwm8e4oqtg.jpg" alt="Image description" width="735" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Throughput and latency comparison chart&lt;/p&gt;

&lt;p&gt;According to our benchmarking results, CoAP showed outstanding performance in throughput. It managed to send twice as many messages as MQTT with QoS 0. HTTP and MQTT with QoS 1 and QoS 2 were on much the same level with the lowest throughput.&lt;/p&gt;

&lt;p&gt;The same protocols (HTTP; MQTT with QoS 1 and 2) had delays in the server’s response time. MQTT with QoS 0, CoAP, and AMQP showed zero latency.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;More Options for IoT Protocols&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;There are dozens of communication protocols designed for various needs and purposes. Many of them can be used for IoT projects. Among the worth-mentioning protocols are the following:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;STOMP (Simple (or Streaming) Text Oriented Message Protocol)&lt;/strong&gt;, a TCP-based text protocol that is very similar to HTTP. STOMP uses a broker that sends messages to clients. STOMP supports a wide range of languages and platforms. It is simple and easy to implement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DDS (Data Distribution Service)&lt;/strong&gt;, a publish/subscribe protocol that can be used in large-scale, high-performance, and real-time systems. DDS controls message delivery with the help of Quality of Service. The protocol has libraries for the most popular programming languages. It is available in both open-source and commercial versions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;XMPP (Extensible Messaging and Presence Protocol)&lt;/strong&gt;, an open client-server standard based on XML. XMPP uses a publish/subscribe mechanism, and it runs over TCP and HTTP. It has a rich selection of free and open-source libraries and servers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SSE (Server-Sent Events)&lt;/strong&gt;, a part of HTML5. SSE uses HTTP as a transport protocol and provides one-way communication from server to client. A client sends a request, and the server pushes data once the connection is open.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LwM2M, or Lightweight M2M&lt;/strong&gt;, is an open protocol for IoT device management. LwM2M interoperates with CoAP as it is light and energy-efficient and is often used for constrained devices. There are many available LwM2M specifications, SDKs, and implementations.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Future of MQTT&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;According to &lt;a href="https://trends.google.com/trends/explore?date=today+5-y&amp;amp;q=MQTT&amp;amp;ref=hackernoon.com" rel="noopener noreferrer"&gt;Google Trends&lt;/a&gt;, the level of interest in MQTT has quadrupled worldwide in the past 5 years. This trend is supported by the high-speed expansion of the IoT market and a persistent tendency towards simplicity and resource efficiency.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmpguzp0h6yvt9b7x7u81.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmpguzp0h6yvt9b7x7u81.png" alt="Image description" width="725" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;MQTT and IoT popularity dynamics&lt;/p&gt;

&lt;p&gt;Simple architecture, easy implementation, reliable message delivery, and high scalability are the strong benefits that will maintain an interest in the MQTT protocol for IoT.&lt;/p&gt;

&lt;p&gt;OASIS released the latest version of the protocol, which is &lt;a href="https://docs.oasis-open.org/mqtt/mqtt/v5.0/mqtt-v5.0.html?ref=hackernoon.com" rel="noopener noreferrer"&gt;MQTT 5.0&lt;/a&gt;, in March 2019. The new features added to v5.0 are message expiry, shared subscription, and topic alias. They optimized MQTT performance and made it more attractive for IoT developers.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;MQTT is a strong competitor in the field of data transfer and network communication, although it is not number one at every point. For example, CoAP outperforms MQTT in throughput and overhead. And AMQP takes the lead in security.&lt;/p&gt;

&lt;p&gt;However, there are several key benefits that MQTT provides to its users:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;reliability;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;fast response time;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;capability to support unlimited devices;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;publish/subscribe messaging that is perfect for many-to-many communication;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;sufficient documentation and a strong developer community that simplifies MQTT protocol implementation.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All this makes MQTT a well-suited option for your IoT device. In our &lt;a href="https://www.integrasources.com/iot/?ref=hackernoon.com" rel="noopener noreferrer"&gt;IoT solution development&lt;/a&gt;, we use MQTT as part of the protocol stack. This is one of the favorite choices for low-power wireless devices with unstable connections.&lt;/p&gt;

</description>
      <category>iot</category>
      <category>mqtt</category>
    </item>
    <item>
      <title>Best Countries for Contract Electronics Manufacturing, Part 2: Malaysia, Thailand, Vietnam, and India</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Tue, 23 Apr 2024 07:02:16 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/best-countries-for-contract-electronics-manufacturing-part-2-malaysia-thailand-vietnam-and-india-1i43</link>
      <guid>https://dev.to/integrasourcesltd/best-countries-for-contract-electronics-manufacturing-part-2-malaysia-thailand-vietnam-and-india-1i43</guid>
      <description>&lt;p&gt;In one of the previous articles, we mentioned some of the top regions and countries for &lt;a href="https://www.integrasources.com/blog/manufacturing-electronics-at-home-vs-outsourcing-all-you-need-to-know/"&gt;outsourcing electronics manufacturing&lt;/a&gt;. In this post, we decided to write about some of these countries in detail. We’ll cover the pros and cons of these locations, local export regulations, and some of the top local EMS providers.&lt;/p&gt;

&lt;p&gt;Our team specializes in developing &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;embedded electronics&lt;/a&gt; and &lt;a href="https://www.integrasources.com/services/embedded-software-development/"&gt;software&lt;/a&gt;. After you &lt;a href="https://www.integrasources.com/contact-us/"&gt;contact Integra Sources&lt;/a&gt;, we study your project, develop the product, test it, and hand over the design documents to you. Your next move is to organize mass manufacturing. Companies that don’t own manufacturing facilities outsource this task to EMS providers, including those located abroad. In &lt;a href="https://www.integrasources.com/blog/best-countries-for-contract-electronics-manufacturing-part-1/"&gt;the first part of this post&lt;/a&gt;, we talked about China, Taiwan, the U.S., and Mexico as potential locations for electronics production. Now, we would like to discuss Thailand, Vietnam, Malaysia, and India.&lt;/p&gt;

&lt;h2&gt;
  
  
  Malaysia
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr1bxv2rpdam1i32cspjm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr1bxv2rpdam1i32cspjm.png" alt="Kuala Lumpur landscape." width="725" height="482"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced E&amp;amp;E industry&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The country is one of the key global players in the electrical and electronic industry, which makes it one of the best countries for electronics manufacturing. In September 2023, &lt;a href="https://www.matrade.gov.my/en/about-matrade/media/press-releases/5945-trade-performance-for-september-2023-and-the-period-of-january-september-2023"&gt;E&amp;amp;E products accounted for 43.7% of its total exports&lt;/a&gt;. Malaysian manufacturers produce passive components, PCBs, consumer electronics, and industrial equipment. Additionally, corporations such as Intel and AMD started operating in Malaysia in the 1970-80s, so there’s no lack of highly skilled professionals specializing in electronics. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Low labor costs&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Factory and manufacturing average salaries in Malaysia are lower than in Thailand.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Business-friendly environment and no export taxes&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The country ranks 12&lt;sup&gt;th&lt;/sup&gt; in the &lt;a href="https://documents1.worldbank.org/curated/en/688761571934946384/pdf/Doing-Business-2020-Comparing-Business-Regulation-in-190-Economies.pdf"&gt;World Bank’s 2020 Doing Business Report&lt;/a&gt;. The government has introduced many initiatives to boost Malaysia’s electronics production industry. On top of that, almost all goods have zero export duties except for the country’s main commodities: petroleum, crude oil, and palm oil. You can see the rates in the &lt;a href="https://www.maqis.gov.my/wp-content/uploads/2023/07/P.U.-A-114-Perintah-Duti-Kastam-2022.pdf"&gt;Customs Duties Order 2022&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Limited capacity&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Like other small countries, Malaysia has a limited labor pool, which makes it challenging to launch large-scale production there.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Import dependence&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Malaysia’s electronics production is highly dependent on imports of machinery and raw materials from other countries, which may become a problem if the political situation in the region escalates.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in Vietnam:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Asia Printed Circuit Sdn. Bhd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;LKL Sunrise Electronics(M) Sdn Bhd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RONNIE ELECTRONICS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;BCM Electronics Corporation Sdn. Bhd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;VISION&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Supreme PCB Solutions. Sdn. Bhd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AR Dynamic Technology Sdn. Bhd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Inovus Technology&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Silvtronics&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Qdos Tech&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulation in Malaysia
&lt;/h3&gt;

&lt;p&gt;Malaysia’s main laws governing export operations are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The &lt;strong&gt;Strategic Trade Act 2010&lt;/strong&gt; and the &lt;strong&gt;Strategic Trade (Amendment) Act 2017&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The &lt;strong&gt;Customs Act 1967 (CA)&lt;/strong&gt; and the &lt;strong&gt;Customs (Prohibition of Exports) Order 2017 (CPEO)&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The &lt;a href="https://www.env.go.jp/en/recycle/asian_net/Country_Information/Law_N_Regulation/Malaysia/Customs%20(Prohibition%20of%20Exports)%20Order%20(2017).pdf"&gt;Customs (Prohibition of Exports) Order 2017&lt;/a&gt; divides goods into three categories:&lt;/p&gt;

&lt;p&gt;1. Goods prohibited for export (First Schedule).&lt;/p&gt;

&lt;p&gt;2. Goods that require an export license (Second Schedule).&lt;/p&gt;

&lt;p&gt;3. Goods subject to export prohibition, except in the manner provided in the Schedule and when export is allowed under the International Trade in Endangered Species Act 2008 (Third Schedule). &lt;/p&gt;

&lt;p&gt;These goods include turtle eggs, certain chemicals, minerals, ores, military equipment, wild animals, plants, certain foods, etc.&lt;/p&gt;

&lt;p&gt;Additionally, the &lt;a href="https://www.miti.gov.my/index.php/pages/view/8704"&gt;&lt;strong&gt;Restricted and Prohibited End-Users Order&lt;/strong&gt;&lt;/a&gt; controls the export of goods to certain countries, entities, and individuals. The prohibited end-users include various individuals and enterprises in North Korea and Iran. The restricted end-users include North Korea, Iran, Congo, Ivory Coast, Lebanon, Sudan, Libya, Afghanistan, Iraq, Liberia, Rwanda, Somalia, and Eritrea.&lt;/p&gt;

&lt;h2&gt;
  
  
  Thailand
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7mf8goj9jaildp6i107a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7mf8goj9jaildp6i107a.png" alt="A street in Bangkok." width="725" height="484"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Electronics manufacturing hub&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thailand has become an important player in the regional electronics industry. The nation exports semiconductors, consumer devices, and automotive electronics. LG, Samsung, Intel, and other global electronics companies have established manufacturing there.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Strategic location&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Due to its proximity to key electronics markets in China, South Korea, India, Taiwan, and Japan, the country has become an attractive hub for electronics production. Being in the heart of the region makes it possible to distribute locally produced goods to both regional and global markets.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Skilled workforce&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thailand’s electronics production enterprises have access to well-trained workers, particularly in electronics, due to a sound education system.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Competitive costs&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The factory and manufacturing average salaries in Thailand are lower than in China: $1,878 against $2,840. This and other factors make manufacturing here cheaper than in many other locations. As for quality, many Thai manufacturers have ISO, UL, and other certifications, so their goods meet international standards.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ease of doing business&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;According to the &lt;a href="https://documents1.worldbank.org/curated/en/688761571934946384/pdf/Doing-Business-2020-Comparing-Business-Regulation-in-190-Economies.pdf"&gt;2020 Doing Business&lt;/a&gt; report, Thailand ranks 21st in terms of business-friendliness globally, ahead of China, Japan, India, and Vietnam. This is largely due to the governmental support of the electronics industry, whose incentives encourage investments and growth in the sector. &lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Limited capacity&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Just like Taiwan, Thailand cannot compare to China in terms of production capacity. Therefore, it would most likely be difficult to set up large-scale manufacturing there.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Import dependency&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Like many other locations, Thailand’s electronics production is highly dependent on the import of components.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Climate instability&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;From time to time, the country suffers from Monsoon flooding that hits all local industries. Back in 2011, one of such &lt;a href="https://www.reuters.com/article/idUSTRE79R0QR/"&gt;floods paralyzed the local manufacturers&lt;/a&gt; of car parts and PC hard drives.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feq2uirvc1ml3mp4k20iy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feq2uirvc1ml3mp4k20iy.png" alt="The result of the 2011 flood in Thailand." width="725" height="485"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;U.S. Navy photo by Mass Communication Specialist 1st Class Jennifer A. Villalovos, Public domain, via Wikimedia Commons.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in Thailand:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Circuit Industries Co., Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Apex Circuit&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bluechips Microhouse Co., Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Draco PCB Public Company Limited&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fabrinet&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;KCE Group&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Amallion Enterprise &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Asteelflash&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Autech Thailand&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Kinpo Electronics&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulations in Thailand
&lt;/h3&gt;

&lt;p&gt;The country’s main governing legislation for international trade is the &lt;a href="https://www.dft.go.th/Portals/0/Law/EXPORT%20AND%20IMPORT%20OF%20GOODS%202522-01.pdf"&gt;&lt;strong&gt;Export and Import Act B.E. 2522 (1979)&lt;/strong&gt;&lt;/a&gt;. The Ministry of Commerce can specify goods to be prohibited or restricted for export and import. &lt;/p&gt;

&lt;p&gt;Currently, there are about 50 goods that are not allowed to be exported from Thailand, but this list often changes. Goods prohibited for export include natural sand and intellectual property-infringing goods, pornographic materials, narcotics, counterfeit goods, and others.&lt;/p&gt;

&lt;p&gt;As for high-tech items, the authorities restrict the manufacturing and export of &lt;strong&gt;medical instruments&lt;/strong&gt; and &lt;strong&gt;radio communication equipment&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Note that the &lt;strong&gt;Medical Instrument Act B.E. 2551 (2008)&lt;/strong&gt; gives a very broad definition of “medical instruments” that includes, among other things, machinery, software, accessories, and components intended for medical use. The manufacturer of such goods must obtain a license to export them and comply with the Notification of the Medical Instrument Commission Re: Rules, Procedures, and Conditions for Manufacturing Medical Instrument for Export B.E. 2552 (2009) and the Notification of the Ministry of Public Health dated June 17, 2552 (2009) Re: Rules, Procedures, and Conditions for Making a Record and Report of Manufacture, Import, and Sale of Medical Instruments.&lt;/p&gt;

&lt;p&gt;The export and import of radio communications equipment are controlled under the &lt;strong&gt;Radio Communications Act B.E. 2498 (1955)&lt;/strong&gt; and the Notification of the National Broadcasting and Telecommunications Commission Re: Export of Radio Communications Equipment dated March 15, 2011. Exporters of such equipment or their parts must obtain a license and comply with the Radio Communications Act.&lt;/p&gt;

&lt;h2&gt;
  
  
  Vietnam
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faxexwsqz3y3avgd505ao.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faxexwsqz3y3avgd505ao.png" alt="Hoi An city landscape in Vietnam." width="725" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Low labor costs&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The cost of labor in Vietnam is almost six times lower than in China, making it a very competitive location for manufacturing labor-intensive goods. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Convenient geographic location&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Vietnam’s electronics manufacturing industry benefits from its proximity to China, the key exporter of the necessary components. Also, its long Pacific coastline is well suited for fast international shipping. &lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lack of qualified workforce&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Although the country is definitely considered one of the alternatives to China, Vietnam’s electronics manufacturing is still emerging. One particular problem is the shortage of skilled specialists, especially in such complex industries as electronics. The government is investing heavily in education, but the issue will not be resolved quickly. As of now, most electronics manufacturers in Vietnam provide low-value-added assembly and testing.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Poor supply chain infrastructure&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Although Vietnam is also investing in infrastructure, it remains mostly underdeveloped when compared to China. In the Connecting to Compete 2023 Report, the country ranked 43&lt;sup&gt;rd&lt;/sup&gt;, behind India, Thailand, Turkey, and other economies.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Import dependency&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Vietnam heavily relies on component suppliers from China, South Korea, and Japan.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Low manufacturing capacity&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Finding manufacturers in Vietnam capable of producing electronics in large quantities or scaling your current production is not an easy task. Overall, Vietnam is more suited for low-scale manufacturing of simple devices or even low-value-added assembly rather than producing advanced electronics. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in Vietnam:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Jing Gong Electronics Vietnam Co., Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;THANH LONG&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Vector Fabrication (Viet Nam) Co., Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fab 9&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sunching Electronics Vietnam&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;SAOKIM&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Trungnam EMS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;VEXOS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sao Kim Electronics&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;TRUNG NAM EMS&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulations in Vietnam
&lt;/h3&gt;

&lt;p&gt;As per &lt;strong&gt;Appendix III of Decree 69/2018/ND-CP&lt;/strong&gt;, certain goods require trading companies to obtain export permits from the government. They include certain chemicals, minerals, industrial explosives, explosive pre-substances, certain animals and plants, aquatic species, medicines, medical equipment, raw gold, goods subject to export control in accordance with international treaties to which Vietnam is a contracting party, and more.&lt;/p&gt;

&lt;p&gt;Note that according to &lt;strong&gt;Circular 34/2013/TT-BCT&lt;/strong&gt;, foreign-invested enterprises may not export most of these goods from Vietnam.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Appendix I of Decree 69/2018/ND-CP&lt;/strong&gt; prohibits the export of the following goods:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Weapons, ammunition, explosives, military technical equipment.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Encrypted products used for protecting state secrets.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;White and black rhinoceros, African elephants, and certain other animals, aquatic species, and livestock.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Certain chemicals.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  India
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsgomnugezlm26gd53gl0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsgomnugezlm26gd53gl0.png" alt="The Gateway to India monument, Mumbai, India." width="725" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As the cost of labor in China is growing, companies are seeking new destinations for electronics manufacturing. Many businesses see India as the next manufacturing powerhouse, with the potential to rival China in the future.&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Huge population&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;India’s population accounts for &lt;a href="https://www.worldometers.info/world-population/india-population/"&gt;1.4 billion people&lt;/a&gt;, which means two things. First, India has a huge labor force to offer (&lt;a href="https://data.worldbank.org/indicator/SL.TLF.TOTL.IN?locations=IN"&gt;over 523,000&lt;/a&gt;). Second, just like China, India can serve as both a location for contract manufacturing and a target market, which is an important factor to consider. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cheap labor&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;India has one of the lowest labor cost indicators in the world ($269 in the manufacturing industry, according to &lt;a href="https://www.salaryexplorer.com/"&gt;salaryexplorer.com&lt;/a&gt;), so it’s not surprising India’s electronics production is on the rise. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Government policy&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While previously the government discouraged foreign direct investment, now the country is open for investments under its “Make in India” campaign. Companies, including Apple, have already moved some of their production to India.&lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;p&gt;Although India has great potential, the country still has many issues that should be taken into account.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Low productivity and quality&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;India’s GDP per hour worked is almost twice as low ($8) than China’s indicator ($15). The country lacks a highly skilled workforce, which affects the quality of local goods. India’s electronics production lags in production planning, supply chain management, quality, and maintenance. Additionally, the country’s manufacturing sector lacks organization and regulation.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Poor infrastructure&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;According to the World Bank’s &lt;a href="https://lpi.worldbank.org/sites/default/files/2023-04/LPI_2023_report_with_layout.pdf"&gt;Connecting to Compete 2023 Report&lt;/a&gt;, India occupies the 38&lt;sup&gt;th&lt;/sup&gt; position with an LPI score of 3.4. For comparison, China ranked 19&lt;sup&gt;th&lt;/sup&gt; with an LPI score of 3.7. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Import dependency&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;India is heavily dependent on the import of electronic components from China and South Korea. However, the government intends to fix it by investing in the semiconductor and display ecosystems. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in India:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Anand Electronics &amp;amp; Industries Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AS&amp;amp;R Circuits India Pvt. Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Circuit Systems India Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CIPSA-TEC India Pvt. Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Shogini Technoarts Pvt. Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ascent Circuits Pvt. Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fine-Line Circuits Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Genus Electrotech Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AT&amp;amp;S India Pvt. Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Epitome Components Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulations in India
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://custada.in/CUSTADA-Online/document/document/Export%20Policy%202018.htm"&gt;Schedule 2 of the Indian Trade Classification (Harmonized System) of Export and Import Items&lt;/a&gt; (or simply &lt;strong&gt;Schedule 2 of ITC (HS)&lt;/strong&gt;) imposes a number of export restrictions. The list includes Special Chemicals, Organisms, Materials, Equipments &amp;amp; Technologies (&lt;a href="https://www.mea.gov.in/Images/CPV/SCOMET-List-2023.pdf"&gt;SCOMET&lt;/a&gt;) that require an export license and compliance with certain conditions. For SCOMET items, such conditions also include compliance with Weapons of Mass Destruction and their Delivery System (Prohibition of Unlawful Activities) Act 2005. Among other things, this document lists electronics, computers, telecommunications, information security, sensors, and lasers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rryF2vsL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.integrasources.com/media/files/SCOMET_List_2023.png%2520align%3D%2522left%2522" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rryF2vsL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.integrasources.com/media/files/SCOMET_List_2023.png%2520align%3D%2522left%2522" alt="Excerpt from Appendix 3 to Schedule 2 of ITC (HS) Classification of Export and Import Items." width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;Foreign Trade Policy 2015-2020&lt;/strong&gt; also restricts the export of certain goods to Iraq, Daesh, North Korea, Iran, and Somalia.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;China and Taiwan are among the best countries for electronics manufacturing. But as the political tension in the region keeps growing, businesses are looking for alternatives.&lt;/p&gt;

&lt;p&gt;Malaysia has been a strong player for many years. Thailand is a large electronics exporter too. Vietnam can’t offer the same level of quality but may be a good choice for the labor-intensive production of relatively simple products. India, despite being an emerging electronics exporter, has huge potential due to its population and government initiatives. Analysts expect the country to replace China as the next manufacturing powerhouse.&lt;/p&gt;

&lt;p&gt;If your project is yet to be developed, &lt;a href="https://www.integrasources.com/contact-us/"&gt;contact Integra Sources&lt;/a&gt;. We specialize in IoT solutions, &lt;a href="https://www.integrasources.com/services/robotics-development/"&gt;robotics&lt;/a&gt;, &lt;a href="https://www.integrasources.com/services/power-electronics-design/"&gt;power electronics&lt;/a&gt;, and &lt;a href="https://www.integrasources.com/services/fpga-design/"&gt;FPGA design&lt;/a&gt; and have certain experience in building medical devices, &lt;a href="https://www.integrasources.com/services/computer-vision-development/"&gt;computer vision systems&lt;/a&gt;, and more. On top of that, Integra Sources has long-lasting relationships with several manufacturers whom we would gladly recommend.&lt;/p&gt;

</description>
      <category>electronics</category>
      <category>guide</category>
      <category>outsourcing</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Best Countries for Contract Electronics Manufacturing, Part 1: China, Taiwan, the USA, and Mexico</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Tue, 23 Apr 2024 04:20:59 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/best-countries-for-contract-electronics-manufacturing-part-1-china-taiwan-the-usa-and-mexico-1ljd</link>
      <guid>https://dev.to/integrasourcesltd/best-countries-for-contract-electronics-manufacturing-part-1-china-taiwan-the-usa-and-mexico-1ljd</guid>
      <description>&lt;p&gt;In our &lt;a href="https://www.integrasources.com/blog/manufacturing-electronics-at-home-vs-outsourcing-all-you-need-to-know/"&gt;previous post&lt;/a&gt;, we discussed the pros and cons of outsourcing electronics production to third countries and how to prepare for mass manufacturing. We also briefly mentioned some of the most attractive countries for electronics production. In this article, we would like to take a closer look at these locations, particularly China, Taiwan, the United States, and Mexico. You can read about other locations in &lt;a href="https://www.integrasources.com/blog/best-countries-for-contract-electronics-manufacturing-part-2/"&gt;the second part of this post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As an &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;embedded electronics&lt;/a&gt; design company, we take someone else’s ideas, study them, and create new solutions. If you have a concept of a device or software, &lt;a href="https://www.integrasources.com/contact-us/"&gt;contact Integra Sources&lt;/a&gt; to turn it into a real product. However, after the product is tested, your next move is to organize mass manufacturing. In this post, we are going to take a closer look at the following locations, study their pros and cons and their export regulations, and mention some of the top local EMS providers.&lt;/p&gt;

&lt;h2&gt;
  
  
  China
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkm44fky4t4el5ywdk4k8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkm44fky4t4el5ywdk4k8.png" alt="The Bird’s Nest Stadium in Beijing." width="725" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since China remains the world’s largest electronics powerhouse, it totally makes sense to consider it your number one option. &lt;/p&gt;

&lt;h2&gt;
  
  
  Benefits
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Low production costs
&lt;/h3&gt;

&lt;p&gt;China’s electronics manufacturing was initially boosted by very cheap labor. It motivated many companies to move their manufacturing to this country a few decades ago. By now, the country’s cost of labor has risen and is closer to the middle of the spectrum. Nevertheless, according to &lt;a href="https://www.salaryexplorer.com/"&gt;salaryexplorer.com&lt;/a&gt;, factory and manufacturing average salaries in China remain about two times lower than in the U.S. – $2,840 against $5,508. &lt;/p&gt;

&lt;p&gt;Another factor influencing the production cost in China is the country’s low power rates for enterprises – $0.09 per kilowatt-hour as of June 2023, according to &lt;a href="https://www.globalpetrolprices.com/electricity_prices/"&gt;GlobalPetrolPrices&lt;/a&gt;. Compare it to the rates in the U.S. ($0.147).&lt;/p&gt;

&lt;h3&gt;
  
  
  Developed infrastructure and cheap resources
&lt;/h3&gt;

&lt;p&gt;China has an extensive railway and port network, roads, and airports, and the government continues to invest in the infrastructure. Also, manufacturers in China hold the advantage of sourcing local active and passive components, rare-earth metals, acids, solvents, copper, tin, gold, and more.&lt;/p&gt;

&lt;h3&gt;
  
  
  Output capacity
&lt;/h3&gt;

&lt;p&gt;Factories in developed countries often have limited capacity, while Chinese manufacturers can almost always find the staff for your order and easily scale up the production.&lt;/p&gt;

&lt;h3&gt;
  
  
  Big domestic market
&lt;/h3&gt;

&lt;p&gt;China’s electronics manufacturing enterprises have easy access to the country’s huge market, with millions of potential buyers. So, unless you are targeting purely your local market, you should definitely take this possibility into account. &lt;/p&gt;

&lt;h2&gt;
  
  
  Challenges
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Quality/reputational issues&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Many people are used to seeing Chinese goods as trash that won’t last long. Although nowadays, many factories in China manufacture products of decent quality, one should still consider whether the “Made in China” label can prejudice potential buyers against the product.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intellectual property protection&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Chinese manufacturers are notorious for copying customers’ designs. That’s why one needs to develop protection against reverse engineering. As for your &lt;a href="https://www.integrasources.com/services/firmware-development/"&gt;custom firmware&lt;/a&gt;, we recommend using test firmware during production because it does not contain any business logic. Lastly, different parts of the device can be manufactured at different locations, but this will complicate the logistics.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Complex logistics&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When a product is shipped from China to Europe or North America, its landed cost is usually cheaper than that of domestic goods. But delivery may take up to several months, while delays will prove costlier. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Minimum orders&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Large Chinese factories are interested in high-volume orders and may refuse to take small-batch orders. On the other hand, there are always small factories that will gladly cooperate.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Export to the U.S.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Those who want to produce electronics in China but sell them in the U.S. must take into account the Section 301 China Tariffs implemented in 2018. These tariffs apply to a huge list of products, including electronic appliances. So, if your product falls within one of the four lists of &lt;a href="https://ustr.gov/issue-areas/enforcement/section-301-investigations/tariff-actions"&gt;the China Section 301-Tariff Actions&lt;/a&gt;, you will have to pay the standard import duty plus an additional 25%.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2o78frr182xkjlt9u2io.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2o78frr182xkjlt9u2io.png" alt="Notice of action pursuant to Section 301: China’s Acts, Policies, and Practices Related to Technology Transfer, Intellectual Property, and Innovation." width="725" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note, however, that in December 2023, the United States Trade Representative (USTR) &lt;a href="https://ustr.gov/about-us/policy-offices/press-office/press-releases/2023/december/ustr-extends-exclusions-china-section-301-tariffs-allow-comments-review-exclusions-and-alignment"&gt;extended over 400 exclusions&lt;/a&gt; exempt from additional duties. These exclusions are scheduled to expire on May 31, 2024, but will probably be extended further. Also, note that doing business with certain Chinese companies may require a license if these companies are listed in the Bureau of Industry and Security’s &lt;a href="https://www.bis.doc.gov/index.php/policy-guidance/lists-of-parties-of-concern/entity-list"&gt;Entity List&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The United States and China’s sanctions against each other and the growing political tension between the two countries make manufacturing electronics in China riskier than it used to be. Despite that, many U.S. companies still prefer manufacturing goods in China, as the pros outweigh the cons.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in China:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;BYD Electronics &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;NextPCB&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Agile Circuit&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PCBgogo&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Topscom&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Luxshare Precision Industry Co.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;UETPCB&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Global PCB&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PCBMay&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Suntek Electronics&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulations in China
&lt;/h3&gt;

&lt;p&gt;China’s &lt;strong&gt;Export Control Law (ECL)&lt;/strong&gt; prohibits or restricts the export of such goods as nuclear products, military items, and dual-use products: chemicals, nuclear goods, encryption items, biological products, and missile-related goods.&lt;/p&gt;

&lt;p&gt;Besides the ECL, exporters must comply with other export-related regulations, particularly with &lt;strong&gt;the Export Prohibited and Restricted Technology Catalog&lt;/strong&gt;. This document lists items whose export is prohibited or is subject to license management. Technologies not mentioned in the Catalog are deemed as &lt;em&gt;free export&lt;/em&gt;, but such items still require the completion of contractual registration procedures on a designated website.&lt;/p&gt;

&lt;p&gt;Some technologies in the list are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Telemetry coding and encryption software or hardware&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Artificial intelligence&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cryptography and security tech&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Advanced defense tech&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The list is updated every year.&lt;/p&gt;

&lt;p&gt;Note that in 2020, China issued &lt;a href="http://english.mofcom.gov.cn/article/policyrelease/questions/202009/20200903002580.shtml"&gt;&lt;strong&gt;the Unreliable Entity List Regulations&lt;/strong&gt;&lt;/a&gt; (&lt;em&gt;UEL Regulations&lt;/em&gt;). The document lists enterprises, organizations, and individuals prohibited from export/import operations with Chinese businesses. The UEL regime is independent of the ECL and applies separately.&lt;/p&gt;

&lt;p&gt;As &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;embedded electronics&lt;/a&gt; developers, we often order prototypes of our devices from Chinese factories, and we are quite satisfied with the quality of their work. If you choose to &lt;a href="https://www.integrasources.com/contact-us/"&gt;start your project with Integra Sources&lt;/a&gt;, we can also recommend a factory for mass manufacturing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Taiwan
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F81dfdgrbv01dg58qe14z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F81dfdgrbv01dg58qe14z.png" alt="Shihmen Dam in Taiwan." width="725" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Benefits
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Expertise and quality
&lt;/h3&gt;

&lt;p&gt;Taiwan’s electronics manufacturing industry emerged 20 years ahead of China’s and has been dominating the market in terms of the quality of local semiconductors and devices. No wonder it remains one of the top IT outsourcing countries. Such brands as Acer, Asus, and HTC come from Taiwan. It is also home to the famous TSMC. The country has a highly skilled workforce and high robot density, which results in a decent labor productivity indicator ($57 per hour worked). All this makes Taiwan a reliable location for both manufacturing and developing advanced electronics.&lt;/p&gt;

&lt;h3&gt;
  
  
  Intellectual property protection
&lt;/h3&gt;

&lt;p&gt;The country has strict IP laws and a long history of collaborating with foreign customers. Local manufacturers are trusted by such companies as HP, Siemens, Apple, NVIDIA, Intel, and others.&lt;/p&gt;

&lt;h3&gt;
  
  
  Advanced infrastructure
&lt;/h3&gt;

&lt;p&gt;As of 2023, Taiwan takes the 13&lt;sup&gt;th&lt;/sup&gt; position in the World Bank’s &lt;em&gt;Connecting to Compete 2023 Report&lt;/em&gt; with an LPI score of 3.9. &lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Higher production costs&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Although manufacturing goods in Taiwan is cheaper than in Western countries, it is still generally more expensive than outsourcing to other Asian countries.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Not suitable for large-scale production&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Taiwan’s electronics manufacturing industry has a limited number of facilities. As a result, it is more suitable for small-scale manufacturing of advanced electronics or machinery rather than for large-scale production of simple consumer-grade products.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Geopolitical uncertainty&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With the tensions between mainland China, Taiwan, and the U.S. on the rise, it is unclear what to expect in the near future and how the conflict will change the market.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in Taiwan:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;HonHai Precision (Foxconn)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;3CEMS Group&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tripod&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AGP ELECTRONIC INC.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;3AE Electronics Co., Ltd.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ADLINK Technology, Inc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ZD Tech&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pegatron&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Unimicron&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Compeq&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulations in Taiwan
&lt;/h3&gt;

&lt;p&gt;Under Taiwan’s &lt;a href="https://law.moj.gov.tw/ENG/LawClass/LawAll.aspx?pcode=J0090004"&gt;&lt;strong&gt;Foreign Trade Act&lt;/strong&gt;&lt;/a&gt;, most goods are generally allowed to be freely exported and imported. However, the export of certain &lt;strong&gt;strategic high-tech commodities (SHTC)&lt;/strong&gt; is either prohibited or requires an export license. &lt;/p&gt;

&lt;p&gt;Taiwan currently maintains the following export control lists:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The European Union’s &lt;strong&gt;Export Control List for Dual-Use Items and Technology and the Common Military List&lt;/strong&gt; prohibit or restrict the export of nuclear technologies, information security systems, some industrial equipment, and more.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The Sensitive Commodities List (SCL) controls exports to North Korea.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The SCL controls exports to Iran.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The SCL controls exports to Russia and Belarus.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to rely on Taiwan’s electronics manufacturing companies, make sure to study these and other related laws &lt;a href="https://www.trade.gov.tw/english/Pages/List.aspx?nodeID=298"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Any product that falls within one of these lists is considered an SHTC item. Non-listed products may still be deemed SHTCs if their end-users are suspected of developing nuclear, chemical, or biochemical weapons, missiles, or other weapons of mass destruction. If you’re not sure whether your product falls within one of these types of SHTCs, you should request the Industrial Technology Research Institute (ITRI) for an SHTC assessment by submitting a completed Strategic High-Tech Commodities Application Form.&lt;/p&gt;

&lt;p&gt;Also, Taiwan’s authorities do not allow the export of SHTCs to entities listed in the &lt;strong&gt;SHTC Entity List&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The United States
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jp8u52foedroy8xoapq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jp8u52foedroy8xoapq.png" alt="New York City landscape." width="725" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;High labor productivity and quality&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When outsourcing electronics production to America, one benefits from high labor productivity ($70 per hour worked). USA electronics production features cutting-edge technologies, automation, highly-skilled professionals, and strict quality assurance, which makes the country fit for manufacturing complex electronics, especially in highly regulated industries: aerospace, aviation, healthcare, etc.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Public perception&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Goods manufactured in the U.S. are generally perceived as high-quality around the globe. Moreover, almost &lt;a href="https://pro.morningconsult.com/analyst-reports/made-in-america-reshoring-consumer-goods"&gt;two-thirds of Americans prefer domestic products&lt;/a&gt; over foreign goods, although they are unwilling to pay more than 10% extra for them.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intellectual property protection&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Due to strict laws and reliable IP enforcement, there’s less risk that an American contract manufacturer will steal your design without consequences. &lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;High labor costs&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;America has one of the highest factory and manufacturing average salaries in the world ($5,508), which makes USA electronics manufacturing very expensive. Consequently, you may find it difficult to compete against goods produced in countries with cheaper labor costs. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;High taxes&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;American corporate tax rates are among the highest in the world, not to mention the complexity of the local tax system.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Old infrastructure&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In the 2021 Report Card for America’s Infrastructure published by the American Society of Civil Engineers, &lt;a href="https://infrastructurereportcard.org/asce-2021-infrastructure-report-card-gives-u-s-c-grade"&gt;the country earned a “C-”&lt;/a&gt;. The nation needs to invest about $6 trillion by 2031 to make the necessary improvements.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Logistics issues&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to sell the product not only in North America but also in Europe, the Middle East, Asia, and other regions, then you will have to add shipping costs to the final price.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in the USA:&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Avanti Circuits&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ACT (USA) International LLC.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;TechnoTronix EMS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Advanced Circuitry International&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Imagineering, Inc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PCB Power&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sunstone Circuits&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bay Area Circuits&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Twisted Traces&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RUSH PCB, Inc.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export regulations in the United States
&lt;/h3&gt;

&lt;p&gt;Here are the key laws regulating the export of goods from the U.S. &lt;strong&gt;International Traffic in Arms Regulations (ITAR)&lt;/strong&gt; controls the export of weapons, military items, military services, and military-related data. The &lt;strong&gt;Export Administration Regulations (EAR)&lt;/strong&gt; control the export of technology, technical data, as well as designs, models, instructions, manuals, formulae, and other information required for the development, production, or use of a product. &lt;strong&gt;The&lt;/strong&gt; &lt;a href="https://www.bis.doc.gov/index.php/regulations/commerce-control-list-ccl"&gt;&lt;strong&gt;Commerce Control List&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(CCL)&lt;/strong&gt; lists specific products that require an export license. The CCL is divided into 10 categories, which are further subdivided into five groups.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk5z6cszltzgwe3yyw9es.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk5z6cszltzgwe3yyw9es.png" alt="The categories and subcategories of the products listed in the Commerce Control List (CCL)." width="725" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see, the list contains a range of electronic products, including computers, sensors, and telecommunication equipment.&lt;/p&gt;

&lt;p&gt;If an item is not on the list, it is designated as EAR99 and does not require an export license – unless it is going to an embargoed country. These are mostly low-tech consumer products.&lt;/p&gt;

&lt;p&gt;The Bureau of Industry and Security also imposes specific license requirements for the export of certain goods to certain businesses, research institutions, organizations, and individuals. This so-called &lt;strong&gt;Entity List&lt;/strong&gt; can be found in &lt;a href="https://www.ecfr.gov/current/title-15/subtitle-B/chapter-VII/subchapter-C/part-744/appendix-Supplement%20No.%204%20to%20Part%20744"&gt;&lt;strong&gt;Supplement No. 4 to Part 744 of the Export Administration Regulations&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Mexico
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftzgklnp94r3j4kh3dtuh.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftzgklnp94r3j4kh3dtuh.jpg" alt="Garden Santa Fe mall in Mexico." width="725" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fast-growing hub&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With over 730 plants manufacturing ICs, computer memory and CPU chips, audio and video devices, and other electronics, Mexico’s electronics production industry has great export potential. Local EMS providers offer services to Foxconn, Toshiba, Samsung, LG, and Intel. The country can also boast a relatively skillful workforce.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Low labor costs&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Mexico is one of the cheapest countries in terms of manufacturing workers’ average salaries. However, energy costs in Mexico are higher than in the U.S. ($0.215 vs. $0.147 per kilowatt-hour). So, the overall production may not be as affordable as one would expect. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Proximity to the United States&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One of the greatest benefits of manufacturing electronics in Mexico is its proximity to the U.S. and Canada, two large potential markets. Shipping goods to these countries from Mexico should be easier than transporting them from East Europe or Asia. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero import rates&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Mexico is a participant in the United States-Mexico-Canada Agreement (USMCA) that introduces special duties for goods imported to the U.S. from Mexico. Such goods are marked with ‘S’ in the Harmonized Tariff Schedule of the United States (see Column 1 Special). Most of these goods can cross the border for free.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftiwfrx2t0f34wmm8o5i0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftiwfrx2t0f34wmm8o5i0.png" alt="Excerpt from the Harmonized Tariff Schedule of the United States." width="725" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;For North America only&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Unless you target North America, Mexico can offer no benefits compared to other attractive locations. The cost of shipping from Mexico to other regions isn’t much different than transporting goods from China.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Costlier BOM&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Mexico’s electronics production enterprises have to import components from China, so the bill of materials for your device may become more expensive due to shipping and tariff costs. On the other hand, fast shipping time usually leads to less stock and, therefore, less warehouse space is required, which may make the final price of the product acceptable despite higher BOM cost.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Goods must be made in Mexico&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The USMCA trade agreement and free import duties only apply to originating goods, i.e., products produced entirely in the territory of a USMCA country or whose regional content value is less than 60% (if the transaction value method is used) or less than 50% (if the net cost method is applied). So, if the product cannot be proven to originate from Mexico, regular import taxes will be applied.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some of the Top EMS Providers in Mexico:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Many of them are international corporations with facilities in different countries.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Kimball Electronics Mexico&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RayMing PCB &amp;amp; Assembly&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Lanix&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AsteelFlash Group&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;K&amp;amp;S Advanced Systems&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Benchmark Tijuana&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;SigmaTron International&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jabil Circuit Mexico&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Circuitec Company&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Zollner Electronics&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Export Regulations in Mexico
&lt;/h3&gt;

&lt;p&gt;The Secretariat of Economy (SE) governs the export of conventional arms and dual‑use goods and technologies under the Wassenaar Arrangement in accordance with the &lt;strong&gt;Official Journal of the Federation on June 16, 2011,&lt;/strong&gt; and subsequent amendments.&lt;/p&gt;

&lt;p&gt;The regulation controls dual‑use software and technology, nuclear, chemical, and related technology equipment, materials, and software. Annex I of the regulation restricts the export of the following categories of dual-use items:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Special materials and related equipment&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Processed materials&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Electronics&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Computers&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Telecommunications and information security&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sensors and lasers&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Navigation and avionics&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Marine&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Aerospace and propulsion&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The exporter must obtain a prior permit before shipping these goods to another country. However, the regulation contains exceptions for goods shipped by Mexican companies to the U.S. or Canada.&lt;/p&gt;

&lt;p&gt;Note that Mexico bans the export of certain goods to Afghanistan, the Central African Republic, Congo, Eritrea, Iraq, Iran, Lebanon, Libya, North Korea, Somalia, Sudan, and Yemen.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Top IT outsourcing countries for electronics production are located in Asia. China’s electronics manufacturing industry offers relatively low production costs, developed infrastructure, and easy access to local raw resources and components. Another attractive location is Taiwan, which offers expert facilities with a skilled and experienced workforce. &lt;/p&gt;

&lt;p&gt;In North America, one should also consider the United States. However, although USA electronics manufacturing offers excellent quality control or reputational value, the production cost here may outweigh these benefits. Those targeting the North American market may find Mexico a much cheaper alternative located close to the U.S. and Canada.&lt;/p&gt;

&lt;p&gt;If you need to develop your product first, our team would be glad to help you out. We are experts in designing &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;embedded devices&lt;/a&gt;, &lt;a href="https://www.integrasources.com/services/power-electronics-design/"&gt;power electronics&lt;/a&gt;, &lt;a href="https://www.integrasources.com/services/robotics-development/"&gt;robotics&lt;/a&gt;, and &lt;a href="https://www.integrasources.com/services/embedded-software-development/"&gt;embedded software&lt;/a&gt;. &lt;a href="https://www.integrasources.com/contact-us/"&gt;Contact Integra Sources&lt;/a&gt; to discuss your project. Make sure to read &lt;a href="https://www.integrasources.com/blog/best-countries-for-contract-electronics-manufacturing-part-2/"&gt;Part 2 of this post&lt;/a&gt; dedicated to Malaysia, Thailand, Vietnam, and India.&lt;/p&gt;

</description>
      <category>electronics</category>
      <category>guide</category>
      <category>manufacturing</category>
      <category>outsourcing</category>
    </item>
    <item>
      <title>Starting a Healthcare Electronics Development Project: Key Points You Need to Know</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Fri, 26 Jan 2024 05:59:38 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/starting-a-healthcare-electronics-development-project-key-points-you-need-to-know-1ekp</link>
      <guid>https://dev.to/integrasourcesltd/starting-a-healthcare-electronics-development-project-key-points-you-need-to-know-1ekp</guid>
      <description>&lt;p&gt;Life expectancy increases worldwide, and the healthcare device market grows with it. &lt;a href="https://www.gminsights.com/industry-analysis/medical-electronics-market"&gt;Global Market Insights&lt;/a&gt; says the global medical electronics market was valued at $154.5 billion in 2022. It is projected to grow at an annual CAGR of 6.5% to around $298 billion by 2032.&lt;br&gt;&lt;br&gt;
So, medical electronics design and device application development are constantly in high demand. The very concept of a medical electronic device includes a bunch of devices that vary in cost, complexity, and purpose—from a wearable tracker to the most complex medical equipment.&lt;br&gt;&lt;br&gt;
All this gives plenty of scope for medical electronic device development based on individual requirements; the main thing is to know where to start and what to pay attention to.&lt;br&gt;&lt;br&gt;
Today, we are going to analyze medical product development requirements and features.&lt;/p&gt;

&lt;h2&gt;
  
  
  Healthcare Electronics Specifics
&lt;/h2&gt;

&lt;p&gt;Let's just start by finding out how healthcare electronic devices differ from regular electronics.&lt;/p&gt;

&lt;p&gt;Undoubtedly, the first thing that makes medical devices different from all other electronics is their &lt;strong&gt;increased reliability and safety&lt;/strong&gt;. Mechanisms designed to support and improve the patient’s health must be tough and durable. They must work flawlessly and never cause harm to people.&lt;/p&gt;

&lt;p&gt;Medical electronics need to process health data &lt;strong&gt;in real time&lt;/strong&gt; as quickly as possible. Precious seconds are needed to provide emergency care and can save the patient's life.&lt;br&gt;&lt;br&gt;
Our healthcare projects include creating &lt;a href="https://www.integrasources.com/cases/medical-alert-bracelet-delivers-assistance-touch-button/"&gt;a bracelet with an alert button&lt;/a&gt;. The ultra-low-power, BLE-enabled wearable device allows patients to call for help by pressing an emergency button. The bracelet transmits an alarm signal via Wi-Fi or Bluetooth to a nearby beacon that sends it to the hospital server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9uij3u6qyp3uyoqmbam3.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9uij3u6qyp3uyoqmbam3.jpg" alt="A prototype of a healthcare wearable device." width="725" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Medical bracelet prototype and 3D-printed case&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;The server calculates the patient's location and passes on a message to the staff. Life-saving assistance can be provided immediately since the minimum possible time passes from pressing the button to receiving the signal by medical personnel.&lt;br&gt;&lt;br&gt;
The global market for medical wearables is growing impressively. It is expected to quadruple in 5 years from 2021 and reach $83.9 billion by 2026, as &lt;a href="https://www.statista.com/statistics/1289674/medical-wearables-market-size-by-region/"&gt;Statista predicts&lt;/a&gt;. The North American market is in the lead, accounting for around 40% of global wearable medical device revenue.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqcty36rk5xfw2n6yy00m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqcty36rk5xfw2n6yy00m.png" alt="The global market for medical wearables, 2021 vs. 2026." width="725" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Medical wearable device market in 2021 and 2026&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Various network technology support&lt;/strong&gt; is a feature that is closely related to high performance. For example, if the Wi-Fi connection is lost, the device instantly switches to a mobile network without sacrificing functionality, performance, or control.&lt;/p&gt;

&lt;p&gt;Data clarity is also not a whim but a must-have condition. Be it a mobile app screen or an HMI healthcare device display, information must be presented in a &lt;strong&gt;user-friendly manner&lt;/strong&gt;. Neither medical staff nor patients can quickly assess the information, getting lost in confusing menu choices.&lt;/p&gt;

&lt;p&gt;Other frequently needed medical electronics features may include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;low power consumption&lt;/strong&gt;;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;sterilization and&lt;/strong&gt; &lt;strong&gt;disinfectant resistance&lt;/strong&gt; to withstand frequent cleaning; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;lightweight&lt;/strong&gt;;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;compact size&lt;/strong&gt;;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;mobility&lt;/strong&gt;;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;portability&lt;/strong&gt;;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;mechanical damage resistance&lt;/strong&gt;;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;along-lasting appearance&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Medical E-Device Types
&lt;/h2&gt;

&lt;p&gt;All electronic devices for healthcare can be divided into four large groups according to the purpose of use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;therapeutic;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;diagnostic;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;patient monitoring;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;others.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The therapeutic segment accounts for almost half of the medical electronics market due to the aging population and the growing need for chronic disease care.&lt;/p&gt;

&lt;p&gt;The rise of AI-based medical electronics, including those that patients can use at home, drives further therapeutic branch growth.&lt;br&gt;&lt;br&gt;
We applied computer vision algorithms to develop &lt;a href="https://www.integrasources.com/cases/skinview-ios-app-for-identifying-melanoma-skin-cancer-using-computer-vision-algorithms/"&gt;an intelligent system for detecting skin cancer&lt;/a&gt; with a smartphone. The system uses an iOS app and a special smartphone camera lens to diagnose skin cancer. Stunning diagnostic accuracy of 80% and processing time of less than 0.1 seconds are made possible by OpenCV-based algorithms developed in C++, wrapped in Objective-C, and integrated into the iOS mobile app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb4d8ooeebr50vxwek8gq.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb4d8ooeebr50vxwek8gq.jpg" alt="You can examine moles using a lens and a mobile app based on CV algorithms." width="725" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Mole-Check Process&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;In addition to grouping by purpose of use, all medical electronic devices are divided into classes of potential danger to consumers. The US Food and Drug Administration (FDA) divides medical electronics into four classes based on the potential risk to the patient and the degree of control required to ensure the safety and effectiveness of the various types of devices. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.fda.gov/medical-devices/consumers-medical-devices/learn-if-medical-device-has-been-cleared-fda-marketing"&gt;47% of medical devices&lt;/a&gt; fall under the &lt;strong&gt;class I&lt;/strong&gt; category with the lowest possible risk to the patient. 95% of class I devices are exempt from the regulatory process.&lt;/p&gt;

&lt;p&gt;43% of medical devices fall into the &lt;strong&gt;class IIa or class IIb&lt;/strong&gt; categories of medium health risk. Most class II products must go through a premarket notification process, aka 510(k).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Class III&lt;/strong&gt; covers high-risk medical devices, most of which must undergo premarket approval (PMA). These are cochlear implants, pacemakers, defibrillators, and other precision equipment.&lt;br&gt;&lt;br&gt;
The design and development of class II and class III medical devices is accompanied by more stringent requirements for component selection and electronics certification.&lt;/p&gt;

&lt;h2&gt;
  
  
  Certification
&lt;/h2&gt;

&lt;p&gt;Companies that provide medical device design and development services rely on International Electrotechnical Commission (IEC) standards, namely &lt;strong&gt;IEC 60601-1&lt;/strong&gt; and &lt;strong&gt;IEC 60601-1-2&lt;/strong&gt; when designing electronic products for healthcare. &lt;strong&gt;IEC62326-1:2002&lt;/strong&gt; specifies capability approval (CA) procedures for printed boards. Only a device that meets these standards can be certified.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ncbouumhl98es0acb1e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ncbouumhl98es0acb1e.png" alt="The International Electrotechnical Commission logo." width="725" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Companies that design and manufacture healthcare electronics must meet the strict requirements of the International Organization for Standardization (ISO).&lt;/p&gt;

&lt;p&gt;ISO standards for medical electronic devices include the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ISO 9001&lt;/strong&gt; sets out quality management system (QMS) requirements;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ISO 13485&lt;/strong&gt; specifies quality management system requirements for medical devices;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ISO 14971&lt;/strong&gt; specifies the risk management process in the medical device industry;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ISO 62304&lt;/strong&gt; sets out the life cycle requirements for medical device software;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ISO 10993&lt;/strong&gt; is used to assess the biocompatibility of medical devices and materials.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;ISO 20417&lt;/strong&gt; defines requirements for the identification, labeling, packaging, and accompanying information of medical devices.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8gf6lqd96lr7odfrf2tx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8gf6lqd96lr7odfrf2tx.png" alt="ISO logo." width="725" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Consumer electronic devices for healthcare must have so-called electrical certifications: FFC, CE, UL, RoHS, or REACH. You can learn more about &lt;a href="https://www.integrasources.com/blog/guide-consumer-electronics-certification-us-eu-requirements-consider-mass-production/"&gt;consumer electronics certification in the US and EU&lt;/a&gt; in our previous post.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy1nzij4zwrvims73f907.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy1nzij4zwrvims73f907.png" alt="US and EU consumer electronics certification types." width="725" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Embedded healthcare software may also be subject to additional certification. For example, one of our projects, the device for monitoring after-surgery tissue repair, required C software to conform to the &lt;strong&gt;MISRA-C:2012 coding standard&lt;/strong&gt; to ensure embedded system code safety, security, portability, and reliability.&lt;br&gt;&lt;br&gt;
All electronic healthcare devices – simple digital thermometers, fitness bracelets, personal alarms, complex implantable systems, and diagnostic equipment – must be safe for human life and health. That is why medical hardware design and software development require getting through numerous reliability and operational safety tests (EMI/EMC, &lt;a href="https://www.integrasources.com/blog/electronics-design-practices-prevent-eos-and-esd-damage/"&gt;ESD&lt;/a&gt;, power supply immunity tests, etc.), studies, and mandatory certification.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before Starting a Project
&lt;/h2&gt;

&lt;p&gt;Technically, the process of medical electronic device creation is not much different from electronics design for other industries.&lt;/p&gt;

&lt;p&gt;A company or individual who comes up with an idea &lt;a href="https://www.integrasources.com/services/embedded-hardware-design-and-development/"&gt;to create an embedded system&lt;/a&gt;, an IoT solution, a &lt;a href="https://www.integrasources.com/services/mobile-app-development/"&gt;mobile app&lt;/a&gt;, or system software for healthcare should test their business concept for vitality, study the market and competitors, and choose an outsourcing hardware design and software development company (or prototype the solution in-house).&lt;/p&gt;

&lt;p&gt;However, each step leading up to a medical device prototype development project has its own unique industry-based characteristics.&lt;/p&gt;

&lt;p&gt;First, you can't just come to the developer with an idea of a medical electronic product. No matter how hard engineers try to understand the intricacies of medical issues, they will never come close to the necessary medical expertise. You should have your own in-depth knowledge of medicine or qualified medical consulting assistance.&lt;/p&gt;

&lt;p&gt;Then, you should find out all the matters related to certification, which depend not only on the device's purpose and operating environment but also on the country of origin. These issues directly affect product creation and component selection processes.&lt;/p&gt;

&lt;p&gt;Here is an example from one of our projects. Our US client wanted to use US-certified AC LED lamps in our healthcare IoT project. The IoT system is designed to operate in high humidity. So, we needed to pick up a transformer that met several requirements. It had to be suitable for driving AC LED lamps and be approved for use in a damp environment.&lt;/p&gt;

&lt;p&gt;We met all the requirements and installed a humidity-resistant FS12-1600-S2 transformer that reduces the voltage to 12 V.&lt;/p&gt;

&lt;p&gt;If you are planning to develop an embedded system, then you need to choose an operating system for it. Open-source or proprietary, the choice is up to you. To learn more about &lt;a href="https://www.integrasources.com/blog/linux-os-for-medical-devices/"&gt;Linux OS for medical devices&lt;/a&gt;, read our blog article.&lt;br&gt;&lt;br&gt;
From all of the above, it can be seen that the client should come to the outsourcing development company with a ready-made &lt;a href="https://www.integrasources.com/blog/product-development-specification/"&gt;project requirements specification&lt;/a&gt; for a healthcare solution. It's one of the rare cases when technical specialists can only make adjustments to an existing requirements document instead of creating one from scratch.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risks and challenges
&lt;/h2&gt;

&lt;p&gt;Any hardware and software creation process has its own risks. Providing healthcare electronics design and software development services is no exception. Next, we list the most common medical project threats:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;Certification issues.&lt;/em&gt;&lt;/strong&gt; Your healthcare system, device, or embedded equipment may not get certified. There can be many reasons for that: wrong component selection, design errors, developers' lack of certificates, and many more. The key to avoiding such threats is outsourcing specialists' skills and experience, as well as a thorough-prepared project spec.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;A healthcare electronic device is not safe for patients&lt;/em&gt;.&lt;/strong&gt; This is a genuinely terrible case, but discovering defects during prototyping is a much better scenario than during or after mass production. The only way out is to conduct &lt;a href="https://www.integrasources.com/blog/pcb-and-electronics-testing-and-during-manufacturing-importance-and-methods-implementation/"&gt;thorough testing at all project stages&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;Your healthcare electronic solution has had no market success.&lt;/em&gt;&lt;/strong&gt; Success is made up of many elements: luck, fortunate circumstances, intuition, and, of course, careful preparatory work. So, you'd better not ignore the &lt;a href="https://www.integrasources.com/blog/project-discovery-phase/"&gt;IT project discovery phase&lt;/a&gt;, as it will help you correctly assess project viability and market potential.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;The system requirements are incorrectly defined.&lt;/em&gt;&lt;/strong&gt; Vanity and constant rush, as well as a lack of skills and experience, can cause errors in specifying software features, functions, and system requirements. As a result, the developed software may not meet the software environment or hardware requirements. You can reduce such risks to zero by carefully carrying out preparatory work and choosing a qualified development team.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;Software errors.&lt;/em&gt;&lt;/strong&gt; The software may fail during operation, which can lead to serious problems for medical staff and threaten the patient's health.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The development team should pay particular attention to the security and stability of software for medical devices, embedded systems, and IoT solutions. The right choice of programming language and tools, coupled with frequent code testing, will help create software that will work properly for years.&lt;/p&gt;

&lt;p&gt;In most cases, &lt;a href="https://www.integrasources.com/services/cpp-software-development/"&gt;we choose C/C++&lt;/a&gt; because of its flexibility, high speed, and scalability, which allows us to create high-performance and reliable solutions.&lt;/p&gt;

&lt;p&gt;Let's take a look at the challenges faced by medical electronics and software developers (ourselves included).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;Integrate software into an existing system&lt;/em&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Medical software often needs to be included in the health service facilities' existing software system. In such cases, the development team applies software languages and tools and creates interfaces, menus, and navigation so that the new software gets integrated into the overall hierarchy.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Ensure data transfer speed and continuity&lt;/em&gt;&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Any electronic device, sensor, or software for medicine must operate quickly and stably under all conditions.&lt;br&gt;&lt;br&gt;
When developing &lt;a href="https://www.integrasources.com/cases/real-time-signal-processing-for-wearable-electrocardiogram-device/"&gt;firmware and an Android app for a wearable ECG device&lt;/a&gt;, our engineers had to ensure real-time data transfer from the device to the app via Bluetooth.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm50e9hirvkdi5i07i0c4.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm50e9hirvkdi5i07i0c4.jpg" alt="Real-time signal processing for a wearable ECG device." width="725" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Portable system for investigating the effects of noise exposure on human blood pressure and heart health&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;We needed to ensure continuous data transfer even if there was a temporary loss of connection to the app. That was a challenge. To save data, we implemented temporary data storage in flash memory.&lt;/p&gt;

&lt;p&gt;We also encountered a problem related to the Bluetooth channels' data transfer speed. Our team implemented compression provided by the encoder and decoder to achieve the required speed.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;Ensure the device has low power consumption&lt;/em&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Customers often ask us to make the device work on a single battery charge for as long as possible. This requirement is not always easy to meet.&lt;/p&gt;

&lt;p&gt;Above, we already described the bracelet with an alert button we developed. One of the customer’s requirements was that the bracelet operate for two weeks without recharging on a 360 mAh battery.&lt;/p&gt;

&lt;p&gt;We achieved the device's low power consumption by choosing a microprocessor without excessive functions and selecting its energy-saving operating mode without background activity.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;Fit everything needed into a tiny case&lt;/em&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The trend toward device miniaturization in healthcare electronics development services is gaining momentum. It takes incredible engineering skills to put everything on the PCB and meet strict size requirements.&lt;/p&gt;

&lt;h2&gt;
  
  
  Medical Hardware &amp;amp; Software Development Features
&lt;/h2&gt;

&lt;p&gt;The development of hardware and software in the field of medicine has its unique characteristics, but it can still be fitted into the general IT product development framework.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0i35t6sd7xcqvhvjifbj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0i35t6sd7xcqvhvjifbj.png" alt="Medical IT solution development process." width="725" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Target market research and idea conceptualization&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At this stage, you determine the target audience, market requirements, and trends and formulate your product idea. Medical electronic devices and software applications should be easy to use.&lt;/p&gt;

&lt;p&gt;In the case of medical electronics design, you should also determine physical and operational parameters: device size, case material, power supply, safety, service life, etc. &lt;/p&gt;

&lt;p&gt;Consider the certification requirements. This step is especially vital for hardware design. It is necessary to take into account all the regulatory authorities' requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Medical product development&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The hardware development stage usually takes longer and has more iterations than medical device software development. Yet, it depends on the project's scale and complexity.&lt;/p&gt;

&lt;p&gt;While selecting hardware components, engineers consider not only device operational and functional requirements but also certification ones.&lt;/p&gt;

&lt;p&gt;While choosing programming languages, frameworks, libraries, and other software tools, specialists are guided by their skills and expertise, customer requirements, and software compatibility. The software can be linked to the hardware design or be a separate product.&lt;/p&gt;

&lt;p&gt;When realizing healthcare software development and medical device IoT development, engineers must take care of data security and minimize the IT product's vulnerabilities to hacking or viruses.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Testing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Strictly speaking, hardware and code in-house tests are carried out continuously throughout the entire development process no matter what kind of project the team is dealing with. But the medical field requires increased attention to hardware and software security, durability, and stability. Electronics must run smoothly since patients' health and lives often depend on them. Health data must be reliably protected from hacking, theft, and damage.&lt;/p&gt;

&lt;p&gt;Medicine hardware and software system development almost always requires third-party laboratory testing.&lt;/p&gt;

&lt;p&gt;Certification testing lengthens IT solution development and increases the number of iterations, which is one of the key features of the medical electronics development process. And yet, simple healthcare electronic products get certified as consumer electronics, but medical devices and systems must meet many more additional certification requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Support and maintenance&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After completing device prototyping and software development, companies provide post-project support for a certain period, eliminating shortcomings and errors. Moving forward, on the software side, the developer can provide updates, system scaling, and adding new features.&lt;/p&gt;

&lt;h2&gt;
  
  
  Medical Device Product Development vs. Consumer Electronics Creation
&lt;/h2&gt;

&lt;p&gt;We have picked up the most significant differences between creating consumer electronics and medical electronic devices.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fytsrzpjel1asz0l3a70h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fytsrzpjel1asz0l3a70h.png" alt="Image description" width="725" height="1058"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Wrapping up
&lt;/h2&gt;

&lt;p&gt;Building healthcare e-devices and software is an interesting, inspiring, knowledge-enhancing, and promising proceeding. It is similar yet different from all other industry-related development processes.&lt;/p&gt;

&lt;p&gt;When you start building a healthcare e-device or app, expect it to take longer and require more resources than creating consumer electronics.&lt;/p&gt;

&lt;p&gt;Hardware and software developers must follow both common electronics certifications and numerous stringent medical device certification standards when working on a medical e-solution.&lt;/p&gt;

</description>
      <category>healthcare</category>
      <category>development</category>
      <category>certification</category>
    </item>
    <item>
      <title>Embedded System Design: Challenges of Hardware and Software Development</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Mon, 20 Nov 2023 10:15:33 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/embedded-system-design-challenges-of-hardware-and-software-development-59fh</link>
      <guid>https://dev.to/integrasourcesltd/embedded-system-design-challenges-of-hardware-and-software-development-59fh</guid>
      <description>&lt;p&gt;Embedded system design is associated with various challenges. Since such solutions consist of hardware and software, developers have to deal with issues related to both electronics engineering and programming. In this article, we will touch upon the process of embedded development and discuss the main challenges of embedded software development and hardware design.&lt;/p&gt;

&lt;h2&gt;
  
  
  What are Embedded Systems?
&lt;/h2&gt;

&lt;p&gt;Embedded systems consist of computer hardware and software; but unlike personal computers or smartphones, they are designed for a specific function or a set of closely related functions. They typically perform only one task, while a PC can perform various tasks – programming, calculating, drawing, gaming, etc.&lt;/p&gt;

&lt;p&gt;A typical embedded system has the following structure:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3aYcazyV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uwltdd71kxvv5vwnwjf9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3aYcazyV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uwltdd71kxvv5vwnwjf9.png" alt="A scheme of a typical embedded system structure consisting of hardware and software." width="725" height="165"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thus, embedded system design requires deep knowledge of both electronics engineering and programming. Such projects require the following specialists: &lt;/p&gt;

&lt;p&gt;1. &lt;strong&gt;Project managers&lt;/strong&gt; participate in the pre-sale phase. If you &lt;a href="https://www.integrasources.com/contact-us/"&gt;contact Integra Sources&lt;/a&gt;, you can discuss your idea with them as they have the necessary skills to make a rough estimation of the project. They also organize and supervise the work of the team on a particular project. For customers, PMs are the main contact person in the development team.&lt;/p&gt;

&lt;p&gt;2. &lt;strong&gt;A system analyst&lt;/strong&gt; and a &lt;strong&gt;tech lead&lt;/strong&gt; are responsible for collecting and analyzing the requirements for the future system and thorough project estimation. The tech lead also designs the architecture of the future solution.&lt;/p&gt;

&lt;p&gt;3. &lt;strong&gt;Embedded developers&lt;/strong&gt; are front-line layout engineers and software engineers responsible for designing printed circuit boards and coding programs. &lt;/p&gt;

&lt;p&gt;4. &lt;strong&gt;QA specialists&lt;/strong&gt; are responsible for testing solutions under development. &lt;/p&gt;

&lt;p&gt;To make embedded system development faster, the team usually works on hardware and software simultaneously. Nevertheless, for convenience, let’s consider hardware development and embedded software design as separate parts. &lt;/p&gt;

&lt;h2&gt;
  
  
  Embedded System Design: Hardware Development
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Requirements gathering and project development specification
&lt;/h3&gt;

&lt;p&gt;Since Integra specializes in outsource &lt;a href="https://www.integrasources.com/services/embedded-hardware-design-and-development/"&gt;embedded electronics development&lt;/a&gt;, the ideas of new products usually belong to our customers. When the team joins a project, our first task is to gather the requirements for the future device:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Functional requirements (what the system must do);&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Non-functional requirements: performance, scalability, security, size, weight, and other important features.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Customers with no technical background find it difficult to formulate requirements for their products. They tend to pay more attention to marketing and functional features but lack an understanding of the technical side and feasibility of the project. So, &lt;strong&gt;the key challenge here is to interview the client thoroughly&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;It’s also important &lt;strong&gt;not to promise more than we can do&lt;/strong&gt;. If what the customer wants is barely realistic, our job is to tell him or her the truth, explain why, and offer feasible alternatives.&lt;/p&gt;

&lt;p&gt;Based on this information, the Integra team creates a &lt;a href="https://www.integrasources.com/blog/product-development-specification/"&gt;project development specification&lt;/a&gt; – a document that describes the purpose, functions, behavior, and other requirements for the future device. &lt;/p&gt;

&lt;h3&gt;
  
  
  2. Technical proposal
&lt;/h3&gt;

&lt;p&gt;At this stage, the team creates a document that describes the &lt;strong&gt;architecture of the future system&lt;/strong&gt; and the solutions we are going to implement. &lt;/p&gt;

&lt;p&gt;We also select components for the future device. The choice here is limited by the product requirements:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Technical characteristics: power consumption, memory capacity, MCU performance, size, weight, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Operating environment: extreme temperatures, humidity, vibration stress, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The cost and quality of the components.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The availability of the components (if the device is supposed to be mass-produced).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Developers must find a balance between the cost of the future embedded system solution and its performance.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. PCB design and layout
&lt;/h3&gt;

&lt;p&gt;The device under development must not only perform its key functions but also be safe and reliable. During &lt;a href="https://www.integrasources.com/services/embedded-hardware-design-and-development/"&gt;embedded hardware design&lt;/a&gt;, the team takes into account the following issues:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The design of the board must fully comply with the PCB design rules so that the device can serve as long as possible with no issues.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Due attention must be paid to heat dissipation, especially when designing a powerful device. It can be achieved with proper component placement, or by extending the copper area, adding vias, using a cooling radiator, or by other means. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The components we have never used before must be tested to make sure they function as their data sheets indicate.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PCBs must be protected from &lt;a href="https://www.integrasources.com/blog/electronics-design-practices-prevent-eos-and-esd-damage/"&gt;EOS and ESD events&lt;/a&gt;, EM interference, environmental hazards, and other factors.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If the embedded system is to be mass-produced, we must follow the Design for Manufacturing (DFM) principles.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The board must be designed with &lt;a href="https://www.integrasources.com/blog/guide-consumer-electronics-certification-us-eu-requirements-consider-mass-production/"&gt;certification requirements&lt;/a&gt; in mind (if the client wants the product to be certified).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data sheets may contain errors and inaccuracies. And since embedded product development is a costly service, such problems must be revealed before we spend the customer’s money. Besides, if the job requires a non-standard approach, we must make sure it’ll work for a given project. In such cases, the team may want to &lt;strong&gt;build a proof-of-concept prototype&lt;/strong&gt; first. &lt;a href="https://www.integrasources.com/blog/electronics-prototyping-product-development/"&gt;Electronics prototyping&lt;/a&gt; allows us to prove an idea, check the work of components, and reveal various issues at an early stage of embedded development.&lt;/p&gt;

&lt;p&gt;Prototyping may require creating not only PCBs but other elements of a system. During one of our projects, we were developing a computer vision algorithm that was supposed to control a robotic manipulator. The model we ordered was too short compared to the measurements provided by the customer, so the team had to make a longer arm, using a shaped metal tube and support elements printed on a 3D printer. This way, we could test the algorithm.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BzAeVW57--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r4382zaap65gx25mx79j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BzAeVW57--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r4382zaap65gx25mx79j.png" alt="A prototype of a robotic manipulator made of a shaped metal tube and support elements printed on a 3D printer." width="725" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Testing
&lt;/h3&gt;

&lt;p&gt;Our team tests PCBs under development at each phase of the process. Tests can show if the board functions correctly and complies with various certification requirements. Tests are conducted both after and during development so that we can reveal and eliminate all kinds of defects and issues before moving on to mass production. Read our article on &lt;a href="https://www.integrasources.com/blog/pcb-and-electronics-testing-and-during-manufacturing-importance-and-methods-implementation/"&gt;PCB and electronics testing&lt;/a&gt; to learn more. &lt;/p&gt;

&lt;p&gt;Often, the team needs to create custom testing firmware that checks if the PCB works as expected. When the product is ready for mass production, we also develop &lt;strong&gt;factory testing firmware&lt;/strong&gt;. &lt;/p&gt;

&lt;h2&gt;
  
  
  What is Embedded Software?
&lt;/h2&gt;

&lt;p&gt;Creating software is the other part of embedded system design. Unlike applications that run on PCs or smartphones, &lt;strong&gt;embedded software is created for specific hardware&lt;/strong&gt;, i.e., can only run on the microcontrollers of special-purpose, non-computer devices. A program that controls a smart watch, a digital camera, a multimeter, or a washing machine is embedded software.&lt;/p&gt;

&lt;p&gt;Such programs are built into devices or machines to control them and/or &lt;strong&gt;perform a limited range of functions&lt;/strong&gt;. Often embedded software is installed in devices permanently – although nowadays it can be updated through wireless connection (over-the-air (OTA) update). It is stored in non-volatile memory – ROM, EEPROM, or flash memory. Without it, the device won’t work and turn into a piece of metal and plastic. &lt;/p&gt;

&lt;p&gt;Most embedded programs (except for embedded apps) &lt;strong&gt;don’t have a graphical user interface (GUI)&lt;/strong&gt;. They are designed to interact with other software through external interfaces rather than with users through a GUI. If a program does have a GUI, it is typically used for configuring the program and outputting limited data (for example, the information about the device’s state).&lt;/p&gt;

&lt;p&gt;The purpose of embedded software is to control a device by &lt;strong&gt;transmitting data between the hardware and higher-level programs&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Embedded software retrieves signals and data from the hardware. The program interprets them as commands and data sequences, used for creating various objects, and transmits them to higher-level software.&lt;/p&gt;

&lt;p&gt;When embedded software receives commands and objects from higher-level software, it translates them into signals and data arrays and transmits them to the hardware.An embedded system solution can have up to four &lt;strong&gt;levels of embedded software&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2_KO6iIJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zgakx33qrtysdfbp7s7x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2_KO6iIJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zgakx33qrtysdfbp7s7x.png" alt="The structure of embedded software." width="725" height="240"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Firmware&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Firmware is a type of computer program that boots a piece of hardware and provides it with low-level instructions. Operating systems and applications run on top of firmware. It is written in low-level languages (&lt;strong&gt;typically in C/C++&lt;/strong&gt;). To let the device read it and execute the instructions, the program is then converted into machine code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Embedded operating system&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Embedded OSs are specialized software that &lt;strong&gt;controls system resources&lt;/strong&gt;. With drivers and APIs, an OS provides application-level software with access to the device’s hardware. Applications run on top of embedded operating systems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Middleware&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Some embedded software designs can include middleware. It’s a software &lt;strong&gt;layer between the OS and the application&lt;/strong&gt;. Virtual machines are typical examples of middleware. A VM emulates a platform and executes a computer-independent code, thus making it compatible with different operating systems. For instance, programs written in Kotlin are converted to a Java code (application level) that, in turn, is executed in a virtual machine (middleware level) running on an operating system (OS level).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Embedded application&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Just like typical apps for computers, this type of software performs the functions of the embedded system and directly interacts with users. It processes data, interacts with other devices, and performs high-level functions. Embedded applications are written in high-level languages such as &lt;strong&gt;C++, Python, and Java&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;An embedded system can incorporate firmware only or more levels of embedded software. Additionally, a solution may require desktop or smartphone applications to function properly. Our team can create all these types of programs for your solution, so &lt;a href="https://www.integrasources.com/contact-us/"&gt;give us a call&lt;/a&gt; to discuss the project in detail.&lt;/p&gt;

&lt;p&gt;Sometimes, embedded applications, embedded OSs, and middleware are referred to as &lt;em&gt;firmware&lt;/em&gt;, while the term &lt;em&gt;embedded software&lt;/em&gt; is extended to include firmware and embedded software development tools. There is no uniform terminology for these concepts.&lt;/p&gt;

&lt;h2&gt;
  
  
  Embedded Software Development Tools
&lt;/h2&gt;

&lt;p&gt;Developers use the following tools to create embedded software:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Integrated Development Environments (IDE)&lt;/strong&gt; are toolsets that contain various programming instruments such as editors, compilers, debuggers, and more&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Compilers and cross-compilers&lt;/strong&gt; translate the code written in a high-level language into a low-level machine code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Debuggers&lt;/strong&gt; help developers find and eliminate bugs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Linkers&lt;/strong&gt; can combine different pieces of code and modules into a single executable program. Modern compilers have built-in linkers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Simulators and emulators&lt;/strong&gt; provide simulated environments close to real-life conditions for testing programs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;System configuration and code generation tools&lt;/strong&gt; automatically generate code for configuring the hardware components of a device. They minimize manual coding and, therefore, error rates.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Code suggestion tools&lt;/strong&gt; are AI-based instruments that analyze the code written by a programmer and autocomplete it with contextually relevant snippets. They considerably speed up embedded system software development.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Disassemblers&lt;/strong&gt; are used to reveal errors made by compilers. Sometimes, it is easier to eliminate errors at the assembler level.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UVlj-j5c--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v6bkmmi7k2a4gbyhwpuh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UVlj-j5c--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v6bkmmi7k2a4gbyhwpuh.png" alt="A screenshot of GitHub Copilot, an AI-based tool with the function of program code autocompletion." width="725" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The autocompletion function of GitHub Copilot and similar solutions considerably speeds up coding. Source: &lt;a href="https://github.com/features/copilot"&gt;&lt;/a&gt;&lt;a href="https://www.integrasources.com/contact-us/"&gt;https://github.com/features/copilot&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Challenges of Embedded Software Development 
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Hardware platform selection
&lt;/h3&gt;

&lt;p&gt;The future &lt;a href="https://www.integrasources.com/services/embedded-software-development/"&gt;embedded software design&lt;/a&gt; can be roughly estimated when the team creates the technical proposal as experienced developers can see what hardware resources they can expect. &lt;/p&gt;

&lt;p&gt;Of course, the team prefers more powerful MCUs with larger memory capacity. But if it’s not an option and we have to use a less powerful alternative, we need to analyze the project thoroughly to be sure we can implement all the features and optimize the code for this particular hardware.&lt;/p&gt;

&lt;p&gt;Since embedded software systems interact with hardware (microcontrollers, sensors, buzzers, etc.), developers need to study the equipment before they start coding. The problem is that certain models may &lt;strong&gt;lack the necessary documentation&lt;/strong&gt; or the data sheets may contain &lt;strong&gt;mistakes, inaccuracies, and outdated information&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;One of our projects required a module that could simultaneously receive GPS coordinates and transmit data using GSM. The data sheet claimed the module was capable of both, but the device didn’t function properly during tests. The team contacted the manufacturer, and the company admitted that the module couldn’t perform both functions simultaneously. To switch between GSM and GPS modes, it needed to be rebooted. This fact was not mentioned in the data sheet.&lt;/p&gt;

&lt;p&gt;This situation is not uncommon for cheap components. Contacting the developer of the hardware usually helps. Sometimes, the developer doesn’t respond, and the team has to analyze the hardware by itself. But these are usually simple components designed by small companies, so studying them is not too difficult.&lt;/p&gt;

&lt;p&gt;The manufacturers of expensive hardware typically provide full information in their data sheets but using them makes the final product more expensive.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Selecting a programming language and operating system
&lt;/h3&gt;

&lt;p&gt;The choice of programming language is determined by hardware and the type of software we want to create. For example, programs for Android-based devices are created in Java, while software for single board computers is written in C or C++. C is suitable for low-level programming, i.e., for programs that interact directly with the hardware. C++, Python, Java, Rust, and other languages are suitable for high-level programming.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Our team specializes in C/C++&lt;/strong&gt; development because a programmer experienced in C++ can use the &lt;strong&gt;Qt framework&lt;/strong&gt; to create both embedded software and application-level programs. Although there are safer alternatives to C/C++ (e.g., Rust), our team is highly qualified and knows how to avoid typical mistakes of this sort. So, by &lt;a href="https://www.integrasources.com/contact-us/"&gt;entrusting your project to us&lt;/a&gt;, you save money because we don’t need to hire more developers specializing in other languages.&lt;/p&gt;

&lt;p&gt;Devices that perform simple actions can function with the so-called bare-metal firmware that doesn’t require an operating system. However, &lt;strong&gt;electronics with complicated functions do need an OS&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Here developers have many options: Embedded Linux, Android, &lt;a href="https://www.integrasources.com/blog/linux-vs-windows-10-iot-medical-device/"&gt;Windows IoT&lt;/a&gt;, RTEMS, and more. The choice is determined by several factors:&lt;/p&gt;

&lt;p&gt;- project goal;&lt;/p&gt;

&lt;p&gt;- available hardware resources; and&lt;/p&gt;

&lt;p&gt;- development cost.&lt;/p&gt;

&lt;p&gt;Powerful hardware can hold resource-demanding operating systems. For instance, writing software for Ubuntu won’t take much time but will require powerful and expensive hardware as Ubuntu has many services, drivers, and packages. Weaker hardware makes developers spend more time optimizing and customizing the code, so embedded software programming grows more expensive.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5J3oRml4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6napl1m5xqt2sisw20s5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5J3oRml4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6napl1m5xqt2sisw20s5.png" alt="A scheme showing the dependencies between embedded software development cost and available hardware resources." width="725" height="230"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Our team prefers free operating systems because creating software for them is easier and cheaper. But we can also create programs for proprietary OSs if the customer insists. &lt;/p&gt;

&lt;h3&gt;
  
  
  3. Software architecture design
&lt;/h3&gt;

&lt;p&gt;Before writing the code, developers think through the architecture (structure) of the future solution. The architecture includes software elements, the relations among them, and their properties.&lt;/p&gt;

&lt;p&gt;Since we deal with different hardware platforms and are limited in resources, &lt;strong&gt;we can’t use a single architecture template&lt;/strong&gt; for all projects. Embedded system design requires optimal solutions, so a universal architecture won’t work here. We have to pick from a number of architecture templates and customize them for each particular project.&lt;/p&gt;

&lt;p&gt;Often embedded products under development are only a part of a bigger system. A project may also require developing application-level software that will interact with the device somehow. In theory, the team can design embedded software first and move on to other tasks after that. But to make the process faster, our embedded team creates a document that describes external interfaces and protocols for interacting with the programs so that the other teams can start their work as soon as possible. It’s a common practice that speeds up the process.&lt;/p&gt;

&lt;p&gt;Sometimes, we create a mock service that emulates the work of the embedded program and generates synthetic data for the application-level software under development.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Coding
&lt;/h3&gt;

&lt;p&gt;When everything is settled, the team gets to coding. The key difference between embedded software and application software development is that embedded programs don’t have complicated logic. The true challenge is to make the software interact with the hardware and control it correctly.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lack of information&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Application software developers have lots of frameworks with ready-made solutions and tons of information on the web. But embedded software developers create code for non-standard, heavily customized equipment. They need to understand how this particular hardware works, so they spend a lot of time studying data sheets and/or testing the hardware manually.&lt;/p&gt;

&lt;p&gt;Within one of our projects, the solution under development was supposed to send commands to MacBook computers via a USB port. The commands are represented by sets of bits, but Apple doesn’t provide any information on this matter in official documents. So, the team had to search different forums to find the information.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ofJjrSUD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hdj7s1ul86twr6sk543w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ofJjrSUD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hdj7s1ul86twr6sk543w.png" alt="Sets of bits representing “Reboot” and “Switch to DFU” commands for MacBook." width="725" height="80"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;These sets of bits represent the commands “Reboot” and “Switch to DFU mode.”&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Data security&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Many embedded devices have access to the Internet. If they transmit sensitive data, the communication must be secure. Here we have a range of standard encryption methods. For instance, right now the Integra team is working on a medical device that transmits biometrics via the Internet. This kind of data must be protected. However, encryption raises the hardware requirements, so developers don’t use it when data carries no sensitive information.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Memory and performance shortage&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Embedded devices are getting smaller, while the performance requirements for them are increasing. Although memory shortage isn’t as critical today as it used to be, it is still a problem for &lt;a href="https://www.integrasources.com/services/embedded-software-development/"&gt;embedded software development&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Power limitation is another typical problem for battery-powered devices. The work of its software must be programmed in such a way as to minimize electricity consumption. To do so, developers can reduce the number of instructions for the processor core. Another way is to put the processor core to sleep mode until an outside event (such as timer interruption) occurs. We mentioned both these techniques in our article devoted to &lt;a href="https://www.integrasources.com/blog/embedded-firmware-development-practices-challenges-solutions/"&gt;firmware development practices&lt;/a&gt;. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stability&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Although software can’t “break” like hardware components do, it can still crash. Most of such problems are caused by &lt;strong&gt;incorrect memory access&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Here is a typical example. Process 1 calculates a variable and puts the value into a memory cell. This value is required by Process 2. Since the two processes run in parallel, Process 2 may access the memory cell before Process 1 calculates the value, which causes a crash. &lt;/p&gt;

&lt;p&gt;When coding, developers must foresee such situations and give processes proper instructions – for instance, instruct Process 2 to make sure Process 1 has calculated the value before using it.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;New requirements&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sometimes this phase becomes challenging because the customer decides to extend the functionality of the device or wants to &lt;strong&gt;change the requirements&lt;/strong&gt; for the project. The hardware platform chosen at the preparation phase may not be sufficient for the new features, and the team may even be forced to start over. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Optimization&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Software optimization plays a huge role in embedded system design as we are always limited in resources. Programmers can make software fast but memory-intensive or vice-versa – memory-friendly but slow. Modern compilers offer many types of optimizations so that developers can find a balance between these extremes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0xO7FWpC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qfjx30iqbyx5wvtee5vv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0xO7FWpC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qfjx30iqbyx5wvtee5vv.png" alt="Drawing showing the importance of finding a balance between the performance and memory intensiveness of embedded software." width="725" height="80"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Testing and debugging
&lt;/h3&gt;

&lt;p&gt;A typical application can be tested on a computer, but embedded software is designed for devices and equipment. So, developers need a fully featured test station or even field trials. &lt;strong&gt;QA specialists have to be very resourceful&lt;/strong&gt;.For example, when working on the &lt;a href="https://www.integrasources.com/cases/aircraft-towing-protection-system/"&gt;aircraft towing system&lt;/a&gt;, the team had to test the distance-measuring module somehow. Our QA specialist designed and created a special stand with a 3D printer. The module was fixed on the stand, while the stand was attached to the hood of a car with a magnet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8I37i8ty--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nxsmlyeqr41xi1s9as90.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8I37i8ty--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nxsmlyeqr41xi1s9as90.png" alt="A 3D model of a test stand with an embedded device attached to it." width="725" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The team tested the device by driving around parking lots.&lt;/p&gt;

&lt;p&gt;Sometimes we need to &lt;strong&gt;develop software for a device that we don’t have&lt;/strong&gt; – for example, if it’s too heavy to transport or when we design a PCB for a larger system. This makes testing even more difficult.&lt;/p&gt;

&lt;p&gt;In that case, the customer can install TeamViewer or a similar solution on a computer and connect the PC to a camera and the device under test. This way the team can connect to the PC to give commands to the device and see what’s happening through the camera.&lt;/p&gt;

&lt;p&gt;Applications are usually standalone products, while embedded programs always interact with hardware. When an error occurs, it’s &lt;strong&gt;difficult to tell whether the problem was caused by hardware or software&lt;/strong&gt; – especially during field trials when the testers are limited in diagnostic tools. The only way to see if the software is working properly is to upload logs to a connected laptop in real time. &lt;/p&gt;

&lt;p&gt;As for hardware, QA specialists use oscilloscopes, voltmeters, multimeters, and other tools to check if the PCB and its components are working properly.&lt;/p&gt;

&lt;p&gt;Our team designed a device consisting of a single-board computer and two PCBs. The SBC was supposed to send a heartbeat package to one of the boards to confirm it’s still working. If the PCB did not receive the package, it was supposed to reboot the computer automatically, which the board did all the time during tests.&lt;/p&gt;

&lt;p&gt;The team checked the bus with a logic analyzer and confirmed the SBC sent the correct signal, which proved the problem was caused by the firmware of the PCB that didn’t process the package correctly.&lt;/p&gt;

&lt;p&gt;If the device fails due to an equipment defect, the team can fix it “manually” instead of manufacturing a new PCB, which would raise the development cost. &lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Embedded system design is a complicated process consisting of many steps and requiring professionals specializing in electronics engineering and embedded programming. The team has to overcome many challenges at each phase from requirements gathering to testing. Moreover, to speed up the process, hardware design and embedded software development must be done in parallel. Integra Sources is a well-knit team with rich experience in embedded electronics development. We know what challenges to expect at each step and how to deal with them. Don’t hesitate to &lt;a href="https://www.integrasources.com/contact-us/"&gt;contact us&lt;/a&gt; if you need help with your project idea.&lt;/p&gt;

</description>
      <category>embedded</category>
      <category>hardware</category>
      <category>softwaredevelopment</category>
    </item>
    <item>
      <title>Project Development Specification: How To Write the Right One</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Mon, 02 Oct 2023 05:11:26 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/project-development-specification-how-to-write-the-right-one-13lj</link>
      <guid>https://dev.to/integrasourcesltd/project-development-specification-how-to-write-the-right-one-13lj</guid>
      <description>&lt;p&gt;All successful IT products were once just ideas. In most cases, brilliant ideas come from people far from software and hardware development.&lt;/p&gt;

&lt;p&gt;It’s great when enthusiasts with thoughts, dreams, and insights want to improve their businesses, as they know their needs very well. But above all, technical specialists should be able to understand ideas correctly and transform them into a working device or a program.&lt;/p&gt;

&lt;p&gt;The project development specification helps bring ideas to life in the right way. Why is it crucial to prepare specifications? Who should prepare a spec and how should one be written? Can we do it without the requirements document? How can one avoid overpaying for the development of a requirement document?&lt;/p&gt;

&lt;p&gt;You can find all the answers in our article.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Do We Need a Specification?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--beVfjL8M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c2x9liwiaylqjh53i27r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--beVfjL8M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c2x9liwiaylqjh53i27r.png" alt="Image description" width="725" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Why do you need to write a requirement document for device design and software development? A requirement specification for hardware and software development is a document that defines the requirements for an IT product, including its purpose, functions, behavior, components used, technologies, development tools, and working procedures.&lt;/p&gt;

&lt;p&gt;A project dev specification serves as the guide for business and technical teams involved in IT solution creation.&lt;/p&gt;

&lt;p&gt;A requirement specification is equally necessary for both the customer and the developer. Being the work of specialists from different fields, a spec is used by the client and contractor throughout the entire development process and after the project is finished.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A project dev specification for device design or software development allows customers to get &lt;strong&gt;preliminary estimates of the product development cost&lt;/strong&gt;. The cost of sophisticated devices and high-performance apps is hard to estimate offhand. It is necessary to consider a fairly large number of points: labor, components, logistics, certification, and whatnot.A well-written document allows the contractor and the customer to see and evaluate the entire development process and its stages. Thus, the customer will get an idea of the preliminary cost of each work stage. More accurate data is set out in a project estimate.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A specification indicates an approximate &lt;strong&gt;time frame for the project&lt;/strong&gt;. The client and the outsourcing company will not disagree on terms if each period of the project stage is indicated in the document from the very beginning. Hardware and software development terms can be shifted due to various reasons. Some of them, such as components' waiting times and delivery times, can be foreseen when writing a specification.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It will be easier for the customer &lt;strong&gt;to evaluate the finished solution&lt;/strong&gt; – an electronic device, application, firmware, or hardware-software system – by comparing it with the description in the requirements specification. That is why the spec should be drawn up competently and as thoroughly as possible.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A well-written project development specification can say a lot about &lt;strong&gt;the competence and experience of the specialists&lt;/strong&gt; who compiled it. The developers' thoughtful approach to the preparation of the project, as well as clear and comprehensive information given in a spec show the company's service level.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Joint work can be interrupted or frozen due to certain circumstances: financial and legal constraints, geopolitics, disagreements between business partners, serious logistical problems, etc. With a perfectly crafted specification for IT product development, it is easier for the customer to &lt;strong&gt;return to cooperation&lt;/strong&gt; with the outsourcing company or &lt;strong&gt;to find a new one&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The requirements document describes the product itself, its purpose and functionality, as well as its development stages, electronic components, and software tools to be used. Thus, both the customer and the developer have a thorough understanding of the future IT solution, which serves as &lt;strong&gt;insurance against disagreements&lt;/strong&gt;, misunderstandings, and unplanned changes in the product concept.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Developers’ &lt;strong&gt;work gets easier and faster&lt;/strong&gt; when they rely on a requirements specification. There is no need to spend time coordinating each step with the client.&lt;/p&gt;

&lt;h2&gt;
  
  
  Can We Do It Without a Spec?
&lt;/h2&gt;

&lt;p&gt;It's not so easy to write project dev specifications. Spec preparation requires time and high qualifications and, naturally, costs money. Therefore, trying to save time and money, the customer may choose to prepare in-house specs or not write any requirement documents at all.&lt;/p&gt;

&lt;p&gt;Is it possible to do without technical specifications? Can a client explain what the product should be in simple words, show a sample, or ask to do it by a template?&lt;/p&gt;

&lt;p&gt;Any typical project, even a small one, requires a requirements document – a paper that will record all the requirements regarding the product, components, and workflow. This document may not be the project development specification in the classical sense, but you still cannot do without it.&lt;/p&gt;

&lt;p&gt;When contacting a &lt;a href="https://www.integrasources.com/"&gt;custom software and hardware development company&lt;/a&gt;, the client can provide a document in which his ideas, wishes, and product vision are presented in any form.&lt;/p&gt;

&lt;p&gt;The client's competence in design and programming is a big advantage, but the main thing is to explain the client's wishes for the product as clearly as possible.&lt;/p&gt;

&lt;p&gt;Based on this explanation, the developer company will create a full-fledged, high-quality requirements specification that will serve as a guideline in subsequent development.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Write a Spec
&lt;/h2&gt;

&lt;p&gt;The technical specification contains subject data and detailed descriptions of the development process. The more difficult the task, the more specialists will be involved in writing the requirements specification, and the more information the finished document will contain.&lt;/p&gt;

&lt;h3&gt;
  
  
  Who Writes a Requirement Document?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zWO6h236--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/94ml8kj2ibcar1ha921l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zWO6h236--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/94ml8kj2ibcar1ha921l.png" alt="Image description" width="725" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One can't use templates and tips from the Internet to create a good specification.&lt;/p&gt;

&lt;p&gt;Requirements documents for device design and software development are written by specialists who know all the process nuances: work stages, terms, components and technologies required, and the final product characteristics. PMs, developers, and testers contribute their data to the document, building an overall project picture.&lt;/p&gt;

&lt;p&gt;You can entrust the creation of project development specifications to in-house specialists who know exactly what product you need and can specify the desired functions and characteristics of the device or program in the document.&lt;/p&gt;

&lt;p&gt;But this often results in double work, a waste of time and money.&lt;/p&gt;

&lt;p&gt;The requirements document created by the outsourcing company takes into account all the client's wishes and the contractor's capabilities (component-specific and language-specific expertise, development experience, etc.).&lt;/p&gt;

&lt;p&gt;All points of the technical specifications must be agreed upon by the customer and the developer so that the customer receives a product that meets all requirements.&lt;/p&gt;

&lt;h3&gt;
  
  
  What Should Be Included in a Project Dev Specification?
&lt;/h3&gt;

&lt;p&gt;Requirements documents are developed for specific projects and, as a rule, are unique. Nevertheless, some points are present in one way or another in all technical specifications for software, hardware, and embedded system development.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Terms, Abbreviations, and Definitions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The terms used in the text are defined at the beginning of the document. These can be IT concepts (element names, development environments, programming languages, and technical definitions), as well as words and designations from the area for which the IT solution is intended.&lt;/p&gt;

&lt;p&gt;The more carefully the list of professional words is thought out, the better the contractor and the customer will understand each other.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xrOKdAYu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gfo39tfnres8sw1cyvb8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xrOKdAYu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gfo39tfnres8sw1cyvb8.png" alt="Image description" width="725" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Part of the table of terms and abbreviations set out in the requirements document Table of terms given in a project development specification&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product Summary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This block describes the purpose of the IT solution, the reasons for its creation, and the target audience.&lt;/p&gt;

&lt;p&gt;Businesses often want to develop an IT product to &lt;em&gt;increase their client base, create a positive image of the company, increase labor productivity, decrease manual labor,&lt;/em&gt; etc.&lt;/p&gt;

&lt;p&gt;This paragraph also contains information about the objectives of the project: it can be &lt;em&gt;developing a turnkey solution, participating in a separate stage (for example, working on software for a finished hardware platform), or improving an existing product&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Goals must be specific and clear so that the final product meets the requirements and is helpful to the customer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Project Requirements&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The requirements for the project are the basis of the specification and its most significant and detailed part.&lt;/p&gt;

&lt;p&gt;Typically, this block contains the following subsections:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;General requirements&lt;/em&gt; define the phases of the development process.&lt;/p&gt;

&lt;p&gt;Here is an example of general requirements for developing a hardware and software system for equipment control.&lt;/p&gt;

&lt;p&gt;Project stages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;To develop a controller to manage client devices.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;The controller must be installed on each device.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;To create a device control panel using a Linux-based single-board computer.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;To develop an application for remote control.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;To integrate the control panel and controller into a single system.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;To test the system.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Subsequent system improvements and modifications.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Functional requirements&lt;/em&gt; refer to the IT solution's functions and behavior.&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;The system should send notifications about equipment failures.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;The system must control the sensors.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;The system must transmit data over a radio channel.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;The system must have an alarm.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;The system must manage all the device functions.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Non-functional requirements&lt;/em&gt; define performance, scalability, maintainability, product security, and other criteria.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Requirements for the development process&lt;/em&gt; can be presented in several paragraphs and describe work stages, components, and software tools to be used.&lt;/p&gt;

&lt;p&gt;For example, in a project dev specification for a software and hardware complex, you may need a paragraph describing the requirements for the device, communication protocols (MQTT, TCP, etc.), and a user application for managing the device.&lt;/p&gt;

&lt;p&gt;The statement of &lt;em&gt;organization and quality of work&lt;/em&gt; determines how to arrange everything related to the project: communication between the customer and the contractor, the main points regarding the quality of the system, device, or software product (continuous operation time, system behavior in an emergency, and whatnot).&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Security issues&lt;/em&gt; may contain requirements for code protection, access control, access rights, etc.&lt;/p&gt;

&lt;p&gt;In addition to the main points, the spec contains blocks that are individual for each project, for example, roles for access control, interface requirements, and requirements for the device size and appearance.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Is a Good Project Development Specification?
&lt;/h2&gt;

&lt;p&gt;What should a quality specification for hardware and software development look like? How many pages do you need – one or fifty? Should you use formal language or technical slang? Do you need pictures or not?&lt;/p&gt;

&lt;p&gt;First, the project development specification should be written in clear and simple language, as it will be studied not only by technical specialists but also by sales managers and the customer's team. Of course, you can’t do without technical terms, but you shouldn’t overload the text with them either.&lt;/p&gt;

&lt;p&gt;Schemes, drawings, and tables are not compulsory but highly desirable. Graphic elements convey information visually, which many find more comprehensible.&lt;/p&gt;

&lt;p&gt;The spec size depends on the project's scale and complexity. The larger the project, the more preparatory documents are needed. The requirements specification for a &lt;a href="https://www.integrasources.com/cases/battery-management-system-development/"&gt;battery management system&lt;/a&gt;, a project that will take several years, cannot be a one-page document.&lt;/p&gt;

&lt;p&gt;However, it is necessary to strive for a balance of conciseness, clarity, and informativity even when writing technical specifications for large-scale projects.&lt;/p&gt;

&lt;p&gt;What can go wrong if you don’t pay due attention to specification preparation and study? At the very least, it will cost additional time. At worst, it can cause disagreements between the parties and lead to a product that does not meet the customer's requirements.&lt;/p&gt;

&lt;p&gt;We faced such situations. Our customer came up with an idea for a device. But some of its functions could not be implemented together. In the specification document, we described the only possible solution, but, unfortunately, the client didn’t pay attention to it. Needless to say, the result unpleasantly surprised him.&lt;/p&gt;

&lt;p&gt;To avoid such consequences, the customer should devote time to study the specification: discuss details and delve into the finished document.&lt;/p&gt;

&lt;p&gt;It is better to entrust the preparation of technical specifications to professionals – those who will undertake IT solution creation. It doesn't matter if you don't have a clear understanding of the development process, you can just come to them with an idea.&lt;/p&gt;

&lt;p&gt;A competent outsourcing team that deals with &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;custom electronics design&lt;/a&gt; and &lt;a href="https://www.integrasources.com/services/system-application-software-development/"&gt;software development&lt;/a&gt; can draw up a high-quality specification, discuss all the details with the customer, consider all wishes, and select the most appropriate element base and software tools.&lt;/p&gt;

&lt;p&gt;A good spec will save time, money, and nerves for both the client and the developer.&lt;/p&gt;

&lt;h3&gt;
  
  
  Typical Mistakes in Specifications
&lt;/h3&gt;

&lt;p&gt;It's crucial to avoid common mistakes when drawing up a requirements document. Let's take a close look at some slips.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No glossary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it was:&lt;/em&gt; The virtual assistant provides voice interaction, MX Player, Spotify, TuneIn, Audible, Pandora, Hungama, and Ganna playback, and information about EPL, MLB, NBA, NHL, etc.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it should be:&lt;/em&gt; The virtual assistant provides voice interaction, music playback (MX Player, Spotify, TuneIn, Audible, Pandora, Hungama, and Ganna), and information about sports events (EPL, MLB, NBA, NHL, etc.).&lt;/p&gt;

&lt;p&gt;Music services: MX Player, Spotify, TuneIn, Audible, Pandora, Hungama, Ganna.&lt;/p&gt;

&lt;p&gt;Abbreviations of sports organizations:&lt;/p&gt;

&lt;p&gt;EPL: English Premier League&lt;/p&gt;

&lt;p&gt;MLB: Major League Baseball&lt;/p&gt;

&lt;p&gt;NBA: National Basketball Association&lt;/p&gt;

&lt;p&gt;NHL: National Hockey League&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unclear wording&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it was:&lt;/em&gt; Since its introduction in 1983, MIDI has developed into a mature standard with a wide range of products and applications. It is a standard that specifies both the hardware connection needed to share the data physically as well as the data protocol for exchanging musical control information.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it should be:&lt;/em&gt; The MIDI (Musical Instrument Digital Interface) format allows you to standardize musical equipment from different manufacturers.&lt;/p&gt;

&lt;p&gt;The protocol provides digital data transfer between devices, music playback, and control of auxiliary equipment (pyrotechnics, lighting, etc.).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Too detailed description&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it was:&lt;/em&gt; The GS Format is a set of guidelines created by Roland to standardize the performance of sound-generating equipment. It supports all features listed in the General MIDI System. Additionally, the highly compatible GS Format gives a greater variety of sounds, allows for sound editing, and specifies numerous specifics for a wide range of supplementary features, such as chorus and reverberation effects.&lt;/p&gt;

&lt;p&gt;The GS Format was created with the future in mind, making it simple to add additional sounds and support new hardware features as they become available. It may be retrofitted to work with the General MIDI System. As a result, Roland's GS Format can faithfully play back GM Scores just as well as GS Music Data (music data written using the GS Format).&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it should be:&lt;/em&gt; The GS format is Roland's extension to the General MIDI standard to unify audio equipment characteristics. It supports all the features listed in the General MIDI System, supplementing the standard with new instruments, effects, and functions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mixing functional and non-functional requirements&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it was:&lt;/em&gt; The system must maintain the water temperature in the heating tank at no higher than 50°C.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What it should be:&lt;/em&gt; Functional requirements: the system must maintain a user-defined water temperature.&lt;/p&gt;

&lt;p&gt;Non-functional requirements: the water temperature in the heating equipment must not exceed 50°C.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;The development of an IT solution – an electronic device, application, embedded software, or IoT system – is preceded by writing a project requirements specification. A spec can be a short document or a lengthy detailed one depending on the project's scale and complexity.&lt;/p&gt;

&lt;p&gt;A specification gives an idea of the purpose and functions of the product, the requirements for its development, the stages of work, and the procedure for accepting the completed solution.&lt;/p&gt;

&lt;p&gt;The requirements document is the result of the teamwork of the project manager, developers, testers, and, of course, the customer.&lt;/p&gt;

&lt;p&gt;As writing technical specifications is a complex process, it requires deep knowledge and expertise in software and hardware development. People who prepare specifications should be able to navigate the electronic components market, evaluate logistics routes, and present information.&lt;/p&gt;

&lt;p&gt;The best decision would be to entrust the requirements specification preparation to the outsourcing development company. The crew will take into account its expertise and all the customer's wishes. In this case, product development will go faster and more comfortably.&lt;/p&gt;

&lt;p&gt;You can &lt;a href="https://www.integrasources.com/contact-us/"&gt;apply to Integra Sources&lt;/a&gt; with your idea, and we will help you create a unique application, electronic device, or software and hardware system of any complexity. We will prepare a concise and understandable requirements specification, which will serve as the basis for further cooperation.&lt;/p&gt;

</description>
      <category>projectdevelopment</category>
      <category>projectspecification</category>
      <category>softwaredevelopment</category>
      <category>itsolutions</category>
    </item>
    <item>
      <title>Mathematical Representations of PID Controller Gains</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Thu, 31 Aug 2023 08:47:51 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/mathematical-representations-of-pid-controller-gains-4cdn</link>
      <guid>https://dev.to/integrasourcesltd/mathematical-representations-of-pid-controller-gains-4cdn</guid>
      <description>&lt;p&gt;&lt;strong&gt;PID controllers were invented at the beginning of the 20th century. Nevertheless, their mathematical description was obtained much later. Today, this mechanism finds various applications in different industries from autopilots to industrial automation. When working with PID controllers, one of the most challenging tasks is to tune them properly. In this paper, we analyze the mathematical representations of PID controller gains used to tune the algorithm.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Proportional–integral–derivative controllers&lt;/strong&gt;, or PID controllers, find many applications. They are used in &lt;a href="https://www.integrasources.com/blog/bldc-motor-controller-design-principles/"&gt;controllers for BLDC motors&lt;/a&gt;, flight controllers, and power factor correction units. You can find dozens of them in electric vehicles. PID controllers are a part of temperature and humidity control systems used in the manufacturing, chemical, and pharmaceutical industries. PID controllers are used in &lt;a href="https://www.integrasources.com/services/power-electronics-design/"&gt;power electronics&lt;/a&gt; (particularly in converters), industrial furnaces, and almost all automated processes in manufacturing.&lt;/p&gt;

&lt;p&gt;To calculate a control signal, the PID algorithm uses three control terms – proportional, integral, and derivative. Each component is multiplied by a gain that is used to adjust the weight of each term in the equation. This way, engineers can tune a PID controller to suit a particular process. Read our previous article to learn the basics of PID controllers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4LFuwbkw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7oagasdtggbkq6z445wu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4LFuwbkw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7oagasdtggbkq6z445wu.png" alt="Image description" width="725" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The developers in Integra Sources have considerable knowledge and experience with this mechanism. We have successfully used PID controllers in various projects. If your project requires automation as well, PID control may be the most suitable choice. &lt;a href="https://www.integrasources.com/contact-us/"&gt;Contact us&lt;/a&gt; to consult our team. &lt;/p&gt;

&lt;p&gt;A PID controller can be tuned intuitively, which is one of the key advantages of this mechanism. However, tuning PID controllers is one of the most perplexing topics in engineering. It is not surprising that inexperienced engineers often fail to understand how to tune a controller and adjust the gains. In this copy, we will unravel the issues.&lt;/p&gt;

&lt;p&gt;But first, let us turn to history. &lt;/p&gt;

&lt;h2&gt;
  
  
  History of PID Controllers
&lt;/h2&gt;

&lt;p&gt;If you try to look for the patent on the world’s first PID controller, you will find none. Back then, PID controllers were not distinguished into separate devices. Instead, engineers gave different names to the tools that performed this function. For instance, the device for automatic course-keeping used on ships was called an “automatic helmsman.” But in fact, it was a type of PID controller.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uZDzhd7P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6io6o4io75mh1ms1cuio.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uZDzhd7P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6io6o4io75mh1ms1cuio.png" alt="Automatic helmsman, a type of PID controller used on ships." width="725" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The most spectacular demonstration of a PID controller was probably the presentation of the airplane autopilot. On June 18, 1914, at an exhibition in France, two pilots climbed on the wings of their plane right in the air to show that the aircraft could fly without manual steering.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LPTAuTz7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ezs0gejooe62wzttrg2w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LPTAuTz7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ezs0gejooe62wzttrg2w.png" alt="Two pilots leaving the cockpit and climbing on the wings of the plane to demonstrate the capabilities of autopilot." width="725" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The demonstration sparked great interest in &lt;a href="https://www.integrasources.com/cases/drone-autopilot/"&gt;autopilots&lt;/a&gt;, and PID controllers began to increasingly replace manual control. Companies started to develop different implementations of the PID mechanism. To avoid patent disputes, manufacturers had to modify the devices. Because of varying representations and implementations of the algorithm, customers had to re-educate their staff when migrating from one manufacturer to another. Naturally, this vendor lock-in played into the hands of the manufacturers and did not promote the emergence of a uniform representation.&lt;/p&gt;

&lt;p&gt;It is worth noting that the mathematical description of the PID controller was obtained more than 10 years after it was invented. Thus, the device is the result of engineering intuition rather than antecedent mathematical optimization.&lt;/p&gt;

&lt;h2&gt;
  
  
  Transient Response Performance Indicators 
&lt;/h2&gt;

&lt;p&gt;Before moving on to PID gain calculation, we need to understand what is considered a well-tuned controller and a poorly tuned controller. Certainly, the criteria for each particular system are different. To bring about uniformity, engineers use &lt;em&gt;transient response performance indicators&lt;/em&gt;. In this copy, we only talk about the indicators that directly characterize the quality of a transient response because they can be easily seen on a graph. There are also indicators that characterize a transient response indirectly and that need to be calculated, but we will not consider them here. &lt;/p&gt;

&lt;p&gt;Let’s take a look at a hypothetical graph of a transient response to a test step input:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--npTgwV7x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7bmjsx404fi4c9fip1l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--npTgwV7x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7bmjsx404fi4c9fip1l.png" alt="The performance indicators of a transient response: settling time, overshoot, and steady-state process value." width="725" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Settling time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most useful characteristic here is the settling time. This term refers to the time at which the step response input stays within some small percentage range of the steady-state value &lt;em&gt;(yfinal&lt;/em&gt;). &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Process variable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;y(t)&lt;/em&gt; is the value of the parameter regulated by the controller (process variable). It changes over time as the plant responds to an input (to step response input or new set point).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Steady-state process value (&lt;em&gt;yfinal&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;yfinal &lt;/em&gt; is the process variable value in a steady state. To define when a system reaches a steady state, engineers use a range of values. If the process variable oscillates within this range, then the system is considered to be in a steady state. If the oscillations of the process variable fall outside of this range, it means the transient response isn’t over. Usually, this value range equals +/- 2…5% of the set point on the condition that at the beginning of the transient response, the process variable equals zero. These values are defined for each transient response individually in accordance with the requirements for the system. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overshoot (&lt;em&gt;σ&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next indicator to which engineers pay attention is overshoot. To measure this value, first we need to define the peak of the process variable (&lt;em&gt;ymax&lt;/em&gt;) on the graph. Then, we must make simple calculations:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GkdBBFUk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k4thfyp87oygotnjeksk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GkdBBFUk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k4thfyp87oygotnjeksk.png" alt="Image description" width="725" height="123"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thus, overshoot (&lt;em&gt;σ&lt;/em&gt;) is the percentage ratio of the maximum deviation of the process variable (&lt;em&gt;Δуmax&lt;/em&gt;) to its steady-state value in the direction opposite to its initial deviation. Some systems never cause overshoot. Their transient response can be described as a monotonously increasing function (see the graph below):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--suxFHkMo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mgsrv7tyyar5x0lid5pz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--suxFHkMo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mgsrv7tyyar5x0lid5pz.png" alt="A graph showing a transient response without overshoot." width="725" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The purpose of tuning a PID controller is to minimize the settling time so that the overshoot doesn’t exceed a certain level defined by the requirements for the system. Often, engineers are tasked with eliminating overshoot completely. All these requirements are defined for each system individually. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Steady-state error&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Steady-state error is another important characteristic of a transient response. It is the difference between the desired process value (set point) and the actual process variable after the plant stabilizes. You can see the steady-state error on the graph below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SPBtsCaB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5sr0qpyfdti9a58j4lzu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SPBtsCaB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5sr0qpyfdti9a58j4lzu.png" alt="Graph demonstrating the steady-state error in a transient response." width="725" height="410"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;An ideal process should not have a steady-state error. However, for a number of reasons, eliminating it isn’t always possible. In that case, engineers strive to minimize it so that it doesn’t exceed a certain value.&lt;/p&gt;

&lt;p&gt;The performance of a transient response can be evaluated with other characteristics as well, but these are more common. The requirements for each system are also defined individually. &lt;a href="https://www.integrasources.com/contact-us/"&gt;Contact our team&lt;/a&gt; and we will help you to get insight into other performance indicators of a transient response and formulate requirements for your system. &lt;/p&gt;

&lt;h2&gt;
  
  
  Representations of PID Gains
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Proportional gain&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The abbreviation “PID” is derived from the first letters of the multipliers of mathematical functions of addends – the proportional, integral, and derivative terms. Engineers typically use the simplified modification of the PID controller that contains only the proportional term – the so-called P controller (&lt;em&gt;Kp&lt;/em&gt;). The preferred term “gain” is sometimes replaced with the term “band.” Band is inversely related to the regular proportional gain, which confuses inexperienced engineers:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FzMz5Ixr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t84a9gepuagxtk4dbyiq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FzMz5Ixr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t84a9gepuagxtk4dbyiq.png" alt="Image description" width="725" height="112"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Integral gain&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most essential of the three control terms – and the most confusing one – is probably the integral term. There are two popular but mutually inverse representations of the integral gain. One (&lt;em&gt;Ki&lt;/em&gt;) is often used in academic practice while the other (&lt;em&gt;Ti&lt;/em&gt;) is more common for engineering practice. They are related by the following equation:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v7aeh5m---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j9mwvtfragw4lgpjw294.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v7aeh5m---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j9mwvtfragw4lgpjw294.png" alt="Image description" width="725" height="112"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The peculiarity of this gain is that it does not always enhance but often degrades the performance of a transient response. Highly skilled engineers like the ones on our team always have a clear idea of why they use this gain and for what it is needed. It makes us qualified for &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;developing electronics&lt;/a&gt; with automated control systems. &lt;/p&gt;

&lt;p&gt;If a controller drives a system to a desired process value with a certain error that will not disappear on its own (steady-state error), this is when the integral term is required. In addition, the Ti gain is proportional to the settling time of the process. That’s why engineers prefer Ti rather than the academic Ki gain. Other than that, adding the integral term increases settling time, overshoot value, and oscillation, as well as decreases gain and phase margin.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Derivative gain&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The representations of the derivative gain have no significant differences and follow the same principle, although they are denoted with different symbols:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1zFF-C9S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h8bo4ci3bns898d3gejs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1zFF-C9S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h8bo4ci3bns898d3gejs.png" alt="Image description" width="725" height="112"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When tuning the derivative gain, one should remember that it amplifies noise. Novice engineers usually forget that a mathematical model does not contain noise, unlike a real device. While tuning this gain, engineers should find a compromise between the quality of the transient response and noise sensitivity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Forms of PID Controller
&lt;/h2&gt;

&lt;p&gt;These are not the only variations here. There are different forms of PID controller representations, which cause confusion, too. When reading an article about how to tune PID gains, pay close attention to the form of the PID equation. Here are the three most popular forms:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--scwdSVjd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cfe4vaojbimqxxbr77le.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--scwdSVjd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cfe4vaojbimqxxbr77le.png" alt="Image description" width="725" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pay attention to the 1&lt;sup&gt;st&lt;/sup&gt; and 3&lt;sup&gt;rd&lt;/sup&gt; forms. Let’s see which one is easier to tune. We will use the PI modification for this experiment. We will not use the D term because its behavior in different controller modifications is the same. The 1&lt;sup&gt;st&lt;/sup&gt; equation is referred to as the parallel form and is often used in the academic environment, while the 3&lt;sup&gt;rd&lt;/sup&gt; equation is referred to as the series form and is often used by engineers.&lt;/p&gt;

&lt;p&gt;Let us plot the diagrams of the direct transient response performance indicators: settling time and overshoot value defined by the gains of the PI controller. In control theory, the Laplace transform is often used to mathematically describe a system. Let’s use a second order as a mathematical model:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WoWs9gMj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nsk05i95q36k76aspgbz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WoWs9gMj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nsk05i95q36k76aspgbz.png" alt="Image description" width="725" height="112"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This model can describe motor speed (at startup). A similar model would describe the temperature in a chemical reactor.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GJ8Ofnz2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mwpxf6t8ndubfewe50bo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GJ8Ofnz2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mwpxf6t8ndubfewe50bo.png" alt="A graph showing step response" width="725" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, we connect the PID controller to the plant and close the negative feedback loop.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8iD6NiWc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yudx4a1o6x84ub1rhwcx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8iD6NiWc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yudx4a1o6x84ub1rhwcx.png" alt="Scheme of a standard negative feedback loop that uses a parallel PID controller" width="725" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Standard negative feedback loop with PID control&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How PID Gains Affect the Transient Response
&lt;/h2&gt;

&lt;p&gt;Let’s take a look at the series of surfaces formed by one of the transient response characteristics in function of the integral and proportional gain values. The gain values are indicated in relative values. The proportional gain axis has values from 0 to 40. The integral gain axis has values from 0 to 80. Let us first consider the parallel form and the settling time.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_lSuEgYf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/snj1f5ictwrpjw2ys68c.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_lSuEgYf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/snj1f5ictwrpjw2ys68c.gif" alt="Surface graph showing overshoot in the series form of PID controller." width="725" height="577"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Overshoot surface in the series form of PID controller&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Now, let’s take a look at the behavior of the series form (3&lt;sup&gt;rd&lt;/sup&gt;):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RlzjBjIM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1tyc8lfpnwtcsz5opco8.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RlzjBjIM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1tyc8lfpnwtcsz5opco8.gif" alt="Image description" width="725" height="573"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Settling time surfaces in the series form of a PI controller&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Engineers usually strive to minimize settling time. In other words, the lowest point on the surface corresponds to the minimal settling time of the transient response. The graphs show that the surface of the series form is less steep. It means that tuning the gains becomes more comfortable and smooth, minimizing the chances to miss the most optimal values. The minimum in the series form is more explicit, and the minimum values are parallel to the axis. It makes the tuning process easier as engineers need to adjust only one gain. &lt;/p&gt;

&lt;p&gt;On top of that, in the series form, the deviation of plant parameters from the mathematical model will impact the system dynamics less compared to the parallel form. That is why this form is more popular in practical &lt;a href="https://www.integrasources.com/services/electronic-design-services/"&gt;electronics development&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Now, let’s see how PID controller gains affect the overshoot. Similar to the previous case, the surfaces represent the overshoot value in function of the gains:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cbwRSWvr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/33vfrpdpkiyrlv4hvyv2.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cbwRSWvr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/33vfrpdpkiyrlv4hvyv2.gif" alt="Image description" width="725" height="554"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Overshoot in the parallel forms of PID controller&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;We shall plot another graph for the series form:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WDvhIgvX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/si8gvo6e0xjsfk7ntgsk.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WDvhIgvX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/si8gvo6e0xjsfk7ntgsk.gif" alt="Surface graph showing overshoot in the series form of PID controller." width="725" height="579"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Overshoot surface in the series form of PID controller&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The results are similar, and both surfaces are sloping. However, in the series form, the surface bending is parallel to one of the axes. It makes tuning the controller easier as engineers need to adjust only one gain to achieve the required characteristic in the series form instead of two (required in the parallel form).&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion 
&lt;/h2&gt;

&lt;p&gt;Tuning PID gains is not a simple task for a novice engineer since it requires experience with control loops. The fact that devices use different forms of PID controller representations makes it even more difficult. Tuning a control loop by adjusting gains is a common method in engineering practice. Engineers don’t always have enough time or resources to identify a mathematical model of a plant for subsequent gain calculation. Instead, they typically tune PID controllers with test inputs by changing the set point and watching the system response. Then, they adjust the gain values and repeat the test input. The process goes on until a satisfactory result is achieved. &lt;/p&gt;

&lt;p&gt;As you can see from the surfaces of the settling time and overshoot as functions of the gains, one needs to adjust two gains in the parallel form and only one in the series form to reach the same value. On top of that, the minimum values in the series form are more explicit. These factors make it easier to tune a control loop in the field with the help of test inputs. That’s why the series form of the PID controller is used more commonly for embedded systems. &lt;/p&gt;

&lt;p&gt;But if you have a mathematical model that describes the plant well enough, then the gains can be calculated by one of many methods; for instance, by the Ziegler–Nichols method. In this case, the form of the PID controller makes no difference.&lt;/p&gt;

&lt;p&gt;Our company has experienced engineers well familiar with PID controllers. If your business needs automated control systems, feel free to &lt;a href="https://www.integrasources.com/contact-us/"&gt;contact our team&lt;/a&gt; and discuss your project.&lt;/p&gt;

</description>
      <category>mathematics</category>
      <category>formulas</category>
      <category>pid</category>
      <category>science</category>
    </item>
    <item>
      <title>What Are PID Controllers and How Do They Work?</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Thu, 04 May 2023 11:12:53 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/what-are-pid-controllers-and-how-do-they-work-57bp</link>
      <guid>https://dev.to/integrasourcesltd/what-are-pid-controllers-and-how-do-they-work-57bp</guid>
      <description>&lt;p&gt;PID controllers are mechanisms used in control loops for shaping control signals to achieve the required accuracy and quality of transient response. They compute the signal as the sum of three control terms: proportional, integral, and derivative.&lt;/p&gt;

&lt;p&gt;PID controllers can be physical mechanisms or algorithms implemented on microcontrollers. They can be applied to almost any type of process. That’s why they are widely used in electronics design and find applications in various industries as parts of control systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Working Principle
&lt;/h2&gt;

&lt;p&gt;In a control loop, the process variable (PV) is measured with a sensor that sends the signal back to the controller. PV can be anything: speed, pressure, angle, level, temperature, etc. The controller receives a set point (SP) from the outside. It is the value which the system must achieve.&lt;/p&gt;

&lt;p&gt;The controller compares the PV and SP, computes a control signal based on the difference between them, and transmits it to the actuation device. The device drives the plant to the desired process value (set point).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ghWEfgL3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/egfpdfv30c0lkokebufn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ghWEfgL3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/egfpdfv30c0lkokebufn.png" alt="A scheme showing the structure of a closed loop control system with a PID controller." width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How the control signal is Calculated
&lt;/h2&gt;

&lt;p&gt;To compute the control signal, the PID controller sums the proportional, integral, and derivative terms, with each multiplied by a corresponding gain. The gains increase or decrease the weight of the term in the formula and are used for tuning PID controllers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4uH9LwyV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uf5ifwlarvetjitsv0o7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4uH9LwyV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uf5ifwlarvetjitsv0o7.png" alt="Image description" width="800" height="243"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The proportional term&lt;/strong&gt; is the difference between the set point (SP) and the measured process variable (PV).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wjSPy0zi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/85ivjip4yglzbledb26s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wjSPy0zi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/85ivjip4yglzbledb26s.png" alt="Image description" width="800" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The higher it is, the higher the value of the manipulated variable and the faster the system will drive the process variable to the desired value. In the heating process shown below, the manipulated variable drops as the measured process variable (temperature) rises.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--COkLzlcS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eecwhgpq4s0ko2dudr3m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--COkLzlcS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eecwhgpq4s0ko2dudr3m.png" alt="A plot showing the work of a P-only controller in a temperature control system. The I and D terms are off." width="800" height="657"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But in some systems, the difference between the SP and PV cannot be completely eliminated, which results in steady state error. That’s when the I component is required.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The integral term&lt;/strong&gt; is proportional to the time integral of the error value.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qvFe1dzv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/501wvu75nx0kndotn3e2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qvFe1dzv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/501wvu75nx0kndotn3e2.png" alt="Image description" width="800" height="100"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;While the P component takes into account only the current error value, the I component considers the previous errors. It eliminates the steady state error, but a pure I controller is very slow and makes the PV oscillate.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--M_uA7bpY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kc2wp773uuq855qnu6s9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--M_uA7bpY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kc2wp773uuq855qnu6s9.png" alt="A plot showing the work of a pure I controller. The P and D terms are off." width="800" height="657"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That’s why engineers use PI controllers much more often, as this modification of a PID controller results in an almost perfect transient response.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fHvLY9uj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mhczzai5r1nzp3y9no79.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fHvLY9uj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mhczzai5r1nzp3y9no79.png" alt="Two graphs showing the work of a P controller, that causes a steady-state error, and a PI controller, that eliminates the error." width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The derivative term&lt;/strong&gt; uses the difference between the current and previous error values divided by the time between measurements (dt).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XFrUAVQU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4re6zz0e781scq4qel9s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XFrUAVQU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4re6zz0e781scq4qel9s.png" alt="Image description" width="800" height="99"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thus, the D component takes into account future error values. It compensates for sharp fluctuations in the system, prevents it from strong overshoot, and decreases oscillations. This is how it affects process response compared to the work of a PI controller.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wYfi_5CV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q6zgja5q7o3950cnx7fu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wYfi_5CV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q6zgja5q7o3950cnx7fu.png" alt="Two plots showing the work of a PID controller with and without the D term." width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Applications of PID Controllers
&lt;/h2&gt;

&lt;p&gt;Universal PID controllers can quickly drive the process variable into an acceptable range, keep this value at the desired level, and respond to disturbances quickly. In some cases, applying a P-only controller or a PI controller is enough. But when you need better stability or tracking, which requires eliminating undesirable overshoot, the use of a PID controller is a better option.&lt;/p&gt;

&lt;p&gt;These features make PID controllers good for a variety of applications.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Manufacturing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The algorithm allows for regulating various parameters in manufacturing equipment such as pressure, flow rate, voltage, etc. The use of PID controllers for temperature control is especially important in the metallurgical industry. Heat treatment of metals often requires high precision. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Chemical and pharmaceutical industries&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here, the mechanism allows you to regulate pressure, temperature, PH, and humidity in different chemical processes. It is also used to control the flow rate of fluids to achieve the desired concentration of chemicals.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Autopilot&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Any self-driving vehicle from a car to a plane can’t move with perfect precision. Its trajectory is affected by the environment, so the vehicle needs corrections. This need explains the use of PID controllers in the aircraft and automobile industries. The cruise control system of a car is a good example of basic PID control. The mechanism also finds applications in hoverboards, quadcopters, as well as plane and drone autopilots. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Robotics&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The use of PID controllers in robotics development allows for achieving high accuracy of movement. Depending on the application, it can be sufficient to apply a P-only or a PI modification. Using a PID controller for DC motor control is another frequent application.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Power conversion&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The PID algorithm can be incorporated into power converters to make energy consumption more efficient by regulating the output voltage. That’s why it is used both in consumer-grade solutions and industrial power electronics development.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Photovoltaics&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The power output of solar panels depends on the weather. Tracking the highest power point of a PV cell allows for maintaining stable current and voltage. PID controllers reduce the response time of the system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Advantages of PID Controllers
&lt;/h2&gt;

&lt;p&gt;The PID algorithm is universal. It suits almost any kind of process as long as the desired effect can be achieved by forcing the process variable to match the desired value sooner or later. Here are some of the key advantages of this control technique:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The PID technique provides higher accuracy than simpler on/off controllers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The algorithm is more energy efficient.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It isn’t heavy on hardware, so devices with PID controllers are mostly cheap.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The algorithm can be implemented as analog electronics, digital electronics, and mechanical solutions. Today, engineers mostly use digital PID controllers, but there are also pneumatic, hydraulic, and mechanical PID controllers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The P, I, and D components can be tuned intuitively, by trial and error. Even if tuning the PID controller in a control system does require a specialist, one session should last for years.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;More advanced controllers will probably require stopping the process for re-tuning. But a universal PID controller can often be re-tuned while the process is still running, which is often more convenient.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Unlike simpler solutions, the PID algorithm can substantially extend the life of an actuation device.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;While advanced controllers are more efficient, using them may not be worth the expense and effort.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Unlike model-based controllers, the PID algorithm responds to unmeasured disturbances better due to having proportional and derivative actions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The PID algorithm has been in use for over 70 years, so engineers have found workarounds for many of the existing problems.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Modifications of PID Controllers
&lt;/h2&gt;

&lt;p&gt;PID controllers use proportional, integral, and derivative components to regulate a process. By setting a gain to zero, one eliminates the term from the equation. Such types of PID controllers are called PID modifications. Engineers generally use the following modifications:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--QT5RogsA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0qbavsog1da0s31yj98n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QT5RogsA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0qbavsog1da0s31yj98n.png" alt="A table with the most popular modifications of the PID controller." width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;proportional controller&lt;/strong&gt; reduces the rise time (time required for the process variable to reach the set point) and speeds up the response.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;derivative controller&lt;/strong&gt; minimizes the overshoot and oscillations in the output of the system.&lt;/p&gt;

&lt;p&gt;An &lt;strong&gt;integral controller&lt;/strong&gt; reduces the time-invariant error and lags the output phase.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;PI controller&lt;/strong&gt; allows for reducing the rise time and eliminating the steady-state error.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;PD controller&lt;/strong&gt; reduces the rise time, overshoot, and oscillations in the plant.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Compared to simpler solutions, the PID algorithm is more accurate. It can keep a process variable almost perfectly at the required level. It is less efficient than fuzzy logic controllers and optimal controllers. However, PID controllers are cheaper and easier to implement. This and their ability to control almost any process make them the most popular solutions for a huge number of applications.&lt;/p&gt;

&lt;p&gt;If you wish to learn more about PID controllers, their alternatives, and the peculiarities of real-life implementation, &lt;a href="https://www.integrasources.com/blog/basics-of-pid-controllers-design-applications/"&gt;visit our blog here&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>pid</category>
      <category>controllers</category>
      <category>electronics</category>
    </item>
    <item>
      <title>Consumer vs Industrial Hardware Development: Key Differences</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Mon, 06 Feb 2023 09:01:36 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/consumer-vs-industrial-hardware-development-key-differences-2hnl</link>
      <guid>https://dev.to/integrasourcesltd/consumer-vs-industrial-hardware-development-key-differences-2hnl</guid>
      <description>&lt;p&gt;The term “industrial electronics” refers to any electrical equipment or system used for manufacturing goods or participating in this process indirectly. Such electronics include but are not limited to measurement, monitoring, and control systems, battery management systems, industrial automation equipment, motor drives, etc.&lt;/p&gt;

&lt;p&gt;Industrial hardware development follows the same basic principles as consumer or commercial systems design. However, industrial equipment performs very specific functions and works in harsher conditions. As a result, it requires a more deliberate design approach.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features of Industrial Hardware Development
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fti3m943uiut8hbax0gde.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fti3m943uiut8hbax0gde.png" alt="Infographic showing the distinctive features of industrial electronics as opposed to consumer devices." width="725" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reliability&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If industrial equipment fails, it can disrupt the work of the whole production line. Also, industrial equipment is expected to work for much longer without repair. This dictates the choice of better materials, higher-grade components for the PCBs, more durable coatings, etc. It also makes industrial hardware development more expensive. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;EMI and overvoltage protection&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When designing consumer electronics, engineers provide devices with a certain level of EMI protection. But technologies we use in everyday life rarely face high levels of noise. Unlike them, the power supply circuits in industrial hardware must be designed in such a way as to suppress strong electromagnetic noise. Electronics used for industrial applications must also have higher overload capacity. Hence the need for additional EMI and overvoltage protection, which adds to the board’s cost.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Environmental hazards&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Equipment used in manufacturing usually functions in harsh environmental conditions: vibration, physical shock, high temperatures, humidity, dust, chemicals, etc. To provide protection, engineers make boards thicker, use specific PCB geometries, install vibration dampers, coolers, and heaters to maintain a certain temperature, etc. Fluid-tight housings rated IP67 and higher can protect the board from water and humidity. Heavy components can be fixed on the board with screws to cope with vibration.  &lt;/p&gt;

&lt;p&gt;Another option is to protect the PCB with conformal coating or encapsulation resin. Both of them are organic polymers that provide electrical insulation and offer some thermal and chemical resistance. However, their protection levels differ.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Thermal management&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Industrial equipment must function as long as possible without repair or replacement. Therefore, it must be heat-resistant: the higher the temperature, the faster electronic components degrade. Engineers use industrial-grade components that can withstand a wider range of temperatures. If such components are unavailable or not efficient enough, one should also use elaborate cooling systems consisting of large heat sinks, heat pipes, fans, thermal gap fillers, metal casing, and other means. Naturally, it makes devices more complicated and expensive but enhances their life span.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fghfbn9nf8rxp1sk2pn3g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fghfbn9nf8rxp1sk2pn3g.png" alt="A scheme showing different classes of electronic components and the temperatures they can withstand." width="725" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sensors and controllers&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sensors and outputs in industrial solutions must be more reliable than their consumer-grade alternatives. Otherwise, the CPU may send the wrong command making the device do something it is not supposed to. This can lead to serious malfunctions, failures, and ultimately stoppage in production.&lt;/p&gt;

&lt;h2&gt;
  
  
  Commonly Used Industrial Solutions
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F74ycht4mh5upv0zy4tw9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F74ycht4mh5upv0zy4tw9.png" alt="Industrial hardware development: electronics solutions often used in the manufacturing industry." width="725" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With the wide use of robotics in industrial automation, the need for systems based on artificial intelligence cannot be underestimated. Computer vision and optical scanners are used in quality control systems, counting systems on production lines, as well as for automated grading and sorting. AI is an integral part of systems capable of damage recognition and assessment, automated guided vehicles (AGV) systems, etc. Voice recognition can be used in search systems, voice-controlled authentication, and navigation in vehicles. Many complex predictive maintenance and failure modeling systems use AI and machine learning. &lt;/p&gt;

&lt;p&gt;The use of the Internet of Things for manufacturing simplifies the work of the personnel making it easier to gather information from different points around the plant. It is not surprising that the global industrial IoT market was &lt;a href="https://www.statista.com/statistics/611004/global-industrial-internet-of-things-market-size/" rel="noopener noreferrer"&gt;estimated at $263 billion in 2021&lt;/a&gt;. Industrial IoT solutions allow for uniting various sensors and/or beacons into a single network. IoT is used in remote equipment and asset monitoring systems, asset, fleet, and vehicle tracking solutions, on-field workforce management, predictive maintenance, and data security. &lt;/p&gt;

&lt;p&gt;Augmented and virtual reality technologies can provide immersive employee training. Cloud computing allows for storing and processing large amounts of data from sensors and equipment. Various power electronics solutions including battery management and battery energy storage systems can make energy consumption more efficient.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Information for Industrial Hardware Development
&lt;/h2&gt;

&lt;p&gt;When ordering custom hardware development, it is crucial to provide the developers with all the information about the future device or system.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F573gsa92qgyr79egqcd0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F573gsa92qgyr79egqcd0.png" alt="The list of requirements needed for successful and swift industrial hardware development." width="725" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Functional and other requirements&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These requirements describe the functions of the future device. It is also important to inform the team about the size, weight, power consumption, and similar characteristics if they are important.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Operating conditions&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Industrial solutions always operate in non-standard conditions, so it is crucial to inform the team about them. At the very least, the developers must know about the temperatures, humidity, and vibration levels the device will face. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Industry-specific requirements&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Certain requirements may come from industry-specific standards and regulations. For example, devices used in the oil and gas industry must comply with fire safety requirements. For other industries, the team may need to reduce the electromagnetic noise coming from the hardware, etc. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Testing and certification requirements&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Any industrial hardware must comply with various certification standards and pass corresponding tests. It is a good practice to consult a certification body to learn about these requirements before ordering custom electronics development. This way, customers can provide the team with a list of specifications and parameters the future device must correspond to.&lt;/p&gt;

&lt;h2&gt;
  
  
  Industrial Electronics Certification
&lt;/h2&gt;

&lt;p&gt;When designing new equipment, it is important to understand what certifications and testing procedures the device will have to pass. Here are some common certifications and standards industrial electronics may have to comply with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;FCC&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CE Marking&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RoHS 2 Directive&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ASTA&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ANSI/CAN/UL 9540&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;UL&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;IECEx&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;NFPA 70 ®&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ETL Mark&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are many more standards and certifications in each particular country and/or industry. &lt;/p&gt;

&lt;p&gt;Engineers must take into account all these and other factors during industrial hardware development. Since such equipment requires more durable components and a more considered design approach, creating industrial-grade systems is often more expensive compared to consumer electronics design. Therefore, manufacturers need to find experienced teams to do the job.&lt;/p&gt;

&lt;p&gt;For more information about industrial hardware development and practical case studies, &lt;a href="https://www.integrasources.com/blog/hardware-development-industrial-solutions/" rel="noopener noreferrer"&gt;visit our blog here&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>codenewbie</category>
      <category>career</category>
      <category>entrepreneurial</category>
      <category>networking</category>
    </item>
    <item>
      <title>IoT Development: Technologies, Trends of 2023, and Market Survey</title>
      <dc:creator>Andrey Solovev</dc:creator>
      <pubDate>Wed, 25 Jan 2023 12:43:17 +0000</pubDate>
      <link>https://dev.to/integrasourcesltd/iot-development-technologies-trends-of-2023-and-market-survey-kpo</link>
      <guid>https://dev.to/integrasourcesltd/iot-development-technologies-trends-of-2023-and-market-survey-kpo</guid>
      <description>&lt;p&gt;The Internet of Things (IoT) is a variety of devices equipped with sensors, computing capabilities, and other technologies that communicate with other gadgets and equipment. &lt;/p&gt;

&lt;p&gt;The number of IoT solutions worldwide promises to triple in the ten years from 2020 to 2030 and exceed 29 million units.&lt;/p&gt;

&lt;p&gt;IoT devices are used everywhere. While the global installed base of non-IoT connected devices is slightly increasing, the number of IoT devices has been booming in recent years.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4j98qm1vtv3f2n9jf7oa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4j98qm1vtv3f2n9jf7oa.png" alt="Image description" width="725" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;IoT and non-IoT active device connections worldwide from 2010 to 2025&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Various technologies form an IoT stack:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Hardware&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;System software&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Wireless technologies and communication protocols&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cloud platforms&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Software applications&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filf8jzwyo7tcv0ma3utb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filf8jzwyo7tcv0ma3utb.png" alt="Image description" width="725" height="864"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;IoT stack&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Connected devices of different sizes, complexity, and purposes make our lives easier and businesses more efficient.&lt;/p&gt;

&lt;h2&gt;
  
  
  Types of Connected Devices
&lt;/h2&gt;

&lt;p&gt;IoT-connected devices can be divided into consumer and industrial groups based on the scope of use.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Consumer IoT&lt;/strong&gt; solutions are designed for consumers. These are smartphones, smart watches, trackers, other wearables, smart assistants, and household appliances.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F73c50206xhzckvw4cqi6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F73c50206xhzckvw4cqi6.png" alt="Image description" width="725" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Consumer Internet of Things&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Consumer IoT devices are the most popular.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.forbes.com/sites/forbestechcouncil/2022/03/17/12-iot-devices-already-having-a-big-impact-in-consumer-and-business-markets/?sh=4e04eb9e6417" rel="noopener noreferrer"&gt;Forbes&lt;/a&gt; points out that the most sought-after consumer IoT devices are smartphones, smart watches, remote patient monitoring devices, smart TVs, voice assistants, hearables, home control devices, and connected cameras.&lt;/p&gt;

&lt;p&gt;Shipments of wearable devices, for example, grew 18.5 times from 2014 to 2021.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxi3j5bllqo6np0okwfya.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxi3j5bllqo6np0okwfya.png" alt="Image description" width="725" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Wearables unit shipments worldwide from 2014 to 2021&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Wireless hearables alone sold 310 million units worldwide in 2021.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;The Industrial Internet of Things (IIoT)&lt;/strong&gt; is represented by numerous devices that help improve the efficiency of industrial systems in mining, manufacturing, medical, agricultural, automotive, logistics, and many other fields.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ylnezhpu2g7c6og729k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ylnezhpu2g7c6og729k.png" alt="Image description" width="725" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Industrial Internet of Things&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;IIoT is inferior to consumer IoT in quantity, but surpasses it in cost.&lt;/p&gt;

&lt;p&gt;When developing IIoT devices, engineers expect a long lifespan, as the connected system must fit into a specific manufacturing process. Any breakdown can lead to a standstill.&lt;/p&gt;

&lt;p&gt;An extended service life implies high requirements for the reliability of software, parts, and assembly, and hence an increase in the device's cost.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faia3a67me7td16hb2qlp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faia3a67me7td16hb2qlp.png" alt="Image description" width="725" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Distribution of IoT spending worldwide in 2021&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Some solutions are difficult to attribute to one market segment since they can be used in different areas.&lt;/p&gt;

&lt;p&gt;IoT devices use various wireless technologies to communicate.&lt;/p&gt;

&lt;p&gt;IoT solutions can be divided into &lt;strong&gt;short-range IoT&lt;/strong&gt; and &lt;strong&gt;wide-area IoT&lt;/strong&gt; based on wireless technologies used. A lot of devices combine both technologies.&lt;/p&gt;

&lt;p&gt;Short-range wireless technologies include Bluetooth, Wi-Fi, Bluetooth Low-Energy (BLE), Zigbee, etc. &lt;/p&gt;

&lt;p&gt;Short-range technologies are expected to dominate the number of IoT connections in the coming years compared to other communication technologies.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F31ac8hawyi9c1zdcya8f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F31ac8hawyi9c1zdcya8f.png" alt="Image description" width="725" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Number of wide-area and short-range IoT devices worldwide from 2014 to 2026&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.statista.com/statistics/1016276/wide-area-and-short-range-iot-device-installed-base-worldwide/" rel="noopener noreferrer"&gt;Statista&lt;/a&gt; says that the number of short-range IoT objects worldwide is more than 80% of the total number of devices.&lt;/p&gt;

&lt;p&gt;Wide-area technology can be cellular or non-cellular.&lt;/p&gt;

&lt;p&gt;Non-cellular LoRaWAN technology is noted for low power consumption and inexpensive chipsets. A LoRaWAN-based gateway covers up to 30 kilometers.&lt;/p&gt;

&lt;p&gt;Manufacturers often combine technologies in one IoT system to get maximum benefit.&lt;/p&gt;

&lt;p&gt;For example, a custom agricultural IoT supports different wireless technologies.&lt;/p&gt;

&lt;p&gt;IoT devices with sensors installed on hay balers record the number of collected bales and provide geolocation data.&lt;/p&gt;

&lt;p&gt;A cross-platform Qt application uses BLE to receive data. It displays the GPS coordinates of haystacks and running machinery on a map and shows yield calculations.&lt;/p&gt;

&lt;p&gt;The sensors in the warehouse transmit bale temperature and humidity data via LoRaWAN to the AWS server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw53qa7dhp3ryb2elw1bn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw53qa7dhp3ryb2elw1bn.png" alt="Image description" width="725" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A scheme for obtaining sensor data&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Sensors inside the dryer chambers transmit data to the farmer's mobile application using BLE and cellular connections. &lt;/p&gt;

&lt;p&gt;The IoT system helps farmers reduce crop losses and enhance production efficiency, freeing up time and resources.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why IoT
&lt;/h2&gt;

&lt;p&gt;IoT is the third most popular IT trend that North American and European companies have implemented or plan to implement by 2023.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft3q3b27sqmy3pnlaecj6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft3q3b27sqmy3pnlaecj6.png" alt="Image description" width="725" height="690"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Adoption of IT trends, current and planned, in organizations in North America and Europe for 2023&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Where did the trend for connected devices come from? What benefits can IoT bring to your life and your business?&lt;/p&gt;

&lt;p&gt;Being one of the leaders in IoT business application development, Microsoft says &lt;a href="https://www.microsoftpartnercommunity.com/t5/Energy/Whitepaper-IoT-Signals-Boost-Wave-Energy-Spotlight/m-p/49038?attachment-id=4254" rel="noopener noreferrer"&gt;in its report&lt;/a&gt; that more than half of the companies apply IoT to optimize workflows and increase productivity. Implemented IoT systems enable manufacturers to complete operations faster, with fewer errors, and to keep equipment operational for longer periods.&lt;/p&gt;

&lt;p&gt;Companies use IoT to improve security and protection, hence supply chain management, quality assurance, and asset tracking.&lt;/p&gt;

&lt;p&gt;IoT devices help monitor health, exercise more efficiently, remotely control smart home appliances, and monitor security in everyday life.&lt;/p&gt;

&lt;p&gt;Businesses benefit financially from using IoT solutions.&lt;/p&gt;

&lt;p&gt;The revenue of the Intel Internet of Things Group in the fourth quarter of 2021 reached its highest quarterly figure of $1.1 billion, not only catching up but also significantly improving its pre-COVID financial performance.&lt;/p&gt;

&lt;p&gt;The leaders among IoT companies in the world are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Intel,&lt;/em&gt; with IoT-optimized Intel processors;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Microsoft,&lt;/em&gt; with Azure platform, Microsoft Streaming Analytics, and Microsoft Band;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;IBM,&lt;/em&gt; with IoT-optimized cloud services such as the IBM Watson IoT Platform;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Apple,&lt;/em&gt; with its intelligent device technology ecosystem;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Samsung,&lt;/em&gt; with outstanding wearable technology;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Cisco,&lt;/em&gt; with network equipment development and hosting the World IoT Forum;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Google,&lt;/em&gt; with Google Glass and self-driving cars;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;SAP,&lt;/em&gt; with HANA database, which is claimed to simplify business IoT applications.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The world's IoT leaders' research groups, as well as international summits, meetings, and symposiums bring out IoT trends for the coming years.&lt;/p&gt;

&lt;p&gt;The 8th IEEE World Internet of Things Forum 2022 (WF-IoT 2022) took place in Yokohama, Japan, in October 2022.&lt;/p&gt;

&lt;p&gt;The leading IoT event of 2023 will be the IoT Solutions World Congress, which will be held at the end of January in Barcelona.&lt;/p&gt;

&lt;p&gt;The AI IoT World Congress 2023, occurring in June 2023 in the USA, will bring together scientists and students to discuss artificial intelligence and IoT ideas and news.&lt;/p&gt;

&lt;h2&gt;
  
  
  IoT Market Trends of 2023
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ds9dmjoze2zrxf0j0bq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ds9dmjoze2zrxf0j0bq.png" alt="Image description" width="725" height="670"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;2023 IoT trends&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Artificial Intelligence in data analytics&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;IoT machine learning provides complex algorithms for analyzing large amounts of data, complementing or completely replacing time-consuming processes. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Digital twins&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Digital copies simulate physical objects or systems. Data received from sensors is then transferred to the processing system and applied to the copy. Digital twins operate in a two-way data flow from sensors to the system processor and back to the original object.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Enterprise metaverse&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The metaverse is a virtual structure where companies can offer their digital tools and services. IoT solutions allow the metaverse to interact with the physical world.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;IoT devices are a favorite target for cyberattacks.&lt;/p&gt;

&lt;p&gt;Developers put a lot of effort into data privacy and security using complex approaches or blockchain technologies.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Smart city&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;City governments are using IoT solutions to enhance city infrastructure and solve numerous traffic, congestion, and security issues, improving the quality of life in the city.&lt;/p&gt;

&lt;p&gt;By 2025, global smart city technology, product, and service revenues are projected to exceed US$241 million, up 61% from 2022.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8le28ppwp4mo590edrnp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8le28ppwp4mo590edrnp.png" alt="Image description" width="725" height="415"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Projected revenue generated by companies in the global smart city market up to 2025&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Smart home&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Smart homes are taking over the world. Connected systems allow users to adjust the lights and thermostat, as well as turn on voice assistance or video entertainment from their smartphones.&lt;/p&gt;

&lt;p&gt;Consumer spending on smart home products and services is predicted to rise to more than US$170 billion by 2025, with &lt;a href="https://www.statista.com/statistics/693303/smart-home-consumer-spending-worldwide/" rel="noopener noreferrer"&gt;the number of users exceeding 400 million&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intelligent manufacturing&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The growing demand for production automation is pushing industrial IoT development. The trend toward equipping manufacturing processes with connected systems will continue into 2023.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;IoT healthcare solutions&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Various trackers, smartwatches, and other smart devices help users monitor their health, and doctors promptly receive information about patients' health status.&lt;/p&gt;

&lt;p&gt;IoT solutions help diagnose and monitor patients in medical centers and at home.&lt;/p&gt;

&lt;p&gt;A device for detecting malignant skin diseases, which is attached to a smartphone, uses image processing and recognition algorithms and allows self-diagnosis of skin neoplasms with an accuracy of up to 80% in the shortest possible time.&lt;/p&gt;

&lt;p&gt;Healthcare IoT gadgets help identify diseases in their early stages and improve the prognosis of patients.&lt;/p&gt;

&lt;p&gt;The IoT market will continue to grow in the consumer and industrial sectors. Both simple, low-cost devices and complex, intelligent IoT solutions will be in demand in 2023.&lt;/p&gt;

&lt;p&gt;Would you like to learn about crucial points in IoT development that should not be neglected and see more examples of helpful connected systems? Check out &lt;a href="https://www.integrasources.com/blog/iot-product-development/" rel="noopener noreferrer"&gt;the full article on our blog&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>career</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
