Mbed Studio Public Beta


I’m excited to announce that our new free desktop IDE, Mbed Studio is now available to anyone with an Mbed account as a public beta. You can download it for Windows and Mac, and access the documentation at os.mbed.com/studio.

Mbed Studio is designed to speed up your development flow and provide functionality that helps you to get the most out of Mbed OS. To complement our popular Online Compiler and command line tools we want to give you the tooling you need in a desktop IDE to have a quick development, debug and deploy cycle when you build your next product.

/media/uploads/JoeA/mbed-studio-overview.png

The installation of Mbed Studio contains the following features:

  • The industry standard Arm Compiler 6 is shipped with Mbed Studio. This is the first time that Arm Compiler has been supported on Mac, and the first time it has been distributed for free with no code size limits.
    • There are no code size limits or optimization limits on the compiler.
    • Compilation is restricted to Mbed OS only.
  • pyOCD and GDB are integrated, so you can launch a debug session on supported boards with a single click.
  • Uses the Monaco editor, along with clangd for C/C++ IntelliSense. This helps you see supported Mbed OS API classes as you type, which is useful for development. It also shows you syntax problems as you go.
    • When you set a target, you can also inspect specific information such as the pin mappings and supported features.
  • Target detection of Mbed boards.
  • Source control management via git and mercurial.
  • Library management, allowing you to pull in libraries from the Mbed website, or other sources such as GitHub.
  • Request and deploy developer certificates to connect your board to Pelion Device Management, and publish firmware updates that can be rolled out to other devices.
  • Support for Mac and Windows. Linux support is something we will also consider based on demand.
  • You can choose to work with the “local” tools that are bundled with Mbed OS, meaning that build profiles and target settings can be modified at your own risk.
  • Once you have created your first Mbed program, which will clone all of Mbed OS to your local environment, any subsequent new programs or imports that use Mbed OS will be significantly faster as the OS is cached. Future versions of Mbed Studio will ship with the OS included so that first time program creation is also fast.

Supported targets and existing programs

If you are new to Mbed, you can create new programs in Mbed Studio based on a blank template or examples. Once your first program is created, Mbed OS will be cached locally.

The list of fully supported boards can be found in our documentation. If your board is supported in pyOCD then you’ll be able to start a debug session. More boards are being added to pyOCD regularly, and as an open source project, you can also help to contribute extra support.

If you have programs in the Online Compiler that you’d like to experiment with in Mbed Studio, then you can export them as a zip file, extract them and add them to your workspace locally. You can then download the source for any referenced libraries in your program. Likewise, if you have programs on the Mbed website, then you can download them as a .zip.

If you use Mbed CLI, then you can switch your workspace to point at the location where you keep your programs. If you have a local .mbed file per program, then Mbed Studio will use it.

One difference between Mbed Studio and the Online Compiler is that we ship a single compiler toolchain, rather than switching between several Arm Compiler versions in the background, which is how we maintain backwards compatibility in the Online Compiler. This means you’ll need to work with up-to-date versions of Mbed OS (we recommend Mbed OS 5.11 onwards).

Designing Mbed Studio

When we announced the Mbed Studio alpha in spring 2018, you might remember that we used Eclipse as the underlying IDE. However, thinking about our long-term plans, the Java-based Eclipse approach that we took didn’t give us the flexibility we were looking for. There was also strong feedback from some of you around the choice of Eclipse, so we kept that in mind.

Our goal is to provide a great IDE experience for Mbed across desktop and browser, with a view to modernising the Online Compiler. A desktop IDE is Mbed’s number one requested feature, and we have prioritised the development of that accordingly. Throughout the development process, we’ve also kept in mind the browser capabilities of Mbed Studio.

Rather than duplicating effort across two different codebases, we looked for something that would allow us to use a single codebase and build both products. In May and June 2018 we carried out an intensive engineering spike to see what was possible and settled on a new IDE: Theia.

Theia fits our needs well; it runs in the browser as well as on desktop, is extensible and utilizes the Monaco editor. It’s also open source. Our contributions back to the debug adapter and Theia framework will benefit the wider community, and of course, you can also get involved and contribute to Theia. Backed by the Eclipse Foundation, Theia’s collaborators include RedHat, Ericsson and TypeFox, and with such a talented bunch focused on the core IDE, we can focus on the Mbed-specific tooling. You can read more about Theia’s roadmap on GitHub.

What’s next?

As we continue to polish the core features of Mbed Studio, our plan is to accelerate your product development process with Mbed OS by designing functionality that helps you to write secure, connected, efficient IoT applications. Mbed Studio already contains support for Pelion Device Management, and we will be further exploring what it means to be an IDE for the Internet of Things in our roadmap.

Feedback

We really appreciate the feedback that you have provided so far to help us develop Mbed Studio; thank you very much for contributing. Whether you joined us in person at TechCon or provided feedback remotely, it has steered the direction of the product. We’re now opening Mbed Studio up as a public beta, so your feedback would be appreciated.

Try Mbed Studio now

Mbed Studio is freely available to anyone with an Mbed account, so if you would like to try the public beta, then you can download it here: os.mbed.com/studio. If you happen to be at Embedded World, then we are also here on the Arm booth showing how Mbed Studio connects through to Pelion Device Management, so drop by!