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.

SMARTRFTM-STUDIO: CC1310, inconsistent communication with SmartRF studio

Part Number: SMARTRFTM-STUDIO
Other Parts Discussed in Thread: CC1190, CC1310

I am trying to test 7 FCC units, a combination of CC1310 and CC1310+CC1190 products in the 7x7 package. The units have code in them and Smart RF Studio wasn’t able to stop the firmware on the CC1310 till quite far in the Smart RF Studio boot process. 

Usually as soon as I plug in the powered Launch board 2 wire program connections (RST, TMS, TCK, GND) SmartRF Studio takes control of the CC1310 and stops the code from running

I tried doing the FCC pre-testing, but while SW always seem to communicate with the target device, the commands required to turn on the transmitter are very flakey, working sometimes other times refusing to work. Basically on bad units, when the SW attempts to turn on the transmitter, the commands that appear in the command output window show up about 10 seconds later than they normally do and the unit never turns on. It seems like whatever FW is running on the CC1310 is not able to interpret the commands it is being sent?

  • Hi Nicholas, 

    Which version of SmartRF Studio are you using? 

    Are you testing on CC1310 LaunchPads or custom boards?

    Can you clarify if you can open a device control panel or not? 

    Thanks, 
    Elin

  • SmartRF Studio uploads a RAM FW image and running this should be independent of what ever that is in flash.

    Could you elaborate a bit on "Smart RF Studio wasn’t able to stop the firmware on the CC1310 till quite far in the Smart RF Studio boot process". How do you know this and what do you expect? 

  • Which version of SmartRF Studio are you using? 

    • SW v2.19 

    Are you testing on CC1310 LaunchPads or custom boards?

    • We've tried both:
      • I removed the SW from the TEST computer and downloaded/installed the SW v2.19. When I then plugged in the first unit (custom board), it asked to update the driver again. After updating the driver, it does see the CC1310, but when I try to launch the 1310 app, it will no long will communicate with any of the devices and gives me a reset error
      • When I hook up the CC1310 Launchpad to the onboard radio everything works fine with both computers. For my  boards, I am using the two wire programming interface (TCK, TMS, GND and RESET). Not sure if this matters, but wanted to mention that just in case.  I did hook up the Launch pad the same way, (TCK, TMS, GND and RESET, plus 3.3V and GND)  but somehow it will work with both the TEST computer and my computer just fine, while all the FCC test boards only work with my computer and give the below Reset error when connected to the  TEST computer
    • I am suspecting maybe the problem has to do with the 2 wire cJTAG  vs 4 wire JTAG? On our boards, one of the wires of the JTAG (TDO) is hooked up to an external circuit and TDI is floating. See attached schematic. I am not sure how the JTAG knows to use 2 wire or 4 wire? This would not explain why all my test boards work fine on my computer but not the TEST computer, but what do you think?

    Thanks,
    Nick

  • JTAG interface: 2-pins cJAG is always used at startup. The DUT has to be explicitly told that 4-pin should be used, see the Technical Reference Manual for the chip. Hence this should not be an issue. 

    On the boards that fails: Which debugger do you use (HW)? I note that you are not connecting power, could it be a voltage level issue on the interface? Also if the wires used for JTAG is long I have seen strange error messages. 

  • Hey TER,

    Sorry to jump around a bit but, we were able to figure it out. The battery level was causing a signal integrity issue. If I run the units off a 3.3V (same as the LaunchPad) power supply everything works fine.

    Part of the problem is I don't know the protocol sequencing on the cJTAG that allows it to take over control of the chip when the BootRom on the chip wants to boot the chip off the code running in internal flash, so it's really hard to troubleshoot what's going. Is there any TI app notes on how the cJTAG and Bootloader work? I read the development manual for the CC1310 but that does not explain how SmartRF studio takes control of the chip.

    Thanks,
    Nick

  • How SmartRF Studio controls the chip is not documented. In this case it sounds like you need to use the level shifters to ensure correct voltage level. The XDS110 debugger on the launchpads has build in level shifters, see https://e2e.ti.com/support/wireless-connectivity/other-wireless/f/667/p/582269/2143389#pi239031350=2&pi320995=2 or similar how to connect to a target that is not 3.3 V.