OpenBLT 1.5.0 release notes

After half a year of development work, OpenBLT version 1.5.0 was officially released yesterday. Feel free to download the new version of the OpenBLT bootloader and take it for a spin yourself. This release is on track with the standard release cycle.

The main focus has been on getting the relatively new OpenBLT host library (LibOpenBLT) feature complete. This includes the BootCommander command-line program as well, since this one is build on top of LibOpenBLT.

Additionally, the support of the IAR, Keil and Atollic development environments was expanded, the SVN repository at SourceForge is now mirrored daily to a GIT repository at GitHub, and the Feaser website was localized to German.

This article describes in more detail what you can expect from the new OpenBLT release.

OpenBLT host library

The OpenBLT host library is a shared library for the PC. It packs all the functionality to communicate with the OpenBLT bootloader on your embedded target. It enables you to quickly and easily develop your own firmware update tool for the PC.

The previous OpenBLT release included LibOpenBLT for the first time. To demonstrate the power and use of LibOpenBLT, the BootCommander program was added to the OpenBLT bootloader package. It is a cross-platform command-line program for performing firmware updates on your microcontroller system. Although fully functional, LibOpenBLT was far from complete. It only supported the RS232 transport layer for communicating with the bootloader.

Personally, I am very excited about LibOpenBLT. It gives you total freedom in building your own firmware update tool and it makes it possible to seamlessly integrate the firmware update procedure into your already existing PC tools. It is something special that is currently not offered by any other bootloader.

For this reason, I decided to give the LibOpenBLT development the highest priority for this release. After a lot of hard work I am pleased to announce that LibOpenBLT is now feature complete! It supports all the communication transport layers that are currently supported by the bootloader itself: RS232, CAN, USB and TCP/IP. Support for all these communication transport layers is now also present in the BootCommander program, if you want to give it a try yourself.

It seems that my excitement for LibOpenBLT is shared by others as well. Several existing OpenBLT users reported that they started using it too. On top of that, the first project requests, where Feaser develops a custom firmware update tool for a client, started to come in.

Development environments

A lot of things happened during the second part of 2017 when it comes to embedded development environments for ARM based microcontrollers and the OpenBLT bootloader.

Personally, I was looking for a development environment that works on both Linux and Windows. Ideally in such a way that I can create a bootloader demo once and that users can then open the project and rebuild the code on both Linux and Windows. After doing quite some research and testing, I decided that Atollic TrueStudio is the way to go. Three STM32 demo programs currently support Atollic TrueStudio and more will follow in a future release of OpenBLT.

It turns out that Atollic TrueStudio was the right choice, as ST recently announced that they acquired Atollic. In the not too distant future, every STM32 software developer will have access to the pro version of TrueStudio at no additional cost!

Another exiting announcement came from Keil. They decided to make their MDK development environment free-of-charge for the STM32F0 and STM32L0 microcontrollers. Follow this link to obtain the product serial number to activate your copy of MDK for this. I found out about this, because all of a sudden I received an unusual amount of requests for Keil support in the OpenBLT Bootloader. I responded by adding Keil support to all STM32F0 bootloader demo programs. The STM32L0 is not yet supported, but this is already planned for a future OpenBLT release.

If that wasn’t enough already, IAR came through big time for the OpenBLT project. They decided to sponsor the OpenBLT project with a complimentary license for their Embedded Workbench for ARM. This resulted in me adding IAR support in demo programs for all ARM Cortex microcontroller boards.

Availability on GitHub

The OpenBLT code and releases are all located at SourceForge. The code is in an SVN repository and I am personally quite happy with this setup. Several users contacted me over the past year, requesting me to move the project to GitHub. I am thankful for their feedback and always open for suggestions.

These requests leaded to some lengthy discussions. I am aware that the trend is towards using GIT and GitHub, however I see no benefits in switching. At this point, I have no need for a distributed version control solution such at GIT. Additionally, I highly prefer SourceForge over GitHub for the simple reason that it gives me detailed statistics and demographics regarding OpenBLT downloads.

To please both the OpenBLT users and myself, I decided on the following solution:

  • Releases are still made on SourceForge.
  • Active development is still done using the SVN repository on SourceForge.
  • The entire SVN repository is mirrored to GitHub on a daily basis.

The mirror on GitHub is located at https://github.com/feaser/openblt. The actual mirroring is done automatically at night by a Debian based server that is managed by Feaser. It took about a day to setup and it has been running reliably ever since. Let me know if you are interested in the details on how this was setup. With enough interest, I could dedicate a blog article to explain this in more detail.

Website rework

By inspecting the download statistics at SourceForge, the top five countries where OpenBLT downloads originated from are:

  1. Germany (18%)
  2. United States (9%)
  3. Spain (9%)
  4. China (6%)
  5. Russia (5%)

In 2017 about 50% of the income generated from OpenBLT commercial licenses and bootloader customization projects came from German speaking countries. This probably has something to do with the fact that Feaser itself is located in Germany. However, the Feaser website was only offered in English. I decided that it was high time to rework the main website such that it can support additional languages and I got the website localized to German. The OpenBLT Wiki and the Feaser blog still remain in English for now.

In a nutshell this sums up the main areas that were worked on in the past half year, resulting in the release of OpenBLT version 1.5.0. Many more great things are planned for the future, so keep an eye on OpenBLT’s Twitter feed and this blog. Let me know how the new OpenBLT version is working out for you. As always, feedback is welcome.

This entry was posted in OpenBLT and tagged , . Bookmark the permalink.