mbed Blog

Securing soft-SIM credentials with mbed uVisor

Device authentication is a difficult and interesting problem. How do you know that a device is not lying about its identity? How do you keep authentication keys secure? On mobile phones, we've solved this by using SIM cards, which run their own operating system completely separate from the OS of your phone, ensuring that keys stay secure. However, SIM cards have some big disadvantages for IoT devices: they are relatively bulky, need a connector and add extra cost to your design. That's why Ericsson, u-blox and ARM have collaborated to work on a solution for IoT devices that offers strong enough security but none of the downsides of SIM cards. This work was demonstrated three weeks ago during Mobile World Congress.

Continue reading »

mbed OS 5.4.1 Release Available

We are pleased to announce the mbed OS 5.4.1 release is now available.

This release includes an update of mbed TLS to version 2.4.2, bringing essential and critical security patches including a fix for CVE-2017-2784. For core mbed-os, there are a number of bug fixes to improve the stability of the code and improvements to the tools.

Here is a full list of all changes and fixes in this release.

Continue reading »

Generating C++ wrappers for JS on mbed

TL;DR? Here's the link to the JS wrapper generator.

A few months ago, we launched JavaScript on mbed, an experimental program that runs the JerryScript VM on top of mbed OS 5. This allows you to code your embedded application in a higher level language, while the core OS is still C++. This combination lets you use the flexibility of a dynamic language without too much sacrifice on performance.

Continue reading »

mbed OS 5.3.6 Released

We are pleased to announce the mbed OS 5.3.6 release is now available. This release includes a number of bug fixes to improve stability.

Here is a full list of all changes and fixes in this release.

Continue reading »

Tracing stack and heap overflow errors

If you have ever seen the lights of dead on your development board, accompanied by an RTX error code: 0x00000001 or Operator new out of memory message on the serial port, you have hit a memory overflow bug. Memory management remains a difficult problem on microcontrollers. Not only is memory limited, but also microcontrollers do not have an MMU and therefore cannot move memory blocks around without changing addresses. This lack of virtual memory means you have to have fixed stack sizes, so you can run into a stack overflow error even when there is still RAM available.

Continue reading »

Post Event Q&A: LwM2M "Meet the Experts" webinar

Last week, we hosted the "Device Management with the OMA LWM2M protocol" webinar, led by Hannes Tschofenig, in ARM's Meet the Experts webinar series. If you missed the event, get the webinar recording to find out how LWM2M can solve a variety of IoT deployment issues by enabling secure device management.

Continue reading »

Built with mbed - Snowmelt System Monitor

Jogging through the city center in the middle of an intense snow storm, without the risk of slipping? No problem in Holland, Michigan, where they have deployed the Snowmelt system. An ingenious system of pipes has been installed under the downtown streets, pumping hot water that is created by recycling excess heat from the local power plant. Implemented in 1988, the system is now almost 5 miles long and covers an area of 600,000 square feet (5,500 m2). At the moment, the system sends out a constant flow of water, heated to about 90 degrees Fahrenheit (32°C) - but the engineers at the Holland Board of Public Works would prefer to make informed decisions when to operate the snowmelt system. If they could get temperature information from the field (sidewalk), they could adjust pumps and valves to more efficiently operate the system to save energy. And that kind of intelligent decision-making… starts with data.

Continue reading »

Using HTTP, HTTPS, MQTT and CoAP from mbed OS

One of the biggest changes in mbed OS 5 compared to mbed OS 2.0 was the unification of network interfaces. Every interface, whether it's Ethernet, Wi-Fi, Cellular, 6LoWPAN or Thread mesh, implements the same NetworkInterface API. This makes it easier to write portable code that matches the available connectivity method. In addition this API is easy to implement on top of any library that supports socket primitives, so porting new targets is straightforward. Recently we also added the Easy Connect library, which allows users to switch between all supported connectivity methods through a config file - tremendously helpful for tutorials and workshops.

Continue reading »

mbed OS 5.3.5 Release Available

We are pleased to announce the mbed OS 5.3.5 release is now available.

Here is a full list of all changes and fixes in this release.

Continue reading »

mbed OS 5.3.4 released

We are pleased to announce the mbed OS 5.3.4 release is now available. This release includes:

New target support for DISCO_F769NI, DELTA_DFCM_NNN50 and MAX32630FTHR. Miscellaneous tool updates and fixes.

Here is a full list of all changes and fixes in this release...

Continue reading »