New platform: Texas Instruments CC26xx #974

Merged
merged 7 commits into from Feb 25, 2015

Conversation

Projects
None yet
2 participants
@jonnteolsson
Contributor

jonnteolsson commented Feb 25, 2015

Today we announced our new SimpleLink ultra-low power wireless MCU platform CC26xx. This pull adds support for the CC26xx platform to Contiki.

The CC26xx family consist of ultra-low power ARM Cortex-M3 based 2.4-GHz RF devices;
*The CC2630 is a wireless MCU targeting IEEE802.15.4 and 6LoWPAN applications.
*The CC2650 is a superset device with support for both IEEE802.15.4/6LoWPAN and Bluetooth Smart.

This pull adds support for two boards:
*SmartRF06EB-CC2650EM, http://www.ti.com/tool/cc2650dk
*CC2650 SensorTag, http://www.ti.com/tool/cc2650stk

Further more the pull adds two examples applications:
cc26xx-demo:

  • How to take sensor readings
  • How to use buttons and the reed relay (triggered by holding a magnet near S3
    on the SensorTag).
  • How to keep a power domain powered and a peripheral clocked under low power
    operation
  • How to send out BLE advertisements. The device will periodically send out BLE
    beacons with the platform name as payload. Those beacons/BLE ADV packets can
    be captured with any BLE capable device. Two such applications for iOS are the
    TI Multitool and the TI Sensortag app. They can be found in the Apple App
    Store. If you have a BLE-capable Mac, you can also use LightBlue for OS X.

cc26xx-web-demo:
This demo project combines a number of web-based applications aiming to
demonstrate the CC26xx capability. The applications are:

  • A network-based UART
  • A client for 6lbr
  • A CoAP server
  • An MQTT client, connects by default to IBM Internet Of Things cloud service
  • A web server which can be used to display sensor readings but also to
    configure MQTT functionality

This platform has been tested with nullrdc and ContikiMAC as RDC layer, connecting to Internet via 6LBR running on a BeagleBone Black and CC2531 USB dongle as RF interface.

To use this port, you will need to download and extract CC26xxware sources, as provided by TI. CC26xxware sources are also distributed under the terms of the 3-clause BSD license.
The reason for the use of external cc26xxware driverlib software is to always have up-to-date drivers and startup files for the platform.

For more information on the platform, please see;
*http://processors.wiki.ti.com/index.php/Contiki-6LOWPAN
*http://www.ti.com/product/CC2630

Enjoy!

Jonas Olsson
Applications Engineer
Texas Instruments, Low Power RF

@g-oikonomou

This comment has been minimized.

Show comment
Hide comment
@g-oikonomou

g-oikonomou Feb 25, 2015

Contributor

I've been working with this port and kit for a long while now.

The chip itself is made of win. My personal favourites:

  • BLE and .15.4 in the same radio (shame we don't have a BLE stack!)
  • The degree of control we have in terms of power-saving features (voltage domains, power domains, clocks etc) is something I've never seen before (and I think the port itself does a very good job at exploiting this capability, including representative examples).

In terms of the port itself, the web demo exposes hardware capability very well (as per the OP). MQTT, CoAP, HTTPD in the same image, with the web server exposing pages used to configure everything else: great!

The external dependency on TI's CC26xxware is also welcome:

  • The startup code for the chip can get quite complex, and using CC26xxware takes care of it in a very solid fashion.
  • As per the OP, CC26xxware is distributed under the 3-clause BSD, therefore it doesn't clash with Contiki and it doesn't get in the way in terms of what people can do with the port.
  • As a bonus, users will be able to pull in TI's updates to CC26xxware without hassle.

There have been some discussions about pulling CC26xxware in as a submodule. I still haven't made up my mind on that one, but it's something we may choose to do in the future.

All in all, this is a great addition, one that I've tested thoroughly and that I am aiming to adopt for longer term maintenance 👍

Contributor

g-oikonomou commented Feb 25, 2015

I've been working with this port and kit for a long while now.

The chip itself is made of win. My personal favourites:

  • BLE and .15.4 in the same radio (shame we don't have a BLE stack!)
  • The degree of control we have in terms of power-saving features (voltage domains, power domains, clocks etc) is something I've never seen before (and I think the port itself does a very good job at exploiting this capability, including representative examples).

In terms of the port itself, the web demo exposes hardware capability very well (as per the OP). MQTT, CoAP, HTTPD in the same image, with the web server exposing pages used to configure everything else: great!

The external dependency on TI's CC26xxware is also welcome:

  • The startup code for the chip can get quite complex, and using CC26xxware takes care of it in a very solid fashion.
  • As per the OP, CC26xxware is distributed under the 3-clause BSD, therefore it doesn't clash with Contiki and it doesn't get in the way in terms of what people can do with the port.
  • As a bonus, users will be able to pull in TI's updates to CC26xxware without hassle.

There have been some discussions about pulling CC26xxware in as a submodule. I still haven't made up my mind on that one, but it's something we may choose to do in the future.

All in all, this is a great addition, one that I've tested thoroughly and that I am aiming to adopt for longer term maintenance 👍

g-oikonomou added a commit that referenced this pull request Feb 25, 2015

Merge pull request #974 from jonnteolsson/cc26xx-contrib
New platform: Texas Instruments CC26xx

@g-oikonomou g-oikonomou merged commit a3b664d into contiki-os:master Feb 25, 2015

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@jonnteolsson jonnteolsson deleted the jonnteolsson:cc26xx-contrib branch Aug 23, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment