Wednesday, January 11, 2017

Build 6lbr running on CC2650DK, CC1310DK, LAUNCHXL-CC2650 or LAUNCHXL-CC1310

The following steps show how to build 6lbr running CC2650DK or CC1310DK

1. Refer to http://sunmaysky.blogspot.tw/2016/03/running-6lbr-on-cc2538dk-with-enc28j60.html which shows you how to connect ENC28J60 to SmartRF06EB.

2. git clone --recursive https://github.com/cetic/6lbr

3. Change "#define CETIC_6LBR_NVM_DEFAULT_CHANNEL 26" in \6lbr\examples\6lbr\6lbrnvm-data.h to "#define CETIC_6LBR_NVM_DEFAULT_CHANNEL 25"

4.  Add "#define RF_CORE_CONF_CHANNEL 25" into common configuration in \6lbr\examples\6lbr\project-conf.h

5. Change directory to \6lbr\examples\6lbr

6. Change the macro CETIC_6LBR_NVM_SIZE from 2048 to 4096 in file cc26xx-int-nvm.c (p.s. this is not necessary if you use LAUNCHXL-CC2650 or LAUNCHXL-CC1310)
          #define CETIC_6LBR_NVM_SIZE 4096//2048

7a. Run "make TARGET=srf06-cc26xx BOARD=srf06/cc26xx all" for CC2650DK or
7b. Run "make TARGET=srf06-cc26xx BOARD=srf06/cc13xx all" for CC1310DK or
7c. Run "make CC26XX_NVM=ext TARGET=srf06-cc26xx BOARD=launchpad/cc2650 all" for LAUNCHXL-CC2650 or
7d. Run "make CC26XX_NVM=ext TARGET=srf06-cc26xx BOARD=launchpad/cc1310 all" for LAUNCHXL-CC1310

8. Download cetic_6lbr_router.bin under \6lbr\examples\6lbr\bin_srf06-cc26xx to CC2650DK , CC1310DK, LAUNCHXL-CC2650, or LAUNCHXL-CC1310 with Flash Programmer 2.

9. You should see the following outputs on UART of CC2650DK , CC1310DK, LAUNCHXL-CC2650, or LAUNCHXL-CC1310.



9. You can access to [bbbb::100] now.



10 comments:

  1. Hi,
    Thanks for you detailed blog on 6lbr

    I am working on 6lopwan with the following goals in mind

    1. multiple CC2650 nodes running contiki
    2. run 6lbr in rpi3 but I dont want to run a webserver rather a custom client
    basically the data from WSN will be received in RPi3 and we will be running a custom client application to communicate with our custom server.

    How can I make my custom client to communicate with 6lbr to access data from WSN?

    I appreciate your inputs

    ReplyDelete
  2. I'm using a fresh copy of instant contiki 2.7 and I've run into several problems with your steps:
    3) It took me a while to figure out that \6lbr\examples\6lbr\6lbrnvm-data.h is actually \6lbr\examples\6lbr\6lbr\nvm-data.h
    6) that file is under /6lbr/examples/6lbr/platform/srf06-cc26xx/cc26xx-int-nvm.c
    7) both 7a and 7d produce innumerable warnings and end up with errors and do not produce a .bin file. The last several lines read:
    make[2]: srec_cat: Command not found
    make[2]: *** [cetic-6lbr.hex] Error 127
    rm obj_srf06-cc26xx/sicslow-ethernet.o obj_srf06-cc26xx/packet-filter.o cetic-6lbr.i16hex obj_srf06-cc26xx/log-6lbr.o obj_srf06-cc26xx/startup_gcc.o obj_srf06-cc26xx/cc26xx-init.o obj_srf06-cc26xx/nvm-config.o obj_srf06-cc26xx/mac-wrapper.o obj_srf06-cc26xx/rio.o cetic-6lbr.co obj_srf06-cc26xx/fault-handlers.o obj_srf06-cc26xx/enc28j60-arch-gpio.o obj_srf06-cc26xx/cc26xx-ext-nvm.o obj_srf06-cc26xx/enc28j60-drv.o obj_srf06-cc26xx/enc28j60.o
    make[2]: Leaving directory `/home/user/6lbr/examples/6lbr'
    make[1]: *** [bin_srf06-cc26xx/cetic_6lbr_smart_bridge.bin] Error 2
    make[1]: Leaving directory `/home/user/6lbr/examples/6lbr'
    make: *** [all] Error 2

    ReplyDelete
    Replies
    1. Try to build it in InstantContiki 3.0 instead of 2.7.

      Delete
    2. make[2]: srec_cat: Command not found => Your PC need to be installed SRecord ultility

      Delete
  3. Thanks, it worked on Instant Contiki 3.0.

    I had previously tried other examples on 3.0 but had trouble when setting BOARD to the CC1310 launchpad, and since other posts and even the Instant Contiki download page said that despite there being a 3.0 version, the 2.7 was more up-to-date, I had moved to 2.7 and restarted trying to compile examples for the CC1310 launchpad.

    I thought step 2 would be enough to get support for CC1310 launchpad on IC 2.7?

    ENC28J60 should arrive early next week so I can start messing with the code.

    ReplyDelete
  4. Hello,

    Thank you for sharing.

    I've connected the 6LBR LAN cable to a Linux PC directly, I've tried setting as below:

    sudo ip -6 addr add bbbb::101/64 dev eth0
    route -A inet6 add aaaa::/64 gw bbbb::100

    However I couldn't ping to the 6LBR:

    PING bbbb::100(bbbb::100) 56 data bytes
    From bbbb::101 icmp_seq=1 Destination unreachable: Address unreachable
    From bbbb::101 icmp_seq=2 Destination unreachable: Address unreachable
    From bbbb::101 icmp_seq=3 Destination unreachable: Address unreachable

    I see the 6LBR display the below message periodically:


    INFO: ENC: resetting chip
    INFO: ENC: resetting chip
    INFO: ENC: resetting chip
    INFO: ENC: resetting chip
    INFO: ENC: resetting chip

    My question is : Are there any further setting steps need to perform so that it can work properly ?

    Thanks in advance

    ReplyDelete
  5. This comment has been removed by the author.

    ReplyDelete
  6. how to Download cetic_6lbr_router.bin from the VMware to my PC and flash it?

    ReplyDelete
  7. You can use USB storage to copy it.

    ReplyDelete
  8. i did all the steps and i got the same massage on tera term but when i open firefox (from VMware) to go to [bbbb::100] id didn't open

    ReplyDelete