Jump to content

Energia FCC WirelessTest.ino -45dbm strength with MSPF4305529/CC110L

Recommended Posts

Energia Version energia-1.6.10E18 I beleive this is refered to as Energia V17
Anaren C110L Booster Pack - there is no revision on silkscreen
MSP430F5529 Launc Pad Rev 1.6
Running Energia Sketch AIR430BoostUSAFCC -WirelessTest.ino
Including test serial output dispaly at end of this write up

Basic Problem: CC110l Signal Receive strenght is reported near minimum when boards are only 6 inches to 1 foot aparts. Range is only a few feet before test crash. RSSI reports -45 at about 6-8 inches and -60 at 12-14 inches.

I'm running wirelesstest.ino using 2 configurations of MSP430F5529 with a CC110L Booster Pack. This test sets up both boards to transmit and recevie an incrementint 0-9 count from each other and display the DATA count with RSSI, LQI, CRCBIT status info. It infintely repeats, no action required. I have both on seperate USB ports on my laptop mapped to serial COM5 and COM7. Both COM ports put out the status seen below and repeat endlessly with no error. I had same problem with previous version of energia and have tried ths with 4 different CC1101 boards. The launch pads run other programs fine.

The boards are about 6 inches aprt and report RSSI value of -45 and going to about a foot its -63, I can see the RSSI value change in real time as I move the boards closer or further apart. The sketch has variable POWER_MAX set.   I runt the sketch through Energia showing the near bottom signal strenght and I have also imported the wirlesstest.ino to CCS and reloaded the code o launchpads using CCS to try to find out what value is being programmed for power level but I'm not so experienced in debugging this very complcated driver code with structures calling structures and pointers used everywhere. 

I can't understand why the signal strenght is so low, I can see any configuration error I'm making either H/W or Energia -wise. If the code is bugged surley other would see this. But it seems like for some reason the POWER_MAX variable is not being programmed correctly. It goes through several redefines and POWER_MAX is reall not POWER_MAX,  It sets the board to around 4dbm as I can trace through the driver files but that is pretty high power anyway, and I should be able to go thru rooms and not drop out with boards a few feet apart. I have tried this in different rooms and places and have tied battery power to my boards to seperate them from the PC and I get the same problem. The other wireless tests in the FCC directory fail as well after a few feet of board seperation.

As far as RSSI value reported below the CC110L specification Section 5.18.2 page 37, in middle of page it has a note saying RSSI is reported in dbm value. Below that it states the RSSI Status Register is a 2s compliment and gives equations of how to convert to dbm, below that are graphs that show Power Level vs RSSI value. These 2 graphs are nearly 100% linear so fo a given RSSI value, lets say best case I'm getting of -45, the output  power level is -45 dbm. So weather RSSI resgister is the actual dbm or needs conversion either way, my power is near bottom and after a seperation of a few feet the serail output stops logically because there is near 0 signal strenght

My though is to try and use CCS to find what value is being programmed for power level. That is not so easy, I've debugged and looked over the code in great detail but I'm more towards the upper novice when it comes to code this complicated. If anyone has an idea why this low signal level may be happening or can advise a idea of what I could use as a watchpoint for the programmed power level value that would help alot. I've had these for 6 months now and have yet to make them work at anything other than a few feet of distance.

Some CCS debug info I've found:

  • Sketch Begins with   Radio.begin(0x01, CHANNEL_1, POWER_MAX);
  • In A110X2500Radio.c POWER_MAX is redfiend: Line 77 #define POWER_MAX  POWER_4_DBM   // Alias for maximum provided power
  • In A110X2500Radio.c Line 69   POWER_4_DBM  = 0,   // 4dBm
  • In A110LR09Config.h starting at Line 64 there is a large " Power Table user Settings"
    • All but 5 entries are commented out.
    • One of the uncommented lines, Line 85 #define A110LR09_POWER_4_0_DBM        // 4.0dBm
    • Note the A110LR09_POWER_4_0_DBM very close to POWER_4_DBM from A110X2500Radio.c Line 69
    • I'm wondering if this table is supposed to be selecting the actual power level and for some reason the #define POWER_MAX  POWER_4_DBM statement that occurs early on is not getting translated or equated correctly, the code doesn't see a valid power level selected and its programmed at this low value or this low power level I'm seeing is the default?

Thanks a million , sorry for the book I wrote, would this have been more appropriate put in Energia Libraries, I'm a newbie, not sure - Don

Below is the output from one of the boards on serial port, the other boards output is identical.

RX (DATA, RSSI, LQI, CRCBIT): (0Air!, -45, 0, 1)
TX (DATA): 2Air!
RX (DATA, RSSI, LQI, CRCBIT): (1Air!, -45, 0, 1)
TX (DATA): 3Air!
RX (DATA, RSSI, LQI, CRCBIT): (2Air!, -45, 0, 1)
TX (DATA): 4Air!
RX (DATA, RSSI, LQI, CRCBIT): (3Air!, -45, 0, 1)
TX (DATA): 5Air!
RX (DATA, RSSI, LQI, CRCBIT): (4Air!, -45, 0, 1)
TX (DATA): 6Air!
RX (DATA, RSSI, LQI, CRCBIT): (5Air!, -45, 0, 1)
TX (DATA): 7Air!
RX (DATA, RSSI, LQI, CRCBIT): (6Air!, -45, 0, 1)
TX (DATA): 8Air!
RX (DATA, RSSI, LQI, CRCBIT): (7Air!, -45, 0, 1)
TX (DATA): 9Air!
RX (DATA, RSSI, LQI, CRCBIT): (8Air!, -45, 0, 1)
TX (DATA): 0Air!
RX (DATA, RSSI, LQI, CRCBIT): (9Air!, -45, 0, 1)

Link to post
Share on other sites

Have you tried to use the demo software included with the CC110 Booster Pack to verify performance?  It allows you to set the various parameters of the CC110 from a GUI.  The default program for the Launchpad itself is preprogrammed in the MSP430G2553's included with the CC110 Booster Pack.  I was able to achieve reliable communications between two modules at a distance of 300 feet or more between two floors inside a concrete/metal commercial building. 

Link to post
Share on other sites

By demo software do you mean the GUI to control and change parameters or I see a CCS project under CDROOT\Firmware\CCS and I'd assume its using the libraries under CDROOT\Firmware\src, thats the only place with libraries. I haven't tried that, didn't' know how to make it work with a msp430f5529lp and I didn't see any documentation on it, for example what kind of test is it? Is it same as the Wirlesstest.ino in Energia or does it just flash led's when I push a button, does it output information I need to read on a serail port?  Like the GUI I think that firmware is  expecting the  MSP-EXP430G2 board from what I can see in the directories, did you use theEXP430G2 launchpad or another. If you have a pointer of what I'd need to modify to make it work on the 5529LP I'd appreciate it much or can you explain to me basically how to use that firmware I'd really appreciate it. I understand how to use CCS .

If you are talking about the GUI it won't run on the msp430f5529lp it wants the  MSP-EXP430G2, below is what I did to try and make the GUI work on the 5529LP or with just putting a processor on the CC110L board. You dont need to read it, its kind of off topic and I dont want to change this to a topic of how to port the GUI sofware to other boards, just FYI below, maybe I should tick with trying to get that other software on the disk 

Thanks much my friend! -Don

The GUI, wants the MSP-EXP430G2 Launch pad and it doesn't work on the msp430f5529lp I have. Seems that I should be able to change a board description file to make it work but I cant find a way to do that. I put  socket on the CC110L board, thinking I could put the processors that comes with the CC110L kit, it should look just like the 430G2 board then, it has same connections from processor in socket to CC110L. My plan was to use the ezFET Lite emulator on my 5529LP, to communicate to that socketed processor on the CC110L board. I removed the 2-pin jumpers on my 5529LP between the emulator and 5529LP section, then jumpered the UART signals and jtag signals from the emulator up to CC110L board, and of course power and gnd. That should have worked but I got no communications. I had same eact wiring as what the 430G2 board would have had but it didnt work with the anaren demo software. Maybe the processor they gave me wasn't pre flashed, I had read others had that problem but that was people back 2 or 3 years ago when Anaren first released the board.

 Thanks for the advice, if anything pops up please advise. I'm going to try to flash the processor anaren gave me or I'll just spring for 2  MSP-EXP430G2 to see if these CC110L's work, I bought alot of 5529LP launch pads, kind of aggrevates me I've been stuck this long and they wont work uunder a supposedly perfect Energia sketch.

Link to post
Share on other sites

My apologies.  I did see that you had mentioned the fact that you are using the 5529.  I didn't connect the dots very well between your hardware and the MSP430G2 Launchpad as it pertains to the CC110 Booster Pack.  When I tested the CC110 I did use the MSP430G2 so disregard my comments on everything except the actual results of my distance test. 

Perhaps @energia could jump in and shed some light on the Energia implementation as it pertains to the CC110 Booster Pack and the issue you are experiencing.

Wish I could have been more help.

Link to post
Share on other sites

Join the conversation

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

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...