KW01 TSCH Sleepy End Device??

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

KW01 TSCH Sleepy End Device??

1,272 Views
benhouston
Contributor III

I have a few of the MRBKW01 eval boards and have been testing out the FreeRTOS supported demo code with early success. Next step is to optimize battery life of End Devices at transmit intervals of 10sec, 30sec, 120 sec and so on up to 300sec.

For low energy configs, I looked into the CSL and RIT configurations as well, but unfortunately these modes, on the surface, do not offer the frequency diversity needed in my application.  TSCH obviously does.

Given the Freescale TSCH demo source code, has anyone had success putting their TSCH End Devices in a deep sleep between the scheduled wake up and transmit/receive cycles?

If so, could you give the community some pointers?

Labels (2)
0 Kudos
4 Replies

954 Views
sorinbora
NXP Employee
NXP Employee

TSCH does not include low power support due to timeslot synchronization considerations.

Depending on your setup, a TSCH End Device could choose to enter a low power mode and then scan again for a Coordinator's Enhanced Beacon in order to re-synchronize to the network and then be able to exchange data, assuming that the TSCH Coordinator will continue to advertise Enhanced Beacons.

0 Kudos

954 Views
benhouston
Contributor III

I would like to try your suggestion and allow the TSCH end device to enter a low power mode. 

My precomplier has been updated to include the *framework/LPM/Interface/KW0xZ/* headers.

I've tried to build the Low Power Interface into my IAR workspace and get linker errors:

[Li005] no definition of PWR_CheckForAndEnterNewPowerState_Init

[Li005] no definition of PWR_CheckifDeviceCanGoToSleep

[Li005] no definition of PWR_EnterLowPower

I'm missing a pre-compiler flag somewhere and I'm afraid it is buried in the Freescale_802.15.4_MAC_06eTSCHg_M0_IAR.a binary.

How would you go about adding the Low Power lib into the TSCH End Device demo source?

0 Kudos

954 Views
sorinbora
NXP Employee
NXP Employee

Hello Ben,

The Low Power code is placed in the framework in these paths:

- framework\LPM\Interface\KW0xZ

- framework\LPM\Source\KW0xZ

Please add these sources to your project, similar to how it is done in the MAC_LE_Demo project.

0 Kudos

954 Views
benhouston
Contributor III

Sorin, thanks for the reply.

I was hoping I could get away with making the end device sleep in between its scheduled interval update back to the coordinator, such that, a rescan for the Enhanced Beacon would not be necessary and synchronization would be maintained. 

My minimum interval for transmission to the coordinator is 10 seconds.  Plenty of time to sleep, however, I'm concerned about the clock drift when end device is sleeping.

0 Kudos