0

I intend to calculate the latency of packets sent by multiple (24) sensor nodes to a single sink using CSMA/CA MAC in Contiki-ng.

Apparently, there is no synchronization mechanism available for the zoul platform. The TSCH has a mechanism for latency calculation due to its very design. However, this does not exist for CSMA MAC.

Any suggestions, please!

Gelxxxx
  • 161
  • 1
  • 17
rmateeq
  • 1
  • 1

1 Answers1

0

I had the exact problem myself. As you very well said, there is no mechanism for z1/zoul. I tried to transfer the TSCH, unsuccessfully. Your only solution is to use the times from cooja itself. Copy or save the node outputs from the console and just create some functions in excel to find the differences you need. If I can help more, let me know...

George Violettas
  • 334
  • 1
  • 14
  • Thank you for sharing your experience. I also went this way. A (naive) failed attempt at using ticks from TSCH and then thinking of manual ways. I have used the "rtimer" and converted it to the millisecond granularity. I can send this info to the receiver. However, the difference in the times has not been worked out yet. Can your please advise on working around the differences in time – rmateeq Jul 25 '19 at 00:19
  • I just noticed that the firmware distributing `python` script may allow recording the exact time of flashing each node. May turn out a good point to note the time difference? – rmateeq Jul 25 '19 at 02:17
  • More or less, you are on the correct (and only way). I also experimented with rtimer(). The big problem with it is that it resets very soon, so you have to make sure to monitor it correctly. I experimented with something like the following, but I eventually aborted for the reasons you mention. ``` uint32_t timeDIf =0; sent_time = RTIMER_NOW(); timeDIf = RTIMER_NOW()-sent_time; ``` – George Violettas Jul 25 '19 at 17:17