[riot-devel] Need some orientation about using vendor SDK when porting MCU
cvgaviao at gmail.com
Fri Nov 3 17:03:36 CET 2017
I took more time than I was expecting to understand the changes that the
new version of TI's CC13x0 sdk  have brought.
The SDK have generalized some of its functionalities to allow one
application to run on more than one of TI's platforms and also use
They achieved that creating multiple highlevel drivers that interact
with the lowlevel drivers and have created a set of 7 interfaces called
DPL (Driver Porting Layer) that allows the SDK to interact with TI-RTOS
or FreeRTOS when is necessary.
The high level SDK is now responsible to initialize the board, Gpio and
interrupts and also peripherals as I2c, spi, watchdog, uart, etc. Also,
the most important to me, manage power and RF, letting the SO to deal
with threads and other lower level stuffs.
So, unfortunately seems that it is doing what RIOT-OS also is doing and
won't be possible to do what I was having in mind initially (just reuse
the highlevel drivers as package). But seems that the best approach will
be to mimic some of its behaviour and use the low-level driver in the
I'm trying now to understand a bit more how Riot-OS works. For while, I
just run some few native examples and read some pages at the github wiki.
I'm trying to find any documentation about how RIOT is managing power
levels and also how it deals with watchdog, but couldn't find any. Who
is responsible to initialize those services?
1 - http://www.ti.com/tool/simplelink-cc13x0-sdk
On 30/10/2017 07:25, Hauke Petersen wrote:
> Hi Cristiano,
> I think in general, the inclusion of at least the vendor/firmware
> headers for those CPUs should probably be done in a similar fashion
> than the inclusion of the stellaris ware (cpu/stellaris_common). But
> dependent on the amount of headers (or even library source files), it
> would be definately worth a thought to consider adding the vendor
> libraries as packages. This way there would be no need for keeping all
> these files in the RIOT source tree directly, and code duplication
> would not be an issue. Further, it would be simple to update the
> libraries. Drawback here is, that we/someone would need to provide a
> public available repository containing these libraries - I guess TI is
> not doing this, right?
> On 28.10.2017 13:47, Cristiano Gavião wrote:
>> Hello Riot Devs,
>> As I have written before, I would like to use Riot in my 6lowPan
>> project that is using CC1310 and CC1350 MCU.
>> No long ago, Texas Instruments have separated its common provided SDK
>> into CC13XXWARE and CC26XXWARE. Currently there are many code that
>> are still equals, but I did a file to file compare using Meld and
>> found significant differences between some of them (9 files).
>> What I heard was that in the next MCUs versions (CC1312 and CC1352)
>> more differences will come...
>> Besides that, those MCU have written in they ROM the most used SDK's
>> driverlib binaries. So using the binaries instead flash them can give
>> us more space for the applications.
>> So I would like to use headers and driverlib from CC13XXWARE in a
>> best way that would fit in Riot and also facilitate maintenance when
>> new updated come.
>> Would like to hear suggestion about what would be the best approach
>> to work on this.
>> thanks for any comment,
>> devel mailing list
>> devel at riot-os.org
More information about the devel