Building the OSSW firmware with GCC

Few months ago, I got a Weloop Tommy smart-watch from work. I played with it a little bit, but quickly put it aside, until someone recently reminded me about this open source firmware called OSSW (the corresponding project page can be found here). I thought it would be a great sandbox to start playing with the watch, but building the FW was only possible using Keil and Windows...

For this reason, I set up a fork on my Github account that has been adapted to build on Linux (or Cygwin) using GCC. It can be found here.


In order to build OSSW, you will need:

  • the nRF51 SDK from Nordic version 9.0.0 that can be found here
  • the nrfutil python tool version 0.5.2 from here
  • the Gnu GCC toolchain for ARM Cortex-M0 that can be downloaded here, or here for releases < 2016.

I recommend to use the 4_9-2014q4 version since this was the one that produced the smallest code during my tests. I would have preferred the 6-2017-q1-update version, but the resulting code was too big for the watch...

The Makefile expects to find the toolchain in the ../toolchain folder, and the SDK in the ../nRF-SDK folder, so I suggest to create the following tree:


To build the firmware, just go in the ossw-firmware-s120 folder, and type $ make.

It looks like the resulting firmware is working exactly like the original branch (I forked Vaspa's branch), even if I had to fix some minor issues. My plan is now to use that repository to add my own modifications to OSSW. To be continued...


1. On Wednesday 1 November 2017, 20:17 by aiphee

Hi, did you made some other interesting changes to the FW? I just wonder if i should try it. Thanks.

They posted on the same topic

Trackback URL :

This post's comments feed