[riot-users] Radio Interrupt Handler

Navneet Pandey navneet.pandey at outlook.in
Thu Nov 8 20:08:12 CET 2018

Hello Joakim,

Thank you, the information was really helpful. I was exploring the 'at86rf2xx_netdev.c' file. I noticed something weird. When I enabled debugging all I got was

  *   To Idle state
  *   Evt TX_END
  *   Evt RX_END

By enabling debugging in pm_layered.c and pm.c, I noticed cortex_sleep(deep) was being called when radio was not doing anything. So why am I not seeing any of the following debug statements being printed (or in other words none of the following cases being invoked).
            at86rf2xx_set_state(dev, AT86RF2XX_STATE_TRX_OFF);
        case NETOPT_STATE_SLEEP:
            DEBUG("To SLEEP\n");
            at86rf2xx_set_state(dev, AT86RF2XX_STATE_SLEEP);
        case NETOPT_STATE_IDLE:
            DEBUG("To IDLE\n");
            at86rf2xx_set_state(dev, AT86RF2XX_STATE_RX_AACK_ON);

Navneet Pandey

From: Navneet Pandey <navneet.pandey at outlook.in>
Sent: Monday, November 5, 2018 11:10 AM
To: users at riot-os.org
Subject: Radio Interrupt Handler


Could someone please point out the code where radio is switched on/off when sending a MAC/UDP packet.

I am expecting something similar to the following code snippet:
/** Turn the MAC layer on. */
  int (* on)(void);

  /** Turn the MAC layer off. */
  int (* off)(int keep_radio_on);

This code is from Contiki.

I am interested in understanding the time it takes for system to wake up from sleep (dormant mode) to receive packets.

Thank you.

Navneet Pandey

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/users/attachments/20181108/94bde421/attachment.html>

More information about the users mailing list