The preset table is actually in the CC1000Const.h file.  You'll see it's an
array of register values starting with:

static const prog_uchar CC1K_Params[6][31] = {
 ....
};

There are two functions you can call in your application in TinyOS 1.x to
adjust the frequency through the CC1000Control interface:

  command result_t TunePreset(uint8_t freq); 

  command uint32_t TuneManual(uint32_t DesiredFreq);

The difference between TunePreset and TuneManual is that TuneManual actually
calculates what the CC1000 register values should be, and the TunePreset
contains pre-calculated values.

The problem is the default CC1000 stack is broken when it comes to changing
frequencies at runtime.  So if you plan on doing runtime frequency changes,
you should really be using Rincon's CC1000 stack (stable but unsupported) in
tinyos-1.x/contribs/rincon/tos/lib/CC1000Radio

-David



-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Benjamin
Madore
Sent: Wednesday, May 02, 2007 11:50 AM
To: [email protected]
Subject: Re: [Tinyos-help] CC1000 Channels


On Wed, May 2, 2007 2:16 pm, Michael Schippling said:
> Perhaps you were looking at the 433Mhz channels which are rather
under-represented. I assumed you meant 916Mhz because that's what I use...
Probably have to go back to the spec sheet to see if there are more
otpions available in the lower freqs.
> MS
>
Yeah, I wasn't thinking and forgot to specify 433 MHz. It's clearer to me
now.

The other set of frequencies I have found so far are:

CH 1 - 433.02 / 433.09
CH 2 - 433.64 / 433.71
CH 3 - 433.20 / 434.27
CH 4 - 434.71 / 434.78

in transmit/receive pairs.
(I have the worst problem with 'i' before 'e' except after 'c'. I keep
getting bugs in my code.)

I also found:
--
The CC1000 uses a digital frequency synthesizer to select a particular
send/receive channel. Specific control registers are programmed with values
according to the channel and FSK separation used. Because of the nature of
the synthesizer, it is only capable of reproducing discrete frequencies in
the operating range of the device. The manufacturer provides tools to
determine these optimal frequencies and their associated control values, but
they are unintuitive and cumbersome to use.

The TinyOS stack and related tools take the guesswork out of tuning the
CC1000 for the MICA2 series motes. The stack will automatically compute the
nearest channel for a given frequency and program the necessary register
values (manual tuning), or use pre-determined values from a preset table
(preset tuning). In addition, the channelgen tool  provides a means to
verify the actual channel used by the radio and simplify the generation of
new presets.
--
I thought it meant that there was a table in the source code, but I can't
find the 'preset table' anywhere. I'm also still a little confused by the
explanation above.

-Ben

>>>> Could someone point me to a document that lists the discreet channels
on
>>>> the
>>>> CC1000. I know I've seen something on it at one time, but I can't
remember
>>>> where, and a search of the archives and Google hasn't turned up what
I'm
>>>> looking for.
>>>> There's just a few listed in the Makefile for Crossbow, and I'd like
the
>>>> whole list.
>>>> Thank you.
>>>> -Ben Madore


-- 
The difference between the right word and the almost right word is really a
large matter- it's the difference between a lightning bug and the lightning.
-Twain




_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to