Chipcon SPI Application
This application allows for the use of SPI radios in the Chipcon family, such as the CC2420.
At present, this port is only being used in the Telos B port of the GoodFET firmware. As such, no pinout is available, but the SPI pinout below ought to be all but identical.
Clients
chipcon.ccspi is an actively maintained client application.
Development
Prior to any transactions, the SETUP (0x10) verb should be sent to the Chipcon application to properly set the I/O pin directions.
The Chipcon protocol is similar to SPI, but with additional signal lines to indicate the availability of a packet. Data is buffered within the radio, eliminating the need to catch it byte-wise.
Verbs
Verbs 0x80 to 0x8F are radio primitives, while verbs 0x90 to 0x9F are used for more complicated macro commands. Higher than that are a few special functions that don't exist on other platforms. The low commands are similar to the Nordic RF application.
Hex | #define | Description |
---|---|---|
0x80 | RX | Receive |
0x90 | RXDEC | Receive and Decrypt |
0x91 | REPEAT_RX | Receive Loop |
0x81 | TX | Transmit |
0x82 | RX_FLUSH | Flush RX buffer. |
0x83 | TX_FLUSH | Flush TX buffer. |
0x84 | PEEK_RAM | Peeks from RAM. |
0x85 | POKE_RAM | Pokes to RAM. |
0xA0 | REFLEX | Reflex jams on present channel. |
Thanks
Many thanks are due to Sergey Bratus and the Sooby Crew of the Good Ship Shelldrop at Dartmouth College.