This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Smart RF Studio Crash

Other Parts Discussed in Thread: CC430F5137, TEST2, SIMPLICITI

Hello folks,

I'm trying to use the Smart RF studio to investigate why one of my custom boards is transmitting at 437 MHz instead of 433 MHz. Most of my other identical custom boards are quite well behaved and actually transmit at 433 MHz.

The Smart RF studio successfully detects the device. Unfortunately, the Smart RF studio crashes when I try to load the device control panel. The program crashes in Qt5Core.dll and I can share a crash dump if you folks give me a share. Workarounds are extremely welcome as well!

  • - Which version of Studio do you use? If not the newest, download here: http://www.ti.com/tool/smartrftm-studio

    - Does it crash at the same place every time? In that case share the crash log.

    For the frequency offset, which chip do you use and which crystal frequency? Carrier on the wrong frequency could be:

    - Different xtal that expected/ wrong frequency word

    - VCO out of lock.

    When sending on 437 MHz, does the spectrum look nice?

  • - Yup, I'm using the latest Smart RF studio.

    - Yup, it always crashes when "... Help Documentation" (immediately after "Initialize RF device"). Where's the crash log? I have a dump but that might be a little too large to share on the forums.

    - I am using a CC430F5137 with a 26 MHz crystal. I don't think there's a problem with the crystal/frequency word; I have 5 identical boards and all of them transmit at 433 MHz.

    - VCO out of lock. I assume you mean that the FLL is disabled right? I've actually tried running with LPM0 and I still hit the same problem with this board.

    Here's the waterfall diagram that I grabbed using an RFExplorer (the left edge is 425 MHz and the right edge is 445 MHz):

    Also, another weird observation, if I remove the antenna, I get a 433 signal with the same board. Also, when using a different antenna (one with higher gain), I actually hit a hang in one of the ReadSingleRegister functions because there is no DOUT interrupt, which may be related to http://e2e.ti.com/support/microcontrollers/msp430/f/166/t/178388.aspx. I mean, I guess I can understand why it is happening but it is strange that it happens only with a specific antenna :|

  • Is it only one CC430 connected to SmartRF Studio? I did some testing yesterday and Studio froze if anything else was connected.

    It should not be possible to change the frequency by removing the antenna. It seems like the VCO gets unstable. The plot you sent also indicate this since all energy should be at one frequency. Have you followed the ref design on your boards?

  • There was only one CC430 connected. It was connected via a USB hub, not sure if that made a difference. I can retry with a direct connection tomorrow (I guess it would be later today...).

    Hmm.. There are a few differences. Instead of the LC network in RF_N and RF_P, I am using a balun instead. Also, it seems like the reference design uses a 26 MHz crystal with 16pF load cap with 27pF caps. I am using a 26 MHz crystal with 10pF load cap with 15 pF caps. I can definitely do a swap on the crystal/caps and try again.

    So, why is the frequency changing then? Also, any idea about the hangs only with a specific antenna?

    Regardless, thanks for the super quick responses! :)

  • Could you share the schematic? At least the RF part of it.

    Could you also share a screendump of Studio before you try to connect (so it shows what you have connected, the "list of connected devices"

  • We're using the RF part of the schematic from page 4 of http://www.wizzilab.com/wp-content/uploads/2013/03/WizziKit2-Datasheet.pdf

    Crystal: 403C11A26M00000 (http://www.mouser.com/ProductDetail/CTS/403C11A26M00000/?qs=%2fha2pyFaduijlzAmsDtDNG5xh6AnNLbIT%252bZC3YvOpatkR%252bplwgauWQ%3d%3d)

    Balun: 0433BM15A0001E (http://www.mouser.com/ProductDetail/Johanson/0433BM15A0001E/?qs=%2fha2pyFadujS5eSAm%252b6dCWETeroRdt%252bYzk%2fAcVBtpQjc07s31Pwkqg%3d%3d)

    I'll share the screen shot later when I boot into Windows. I don't suppose there's a smart RF studio for linux, is there?

  • Also, about your earlier comment that the VCO is unstable, I set FS_AUTOCAL = 1, so I would assume that the VCO is calibrated everytime my device wakes up from IDLE. Or are you trying to say that there are other causes of the VCO being unstable?

  • Also, I tried the SmartRF studio on another laptop today and it was working fine there. In addition, I was able to generate a pretty clean 433 MHz signal consistently using the tool (I verified it using the RF explorer). I'll see what the differences are between their register settings and mine; hopefully I'll be able to fix this in the FW.

    BTW, are there any big issues with the schematic that I shared?

  • No, the schematic looks fine.

    From what you write it sounds like a register setting/ software issue.

  • One (potentially large?) difference I had between the Smart RF studio settings and my RF settings was the channel BW. Mine was set to 400 KHz but Smart RF studio had a channel BW of 60 KHz.

    I switched to a smaller channel BW and it seems to have made the RSSI values a little better (although, I don't have a rigorous RF experimental set up). What is the explanation here? How does listening to a narrower channel help RSSI values? Or am I imagining things with the RSSI improvements?

    Also, another thing I don't get is if this is a software/register settings issue, why does it reproduce so consistently on one board but not on the other identical boards?

  • Any other ideas from the folks here?

    Another data point, it seems that any of the boards can get into this state of transmitting at 437 MHz. A board that was transmitting at 433 MHz last week is now transmitting at 437 MHz. When it gets into this bad state, it just stays transmitting at 437 MHz regardless of the number of times I program the chip.

    If I change the FREQ2, FREQ1, FREQ0 registers, I do see the transmissions shift accordingly, which makes me think that the 437 MHz I see when I set FREQ to 433 MHz is some calibration issue. However, I set the device to auto-calibrate upon waking up from idle so I find it hard to believe that it is a calibration issue.

    Are there any other radio registers that I should be looking more closely at?

  • This is either a hardware or software issue or both.

    Did you get SmartRF Studio to work in the end? If yes, do you see the issue then? If no, have you double checked the TEST2, TEST1 and TEST0 register settings?

    Do you see the same if you try to send on 315 MHz or 868 MHz? The balun will attenuate the carrier at these frequencies but you should be able to see if the carrier is at the correct frequency.

  • Yeah, I got SmartRF Studio to work in the end. With Smart RF studio, I can get a clean 433 MHz signal, which makes me think that this is a software issue. I didn't look too carefully in the TEST* registers but I can check them out tomorrow. But really, what do you think can cause the frequency synthesizer to generate the wrong frequency? I've checked the FREQ, MDMCFG registers and verified that the VCO is stable by checking FSCAL1 != 0x3F.

    The other thing that I can do is try to understand the difference between the SimpliciTI stack and the radio stack that I'm using. 

  • The chip contains 2 VCOs and dependent on the frequency either the "low" or "high" has to be selected. For some frequencies both will work but not equally good. In your case wrong settings could cause the wrong VCO to be selected and that this is not able to cover 433 MHz.

  • Ah, interesting. Where in the datasheet is this documented? Also, are you referring to "VCO_CORE_H_EN"?

    If not, how do I choose one VCO over another? How does the micro choose a VCO?

  • I recall changing the value of "VCO_CORE_H_EN" earlier today and didn't observe a difference. Do I need to set "VCO_SEL_CAL_EN" as well? Smart RF Studio doesn't set "VCO_SEL_CAL_EN" though....

  • Check that you use the recommended settings from SmartRF Studio, the selection of the VCO is done in a few registers, one of them is TEST0.