Why and how to choose System on Module or Computer on Module?


"System on Module (SoM) is widely used in embedded product development. Why computing module will gain more popularity and how design teams can find the right fit."

Robotics and Industrial automation are transforming the manufacturing industry by creating smart machines that are more efficient and productive. Manufacturers around the globe are implementing smart factory or Industry 4.0 systems to improve production output and reduce costs.

This surge in requirement of smart machines led to higher demand for embedded systems that have higher computing power with plug and play features, which created the demand for compact and powerful SoMs or CoMs. It allows for faster development and deployment of products in a cost-effective manner. SoM helps to launch the new product in the market sooner as compared to conventional methods. Moreover, using SoM enables the application of advanced technologies such as AI and ML to further improve productivity.


So, what is a SoM?
Going by the definition on Wikipedia, “System on Module (SoM) or Computer on Module (CoM) is a board-level circuit that integrates a system function in a single module. It may integrate digital and analog functions on a single board. A typical application is in embedded systems.” 

Image: Ultra-Compact size IMX6 SoM “45mm x 45mm”

To explain in simple terms “A SoM is a tiny computer that is planted on an embedded development board.” It consists of the common hardware and software for developing any embedded product. SoM contains the operating system, device drivers, and associated Board Support Packages. System developers can focus on application-specific features such as Hardware (Display, Interfaces, Peripherals) and Software (Application, UI) by using an off-the-shelf CoM and accelerate time-to-market.


Why SoM?
The microprocessor is a requirement of the complex industrial products with high speed, communication stacks, high-resolution graphics, third party applications, etc. In complex embedded system products, chip-based development from scratch takes a lot of time and effort. That may cause many errors and waste of money if the design fails.

Benefits of System on Module (SoM):

  • Rapid application development: the first and foremost advantage of using SoM is a shorter development cycle. The complex effort associated with designing a CPU subsystem is avoided. e.g. Power management, Memory interfacing, etc.
  • Faster time-to-market: a shorter development cycle leads to early product launch.
  • Reduce cost: Shorter development cycle also enables the design team to cut cost as the development cost and timeline of the carrier board significantly decreases. 
  • Scalability: The computing module offers plug and play feature where you can graduate to high computing power SoM when you need to run heavy applications or implement new technologies like Artificial intelligence or Machine learning into your application, without changing the design of the carrier board.    
  • Durable: SoMs are usually manufactured for a lifespan of a minimum of 10 years.
  • Minimize Risk: Using SoM reduces the risk in the development phase as the complexity of layer construction of the carrier board is significantly reduced.  


As SoM has many advantages, its important for design teams to consider seven factors while selecting the right SoM:

1. Performance/processing power: It is crucial to understand the need for the processing power of an embedded application. For IoT edge devices, mostly a small-scale SOM is good enough compared to an AI-based edge device where the application needs sufficient processing power to do the job. 

2. Power consumption: Power consumption and heat produced by the system must be taken into consideration while designing an embedded system. Power consumption in embedded designs can be one of the most important criteria. A system that is designed to be connected to a power source such as the mains electricity can typically ignore power consumption constraints but a mobile design (or one connected to an unreliable power source) may be wholly dependent on power management. 

3. Hardware constraints: The number of peripherals, and constraints associated with that, are also a deciding factor while choosing SOM. Hardware developers must understand the peripherals such as 4G, GPS, card reader, etc. are going to be there on the carrier board, according to which a SOM needs to be selected. 

4. Software compatibility: When it comes to the popular leaders in the processor market (Intel or ARM) comparing software availability and toolchains is difficult since both are heavily used. ARM-based devices have the advantage of running operating systems designed for mobiles such as Android and Linux. Intel-based devices have the advantage of running just about any operating system that can run on a standard desktop PC, including Windows and Linux.

5. OS focus- Android/Windows/Linux: Operating systems play a vital role in building smart devices. Building the SDKs and supporting several hardware variants are well dependent on how we are managing the BSP (board support package) to run the system. Available drivers for peripherals and bring ups of the modules are crucial factors in choosing the right fit operating system for the embedded system.

6. Durability: The design team should also consider the SoM’s lifetime as the manufacturer usually support a product to a certain timeline. Since the product is partially dependent on a particular SoM, its essential to include SoM in obsolescence management criteria.   

7. Cost: The budget for building the IoT or smart device is one of the most important factors for embedded design teams as it impacts the final cost of the product. It goes without saying that decision-makers should consider that cost of SoM should meet the budget while preparing the Bills of materials (BOM).


Whether you call it a System on Module or Computer on Module or Computing module, these compact and powerful devices are a great value addition to embedded development and design teams around the globe are optimizing the development process by applying it in their IoT and smart devices. TruCrux (a division of Trunexa) is specialized in building high performance, ultra-compact ARM-based computing modules.