How to bring the mobile, PC development experience to embedded

If you haven’t been in the embedded space long, it’s difficult to appreciate the sector’s technological evolution in recent years. Back in the day, 4-, 8- and 16-bit microcontrollers (MCUs) ruled the roost. Applications and operating system software were homegrown, as were development tools; in fact much of the embedded development was done inside vertically integrated systems houses.MicroEJ OS screen grab.jpg

Then the industry started to standardize around off-the-shelf hardware and software; 32-bit MCUs came on the scene.

But with that emerged a chasm of sorts. The development experience that engineers had on personal computers and servers didn't translate at all into the embedded world, even with the opportunity for robust 32-bit programming. Programming at high level (Java or C, for instance) wasn't yet feasible.

On one side of that chasm sat a fragmented landscape of hardware and software, resource-constrained MCUs and a dizzying array of sensors and sensor data to be acquired and harnessed. On the other sat cloud services and big data, the speed and robustness of the mobile experience and the dizzying pace of Internet development and change.


Enter MicroEJ. Founded as MicroEJ a dozen years ago by CEO Fred Rivard, the French company’s mission is to bring the capability of mobile operating systems, iOS and Android, to resource-constrained and cost-effective platforms running on microcontrollers, such as ARM® Cortex®-M.

Small, flexible

“We are capable of providing this in a very small footprint,” said Vincent Perrier, chief marketing and product officer. “We usually run on top of a real-time kernel. “They can write the application with the Java language, but our solutions support multiple languages. Java has proven to be efficient in productivity and early prototyping.”

The company offers three core products:

  • Its SDK, including its runtime component operating system (MicroEJ OS) and development tools
  • MicroEJ Studio for application development
  • Downloadable applications through the MicroEJ online store.

At CES (4 CES trends that could shape 2016), the company introduced its MicroEJ Application store, which allows device manufacturers and OEMs to create an ecosystem around their products to serve their customers, application developers, and service providers.

At Embedded World, the company introduced version 4 of the MicroEJ OS, which continues to address traditional resource-constrained embedded systems with added capabilities dedicated to IoT devices. The company’s complete IoT solution now includes MicroEJ OS 4, the MicroEJ Application Store, the MicroEJ Workbench toolset, and the MicroEJ Studio (which allows application developers to develop and test applications). (See also MicroEJ SDK).

Vincent Perrier MicroEJ.jpegThe MicroEJ OS runs on ARM architecture, primarily the Cortex-M0 Plus, Cortex-M3, Cortex-M4, Cortex-M7, and Cortex-A family(MicroEJ also supports legacy customers on ARM7 and older architectures). Customer designs are powering everything from traditional embedded to automotive, transportation and other applications. (Customers include Itron, Siemens, Audi, Continental, Huawei and others).

The company notes that more than 1 million devices have shipped to date with MicroEJ technology on board.

The 32-bit IoT opportunity

As the benefits of 32-bit compute become more widely known in the embedded world, Perrier (pictured left) said his company is seeing take-up in wearables, and “anything with the word ‘smart in it’— smart home appliances, smart energy, smart grid, smart buildings.” Perrier and his colleagues call this the “sub-gig” zone (below 1GHz and 1GB memory footprints), where end device cost and device flexibility are paramount. The sub-gig zone is also considered to make up 75 percent of the IoT market, according to MicroEJ.

Perrier said the company’s approach takes into consideration different types of developers that might be migrating into the embedded space.

For example, the online store is a way to deliver applications that are downloaded to the device, whereas all the firmware is handled with the SDK.

“With the separation of this embedded firmware, the device software development is separated from the high-level app development,” Perrier said. “Those are two different developers. The app developer can come from the PC or smart phone world, and they might be using plain Java. For the firmware developer, you need experts: someone who knows how to set up the RTOS and write drivers. You let the bulk of app development to non-experts.”

Of this category, Perrier estimates there are 10 million developers on PC and mobile platforms, compared with perhaps 100,000 embedded experts in the world.

The company’s original idea was to bring the methods, tools and practices from the pc and server industry to the embedded space, Perrier notes. “We want to provide the same languages and practices that made the PC and server industry successful,” he said. “What really changed the game was when Android proved that Java could be used successfully for developing embedded devices and was the solution for developing for a unified software platform.”

“That’s why we think we’re offering a relevant value proposition,” he added.

For more information visit  MicroEJ, MicroEJ’s web page, its developer site and its store.

Related stories