Arm has just announced two new initiatives that aim to boost the productivity embedded, IoT, ML, and MCU software developers: the Open-CMSIS-Pack project and Keil Studio Cloud.
The Cortex Microcontroller Software Interface Standard (CMSIS) packs have been around for years providing a vendor-independent hardware abstraction layer for microcontrollers, mostly Cortex-M based, but others too, and currently support close to 9000 different microcontrollers.
I always assumed CMSIS was open-source as the source code is available in Github under an Apache 2.0 license. But apparently, not all components are, and Arm has now announced the Open-CMSIS-Pack project that will move part of CMSIS into the open project in collaboration with the Linaro IoT and Embedded Group.
Linaro, Arm, and other partners like STMicro and NXP will initially focus their work on command-line tools and CMake workflows, with the ultimate goal of making the CMSIS-Pack technology into a true open standard for MCU software component packaging.
Current work on Open-CMSIS-Pack specifically includes:
- Create command-line tools for project builds based on software packs
- Create workflows and utilities for the verification of software packs
- Extend the pack description format for better usability across the complete workflow
- Define processes that simplify the creation of software packs from other sources, such as CMake based projects
- Develop the concept of a software layer that defines a collection of pre-configured software components
- Organize the taxonomies of standard APIs that are essential for re-useable software stacks
Right now, everything feels a bit abstract, but eventually, more information will surface on the project’s website.
Everything is moving to the cloud, and even programming tools like integrated development environments (IDEs) are moving to the web browser as we’ve seen with Arduino Create which allows programming an Arduino board without having to install the Arduino IDE on your computer.
Arm is now doing something similar with Keil Studio Cloud that provides a cloud-hosted platform with “Git integration and CI workflows for rapid IoT device development”. Keil has been providing professional development tools for the embedded market for years before being acquired by Arm in 2005.
The Keil Studio Cloud is still at the beta stage with support for a limited set of supported boards and features, including NXP FRDM-K32L3A6, LPCXpresso55S69, and MIMXRT1064-EVK boards. You can try the beta on Arm Keil website.
Several software releases are planned over time with the goal of providing a web-based IDE with the following key features:
- An IDE that runs in the browser and connects directly to boards on your desktop. There is no tool installation, and resources such as example projects are always up to date since there’s no software to update.
- Direct Git integration enabling distributed teams, collaborative development, and modern CI workflows.
- Cloud-hosted development with Keil capabilities such as CMSIS-Pack software components and run-control debug.
- A portal for collaboration, where examples and feedback can be submitted to the community.
Via Arm’s announcement.