En la clase de consulta surgió un tema que me parece importante aclarar respecto al channel check rate.
En el archivo netstack.h se define:
#ifndef NETSTACK_RDC_CHANNEL_CHECK_RATE
#ifdef NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE
#define NETSTACK_RDC_CHANNEL_CHECK_RATE NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE
#else /* NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE */
#define NETSTACK_RDC_CHANNEL_CHECK_RATE 8
#endif /* NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE */
#endif /* NETSTACK_RDC_CHANNEL_CHECK_RATE */
Luego el archivo contiki-conf.h de la plataforma Z1 define el CCR de la siguiente forma:
#define NETSTACK_RDC_CHANNEL_CHECK_RATE 8
Esto a mi criterio es incorrecto, porque si se define explícitamente entonces no permite usar el define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE para configurar la frecuencia de chequeo del canal.
La forma correcta de definir eso en contiki-conf.h es como está más abajo:
#ifndef NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE
#define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8
#endif
De esta forma, tiene un valor por defecto pero me lo permite setear desde el project-conf.h.
Por lo tanto, les sugiero que comenten o eliminen la línea 71 del archivo contiki-conf.h de la plataforma Z1 (./contiki/platform/z1/) y definan NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE en el project-conf.h para configurar la frecuencia de chequeo del canal.
Saludos,
Javier