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.

How the Range Extender Application works in SimpliciTI-IAR-1.2.0 project Examples

Other Parts Discussed in Thread: SIMPLICITI, TEST2

Dear Ti,

I am working with the examples Folder SRF04.In this folder i am working on AP_as_Data_Hub workspace.

in that i changed the bsp for this EVK CC1110EM 868 and 915MHz.

I tried and i executed and established the communication between ED - AP.i got distance 15 meters.

when i tried and establish communication between ED - RE - AP, it is not sending the data from ED to AP. the ED with in range of AP only it is working, but in out of range using RE it is not working.

if i use RE, i have to get minimum 30 meters distance from ED -AP but i am not getting.

please help on range extender application, how it works, is there any changes need to do in application. please share the details regarding range extender application.

we are trying to build the network as per the TI reference but we are unable to achieve.please find the below reference and please share the details how it works. we have CC1110EM 868 and 915MHz. EVKs, we want to execute with this EVKs.

  • can any one please help on the above.
  • Have the RE successfully linked to the network? The RE will attempt to link when the SMPL_Init()function is called.

    I would recommend that you are using the packet sniffer when trying to debug the problem. It will show you all SimpliciTI packets on the air. The RE will replay the packet received from the ED and decrement the hop count.

    BR

    Siri

  • Hi Siri,

    Thanks for your Information.

    I am able to receive the messages from ED to AP through RE. it is happening with the below procedure.

    first i switched on AP, then i switched on RE with in the range of AP and I switched on ED with in the range of AP the ED paired with AP then after I brought the ED out of range from AP the AP is able to receive the message from ED because of RE.here i have not calculated the distance.

    but here i have one doubt.

    The ED is not pairing with AP in out of range using RE ?
    1) like ED - RE - AP with this scenario the ED is Not paring.
    2) but ED - AP with this scenario it is paring.
    3) and next ED - RE - AP scenario is working.

    how i can able to do paring ED with AP using RE like first scenario. is there any changes need to do in RE application ?
    please help on the above..

    waiting for your quick reply.
  • Hi,

    can any one please help on the above.
  • Hi Ravi,

    Have you tried to apply the fix which is mentioned here:

    processors.wiki.ti.com/.../SimpliciTI_FAQ

    could you also check what is the value of MAX_HOPS_FROM_AP in you smpl_nwk_config.dat configuration file? it must be grater than one (just put 2 or 3) to enable RE do the frame forwarding.

    looking at the code, in nwk_frame.c, function dispatchFrame(), you can find the following code:

      /* If it's a network application port dispatch to service routine. Dispose
       * of frame depending on return code.
       */
      if (port && (port <= nwkAppSize))
      {
    #if defined(SMPL_SECURE)
        /* Non-connection-based frame. We can decode here if it was encrypted */
        if (!nwk_getSecureFrame(&fiPtr->mrfiPkt, MRFI_GET_PAYLOAD_LEN(&fiPtr->mrfiPkt) - F_SEC_CTR_OS, 0))
        {
          fiPtr->fi_usage = FI_AVAILABLE;
          return;
        }
    #endif
        rc = func[port-1](&fiPtr->mrfiPkt);
        if (FHS_KEEP == rc)
        {
          fiPtr->fi_usage = FI_INUSE_UNTIL_DEL;
        }
    #if !defined(END_DEVICE)
        else if (FHS_REPLAY == rc)
        {
          /* an AP or an RE could be relaying a NWK application frame... */
          nwk_replayFrame(fiPtr);
        }
    #endif
        else  /* rc == FHS_RELEASE (default...) */
        {
          fiPtr->fi_usage = FI_AVAILABLE;
        }
        return;
      }
      /* sanity check */
      else if ((port != SMPL_PORT_USER_BCAST) && ((port < PORT_BASE_NUMBER) || (port > SMPL_PORT_STATIC_MAX)))
      {
        /* bogus port. drop frame */
        fiPtr->fi_usage = FI_AVAILABLE;
        return;
      }

    As you can see above, if a node works as RE or AP, it will forward any NWK application frames such as link, join, etc. 

    I would suggest to sniff the messages on the air to see whether the ED really sends out the pairing/linking request frames, forwarded by the RE to AP, accepted by the AP, AP sends linking response, forwarded by RE back to ED. I would suggest that you run the sniffing twice, first put the sniffer near the ED to see it sending out link request and also see the RE forwarding the same frame with hop count decremented. Then put the sniffer near the AP to see whether the AP receives the link request and sends out a link response.

    Hope this helps.

  • Hi Leo Hendrawan,

    Thanks for your valuable information.

    I am able to execute Range Extender application as per the TI Reference. ED -- RE --- AP

    I am able to execute the above with the below RF settings.

    #define SMARTRF_SETTING_FSCTRL1 0x12
    #define SMARTRF_SETTING_FSCTRL0 0x00
    #define SMARTRF_SETTING_FREQ2 0x22
    #define SMARTRF_SETTING_FREQ1 0xB1
    #define SMARTRF_SETTING_FREQ0 0x3B
    #define SMARTRF_SETTING_MDMCFG4 0x2D
    #define SMARTRF_SETTING_MDMCFG3 0x3B
    #define SMARTRF_SETTING_MDMCFG2 0x13
    #define SMARTRF_SETTING_MDMCFG1 0x22
    #define SMARTRF_SETTING_MDMCFG0 0xF8
    #define SMARTRF_SETTING_CHANNR 0x14
    #define SMARTRF_SETTING_DEVIATN 0x62
    #define SMARTRF_SETTING_FREND1 0xB6
    #define SMARTRF_SETTING_FREND0 0x10
    #define SMARTRF_SETTING_MCSM0 0x18
    #define SMARTRF_SETTING_FOCCFG 0x1D
    #define SMARTRF_SETTING_BSCFG 0x1C
    #define SMARTRF_SETTING_AGCCTRL2 0xC7
    #define SMARTRF_SETTING_AGCCTRL1 0x00
    #define SMARTRF_SETTING_AGCCTRL0 0xB0
    #define SMARTRF_SETTING_FSCAL3 0xEA
    #define SMARTRF_SETTING_FSCAL2 0x2A
    #define SMARTRF_SETTING_FSCAL1 0x00
    #define SMARTRF_SETTING_FSCAL0 0x1F
    #define SMARTRF_SETTING_TEST2 0x88
    #define SMARTRF_SETTING_TEST1 0x31
    #define SMARTRF_SETTING_TEST0 0x09
    #define SMARTRF_SETTING_PA_TABLE0 0x8E
    #define SMARTRF_SETTING_PKTCTRL1 0x04
    #define SMARTRF_SETTING_PKTCTRL0 0x05
    #define SMARTRF_SETTING_ADDR 0x00
    #define SMARTRF_SETTING_PKTLEN 0xFF

    with the above settings i am able get the distance 15 to 20 meters in NLOS with out using RE like ED ---AP. when i use Range Extender in between ED and AP like ED --- RE ----AP i am able to get 5 more meters it is extending.

    when i use RE it has to double the range means I have to get 30 to 40 meters in between ED and AP.
    1) can you please help on the above how to improve the distance between ED and RE?

    The below RF settings i tried.

    #define SMARTRF_SETTING_FSCTRL1 0x06 //0x12
    #define SMARTRF_SETTING_FSCTRL0 0x00
    #define SMARTRF_SETTING_FREQ2 0x21 //0x22
    #define SMARTRF_SETTING_FREQ1 0x65 //0xB1
    #define SMARTRF_SETTING_FREQ0 0x6A //0x3B
    #define SMARTRF_SETTING_MDMCFG4 0xF4 //0x2D
    #define SMARTRF_SETTING_MDMCFG3 0x43 //0x3B
    #define SMARTRF_SETTING_MDMCFG2 0x13
    #define SMARTRF_SETTING_MDMCFG1 0x22
    #define SMARTRF_SETTING_MDMCFG0 0xF8
    #define SMARTRF_SETTING_CHANNR 0x00 //0x14
    #define SMARTRF_SETTING_DEVIATN 0x15 //0x62
    #define SMARTRF_SETTING_FREND1 0x56 //0xB6
    #define SMARTRF_SETTING_FREND0 0x10
    #define SMARTRF_SETTING_MCSM0 0x18
    #define SMARTRF_SETTING_FOCCFG 0x16 //0x1D
    #define SMARTRF_SETTING_BSCFG 0x6C //0x1C
    #define SMARTRF_SETTING_AGCCTRL2 0x03 //0xC7
    #define SMARTRF_SETTING_AGCCTRL1 0x40 //0x00
    #define SMARTRF_SETTING_AGCCTRL0 0x91 //0xB0
    #define SMARTRF_SETTING_FSCAL3 0xE9 //0xEA
    #define SMARTRF_SETTING_FSCAL2 0x2A
    #define SMARTRF_SETTING_FSCAL1 0x00
    #define SMARTRF_SETTING_FSCAL0 0x1F
    #define SMARTRF_SETTING_TEST2 0x88
    #define SMARTRF_SETTING_TEST1 0x31
    #define SMARTRF_SETTING_TEST0 0x09
    #define SMARTRF_SETTING_PA_TABLE0 0xC2 //0x8E
    #define SMARTRF_SETTING_PKTCTRL1 0x04
    #define SMARTRF_SETTING_PKTCTRL0 0x05
    #define SMARTRF_SETTING_ADDR 0x00
    #define SMARTRF_SETTING_PKTLEN 0xFF

    with the above settings I am able to get 40 to 50 meters distance between ED and AP.but here Range Extender Application is not working .
    2) is the register configuration right or any changes need to be done?

    please help .

    waiting for reply
  • Hi TI,


    can any one help for the above...