This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Mesh range, power and mode

Hi, 

In this topic, i was asking about how to increase range in mesh networks. I did some outdoors tests (clear field), changing power (-40, +4, +8 dBm) and mode (1MB and Long Range). Here are my results using light switch example:

nRF52832 / 1MB / +4dBm : ~420 m

nRF52840 / 1MB / +8dBm : ~420 m                                       nRF52840 / 1MB / -40dBm : ~1.3 m

nRF52840 / LR / +8dBm    : ~422 m                                       nRF52840 / LR / -40dBm    : ~1.5 m

It seems that my implementation of the "+8dBm" (which is not defined in Nordic mesh examples) is not correct since i got the same range. I just added a line in the typedef enum "radio_tx_power_t" in radio_config.h. Do i have to do something more to make it work ? What did i miss ? 

/**
 * @brief The tx power configuration values.
 *
 * @note NRF52 does not have -30DBm setting, instead it can be configured to -40DBm,
 * the value of -40DBm and -30DBm are kept the same for code compatibility.
 */
typedef enum
{
    RADIO_POWER_NRF_POS8DBM  = 0x08,
    RADIO_POWER_NRF_POS4DBM  = 0x04,
#ifdef NRF52_SERIES
    RADIO_POWER_NRF_POS3DBM  = 0x03,
#endif
    RADIO_POWER_NRF_0DBM     = 0x00,
    RADIO_POWER_NRF_NEG4DBM  = 0xFC,
    RADIO_POWER_NRF_NEG8DBM  = 0xF8,
    RADIO_POWER_NRF_NEG12DBM = 0xF4,
    RADIO_POWER_NRF_NEG16DBM = 0xF0,
    RADIO_POWER_NRF_NEG20DBM = 0xEC,
    RADIO_POWER_NRF_NEG30DBM = 0xD8,
#ifdef NRF52_SERIES
    RADIO_POWER_NRF_NEG40DBM = 0xD8
#endif
} radio_tx_power_t;

Then, about Long Range, i followed all the steps defined in this thread and the increase in range is really small (about 2 meters out of 420m in +8dBm and 0,20m at -40dBm). 
Could we not expect better results with long range ? Would the difference be greater in indoors environment (I will test this soon, but I think I am missing something when I see my results...).

Related