Skip to content

andresv/ccbee

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 

Repository files navigation

CCBee

CCBee is TI CC430F5137 based radio module that fits into XBee PRO socket. It has UART and SPI interface for sending and receiving data.

Hardware

Schematic and PCB are designed using EAGLE. This is 2 layer design. 50 Ohm lines are calculated for board thickness 1 mm and copper 35 um. Calculations are done with AppCAD. Another good tool for calculating lines is TX-Line. If your board thickness will be different, calculate new values using AppCAD "Coplanar Waveguide". This board is designed for 868 MHz ISM frequency band.

BOM

Part Value Package Quantity Farnell code
IC1 Balun: Johanson Technology 0896BM15A0001E 1 1885513
X2 Antenna connector U.FL-R-SMT 1 1688077
X3 Chip antenna: Johanson Technology 0868AT43A0020E 1 1885493
U1 Texas Instruments CC430F5137 48VQFN 1 1903415
Q1 32 kHz 3.2 mm x 1.5 mm 1 1712821
Q2 26 MHz 5.0 mm x 3.2 mm 1 1841997
C1, C2 12.5 pF 0402 2 1828875
C3, C6, C8, C10, C11, C12, C13, C15, C17, C19 0.1 uF 0402 10 1828860
C4 0.47 uF 0603 1 1833805
C5, C7, C9, C18 10 uF 0603 4 1886093
C14, C16 2 pF 0402 2 1758932
C20, C21 18 pF 0402 2 1828876
C22, C23 1.8 pF 0402 2 1828870
C25 2.2 nF 0402 1 1414582
L1 ferrite 1 kOhm 0402 1 1515788
L2 5.6 nH 0402 1 1669640
L3 12 nH 0402 1 1515341
L4 1.8 nH 0402 1 1669627
R1 56 kOhm 0402 1 1738874
R2 0 Ohm 0402 1 2008330
R3 47 kOhm 0402 1 1840558
R4 330 Ohm 0402 1 1840544
R5, R6, R7 1 kOhm 0402 3 1738850
LED0, LED1, LED2 red 0603 3 1226389
Pinheader 2 mm x 10 pins 2 1668551

Software

TinyOS installation (Ubuntu)

Toolchain

For toolchain installation follow instructions from: http://tinyprod.net/debian-dev/

Source

Install TinyOS source:

cd ~/
git clone git://github.com/tp-freeforall/prod.git tinyos-prod

Setup environment variables. Create file called ~/tinyos-prod/tinyos-env.sh

# Here we setup the environment
# variables needed by the TinyOS
# make system

if [ $# -eq 0 ]
then
    echo "ERROR: TinyOS path not specified as first argument!"
    exit 1
else
    ROOT_DIR=$1

    echo "Setting up for: $ROOT_DIR"
    export TOSROOT=
    export TOSDIR=
    export MAKERULES=

    TOSROOT=$ROOT_DIR
    TOSDIR="$TOSROOT/tos"
    CLASSPATH=$TOSROOT/support/sdk/java/:$TOSROOT/support/sdk/java/tinyos.jar:.:$CLASSPATH
    MAKERULES="$TOSROOT/support/make/Makerules"

    export TOSROOT
    export TOSDIR
    export CLASSPATH
    export MAKERULES
fi

Now add this to your ~/.bashrc file:

source ~/tinyos-prod/tinyos-env.sh ~/tinyos-prod

Here you can find more detailed instructions.

Get platform files. Put this repository somewhere you like, for example to home:

cd ~/
git clone git://github.com/andresv/ccbee.git

Create symlinks to platform files:

ln -s ~/ccbee/software/tinyos/ccbee.target ~/tinyos-prod/support/make
ln -s ~/ccbee/software/tinyos/ccbee ~/tinyos-prod/tos/platforms

Now it is possible to compile TinyOS apps for ccbee. Try it!

cd ~/tinyos-prod/apps/Blink
make ccbee

Use MSP-FET430UIF or alternative to download image to the microcontroller. This example shows how to use mspdebug for doing that.

mspdebug uif -d /dev/ttyUSB0 "prog build/ccbee/main.ihex"

Measurements

It seems that RF part is currently quite bad. Probably it is due to 2 layer design and I guess this coplanar waveguide does not work as expected. With PATABLE0 set to 0xC0 (max) I measured 3 dBm, with 0xC3 2 dBm and with 0xC6 about 1 dBm. Actually with 0xC0 it should be near 10 dBm. PATABLE0 can be set in Makefile:

CFLAGS += -DSMARTRF_SETTING_PATABLE0=0xC0

Firmware

Serial <-> radio bridge firmware is not yet ready.

LICENSE

hardware and software

About

XBee clone using TI CC430F5137 microcontroller

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published