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.

LAUNCHXL-CC1310: CC13xx : How to use the bFsOff-flag for lowest power consumption

Part Number: LAUNCHXL-CC1310

I am a little bit confused about the use of the bFsOff-flag in the different RF-commands.

I developing an application where power consumption is critical and i need the WOR-function. As i think that the frequency synth in the radio need power, i want avoid to run it in the times between the radio activities. But the use of cmdFS and the bFsOff-flag is not clear for me. The WOR-example does not set the bFsOff-flag, but i think it is only a simple example and not optimized for low power.

- Have i always to set this field to switch off the frequency synth for low power consumption?

- Does the radio driver switch the frequency synth off by it self after some time?

- Have i always to issue a cmdFs after switching off the synth to restart it?

  • Hi,

     The setting .bFsoff is used to select between keeping the synth on after TX or RX and by default it is programmed to stay on.

    I wouldn't change these in the WOR example code. The current conumption will depend on number of wake-ups in an intyerval depending on RF link parameters.

    Between wake ups the current should be around 1uA or slightly less. See this post for more information.

    https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz/f/156/t/578024

    regards,

  • Hi,

    as far i understand your post, it is not usefull to switch the synth off with the bFsOff-flag because the Radio goes to sleep by default between actvities.

    Some questions remain:

    • At what time it is usefull to switch the synth off with the bFsOff-flag?
    • After switching the synth of, does it restart automatically on next Radio activity, or has it  to be restarted with cmdFs?

    In my application i use the unmodulated transmission with cmdTxTest together with normal data transmissions. My observation is that i have to use a cmdFs between cmdTxTest. Otherwise the cmdTxTest will not work. Is this a bug, or it is by intention?

    Background information: My application is for Wildlife telemtry. The unmodulated transmissions are for localisation by direction finding and the 'normal' transmissions are for data transfer.

    regards

  • Hi,

    Can you elaborate the sequence of radio operations in your application?

    Synth is turned off during sleep for low power consumption but TI-RTOS takes care of this during packet intervals. Every time there is radio activity the synth turns on and calibrates with CMD_FS and does a TX or RX.

    You could also use command chaining where you can assign the next command to be a TxTest command with the following line of code in the rfc_CMD_PROP_TX_t structure.

    RF_cmdPropTx.pNextOp = (rfc_radioOp_t*)&RF_cmdTxTest.

    more about that here: http://dev.ti.com/tirex/content/simplelink_cc13x0_sdk_1_00_00_13/docs/proprietary-rf/html/rf-core/conditional-execution-and-chaining.html

    This way you will transmit a tone when every packet ends.

    Regards,

  • Hi,

    to mark some events i send a sequence of short 'Tones' with cmdTxTest. The command chain for this is :

    • CMD_FS
    • CMD_TX_TEST with bFsOff = 0
    • CMD_FS
    • CMD_TX_TEST with bFsOff = 0

    If i omit the second CMD_FS only the first CMD_TX_TEST works and the second CMD_TX_TEST fails (no TX and runtime of cmd near 0). As far as i have read the documentation the second CMD_FS should not be necessary.

    My other question is, what is the use case for setting bFsOff=1? 

    Regards

  • Hi Jan,

    If I try your sequence I do not see the same results.

    I have tested the command chaining with .config.bFsOff = 0x0 in the rfc_CMD_TX_TEST_t. The setup transmits a packet every second followed by a CW tone.

    I just initialize the radio once with RFC_setupRadio((rfc_radioOp_t*)&RF_cmdPropRadioDivSetup) and 

    RFC_sendRadioOp((rfc_radioOp_t*)&RF_cmdFs) and the run  RFC_sendRadioOp((rfc_radioOp_t*)&RF_cmdPropTx) in a loop.

    See the spectrum analyzer plot in zero span.

    One use case I can think of is when the device is put into sleep mode but the TI-RTOS takes care of that.

    Regards,