How to start RIOT with network interfaces disabled?

Hi,

we have a battery powered application that will spend most time in Deep Sleep, so a wake-up will trigger a CPU reset with some backup memory retained.

To conserve energy, the radio interface should only be activated if there is data to send. In the common case the sensor would just wake up, take a measurement and decide nothing has changed since the last time, and go back to sleep without ever activating the radio.

Now setting NETOPT_STATE to NETOPT_STATE_SLEEP in the main thread might be too late, the radio is already powered up at this point and 6lo will have send an advertisement.

So how could we configure the default radio state at compile time - and seamlessly start networking if the application requests it?

Best,

Benjamin

Hi,

FYI, we are set-up in Berlin, but we are waiting for the video conference laptop to finish updates, before we will join at our usual spot: https://meet.jit.si/riot-hacknack

Best regards,

Martine

That was supposed to be a reply to the Hack’n’ACK notification -.-

Hi Ben,

Sorry for the (now the real reply) reply. I'm having trouble understanding the scenario (maybe a lack of understanding the different power-states). Why is it sending router advertisements? I would have expected a unicast router solicitation.

There used to be a function implementing the behavior specified in [1] but this does not seem to exist anymore, so that would probably need to be implemented. Moreover, have you looked into 6TSCH for working with sleeping nodes?

Best regards,

Martine

[1] https://tools.ietf.org/html/rfc6775#section-5.8