MKR1000 standby - how to reduce power consumption?

I have built a sketch using the RTC library and have put the MKR1000 to standby, waiting for the alarm to wake it up (once a minute), putting it into standby using:

...
rtc.setAlarmSeconds(10);
rtc.attachInterrupt(alarmMatch);
rtc.enableAlarm(rtc.MATCH_SS);
rtc.standbyMode();

(see RTCZero - Arduino Reference )

This all works fine in principle. However (the mkr1000 is connecting during setup() to a wifi network), this "standby" does not seem to put the wifi into standby, the board still consumes 90mA during "standby". (which is not exactly what I would call "very low power")

How can I put the wifi module also into a sleep/standby mode? I did not find any standby() or sleep() functions in the wifi101 library.

thanks for your help!
Michael.

one additional info: when I add a

Wifi.disconnect();

before going to standby, the power consumption drops to 47mA - which is an indication that the wifi module is still running.

in the meantime I found the function:

m2m_wifi_set_sleep_mode(M2M_PS_DEEP_AUTOMATIC, 1)

which reduces the current comsumption to ~30 mA. But I did not find a way to really "switch off" the WiFi module.

Hi Michael,

Do you have any suggestions or tips on how to reduce the power consumption of the MKR1000? That RTC is not integrated in the chip, is it?

Cheers,

Brian.

hello Brian,

the RTC is integrated in the chip (in the SAMD controller).

But I don't know how to reduce the current consumption to values lower than 2mA - in the meantime I use an opto-relay to disconnect the MKR1000 from the battery completely.

rgs,
Michael.

2 mA is very good for me. That's not just the RTC clock sleep and WiFi disconnect, is it?

When I remember correctly (sorry, I did not document this properly because 2mA was way too high for me ...), there were additional API calls after disconnecting from the wifi with m2m_wifi_disconnect() or Wifi.disconnect():

m2m_wifi_deinit(&param) (?)
nm_bsp_deinit()

I have some example code from ATMEL - however, this is for the WINC1500 evaluation board, using ATMEL Studio. Please send me your email address if you are interested in this code.

Thanks for the response. I'll try some of the recipes you used above, but I'm not sure I'll understand much from the Atmel example code. I'll have to pass on that for now.

Cheers,

B.

Instead of turning the Wifi off you can also enable one of the low power modes for it.