ZigBee MC13213: Current consumption reducing

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

ZigBee MC13213: Current consumption reducing

Jump to solution
454 Views
arnogir
Senior Contributor II

Hi,

 

I'm working on a system using MC13213 and Beestack (version about 2009/2010...)

 

The system is composed by a coordinator, and a remote control in EndPoint powered by a battery of type CR2032 (Nominal current 0.2mA!).

the schematic of the remote control is very simple:

MC13213 with a button to trig Zigbee message send on PA0. Then the HF part with balloon (Same for RX/TX) using pin RFIN_P, RFIN_N, CT_BIAS

Then a  crystal on XTAL1 and XTAL2 of 16MHz with capacity of 6.8pF.

And EXTAL linked to CLKO.

 

The power consumption of the remote control is:

- 0.5µA in Sleep : That Ok!

- 7mA to 15mA when µC is wakeup with messages sent to ZigBee (period to send about 300ms or 100ms according something..)

So with a battery of 200mA.H at a nominal current to 0.2mA, like I load it to 7 to 15mA, the battery capacity is very very reduced due to load current which is greater than nominal current!

 

This consumption is obtained with the following configuration:

#ifdef USE_ABEL_CLKO   #define USE_62_5KHZ_CLKO #endif USE_ABEL_CLKO   In NV_Data.c: #define SYSTEM_CLOCK_8MHZ ...  HardwareParameters_t const gHardwareParametersInit = {   gaHardwareParametersDelimiterString_c,    /* initialString */ #ifdef SYSTEM_CLOCK_8MHZ   /* 8 MHz  */   0x08,                                 /* uint8_t Bus_Frequency_In_MHz; */   /* uint16_t Abel_Clock_Out_Setting; */     CLOCK_OUT_SETTING,   /* uint16_t Abel_HF_Calibration; */     HF_CALIBRATION,   /* ICG  */   0x18,                                 /* uint8_t NV_ICGC1; */   /* 0x00 => CPU clk=16 MHz, Buc clk = 8 MHz  */   0x00,                                 /* uint8_t NV_ICGC2; */   /* ICG Filter */   0x02,                                 /* uint8_t NV_ICGFLTU; */   0x40,                                 /* uint8_t NV_ICGFLTL; */ #endif SYSTEM_CLOCK_8MHZ ....

 

 

Before configuration was set with #define SYSTEM_CLOCK_16MHz and current consumption was about 12/13mA to 17/18mA. 

 

I want to reduce the current conception.

The Nv_Data.c file is note written with option of type "SYSTEM_CLOCK_4MHz" or 2 or 1MHz..

Could you indicate to me if it is possible to reduce the clock mare than currently (8MHz) to win current consumption.

I test to configure IGC2 to 0x1 or 0x2 to reduce CPU bus clock. After test, Bus Clk is well decrease, but communication with distant coordinator not work. Where is the problem?

 

Have you other Idea to reduce the consumption? (Except reduce the send message period)

 

 

Labels (1)
0 Kudos
1 Solution
288 Views
arnogir
Senior Contributor II

According documentation stack only work on with 8, 12 or 16MHz..

View solution in original post

0 Kudos
1 Reply
289 Views
arnogir
Senior Contributor II

According documentation stack only work on with 8, 12 or 16MHz..

0 Kudos