User Tools

Site Tools


ref:cc2538:start

CC2538

Contiki on Linux

https://github.com/contiki-os/contiki/tree/master/platform/cc2538dk

  1. Plug in el SmartRF06. Run this little jibby jobby to get everything to come alive:
     modprobe ftdi_sio vendor=0x403 product=0xa6d1 
    1. You can also run lsusb to make sure that Linux finds the SmartRF board.
  2. Get Contiki
     git clone git@github.com:contiki-os/contiki.git
  3. Get the arm compiler. The arm-none-eabi- version works with Contiki. Go here: http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/arm-eabi and give them your name, email, etc. You want the eabi version that is not source. Pick the recommended release, and then the IA32 GNU/Linux TAR. Extract to a place of your choosing, then add the bin folder in the arm compiler folder to your path in .bashrc.
  4. Install ia32-libs
    sudo apt-get install ia32-libs
  5. Get TI's flash loader tool. http://processors.wiki.ti.com/index.php/Category:CCS_UniFlash. Install that and whatnot. Add the base ti folder (/opt/ti) to your path in .bashrc.
  6. Get the correct `.ccxml` file for the CC2538. For uniflash 2.1: http://e2e.ti.com/cfs-file.ashx/__key/communityserver-discussions-components-files/81/7658.CC2538.zip. For 2.2:
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <configurations XML_version="1.2" id="configurations_0">
    
    <configuration XML_version="1.2" id="Texas Instruments XDS100v3 USB Emulator_0">
            <instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Emulator_0" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Emulator_0" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
            <connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Emulator_0">
                <instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
                <instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
                <instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
                <property Type="choicelist" Value="2" id="The Converter Usage">
                    <choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
                        <property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
                            <choice Name="Overclock with user specified value" value="unused">
                                <property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
                            </choice>
                        </property>
                        <property Type="choicelist" Value="5" id="The Target Scan Format"/>
                    </choice>
                </property>
                <platform XML_version="1.2" id="platform_0">
                    <instance XML_version="1.2" desc="CC2538_0" href="devices/cc2538sf53.xml" id="CC2538_0" xml="cc2538sf53.xml" xmlpath="devices"/>
                <device HW_revision="1" XML_version="1.2" description="CORTEXM3" id="CC2538_0" partnum="CC2538" simulation="no">
                        <router HW_revision="1.0" XML_version="1.2" description="ICEPick_C Router" id="IcePick_C_0" isa="ICEPICK_C">
                            <subpath id="subpath_0">
                                <router HW_revision="1.0" XML_version="1.2" description="CS_DAP Router" id="CS_DAP_0" isa="CS_DAP">
                                    <subpath id="subpath_1">
                                        <cpu HW_revision="1.0" XML_version="1.2" description="Cortex_M3 CPU" deviceSim="false" id="Cortex_M3_0" isa="Cortex_M3">
                                            <property Type="filepathfield" Value="..\..\emulation\gel\cc2538.gel" id="GEL File"/>
                                        </cpu>
                                    </subpath>
                                </router>
                            </subpath>
                        </router>
                    </device>
                </platform>
            </connection>
        </configuration>
    </configurations>
  7. Compile some Contiki.
    cd contiki/examples/cc2538dk
    make
  8. And the last magical part. This part might take a long time.
    uniflash.sh -ccxml CC2538.ccxml -targetOp reset -program cc2538-demo.elf -targetOp reset
ref/cc2538/start.txt · Last modified: 2013/08/25 15:15 by bradjc