The mbed community has had a pretty busy week, with first the announcement that mbed SDK would become open source, the release of mbed 2.0, and finally support for the low cost Freescale Freedom board FRDM-KL25Zpowered by Kinetis Cortex M0+ KL25Z MCU.
The mbed Software Development Kit (SDK), a C/C++ MCU software platform, has always been free (as in free beer) for both commercial and noncommercial use, and the large community around mbed has written tons of code for ARM microcontrollers. But now that the SDK has now a stable API, and the developers achieved transparent portability for code based on the SDK across multiple controllers and multiple toolchains, they decided to release the SDK source under an Apache 2.0 license. Although sharing modifications is encouraged, this license allows users to keep the changes closed if they wish to do so.
mbed developers explain that the 3 most important aspect of the source code release are as follows:
- Developers working on commercial products will not have to worry of any lock-in and they will be able to modify trade-offs unsuitable for their embedded system
- Open source projects based on the mbed platform will be able to provide a completely open software stack
- Those looking to learn or contribute will now be able to delve in to the depth of the lowest level implementations
The mbed platform, developed by ARM, partners such as NXP and Freescale, and the mbed developer community, has reached milestone 2.0 with the following highlights:
- Open Source SDK
- Development Board HDK – The new mbed Hardware Development Kit (HDK) delivers microcontroller sub-system reference designs that can be used as the basis for new hardware boards and products. HDK designs specify all major support components including an on-board USB interface. The design is already used in the official mbed Microcontroller prototyping modules, and work is being done on other low-cost evaluation boards.
- Free Online Tools – The mbed Compiler provides a free online IDE powered by ARM professional C/C++ compiler, pre-configured and tested to generate fast, efficient code. Other features include distributed version control, project exports to use with other toolchains, USB CMSIS-SAP debug interface, and more. You can access it via mbed.org developer site.
- Developer Community – The large community provides efficient support, and access to lots of existing source code and projects. The integration of distributed version control with the online compiler and developer website makes publishing and accepting code simple, allowing developers to easily collaborate on hard problems, and provides opportunities to request or accept contract work to help get things built.
mbed has uploaded a new video giving an overview of mbed. It’s probably only interesting if you’ve never used mbed before.
To get started easily you’ll need one of the mbed NXP (or now Freescale) prototyping boards, and read the instructions on Explore mbed page.
Freescale FRDM-KL25Z features Freescale KL25Z 32-bit ARM Cortex-M0+ core @ 48MHz, and comes with 128KB FLASH, 16KB RAM and many interfaces such as USB Host & Device, SPI, I2C, ADC, DAC, PWM, Touch Sensor and more.
The Freedom board comes with the following features:
- Freescale KL25Z MCU
- High performance ARM Cortex-M0+ Core
- 48MHz, 16KB RAM, 128KB FLASH
- 2xSPI, 2xI2C, 3xUART, 6xPWM, 6xADC, Touch Sensor, GPIO
- FRDM-KL25Z Onboard peripherals
- MMA8451Q – 3-axis accelerometer
- PWM Controlled RGB LED
- Capacitive touch sensor
- Evaluation Form factor
- 81mm x 53mm
- 5V USB or 4.5-9V supply
- Built-in USB drag ‘n’ drop FLASH programmer
At $12.95 it’s much cheaper than NXP LPC Cortex M0 mbed boards that start at $49, but it’s must probably not as well supported by the community just yet.
If you already own a Freedom board, you can get started immediately by following the instructions on mbed.org.