Is OpenHarmony a Viable OS for Industrial Equipment? — Compared with Windows IoT and Embedded Linux

· Updated: · · OpenHarmony, Embedded, OS Selection, Equipment Embedded Software, Windows IoT, Linux, Manufacturing, Technical Consulting

Revision history (first version, published Jul 26, 2026)
First published
Cite this article(DOI (registered archive): 10.5281/zenodo.22170797)

The DOIs below refer to previously archived versions and may not match the current text. Use this page’s URL to reference the current text.

Go Komura (2026). Is OpenHarmony a Viable OS for Industrial Equipment? — Compared with Windows IoT and Embedded Linux. KomuraSoft LLC. https://comcomponent.com/en/blog/openharmony-embedded-os-selection/

DOI (registered archive)
10.5281/zenodo.22170797
DOI (last registered version)
10.5281/zenodo.22170798

Whether OpenHarmony belongs on the shortlist of operating systems for your equipment is decided by maintenance, SDKs and development staff before it is decided by feature count. You cannot put a version whose community maintenance ends in two years straight into a device that has to run for ten. If the SDK for the camera you need exists only for Windows, a configuration that uses that camera does not hold together either.

This article compares Windows IoT Enterprise LTSC, embedded Linux (Debian- or Yocto-based) and OpenHarmony for equipment manufacturers. It first puts the candidates on the same footing, then checks, in this order, whether the OS can support the product’s lifetime, whether existing assets can be moved onto it, and whether you can get as far as volume production and shipment. It then summarizes, in a decision table, the conditions under which you may adopt it and the conditions under which you should pass.

The equipment software we normally work on is for Windows, but this is not an article that recommends or dismisses OpenHarmony across the board. The judgment is not “it is a new technology” or “it comes from China”, but whether it fits the device’s timescale, procurement and staffing. For the differences between OpenHarmony, HarmonyOS and HarmonyOS NEXT themselves, see the previous article, “What Is OpenHarmony”.

The technical information and maintenance schedules compared here are as of July 2026. Support periods, supported boards and certification requirements change, so check primary sources and vendors for the version and the products you adopt immediately before you decide.

In the diagram a solid line marks a relation that always holds and a dashed line marks a conditional one (the conditions are given per relation on the detail page). The full list of relations (34 in total, with evidence and certainty) and the definitions of the main concepts are collected on the knowledge map detail page (in Japanese). Data: JSON-LD / Turtle

1. The Conclusion First: Keep the Conditions for Adoption Separate from the Reasons to Choose It

OpenHarmony’s strengths are that it reaches down to very small devices and that it handles collaboration between multiple devices through standard mechanisms. Against that, there are clear constraints around existing Windows assets, industrial vendor SDKs and Japanese-language primary information.123

Adoption requires the three conditions below. If any one of them cannot be met, give priority to Windows IoT Enterprise LTSC or commercially supported embedded Linux. Conversely, meeting all three does not by itself settle the decision to adopt OpenHarmony. Check both that OpenHarmony’s strengths match the product’s requirements and that you can develop and maintain that product.

What to check first Condition required for adoption Details
Is there maintenance that covers the device’s lifetime? Vendor maintenance from a commercial distribution, or an in-house capability to maintain a branch and handle CVEs Section 3
Can you use the peripheral devices and middleware? OpenHarmony SDKs are available, or you can build what is missing yourself Section 4
Can you keep investigating, developing and raising questions? Staff who can read technical documents in Chinese or English end to end Section 4.4
Separate the conditions for adoption from the benefits to the productSeparate the benefits that fit the product requirements from the conditions for realizing them - maintenance, SDKs and staffing - and decide by matching both.Device market and product requirementsReasons to choose OpenHarmonyMaintenance, SDK and staffing conditionsMatch both and decide

Figure 1: Keep the conditions for making it run separate from the reasons for choosing it.

Read According to Your Purpose

What you want to decide now Section to read
Understand how the three options differ Section 2. OS products versus development foundations, system types, and the overall comparison
Whether it can support a product life of around ten years Section 3. Who maintains it, the end date, the scope of fixes, and the branch you adopt
Whether it can run on your existing device configuration Sections 4 and 5. Investigate SDKs and the porting scope, and check board procurement conditions
Whether you can ship it as a product Section 6. Licenses, compatibility certification, and the ecosystem versus procurement policy
Just the go/no-go and the order of work Sections 7 and 8. Match the conditions in the decision table, then move on to validation and contracts

The overall comparison is in Section 2.3 and the situation-by-situation recommendations are in Section 7.2. Even for a use case the decision table recommends, the three conditions above cannot be skipped.

2. Put the Candidates on the Same Footing: You Cannot Compare by OS Name Alone

2.1. Where Windows IoT, Debian, Yocto and OpenHarmony Stand

The first thing to align is the difference between using a finished OS product and using a foundation for building an OS for your own product. Mixing the two up means overlooking the work your own company takes on in order to productize it.

Option What it actually is Kernel UI and application layer
Windows 11 IoT Enterprise LTSC Microsoft’s commercial OS product Windows NT Win32 / WinUI / WPF / WinForms, .NET
Embedded Linux (Debian-based) A distribution Linux Your choice (Qt, GTK, a Wayland compositor, and so on)
Embedded Linux (Yocto-based) A framework for building your own distribution Linux Your choice
OpenHarmony standard system An OS project (has to be turned into a distribution) Linux ArkUI, ArkTS, Ability
OpenHarmony small system Same as above LiteOS-A Standard graphics framework
OpenHarmony mini system Same as above LiteOS-M Lightweight graphics framework

Yocto is not a finished OS. It is a framework for combining recipes (definitions of build steps) to build a Linux distribution for your own product. LTSC (Long-Term Servicing Channel) is the Windows servicing model that ships no feature updates and provides security updates over a long period, and it suits uses such as equipment where you want the configuration frozen.

OpenHarmony is not a “buy it and install it” finished product like Windows IoT either. Its position is closer to Yocto: it is an option on the side where you use a foundation to build a configuration for your own product. Unlike Yocto, however, it comes with a UI framework and an application model as one package, so the system extends up into the higher layers as well.

Finished OS products and foundations for building a product configurationProcuring a commercial OS product and building a configuration for your own product from a project foundation involve different work.Runtime platform to put in the deviceProcure a commercial OS productChoose a development foundationBuild the configuration for the productDecide what you and the vendor own

Figure 2: Even within the same OS selection, procuring a finished product and assembling a configuration cover different scopes.

2.2. Read the Memory Floor with the System Type Aligned

OpenHarmony has three system types: mini, small and standard.1

System type Processor Minimum memory Target products
Mini system MCUs such as Arm Cortex-M and 32-bit RISC-V 128 KiB Connectivity modules, sensors, wearables
Small system Application processors such as Arm Cortex-A 1 MiB IP cameras, door viewers, routers, dashcams
Standard system Application processors such as Arm Cortex-A 128 MiB Devices with a screen that have a complete application framework

For equipment with an HMI, the comparison is mainly against the standard system; for sensor nodes and communication modules it is the mini system. The small system sits closer to camera products.

Against the mini system’s 128 KiB minimum, the minimum requirements for Windows 11 IoT Enterprise LTSC on special-purpose devices are 2 GB of memory and 16 GB of storage. Typical embedded Linux also assumes a processor with an MMU and tens of MB of RAM or more. That OpenHarmony can cover the MCU space within the same family is a major difference.14

That said, it does not mean that standard-system applications run in 128 KiB. The mini system uses LiteOS-M, the small system LiteOS-A and the standard system Linux, so both the kernel and the runtime environment differ. Do not assume “it is the same OpenHarmony, so the same app can be moved across”; choose from the system type the product needs.

Decide the runtime environment from the system typeDecide the system type the product needs, then check the kernel and the application runtime, and do not judge application compatibility from the memory floor alone.Functions the product needsDecide the system typeCheck the kernel and runtimeBuild apps that fit that environmentThe minimum memory figureNot a guarantee of app compatibility

Figure 3: The 128 KiB floor does not mean standard-system applications run as they are.

2.3. The Overall Comparison: Strengths and Constraints on the Same Axes

With the candidates aligned, here are six evaluation axes side by side. The symbols are a four-level scale: ◎ = fits as is / ○ = fits with conditions / △ = needs care / × = does not fit. This is a table that summarizes the explanations in each section, not a ranking that holds for every device.

Evaluation axis Windows IoT Enterprise LTSC Embedded Linux (Debian / Yocto) OpenHarmony Details
Maintenance window (is it enough for the device’s ten years?) ◎ Fixed ten years. The 2024 LTSC runs to October 20345 ○ Debian about five years, Yocto LTS four years. Extendable by commercial contract67 △ The community gives Release two years and LTS 3.5 years. Buying vendor maintenance is the premise8 Section 3
Resource floor (how small a device can it run on?) × Minimum 2 GB of memory and 16 GB of storage4 △ Assumes a processor with an MMU and RAM in the tens of MB ◎ The mini system runs from a 128 KiB MCU1 Section 2
Vendor SDKs (industrial cameras, motion, PLC communication) ◎ The first platform supported ○ Usable where they are supplied × Do not expect them in the first place Section 4
Language and UI stack (bringing existing Windows assets across) ◎ C#/.NET, Win32, COM and WPF run as they are × A rewrite. C/C++ measurement and control logic does port easily, though × A rewrite. ArkTS plus ArkUI, with HDF for drivers Section 4
Japanese information and domestic support ◎ Japanese documentation, and distributors and support desks in Japan ○ Plenty of technical information in Japanese × Official documentation is Chinese and English only3 Section 4
Multi-device collaboration (device discovery, data sync, app migration) △ Build it yourself △ Build it yourself ◎ DSoftBus, distributed data management and the distributed scheduler are standard2 Section 7

OpenHarmony gets a ◎ on two axes: the resource floor and multi-device collaboration. It gets a × on three: existing assets, SDKs and Japanese-language information. That does not make it a “bad OS”; it means you have to pick products whose conditions for adoption match it.

It is worth considering for products aimed at the Chinese market, for products whose central value is device discovery, data synchronization and app migration, for IoT devices with a screen that use ArkUI, and for product lines that want a single family covering everything from MCUs to rich devices. The concrete go/no-go can be checked against the decision table in Section 7.2

Apply the overall comparison table to the product requirementsDo not decide the OS from the ratings in the comparison table alone, apply them to the product's central value and constraints before deciding.Grasp strengths and constraints from the overall comparisonApply them to your own product requirementsMatch SDKs, maintenance and staffingMove on to the situation-based decision in Section 7

Figure 4: Do not count the rating symbols; apply them to your own product’s conditions.

3. Settle Maintenance: Check Who Does It, the End Date and the Scope of Fixes

3.1. First, Decide Who Takes On Maintenance for the Product

The point of comparing maintenance is not to rank OpenHarmony’s own quality. The point is that putting the community version straight into a product that runs for ten years and then leaving it alone does not work.

If you adopt it, you either buy vendor maintenance from a commercial distribution or maintain a branch in-house and take on CVE handling yourself. In industrial adoption, the actual procurement channel is the commercial layer, where vendors maintain their own forks and offer them for a fee. Huawei’s June 2026 briefing also states that OpenHarmony has released more than 100 commercial versions.9

So the question to ask is not “how many years is OpenHarmony supported?” but “which branch of that distribution do you maintain, until when, and under what SLA?” If maintenance cannot be pinned down, hold the adoption decision even when it runs technically.

Who bridges community maintenance and the product lifetimeDo not put the community version straight into a long-running product and leave it alone, either the vendor or your own company takes on the maintenance the product lifetime needs.Maintenance the product lifetime needsContract vendor maintenanceMaintain the branch and CVEs in-houseFix the fork, end date and SLASettle the premises for the adoption decision

Figure 5: Ask not about the number of years for the OS as a whole but about the fork you procure and its maintenance terms.

3.2. Look at Whether the End Date Covers the Device’s Service Period, Not the Total Number of Years

PCs and boards built into equipment are expected to keep running for the same roughly ten-year lifecycle as the equipment itself. Compare each OS’s maintenance on that timescale.

Option Support period Example Source
Windows 11 IoT Enterprise LTSC 2024 10 years Starts October 1, 2024, ends October 10, 2034 5
Windows 10 IoT Enterprise LTSC 2021 10 years Ends January 13, 2032 10
Debian (including LTS) About 5 years The LTS period for Debian 12 bookworm runs from June 11, 2026 to June 30, 2028 6
Yocto Project LTS 4 years 5.0 Scarthgap runs from April 2024 to April 2028, and 6.0 Wrynose from April 2026 to April 2030 7
OpenHarmony LTS branch 3.5 years (2 + 1.5) 3.0-LTS ran from September 30, 2021 to March 30, 2025 811
OpenHarmony Release branch 2 years (1 + 1) 4.1-Release ran from March 30, 2024 to March 30, 2026 811

This table is based on each vendor’s official information as of July 2026. Check not only the number of years but whether the time left until the end date in the table covers the device’s service period. Support periods and end dates get revised, so the primary sources to check immediately before an adoption decision are as follows.

Match the device service period against the OS maintenance end dateCheck not only the number of years of OS support but whether the end date of the version you adopt covers the device's service period.ShortEnoughPlanned end of device serviceCompare the end datesMaintenance end date of the version adoptedCan it support the service periodConsider a maintenance contract or another optionCheck the scope of fixes too

Figure 6: Compare that version’s end date with the device’s operating plan, not just the “ten-year support” label.

3.3. Read Proactive and Passive Maintenance Separately

An OpenHarmony Release branch gets one year of proactive maintenance plus one year of passive maintenance, and an LTS branch two years of proactive plus 1.5 years of passive. Do not judge from the totals alone.8

Maintenance stage What the community does What an equipment manufacturer should read into it
Proactive maintenance Releases tagged versions on a plan and fixes defects, security vulnerabilities and the like The period in which you can expect continuous fixes and tagged releases
Passive maintenance Does not plan or release tagged versions, and fixes only security vulnerabilities and defects rated critical or above The scope of fixes and the delivery method are limited, so it is no longer as thorough as proactive maintenance

Because of that difference, this article takes the view that the period you can rely on in practice should be counted as one year for Release and two years for LTS. The total number of years of community maintenance and the period in which you can expect thorough maintenance are two different things.8

How OpenHarmony maintenance stages changeProactive maintenance delivers planned tagged versions, passive maintenance limits the scope of fixes and the delivery method, and the branch finally reaches end of maintenance.Proactive maintenancePassive maintenanceEnd of maintenancePlanned tagged versions and fixesFixes for critical and higher vulnerabilities and defects

Figure 7: Within the same maintenance period, the same scope of fixes does not continue to the end.

3.4. Check What Is Written for the Branch You Adopt

As of July 2026, the reference point for this article, no LTS branch has been cut in recent years. The last LTS listed in the official maintenance schedule table is 3.0-LTS (September 2021); 3.1, 3.2, 4.0 and 4.1 are all Release.11

It is not that there was never an LTS. The release notes index still lists 1.1.0 LTS (April 2021) and its line, but they are all End of Life. The 3.0-LTS line is listed as well, and from 3.1 onward the type is Release.12

Furthermore, the maintenance schedule table at that same point in time has no entries for the 5.x or 6.x lines. Do not decide the maintenance period of a version that is not in the table from other versions. You have to work on the premise that the period is undetermined and confirm it for that version.

Windows 11 IoT Enterprise LTSC 2024 has a fixed lifecycle with a confirmed end date of October 10, 2034, Debian publishes its regular support and LTS periods, and the Yocto Project publishes four years of LTS support. With OpenHarmony, by contrast, you have to confirm individually “how far the fork you adopt will be maintained”.567

Do not infer maintenance for a version that is not listedCheck whether the version you adopt appears in the maintenance schedule, and when it does not, confirm it individually instead of applying another version's period.YesNoIdentify the version and branch you adoptIs it in the maintenance tableCheck that version's period and end dateTreat the period as undetermined and confirm individuallyHold the decision until maintenance is settled

Figure 8: Do not assume maintenance for an unlisted version from the LTS label or from another version’s number of years.

4. Find Out Whether You Can Migrate: SDKs, Applications, Drivers and Staff

4.1. Before Comparing Operating Systems, Inventory the SDKs You Depend On

Many SDKs and middleware for industrial cameras, motion controllers, PLC communication, image processing and the like are Windows-first, with a Linux build as a second option if you are lucky. OpenHarmony builds are not something you can expect from the outset.

That is why the first piece of work is this inventory.

List the peripheral devices and middleware the equipment needs, and check the OpenHarmony support status of each.

If a required SDK does not exist and you cannot build what is missing yourself, pass on OpenHarmony for that configuration. If you choose on the features in a comparison table and only then investigate SDKs, the configuration stops working later in the project. When we are consulted about equipment software, we start from building this list too.

Narrow the OS candidates from the SDKs you needList the peripheral devices and middleware the equipment needs, and where no OpenHarmony SDK exists, check whether you can build what is missing yourself.AvailableNot availableYesNoList peripherals and middlewareAre the required SDKs availableMove on to checking the porting scopeCan you build what is missingPass for this device configuration

Figure 9: If the SDK is missing and you cannot fill the gap, continuing the feature comparison will not make the device configuration work.

4.2. Windows Equipment Software Cannot Be Brought Over As Is

Lining up the differences between the development stacks shows the impact on existing assets.

Item Windows IoT Enterprise LTSC Embedded Linux OpenHarmony
Build system MSBuild / Visual Studio Make / CMake / BitBake (Yocto) GN + Ninja2
Main languages C#, C++, VB C, C++, Python, Rust ArkTS (a TypeScript extension), C, C++
UI framework WPF, WinForms, WinUI Qt, GTK, Flutter and so on ArkUI
Drivers WDM / WDF Linux kernel drivers HDF
IDE Visual Studio Your choice DevEco Device Tool (Windows plus Ubuntu) or the CLI13
Japanese documentation Available Plentiful None (Chinese and English only)3

Windows equipment software written with C#/.NET, Win32, COM or WPF/WinForms is effectively a rewrite on OpenHarmony. There is no corresponding runtime, so it gets rewritten on a different stack: ArkTS plus ArkUI for the UI and C/C++ underneath.

If making use of existing assets is the premise, moving to Windows IoT Enterprise LTSC is the realistic route. If you choose embedded Linux, parts such as the Windows UI still get rewritten, but C/C++ measurement and control logic ports easily, and it is worth considering if you restrict yourself to devices for which the required Linux SDKs are supplied.

Note that the OpenHarmony driver cell in the table saying HDF does not mean every existing Linux driver has to be rewritten. The difference between using a device through the ordinary Linux interfaces and using it from OpenHarmony’s framework is explained in Section 4.3 below.

Separate the migration scope for existing Windows assetsSeparate the route that keeps existing Windows software as it is from the route that rewrites the UI and runtime for another OS, and on Linux check SDK availability and how far C/C++ logic can be ported.Existing Windows equipment softwareKeep using the existing assets as they areRewrite for another OSConsider Windows IoT LTSCSeparate UI, runtime and SDKsOn Linux, consider porting C/C++ logic

Figure 10: When you change the OS, do not lump the UI and runtime, the measurement and control logic, and the SDKs together.

4.3. Separate the Route That Uses Linux Drivers from Adapting to HDF

OpenHarmony’s HDF (Hardware Driver Foundation) is a unified driver foundation that is platform-independent and kernel-independent and applies to all system types.2

The standard system’s kernel, on the other hand, is Linux. It is therefore entirely possible to build in an existing Linux kernel driver and use it through the ordinary Linux interfaces such as V4L2 or input devices.

Where you use the device from Work to estimate
From the ordinary Linux interfaces Consider a configuration that builds in and uses the existing Linux kernel driver
From OpenHarmony system services and frameworks via HDI Estimate the adaptation work on the OpenHarmony side

If a Linux BSP exists, there is no need to estimate “rewriting every driver in HDF”. First decide which devices have to be exposed to OpenHarmony’s framework, and put that scope into the effort estimate.

Also, even before you procure a board, you can start checking the structure and the boot flow in QEMU. That entry point, and the order of work once you adopt it, are summarized in Section 8.

Reusing Linux drivers and adapting to the frameworkWhen using existing Linux drivers on the standard system, separate the extra work for using them through the ordinary Linux interfaces from exposing them to the OpenHarmony framework via HDI.Linux driver on the standard systemOrdinary Linux interfacesUse via HDIConfiguration that builds in the existing driverAdapt to the OpenHarmony sideSystem services and frameworks

Figure 11: Rather than rewriting every driver, estimate the scope you have to expose to OpenHarmony.

4.4. Prepare the Development Environment, and Staff Who Can Read the Documentation

The entry points to device development are the GUI DevEco Device Tool and the CLI. The DevEco Device Tool setup is a combined one: code editing, debugging and flashing on Windows, compiling on Ubuntu. Source is fetched with the repo tool, and mirrors on gitcode.com, gitee.com and GitHub are documented.1314

The official documentation comes in two languages, Chinese and English; there is no Japanese version. Community discussion and the vendors of commercial distributions are also centered on China, and the number of desks where you can get first-line support in Japanese is limited. Having people who can read technical documents in Chinese or English end to end is not a supporting condition that matters once development has started; it is in practice a condition for adoption.3

Source acquisition and the device development environmentDevice development from source fetched with repo has two entry points, the CLI and DevEco Device Tool, and the latter combines editing, debugging and flashing on Windows with compilation on Ubuntu.Fetch the source with repoDevelop with the CLIDevEco Device ToolEdit, debug and flash on WindowsCompile on Ubuntu

Figure 12: On top of preparing the tools, you need a team that can keep reading technical documents in Chinese or English.

5. Confirm You Can Procure It: Supported Boards and Volume Production Conditions

5.1. The Supported Boards Include NXP and ST SoCs

The community list of supported development boards this article refers to has 22 entries. Here are the ones likely to be relevant to equipment.15

System type Board SoC Intended use in the documentation
Standard HiHope HH-SCDAYU200 Rockchip RK3568 NVRs, industrial gateways, home appliances
Standard MILOS_Standard0 NXP i.MX8M Mini High-performance measurement instruments for industry and medicine, industrial control and HMI, transportation, disaster prevention, buildings
Standard Yangfan Rockchip RK3399 Digital signage, unattended terminals, industrial control hosts, robots
Standard ZLG development board Allwinner T507 Industrial control, smart cockpits, smart power
Standard Unionpi Tiger Amlogic A311D Industrial control, AI edge computing
Small BearPi-HM Micro ST STM32MP157A Smart home, central control screens
Mini Niobe407 ST STM32F407IGT6 Smart transportation, industrial control
Mini HPM6750EVK2 HPMicro HPM6700 (RISC-V) Industrial control, edge computing

The SoC vendors are not only Chinese ones. The NXP i.MX8M Mini and ST’s STM32 series are there too, so a Japanese equipment manufacturer may be able to evaluate it on an SoC family it already uses.

This table, however, shows the intended uses given in the documentation. It does not guarantee ten-year supply, distribution within Japan, or official OpenHarmony support for production boards.

Separate the supported list from volume production procurement conditionsThe supported development board list is an entry point for technical evaluation and does not guarantee domestic distribution, years of supply, or official support on production boards.Supported development board listCandidates for technical evaluationCheck actual sales and domestic distributionCheck production lots and years of supplyNot a guarantee of long-term supply

Figure 13: A name on the list and availability throughout the product’s life are two separate checks.

5.2. Check Procurement Conditions Before You Order an Evaluation Unit

The list is centered on evaluation boards, many of them aimed at the Chinese market. They are not necessarily available from a Japanese distributor as a matter of course. Before ordering an evaluation unit, ask about these three points.

  1. Whether the board vendor’s sales page or a cross-border e-commerce channel carries it.
  2. Whether there is a sales distributor in Japan.
  3. What the minimum lot for volume production and the years of supply are.

Even if a board is on the supported list, you cannot make progress with technical validation on real hardware unless you can procure it. Along with the OS maintenance window, check the board’s supply conditions.

If you are putting it on your own board, porting is work for you or for a distributor. That is a different scope from procuring a license from an OEM distributor for Windows IoT and using vendor-supplied drivers. If the SoC is already fixed, it is sometimes more practical to estimate the porting effort for that SoC than to look for an evaluation board.

Separate preparation for evaluation boards and for your own boardWith an evaluation board, investigate availability and volume production conditions, and with your own board or a fixed SoC, estimate who does the porting and how much effort it takes.Hardware used in the productConsider an evaluation boardOwn board or a fixed SoCCheck availability and production conditionsCheck porting ownership and effortPlan it together with OS maintenance

Figure 14: Include not only buying an evaluation unit but the work of bringing it up on production hardware in the procurement plan.

6. Check the Conditions for Shipping: Licenses, Certification and the Ecosystem

6.1. Check the LICENSE of Every Component You Include, One by One

OpenHarmony is not a single license. List the repositories you build into the product and check them by scope.

Target License Practical point
Many components (the build system, the ArkUI engine and so on) Apache License 2.016 Comply with the copyright and patent clauses, and state your changes
The LiteOS-A kernel BSD 3-Clause17 Reproduce the copyright notice and the disclaimer when distributing binaries
The Linux kernel part of the standard system GPLv2 (the Linux kernel’s own license) When you distribute the equipment to a customer, an obligation to provide the recipient with the source corresponding to the distributed binaries, including your changes. Changes that stay inside your own company create no obligation to provide source
The official documentation CC BY 4.018 Attribution when quoting

Lumping it together as “OpenHarmony is Apache 2.0, so it is fine” means overlooking the GPL obligations of the Linux kernel part of the standard system. The practical difference from Windows IoT, where you procure the OS under a commercial license, also lies in this per-component license check.

Check licenses from the scope you include in the productDo not treat OpenHarmony as a single license, list the repositories built into the product and check each LICENSE and what has to be done at distribution.Configuration built into the productList the target repositoriesCheck each LICENSEOrganize what distribution requiresConfirm with legal and IP

Figure 15: Do not decide on Apache 2.0 alone; check each component you actually build in.

6.2. Separate Modifying the Kernel from Distributing the Equipment to a Customer

The obligation under GPLv2 arises not at the moment you modify the code but at the moment of distribution. If you only modify the kernel and run it on an in-house test machine, no obligation to provide source arises.

When you deliver the equipment to a customer, an obligation arises to provide the recipient with the source code corresponding to the distributed binaries, including your changes. For an equipment manufacturer, delivery is distribution, so volume production and delivery require compliance. Keep the fact that there is no publication obligation from the in-house prototype stage separate from the fact that compliance is required when delivering to a customer. Confirm the specific compliance method with your own legal and IP departments.

Distinguish in-house kernel modification from distribution to a customerWhen considering the GPLv2 obligation to provide source, separate the case that stays within in-house use from distributing equipment containing kernel binaries to a customer.Configuration containing the Linux kernelStays within in-house testing and useEquipment distributed to a customerIn-house changes alone create no obligationProvide the corresponding source

Figure 16: Check the obligation by separating the moment of modification from the moment of delivering the equipment to a customer.

6.3. Separate Making It Run from Calling It OpenHarmony Compatible

Separately from license compliance, check the procedure needed to state compatibility publicly.

6.3.1. In-House Validation and a Product’s Compatibility Claim

If you are only using it for in-house validation or in a one-off machine, compatibility certification is not needed. If, on the other hand, you want to claim “OpenHarmony compatible” publicly as a product, or to be treated as part of the ecosystem, estimate the effort on the premise of passing the OpenAtom Foundation’s compatibility assessment.

The technical basis is XTS (X Test Suite), the family of compatibility test suites. The flow is that the applicant carries out the conformance development and self-testing and applies with a test report attached.219

Certification preparation for a product that claims compatibilityFor a product that publicly claims OpenHarmony compatibility, check the required tests, prepare the conformance development, self-testing and report, and apply for the compatibility assessment.Claim OpenHarmony compatibilityCheck the test requirements at application timeConformance development and self-testingPrepare the test reportApply for the compatibility assessment

Figure 17: Having confirmed that it works in-house is not the same as being able to state that the product is compatible.

6.3.2. Check ACTS, HATS and DCTS Against the Differences Between Sources

As of July 2026, the reference point for this article, sources differ on the breakdown of XTS.

Source Suites listed
Official documentation The currently supported ACTS (application compatibility) and the DCTS (device compatibility) to be supported in future
Community certification-procedure material A three-part structure of ACTS, HATS (hardware abstraction layer compatibility) and DCTS

In the official material DCTS is treated as a future offering, while the community material describes it as a component. Do not fix DCTS as mandatory; check with the certification desk which suites are actually required at the time you apply. This discrepancy in the descriptions, and the absence of Japanese-language primary sources, also become a communication cost when you adopt it.219

6.4. Check the Ecosystem the Customer Wants, and the Procurement Policy

If what the customer wants is AppGallery distribution or interoperation with HarmonyOS apps, OpenHarmony cannot meet the requirement. AppGallery, HMS and the HarmonyOS SDK are not part of OpenHarmony, and compatibility with HarmonyOS apps is not guaranteed. What is needed is a HarmonyOS-compatible product and the HarmonyOS SDK, and that is a different matter from “OpenHarmony compatible” certification.

Separate OpenHarmony compatibility from HarmonyOS requirementsWork out whether what the customer wants is OpenHarmony compatibility or AppGallery distribution and HarmonyOS app interoperation, and treat the latter as a requirement for HarmonyOS-compatible products and the SDK.Requirements the customer wantsOpenHarmony compatibilityAppGallery and HarmonyOS interoperationOpenHarmony compatibility assessmentHarmonyOS-compatible products and SDK

Figure 18: OpenHarmony compatibility certification cannot substitute for HarmonyOS distribution and interoperation requirements.

For the procurement policy too, separate constraints on the governing body from constraints on where the code comes from. For the former, the Eclipse Oniro family under a European foundation’s governance is a candidate, but as of July 2026, this article’s reference point, it is Incubating, and its community is nowhere near the size of OpenHarmony proper. If the latter means “must contain no code of Chinese origin”, Oniro is also built on top of OpenHarmony’s foundation layer, so the constraint is not resolved.

Constraints on the governing body and constraints on the origin of the codeSeparate procurement policies that target the governing body from those that target where the code comes from, and confirm that with Oniro under European governance the condition of OpenHarmony-derived code does not change.Constraint in the procurement policyGoverning body and governanceOrigin of the codeConsider the Oniro family with conditionsOniro does not resolve the constraint eitherCheck its maturity as of July 2026 too

Figure 19: Do not confuse changing the governing body with changing where the code comes from.

7. Decide: Match the Product’s Requirements Against the Conditions You Can Take On

7.1. Judge in Order, Starting from Market and Product Requirements

The order for checking the premises is market and product requirements first, technical evaluation second. On top of that, check SDKs, maintenance, and staff who can read technical documents. Even if you can build it technically, you cannot decide to adopt it for equipment while maintenance is not pinned down.

The main decisions for adopting OpenHarmony as an equipment OSAfter checking the market requirements or the value of multi-device collaboration, check SDKs, maintenance and staff who can read technical documents, and consider Windows IoT or embedded Linux if the conditions cannot be met.YesNoYesNoAvailable / buildable in-houseNot availableYesNoYesNoChoose the OS to put in the deviceAimed at the Chinese market or compatibility mandatedSDKs available or buildable in-houseIs multi-device collaboration core to product valueWindows IoT LTSC / LinuxCan maintenance be pinned downPass on OpenHarmonyIs there anyone who reads Chinese or EnglishEvaluate OpenHarmony seriouslyProcure through a commercial distributionChoose by existing assets and SDK support

Figure 20: Starting from market and product requirements, check the SDK, maintenance and staffing conditions in order.

In practice, the conditions most often fail at Q3 (vendor SDKs) and Q4 (the maintenance contract) — that is the main point of this article. This diagram shows the main decision flow. Individual conditions such as MCU use cases, unifying a product line and procurement policy are judged together with the table below.

7.2. The Situation-by-Situation Decision Table

The support years in the table are the lifecycles of each version. Whether they fit the device’s operating period has to be checked including the end dates in Section 3. Also, a use case where the table recommends OpenHarmony does not make the SDK, maintenance and staffing conditions unnecessary.

Situation Recommendation Reason
A PC with an HMI built into equipment that runs for ten years, with existing Windows assets Windows 11 IoT Enterprise LTSC 2024 Ten years of support to October 2034. No feature updates. Equipment software and vendor SDKs run as they are5
Equipment that runs for ten years, Linux SDKs are available, Linux staff in-house Commercially supported embedded Linux Four years with Yocto LTS, extendable with a long-term support contract from a commercial distribution7
A product released for the Chinese market where the requirement is “must be OpenHarmony compatible” OpenHarmony (through a commercial distribution) The market requirement decides the OS. Procure it with vendor maintenance included
The customer asks for participation in the HarmonyOS ecosystem (AppGallery distribution, HarmonyOS app interoperation) OpenHarmony cannot meet the requirement Neither AppGallery nor HMS nor the HarmonyOS SDK is part of OpenHarmony, and compatibility with HarmonyOS apps is not guaranteed. You need a HarmonyOS-compatible product and the HarmonyOS SDK
Collaboration between multiple devices (device discovery, data sync, app migration) is core to product value OpenHarmony DSoftBus, distributed data management and the distributed scheduler are included as standard2
You want one family for the whole product line, from MCUs to rich devices OpenHarmony (worth evaluating) Covers 128 KiB up to 128 MiB and above in a single family1
Sensor nodes and communication modules (MCU, a few hundred KiB) The OpenHarmony mini system or an RTOS Windows IoT is out of the running (2 GB minimum)4
You want ten years of maintenance guaranteed by contract, and you have no staff who read Chinese or English technical documents Pass Community maintenance is at most 3.5 years, and there is no Japanese documentation and no Japanese first-line support83
Equipment that depends on vendor SDKs for industrial cameras, motion controllers and the like Pass (check first) OpenHarmony support for vendor SDKs is not something to expect
You want to make use of existing C#/.NET and COM assets Pass There is no corresponding runtime, so it becomes a rewrite
The procurement policy constrains “the project’s governance and governing body” Evaluate the Eclipse Oniro family Oniro is under a European foundation’s governance. As of July 2026, however, it is Incubating and its community is nowhere near the size of the main project
The procurement policy constrains “containing no code of Chinese origin” Pass Oniro is also built on top of OpenHarmony’s foundation layer, so even with European foundation governance the constraint on code origin is not resolved

8. Once It Is Still a Candidate, Make It Concrete in Seven Steps

If it survives the decision table, move on to the seven pieces of work below. Running under QEMU or on real hardware is not the same as being adoptable as a product. Do not finalize adoption on the strength of a successful technical validation alone while the maintenance terms are still open.

  1. Inventory the peripheral devices and middleware. Check whether cameras, I/O, communication, motion, image processing and so on can be supported on OpenHarmony. If you get stuck here, there is no point in advancing the other steps.
  2. Fix the system type. Decide on mini, small or standard. The kernel (LiteOS-M / LiteOS-A / Linux) and the way applications are written change with it.
  3. Check the structure in QEMU. Before buying real hardware, you can check the build and boot flow on device_qemu environments such as Arm Virt (LiteOS-A / Linux), Cortex-M4, Cortex-M55 and RISC-V.20
  4. Pin the maintenance branch and secure build reproducibility. Pin the repo manifest (specifying a tag is the reliable way), keep an in-house mirror, and get to a state where you can regenerate the same binaries five years from now. That the upstream hosting is centered on gitcode.com is another reason to keep a mirror from a business continuity standpoint.14
  5. Inventory the licenses. List the repositories you build in and organize the Apache 2.0 / BSD / GPL obligations.
  6. Negotiate the maintenance contract. With the vendor of the commercial distribution, pin down “which branch, until when, under what SLA”. If it cannot be settled, hold the adoption decision.
  7. Decide whether compatibility assessment is needed. If you are going to claim OpenHarmony compatibility publicly, build the effort for XTS conformance development, self-testing and application into the plan from the start.
Connect technical validation through to the conditions for product adoptionFix the peripherals and the system type and check the structure in QEMU, then settle build reproducibility, licenses, the maintenance contract and whether certification is needed before the adoption decision.Inventory devices and SDKsFix the system typeCheck structure and boot in QEMUPin the branch and build reproducibilityCheck licenses, maintenance and certificationAdoption decision as a product

Figure 21: Do not stop at validating that it runs; make future rebuilds and post-shipment maintenance concrete too.

8.1. Summary: Choose the OS That Fits the Device’s Timescale, Procurement and Staffing

OpenHarmony covers everything from a 128 KiB MCU to rich devices with 128 MiB and more in a single family, and it has DSoftBus-based device collaboration as standard, which is a technically coherent design. The supported boards intended for industrial use include NXP and ST SoCs.1215

At the same time, for equipment that runs for ten years, community maintenance of two years for Release and 3.5 years for LTS is clearly not enough. Including the fact that no LTS has been cut since 3.0-LTS as of this article’s reference point, it is not an option to adopt without either maintenance from a commercial distribution or an in-house capability that goes as far as CVE handling.81112

What a Japanese equipment manufacturer has to check is the SDKs for the devices it uses, staff who can read the technical documents, and maintenance that supports the product’s lifetime. Without those, Windows IoT Enterprise LTSC or commercially supported embedded Linux is the realistic choice. Conversely, if Chinese market requirements, device collaboration, or unifying everything from MCUs to rich devices in one family ties directly to product value, OpenHarmony is worth evaluating seriously.

OS selection is not a judgment about “which one is better” but about which one fits the device’s timescale, procurement and staffing. The selection criteria on the Windows side are laid out in “Which Windows Should You Put on an Industrial PC?”.

KomuraSoft LLC handles support for selecting the runtime platform that goes into equipment, triage of whether existing Windows equipment software can be migrated, and reviews of configurations designed for long-running operation. You can consult us from the stage where “a new OS has come up as a candidate, but we have nothing in-house to compare it against”.

References

  1. OpenHarmony Documentation, Quick Start Overview. On the definitions of the three system types - the mini system (MCU, minimum 128 KiB), the small system (Cortex-A, minimum 1 MiB) and the standard system (Cortex-A, minimum 128 MiB) - and their target products.  2 3 4 5 6

  2. OpenHarmony Documentation, OpenHarmony Project. On the four-layer architecture and the multi-kernel design with Linux and LiteOS, the unified driver foundation provided by HDF (Hardware Driver Foundation), DSoftBus, distributed data management and the distributed scheduler, the build system being GN + Ninja, and XTS being a family of compatibility test suites described as “the currently supported application compatibility test suite (ACTS) and the device compatibility test suite (DCTS) to be supported in future”.  2 3 4 5 6 7 8 9

  3. OpenHarmony Documentation, README. On the official documentation being provided in two languages, Chinese (zh-cn) and English (en), with no Japanese version, and on the mapping between versions and API levels.  2 3 4 5

  4. Microsoft Learn, Minimum System Requirements - Windows IoT Enterprise. On 2 GB of memory and 16 GB of storage being defined as the OPTIONAL minimum requirements for special-purpose devices.  2 3

  5. Microsoft Learn, Windows 11 IoT Enterprise LTSC 2024 - Microsoft Lifecycle. On the start date of October 1, 2024 and extended support ending on October 10, 2034 (ten years in total).  2 3 4 5

  6. Debian Wiki, LTS. On Debian LTS being a project that extends the lifetime of each stable release to at least five years, and on the LTS period for Debian 12 bookworm running from June 11, 2026 to June 30, 2028.  2 3 4

  7. Yocto Project Wiki, Releases. On the policy of supporting LTS releases for four years, and on 5.0 Scarthgap being released in April 2024 and supported to April 2028 and 6.0 Wrynose being released in April 2026 and supported to April 2030.  2 3 4 5

  8. OpenHarmony, OpenHarmony Version Lifecycle Management. On a Release branch having a two-year lifecycle (one year of proactive maintenance plus one year of passive maintenance) and an LTS branch 3.5 years (2 plus 1.5), and on the passive maintenance period not planning or releasing tagged versions and fixing only security vulnerabilities and defects rated critical or above.  2 3 4 5 6 7 8

  9. Huawei, HarmonyOS 7 Developer Beta officially launches, and the all-scenario intelligent operating system is upgraded again. On the statement at HDC 2026 on June 12, 2026 that OpenHarmony has released more than 100 commercial versions. 

  10. Microsoft Learn, Windows 10 IoT Enterprise LTSC 2021 - Microsoft Lifecycle. On extended support ending on January 13, 2032. 

  11. OpenHarmony Documentation, OpenHarmony Version Definitions. On the maintenance schedule table for LTS and Release branches (the only LTS in that table being 3.0-LTS, with 1.0.1, 3.1, 3.2, 4.0 and 4.1 typed as Release; maintenance for 4.1-Release ending on March 30, 2026; and the 5.x and 6.x lines not yet appearing in the table).  2 3 4 5

  12. OpenHarmony Documentation, Release Notes index. On 3.0-LTS (September 30, 2021) and its line being listed while everything from 3.1 onward is typed as Release, on the 1.x line also having had LTS versions (1.1.0 LTS and others) that are marked End of Life, and on 6.1 Release (March 8, 2026) being listed.  2

  13. OpenHarmony Documentation, Quick Start Overview. On there being two entry points to device development: the IDE mode that uses DevEco Device Tool (a hybrid setup with code development, debugging and flashing on Windows and source compilation on Ubuntu) and the CLI mode.  2

  14. OpenHarmony Documentation, Source Code Acquisition. On the procedure for fetching source with the repo tool, the gitcode.com, gitee.com and GitHub mirrors, and how to specify a branch or a tag.  2

  15. OpenHarmony Documentation, OpenHarmony Development Boards List. On there being 22 community-supported development boards, and on the SoC and intended use of each board (for example, MILOS_Standard0 with the NXP i.MX8M Mini listing measurement instruments for industry and medicine and industrial control and HMI, and Niobe407 with the STM32F407 listing industrial control).  2

  16. OpenHarmony, arkui_ace_engine LICENSE and build LICENSE. On the ArkUI engine and build system repositories being distributed under the Apache License 2.0. 

  17. OpenHarmony, kernel_liteos_a LICENSE. On the LiteOS-A kernel being distributed under the BSD 3-Clause license. 

  18. OpenHarmony, docs LICENSE. On the official documentation repository being provided under the Creative Commons Attribution 4.0 International license. 

  19. OpenAtom Foundation community material, OpenHarmony XTS Certification Process (secondary source). On the community certification-procedure material describing XTS as a three-part structure of ACTS (application compatibility), HATS (hardware abstraction layer compatibility) and DCTS, and on the flow in which the applicant obtains a corporate account, carries out conformance development and self-testing, and applies with a test report and a PCS self-check sheet attached. Because the position of DCTS conflicts with the official documentation (“the device compatibility test suite to be supported in future”), the body of this article states that difference explicitly.  2

  20. OpenHarmony, device_qemu README. On procedures being provided for QEMU emulation targets including Arm Virt (LiteOS-A), Arm Virt (Linux), Cortex-M4 (mps2-an386), Cortex-M55 (mps3-an547), RISC-V (riscv32_virt), Xtensa (esp32) and C-SKY (SmartL_E802). 

Recent articles sharing the same tags. Deepen your understanding with closely related topics.

These topic pages place the article in a broader service and decision context.

Frequently Asked Questions

Common questions about the topic of this article.

Is it safe to adopt OpenHarmony as the OS for industrial equipment?
It depends on the conditions. The deciding factor is how the maintenance window is handled: an OpenHarmony community Release branch has a two-year lifecycle (one year of proactive maintenance plus one year of passive maintenance), and even an LTS branch has only 3.5 years. If you put the community version straight into a device that runs for ten years, security fixes stop partway through the product's life. Adopting it presupposes either buying vendor maintenance from a commercial distribution, or having an in-house capability to maintain a branch and handle CVEs yourself. If you cannot put that capability in place, Windows IoT Enterprise LTSC (ten years) or a long-term support contract for commercial embedded Linux fits the device's timescale better.
Which is lighter, OpenHarmony or embedded Linux?
OpenHarmony's floor is lower. OpenHarmony's mini system runs from a minimum of 128 KiB of memory on MCUs such as Arm Cortex-M and 32-bit RISC-V; the small system needs 1 MiB or more, and the standard system 128 MiB or more. Typical embedded Linux assumes a processor with an MMU and tens of MB of RAM or more, so covering the MCU space within the same OS family is a distinguishing feature of OpenHarmony. Note, however, that the mini system's kernel is LiteOS-M and its execution environment is completely different from the standard system's Linux, so "same OS, therefore the same apps run" does not hold.
Can I port existing Windows equipment software to OpenHarmony?
In practice it is a rewrite. Equipment software written with C#/.NET, Win32, COM or WPF/WinForms has no corresponding runtime on OpenHarmony. You would rewrite it on a different stack: ArkTS plus ArkUI for the UI, C/C++ underneath, and HDF (Hardware Driver Foundation) for drivers. On top of that, vendor SDKs for industrial cameras and motion controllers are often supplied only for Windows (and then Linux), and that is where the real bottleneck for porting lies. If your premise is to make use of existing assets, moving to Windows IoT Enterprise LTSC, or embedded Linux limited to devices for which a Linux SDK is supplied, is more realistic.
Do I need any certification to claim OpenHarmony support?
To call a product "OpenHarmony compatible" you need to pass the OpenAtom Foundation's compatibility assessment (certification). The technical basis for it is OpenHarmony's XTS (X Test Suite) family of test suites. The breakdown, however, is described differently by different sources: as of July 2026 the official documentation says "the currently supported ACTS (application compatibility test suite) and the DCTS (device compatibility test suite) to be supported in future", while community certification-procedure material describes a structure that adds HATS (hardware abstraction layer compatibility) to those. When estimating effort, do not fix DCTS as a mandatory requirement; check with the certification desk which suites are actually required at the time you apply. Certification is not required if you are only using it for internal verification, but it becomes necessary for a product that claims compatibility publicly.
How much Japanese-language support and information is there?
The official documentation comes in two languages, Chinese and English; there is no Japanese version. Community discussion is also mostly in Chinese. Vendors of commercial distributions are largely Chinese companies too, and the number of desks where you can get first-line support in Japanese is limited. In effect, then, a practical condition for adoption is having people in-house who can read technical documents in Chinese or English from end to end. This is a clear difference from Windows and the major Linux distributions.

Author Profile

Profile page for the article author.

Go Komura

Representative of KomuraSoft LLC

Focused on Windows software development, technical consulting, and investigations into failures that are difficult to reproduce.

Back to the Blog