WIZnet announced WIZwiki-7500, the Cortex-M0 platform board, is mbed enabled. As an open platform supported by ARM, mbed helps developers to build IoT products faster and the type of system leaded it to be a bigger market made of thousands of components and clouds.
Let’s talk about ARM mbed this time.
ARM mbed presents community of Silicon, Cloud, Device partner that forms IoT Device Platform.
ARM that supports Cortex-M included mbed OS,the mbed Device Server, and the IoT Cloud Server, to realize Cortex-M IoT Device Ecosystem. It supports Web-IDE on-site to enable IoT device development on ARM mbed website and linked a file version management system for distribution and to manage created code versions. Developers are able to “Rapid Prototyping” using shared codes and officially released libraries on mbed based on Web-IDE. Rapid Prototyping refers a simple and fast prototype work. The best advantage of it is that users can handle from IoT device development to Cloud service test on mbed website.
A system of changing the porting environment annoyed developers due to the different ways of each of Vendors even though they are using same Cortex M processor and functionally same codes. Infinite debugging due to code modification every time MCU changes also made developers exhausted. At that point, CMSIS (Cortex Microcontroler Software Interface Standard) appeared to be a solution. CMSIS made different Vendor’s MCU to be operated as single Cortex M processor by using Hardware abstraction layer. Developers, hence, has been able to reduce complication due to hardware change and also made them to focus more on functions of what they were trying to develop. mbed OS is, of course, formed based on the CMSIS and minimized modification caused by Harware changes while using mbed OS.
On August 2015, mbed Device Server is a Beta version opens to partner only till now. ARM mbed will open IoT Cloud Service soon by absorbing existing Cloud Service programs such as Xively and Axeda.
IDE such as KEIL and IAR is provided on Web. Therefore, process of installation is not required. Instead, there can be the problem that “lag” might able to occur depends on Web-IDE Server condition and network circumstances. To solve the problem, Web-IDE supports processing code to be exported to Local PC under project unit. However, it only works with IDE built in Local PC..
Question here is how can you program Bin file, a file compiled on Web-IDE, in local target board? And it can be solved by following 2 steps.
- With successful Compile, it is downloaded with web browser as a Bin file (Bin file exists in a lower left corner of picture)
- Mbed platforms are recognized as drive in Local PC. So, Copy the downloaded Bin file into the mbed drive to end programming!
- Go to http://mbed.org, and log in (join a membership first of course). Then click Developer Site on upper right side.
- As seen, you are now on Developer Site for IoT product development. There is Platform/Components/Handbood/Cookbook on a menu bar. Let’s look close.
- Platform: Introducing hardware platforms those are officially ARM mbed enabled on community page. If you click each platforms, you will see pages containing basic information about Platform such as Pin map/ Schematic/ Hello World Code (example codes).
- Components: Introducing platform adoptable modules and pieces of Actuator/ Sensor/ Communication and etc. It also contains Pin map/ Schematic/ Hello World Code (example codes) information of each component.
- Handbook: Containing official code and tutorial to use ARM mbed platforms attributed by team ‘mbed’. Like a following picture, it provides official data from Analog IO control to Networking.
- Cookbook: Contains code and tutorial opened by ARM mbed platform users.
- Code: Able to search code exiting on ARM mbed community
- Compiler: ARM mbed’s Web IDE. As below, able to manage multiple projects on Program workspace page. Likewise, Web-IDE supports code editing/ compile/ version management (commit/publish)/ import & export.