Jump to content
43oh

Anaren TI CC110L RF AIR Booster Pack


Recommended Posts

CorB,

 

Ialso experienced a faulty LaunchPad. One of my LaunchPads has a non-responsive button. I've been using it for other projects, mainly prototyping a "shield" with a BEAM Nv neuron circuit for some robotics ideas I have. However the two boards I am using for the BoosterPacks seem to be fine in every way. Both of them have been used multiple times with various LED-blinking programs, etc etc and everything seems fine with them.

 

John

Link to post
Share on other sites
  • Replies 128
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Here's an updated CCS project for the Anaren Air Booster Pack. It's quite obvious they're not familiar with CCS. Included directories are very vague and leave header includes looking like "../../../HA

I was similarly frustrated with Anaren but especially TI for a short while, until I realized that TI actually have some simple example RF code out there in nice BSD licenses. That's the code that http

Hi all,   Anaren has released an update of their firmware and its now also available for CCs   http://www.anaren.com/content/File/AIR/ ... upport.cfm   cheers   Cor   EDIT: just checked the

Posted Images

I have compiled this code onto the two devices. When triple-clicking the button, both of them toggle between two blinks and three blinks, which tells me that they are ready for pairing.

 

However, when I plug either of them in, the ATC Booster Stack lite GUI does not find them. Has anyone had this problem? My TX/RX jumpers are turned (I have the latest versions of the MSP430 boards, just came in the mail last week).

 

I've walked through the quick start several times without any successful connection to the GUI. I'm pretty sure I'm doing something wrong but it beats me what it is.

 

All comments appreciated. Thanks in advance!

John

 

 

Hi,

 

I havent had that type of problem using the original firmware, I have since switched to using the code Larsie has made public (also shared overhere). This code is really small (~2Kb), and although you need to develop your own setups for sending/receiving messages I feel that this is a lot easier than adapting the Anaren code.

 

regards

Cor

Link to post
Share on other sites
  • 2 weeks later...

I have compiled the code in Anaren_CCS as well and have the same problem. It seems to connect to the first connected unit, even shows the graph of chip temperature, but refuses to pair with the other unit. We're getting close, but still no cigar. One other odd thing, when using the original firmware chips from TI the hub & sensor show two very different temperature readings, even though the two radios are on the same anti-static mat covered table. :|

Link to post
Share on other sites

Hi,

 

The fact that the units show different temperatures is not a worry, the measured temperatures of the MSP430G2553 need to be cali brated before you can compare them properly. I have decided not to go forward with the Anaren firmware but just go with the far more simple code based on the SLAA325 application note of TI.

 

regards

Cor

Link to post
Share on other sites

@CorB, I've done the same thing. I'm sticking with SimpliciTI and the opensource slaa325 libraries.

 

Reasons:

1. Anaren firmware is extremely bloated.

2. Anaren firmware is extremely confusing.

3. ..\..\..\..\..\..\..\..\..\..\..\Hal.h

4. They didn't need to re-invent the wheel.

5. Portability (you can't install the Anaren firmware on a Chronos so you can't communicate with it)

6. Poor release and documentation of usable software.

 

But, I do have to say, I love the hardware. It's a great wireless development package for super cheap.

Link to post
Share on other sites

Thanks for that Cor, since the bloatware from Anaren had so many modules I just assumed the temperature would have been calibrated. :D A far more usable demo of this product would have been 2 modules, one to set up the radio once as to frequency, data rate, power etc. and another for simple but expandable data exchanges. But we all know TI never does anything the easy way.

Link to post
Share on other sites
  • 2 weeks later...
Thanks for that Cor, since the bloatware from Anaren had so many modules I just assumed the temperature would have been calibrated. :D A far more usable demo of this product would have been 2 modules, one to set up the radio once as to frequency, data rate, power etc. and another for simple but expandable data exchanges. But we all know TI never does anything the easy way.

 

I was similarly frustrated with Anaren but especially TI for a short while, until I realized that TI actually have some simple example RF code out there in nice BSD licenses. That's the code that https://github.com/mobilars/LarsRF is based on. So I've forgiven them :D:D:D ... especially since the sell their Launchpad device at such a DIY-friendly price, which must be below their cost even at the large volume they are making it. They deserve a lot of credit for that.

Link to post
Share on other sites
  • 2 weeks later...

Larsie,

First - big thank you for the git code - it's an awesome start.

 

I'm testing the LED blink app you provided and I'm running into a problem. Once I've clicked the button on one device a couple of times, the other gets stuck waiting for the RFSendPacket (CC1100-CC2500.c) to complete. Specifically, it's stuck on

while (!(TI_CC_GDO0_PxIN&TI_CC_GDO0_PIN));

 

Any idea what's going on? Does anyone else have a booster that they could test with? Bit 7 is set on P2IN, but all other bits are 0. I'm using CCS 5.

 

Thanks!

Link to post
Share on other sites
Larsie,

First - big thank you for the git code - it's an awesome start.

 

I'm testing the LED blink app you provided and I'm running into a problem. Once I've clicked the button on one device a couple of times, the other gets stuck waiting for the RFSendPacket (CC1100-CC2500.c) to complete. Specifically, it's stuck on

while (!(TI_CC_GDO0_PxIN&TI_CC_GDO0_PIN));

 

Any idea what's going on? Does anyone else have a booster that they could test with? Bit 7 is set on P2IN, but all other bits are 0. I'm using CCS 5.

 

Thanks!

Hi Cuberg,

 

I am using the same basic code as Larsie and have had the same issue as you report some time ago. Ive added some additional code (see below) and I dont have any issues anymore. In my test-setup I have currently 3 Sensors (2 on batteries, 2xAAA or CR3025) and 1 Hub, they send data (mainly battery level as I am testing how long a setup can run from batteries) every 10 seconds. All sensors are at sleep most of the time and wake-up every 10 seconds, send a package and go to sleep again. Every 5th package asks for an ACK from the Hub, sensors wait for the ACK to come back (not sleeping). In the ACK-reply from the HUB every sensor learns how strong its signal is when received by the Hub, sensors do self power up/down (paTable) to minimize transmission energy whilst keeping a good connection.

 

Here;s the modified code for RFSendPacket

 

void RFSendPacket(char *txBuffer, char size)

{

 

// added 20120123 based on ANAREN code

TI_CC_SPIStrobe(TI_CCxxx0_SIDLE); // set to IDLE

TI_CC_SPIStrobe(TI_CCxxx0_SFRX); // Flush RX

TI_CC_SPIStrobe(TI_CCxxx0_SFTX); // Flush TX

// end new 20120123

 

TI_CC_SPIWriteBurstReg(TI_CCxxx0_TXFIFO, txBuffer, size); // Write TX packet structure data

 

TI_CC_SPIStrobe(TI_CCxxx0_STX); // Change state to TX, initiating data transfer

 

while (!(TI_CC_GDO0_PxIN&TI_CC_GDO0_PIN)); // Wait GDO0 to go hi -> sync TX'ed

while (TI_CC_GDO0_PxIN&TI_CC_GDO0_PIN); // Wait GDO0 to clear -> end of pkt

 

TI_CC_SPIStrobe(TI_CCxxx0_SRX); // Change state to RX after sending

 

TI_CC_GDO0_PxIFG &= ~TI_CC_GDO0_PIN; // After pkt TX, this interrupt flag is set.

// Has to be cleared before exiting

 

 

}

 

 

cheers

Cor

Link to post
Share on other sites

Thanks CorB, it's very helpful to know that you were seeing the same issue. I turned off the TX/RX and set up my own code and it isn't hanging anymore. I think it may have actually been the ACK responses that were the problem - the number of packets was different and I didn't see any code handling the smaller response packets. Not sure if there was a different app for the master, but it seemed like an issue.

 

Thanks for the code - I'll take a look @ incorporating it into my project!

Link to post
Share on other sites
... they send data (mainly battery level as I am testing how long a setup can run from batteries) ...

 

That's interesting, is it possible to measure the battery level from MSP430 or are you using an external sensor for this?

 

BTW. I am seeing the led blinking jam from mine CC2500, nice to know that's not my code is causing it :)

Link to post
Share on other sites

ADC input 11 is the supply voltage (Vcc) divided by 2. So using the 1.5V reference allows measuring up to 3V and using the 2.5V reference allows measuring up to 5V (more than the max allowed for the MSP430).

 

If you want units of millivolts, here is the math... (integer for speed and compactness)

 

unsigned read_batt_mv(void)
{
   ADC10CTL0 = 0;
   ADC10CTL1 = INCH_11 | ADC10DIV_3;
   ADC10CTL0 = SREF_1 | ADC10SHT_3 | REF2_5V | REFON | ADC10ON | ADC10IE;

   ADC10CTL0 |= (ENC | ADC10SC);               // Start conversion
   __bis_SR_register(LPM0_bits + GIE);         // Sleep while ADC active - much less noise this way!

   //return ((192188L * ADC10MEM) + 32768) >> 16;  // 1.5 V ref

   return ((320314L * ADC10MEM) + 32768) >> 16;  // 2.5 V ref
}

#pragma vector = ADC10_VECTOR
__interrupt void ADC10_ISR(void)
{
   __bic_SR_register_on_exit(LPM0_bits);
}

Link to post
Share on other sites
  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...