Transmission distance. Power profiler

Hello, i’m trying to reduce the transmission distance of iot-lab m3 sensor nodes.(The number of sensor nodes that can communicate directly with each other.) I have used the solution proposed here https://github.com/iot-lab/iot-lab/wiki/Limit-nodes-connectivity. I could set the transmission power to -17dBm, but I couldn’t find how to set the receiver sensitivity of the node. Is there a way in Riot to reduce the receiver sensitivity, or perhaps other ways to reduce the transmission range between the nodes?



|

Limit nodes connectivity · iot-lab/iot-lab Wiki · GitHub
github.com
GitHub is where people build software. More than 27 million people use GitHub to discover, fork, and contribute to over 80 million projects.
|

  • | - |

I would also like to measure the energy consumption of nodes while running my application. Does the Riot have an approach like Contiki’s power profiler? Many thanks in advance!

With kind regards, Janna

Hi! The receiver's sensitivity is not always available. However, your link to the iot lab github wiki has the following headline on it "RF2XX_RX_RSSI_THRESHOLD". This should do the trick for you, as the power of signals is reduced with range, and therefore the RSSI should drop. In the send, setting the sensitivity and the "threshold" should be equal or even identical.

Best Regards, Robert

Hello Janna,

another approach (depending on your use case) to limit the number of sensor nodes that can communicate with each other is to use a link-layer black-/whitelisting. In RIOT, you can use the l2filter_whitelist, or l2filter_blacklist module respectively for this.

When you compile these in, then you will get new shell commands to interact with these lists. You can get a glimpse on the programmatic usage e.g. here [1]; the doc here [2].

[1] https://github.com/RIOT-OS/RIOT/blob/master/sys/shell/commands/sc_gnrc_netif.c#L943 [2] http://doc.riot-os.org/l2filter_8h.html

Cheers, Cenk

Hi Janna,

just in case, note that the examples you gave in the iot-lab wiki were written for the iot-lab nodes port for Contiki. So will not directly apply to RIOT for the macro names.

I understand that you can need both limiting power and increasing the threshold when you want to have a lower connectivity with the hardware deployment in IoT-LAB.

The “set_rssi_threshold” is currently not implemented in RIOT, but you could easily do it yourself (and do a PR maybe :))

The code I wrote in openlab was this one

Thank You all for Your help! The information was very helpful. With best regards, Janna