Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
  • 08:58
    pjonsson opened #1893
  • 07:09
    kkrentz synchronize #1600
  • 07:07
    kkrentz synchronize #522
  • 06:55
    kkrentz synchronize #522
  • 06:51
    damien-v commented #1497
  • May 26 20:50
    alexrayne commented #1211
  • May 26 16:48
    pjonsson opened #1892
  • May 26 14:27
    Josheyy opened #1891
  • May 26 10:12
    pjonsson commented #1211
  • May 26 10:06
    pjonsson commented #1863
  • May 26 08:43
    pjonsson commented #1497
  • May 26 06:21
    fdojurado commented #1877
  • May 25 23:06
    arurke commented #1877
  • May 25 17:02
    SilabsYagoor commented #1863
  • May 25 15:21
    fdojurado synchronize #1877
  • May 25 14:47
    nfi commented #1885
  • May 25 14:46
    pjonsson synchronize #1882
  • May 25 14:43

    nvt on develop

    Update tools/cooja submodule C… Merge pull request #1889 from p… (compare)

  • May 25 14:43
    nvt closed #1889
  • May 25 14:28
    pjonsson opened #1889
What should I do?
Atis Elsts
looks like you have too few active slots for the number of packets you generate
the packet queue has filled up
Hi everyone, I'm having trouble on sending some sensors data through UDP to a server in a zolertia firefly. The client with the sensors is unable to find the neighbours.
Then when I checked the server's neighbours to see if it can find the node, i find this ipv6 address, but it has 65535 added to the end of the address, which was really weird
I'm using the simple_udp functions as in the udp-client example
Any tips on what could cause the address to be corrupted like this?
@atiselsts I was using udp to send message at 10Hz, and the following error appears. do you know which parameter should I add to project-conf.h? Or udp can't communicate at 10Hz?
Due to my application need tsch to synchronize the clock, and need nodes to send message to the root at a rather high frequence, could you give me some advice on what protocol should be used to transmit data?
thank you
I am using CC1350, and I tried to add #define QUEUEBUF_CONF_NUM 32 in project-conf.h(I tried to use 64, but then the build can't success), but the above error still arose.
I actually wasn't finding neighbours because the board kept rebooting, caused by a bug i managed to fix now and everything works good
Andreas Urke
@mycstudy as Atis mentioned, seems you are generating packets faster than you have slots to send them in. A look at the timeslot duration for cc1350 might be a good start as it tells you the max. theoretical MAC throughput, and see if that will at all fit your application req. (also note you need room for control packets (TSCH beacons, and RPL if you are using it)). If it looks ok, and you only have one TXing node, using the 6TiSCH minimal schedule (set BUILD_WITH_ORCHESTRAto 0) and setting its length, TSCH_SCHEDULE_CONF_DEFAULT_LENGTH, to 1 (making TSCH into a slotted aloha) should be a good start in terms of throughput.
Dhruv Kumar
https://github.com/akaralis/contiki-ng-minimal_6tisch_sync Can any tell mw how to run this code
Behnam Farzaneh
Hi, how can I make an IoT scaling test over Cooja. For example a static-or-dynamic organization (flat, tree, etc.) of 1000-10,000-100,000 IoT in 2km^2 area. COAP or MQTT or something never could be used as the protocol.
Atis Elsts
I'd say it's impossible. I only managed to run simulations with up to 5000 nodes , with something like 20-30x slowdown compared to real time. Even that required some custom optimizations in the Cooja core code.
1 reply
that's the reason why TSCH-Sim was developed, by the way. Of course, it does not have support for CoAP or MQTT, but it's fully capable of handling very big networks at the PHY and MAC layers.
Try looking at ns-3 and Omnet++, people may have done something similar
1 reply
Behnam Farzaneh
@atiselsts thanks. could you please tell me how you did simulations for 5000 nodes? I couldn't.
Atis Elsts
what problems did you experience?
the first thing you need to do is to increase the max virtual memory size of the JVM: https://stackoverflow.com/questions/1493913/how-to-set-the-maximum-memory-usage-for-jvm
the other potential problems are more about optimizing the speed of the simulations. If I remember correctly, Cooja radio medium code has a few instances of O(N^2) algorithms, meaning that if you have 5000 nodes, the simulation will have to do some things 5000x5000 times. It was possible to partially get rid of this, but not entirely without a large effort
Andreas Urke
Hi all, I have been running some TSCH experiments on FIT IoT-lab (m3 nodes) and I am seeing an alarming amount of !dl-miss RxBeforeAck, which indicate to me that the node was unable to schedule its transmission of ACK. However, looking at the logs, it seems the ACKs was transmitted and received correctly. Anyone know what I am missing? Excerpt from log:
m3-356;{asn 00.00005caf } uc-1-0 tx LL-0002->LL-0003, seq  95, st 0  1  <--- indication of successful TX (including ACK RX)
m3-354;{asn 00.00005caf} !dl-miss RxBeforeAck 140 141 <--- indication of Ack fail
m3-354;{asn 00.00005caf} uc-1-0 rx LL-0002->LL-0003, len 108, seq  95, edr   0 <--- indication of successful RX
Andreas Urke
And answering myself: After looking closer at tsch_schedule_slot_operation() it seems I am mistaken about the implications on ACK: The !dl-miss RxBeforeAck indeed indicate we were unable to schedule the timer, but we rather go to a blocking busywait plan B instead. So the implications would be sub-optimal performance for energy and processing, while ACK will be sent as scheduled.
Ambar Prajapati
Can we simulate in Cooja a non-RPL sensor network where each node can directly communicate to any other node, without having to go through any particular node (e.g., root, server, sink) in any layer?
Reference to above - any ND protocol example for Contiki-NG/Cooja shall be highly appreciated. Thanks
Can anyone guide me about ViTool-BC: Visualization Tool Based on Cooja Simulator for WSN?
Where to download it?
Atis Elsts
@arurke it's a tricky subject. As you observe, there is actually no big problem if the numbers after RxBeforAck are "140 141", as the current time (140) is before the expected Rx start time (141).
3 replies
But even if the current time is significantly after the expected Rx start time, you might still get an ACK: some platforms do not turn off the radio between the packet and the ACK, meaning that the radio would still receive the ACK, just it might be read by the TSCH layer later than normally expected
Andreas Urke
@atiselsts Thanks for details, makes sense. I was looking at this because I was experiencing RPL topology changes even after a significant convergence time, and tried to figure out if it was expected or something with my settings or schedule. May I ask if you experienced topology changes after the warm-up time in your experiments? (I glanced at your value, 30 minutes, https://github.com/atiselsts/tsch-scheduling-comparison/blob/80ca07857900f554814a9b9df233b0bf901a97a3/examples/autonomous/common-conf.h#L198)
Atis Elsts
I don't think we looked at topology changes in those experiments, so I don't know. Obviously, some of the results show good PDR, so there were no major problems
1 reply
hi im new with contiki and i wanna knew if there is any resources to start learning with , bcz i need to implemant a article
1 reply
Hello everyone,
I want to implement an RL mechanism to select the best parent in RPL, But when I select the best parent randomly sometimes. I get the loop error in my simulation. I tried to check if (current node->rank < preferred_parent-> rank ) so there is a loop . with this command ( if (dag->rank >preferred_parent->rank ) so this parent is selected otherwise there is the loop and this random parent is not a good parent because of the loop. but I don't know why it isn't working properly. Do you have any suggestions? I need to select the best parent randomly sometimes so I need to check the loop and design a good loop avoidance mechanism in my random selection part. Any help may be useful for me.
I appreciate you in advance.
Guilherme Aguiar Silva Milanez
Hey guys, do you know some balanced tree generator to cooja ?
hello everyone, I tried to find an API in contiki which plays the same function as gettimeofday in Linux, which returns Unix time, But I couldn't find. If anyone knows the API, please tell me, thanks.
Rahav Dor
Hello everyone, do you happen to know what function nodes need to call to join a multicast group?
Hello everyone, can you please tell us more about this operating system?
Hello everyone,I know how to implement flooding communication in the rime protocol stack, but I want to know if flooding can be achieved in the IPV6 protocol stack, because I have not found any papers or codes for flooding in IPV6.please help me if you know how.
in contiki,not in contiki-ng
Michael Baddeley
@moliiiiiiiii what sort of flooding?
Hi, has anyone tried to load contiki-ng on cc2538 aliexpress modules?
for the price, isn't this a solid option?
2 replies
Rahav Dor
Hello everyone. Can nodes receive multicast messages on addresses different than ALL_MPL_FORWARDERS (FF03::FC)?
Does anyone know that when the demo "examples/rpl-udp" is run on the cc1350, the radio frequency on the physical layer will use 2.4GHz or not? Because I also use other devices that work at 2.4GHz, I hope there is no interference between them.
Hi All, Im facing difficulty in contiki-ng of temperature and humidity sensor with this type of filter should smooth the readings using an exponentially weighted moving average filter
xˆt = ˆxt−1 + α (zt − xˆt−1)
xˆ1 = z1
where α is the filter weight (use 0.1), zt
is the current measurement, xˆt
is the smoothed estimate, xˆt−1 is the
estimate from the previous time-step;
An appropriate set of unit tests for this calculation should include a check that the sequence z = 5, 6, 7
yields x = 5, 5.1, 5.29. and need of unit testing as well