Support for TI CC1101 radios in amforth. Possibly CC111x/CC112x in the future.

root

amforth-cc11x

Support for TI CC1101 radios in amforth

Possibly more from this family in the future if I buy any.

installation

Upload the following dependencies from amforth using am4up or amforth-upload.py if not already done:

lib/forth200x/synonym.frt
lib/bitnames.frt
ports-standard.frt
lib/hardware/spi.frt
lib/ans94/facility/ms.frt
lib/forth200x/buffer.frt

Upload cc1101.frt.

wiring

header diagram

header diagram

(Example for duemilanove based MCUs)

avr             cc1101
GND        ---- GND       [9]
Vcc        ---- VDD       [1]
digital.10 ---- CSN       [7]
digital.11 ---- SI/MOSI   [3]
digital.12 ---- SO/MISO   [5]
digital.13 ---- SCK       [4]
digital.2  ---- GDO0      [8]
digital.9  ---- GDO2      [6]

usage

Start receiving with CC1101_testRx

Send a test message "Hello!" with CC1101_testTx

todo

  • Can we do single byte packets for remote control use? (I/O redirection)
  • A flexible but compact way to change settings
  • Separate config handling words. Perhaps in a separate file wrapped in markers so we won't need to keep it in flash.
  • Figure out what the default configuration is so we can delete some of the register map and conserve flash space.
  • Read from and write to a buffer instead of using emit
  • Interrupts
  • Write a range tester
  • Consistent, canonical names for the Forth words
  • Factoring as always. CC1101_>TxFIFO and CC1101_>RxFIFO in particular.
  • Add some basic legal advice to avoid visits from the FCC!

copying

amforth-cc11x is licensed under GPLv3 just like amforth.

contact

I am Andreas Wagner and my email address is andreas.wagner@lowfatcomputing.org