pressure sensor FXTH87 extra consumption in STOP1 and STOP4 modes.

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

pressure sensor FXTH87 extra consumption in STOP1 and STOP4 modes.

Jump to solution
1,327 Views
sunrme
Contributor III

Hi all, I have extra power consumption in STOP1 and STOP4 modes. In datasheet STOP1 - 0.5uA, STOP4 - 73uA, in my experiments STOP1 - 51.5uA, STOP4 - 134uA. In STOP1 is huge difference. So now I try to find the reason. I have the sample project"FXTH87xx11 Starter Project CW10" from freescale site, and comment measure part, so the sensor just go to STOP1 mode and wake up in 1 second, and repeat all again. The scheme the same like on SUBG MODULE X-TPMS871511-434. I have 3 difference chips (for PCR, LT and truck) the same situation. Also I demount everything except chip, resistors, and decoupling capacitors, also the same consumption. My current meter can check from 0.1 uA, I tested it. So now I research datasheet over and over again. But mb somebody had the same issue? I already waste a lot of time, and have no result.

Labels (1)
0 Kudos
1 Solution
767 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi,

51.5µA corresponds to STOP1 with the RF block ON.

In the datasheet, the consumption of STOP1 mode (0.5µA) is given for STOP1 with LF and RF blocks disabled. Enabling one of these blocks (they must not be enabled at the same time) will take additional current.

In the Starter Project, at the beginning of the main, there is the function vfnSetupMCU();

The body of this function is:

/* enable bandgap for V, T measurements, enable stop4 mode */

  SPMSC1 = SPMSC1_BGBE_MASK | SPMSC1_LVDE_MASK | SPMSC1_LVDSE_MASK;

 

/* enable STOP mode, Enable RFM, disable COP */

  SIMOPT1 = (SIMOPT1 | SIMOPT1_STOPE_MASK | SIMOPT1_RFEN_MASK) & (UINT8)(~((UINT8)SIMOPT1_COPE_MASK));

Setting SIMOPT1_RFEN_MASK to 1 will enable the RF block. This bit is not cleared by reset or when going to STOP1. In order to disable the RF block just clear this bit and you will find a current consumption of 0.5µA in STOP1.

I hope it helps.

Regards,

Tomas

PS: If my answer helps to solve your question, please mark it as "Correct". Thank you.

View solution in original post

0 Kudos
4 Replies
768 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi,

51.5µA corresponds to STOP1 with the RF block ON.

In the datasheet, the consumption of STOP1 mode (0.5µA) is given for STOP1 with LF and RF blocks disabled. Enabling one of these blocks (they must not be enabled at the same time) will take additional current.

In the Starter Project, at the beginning of the main, there is the function vfnSetupMCU();

The body of this function is:

/* enable bandgap for V, T measurements, enable stop4 mode */

  SPMSC1 = SPMSC1_BGBE_MASK | SPMSC1_LVDE_MASK | SPMSC1_LVDSE_MASK;

 

/* enable STOP mode, Enable RFM, disable COP */

  SIMOPT1 = (SIMOPT1 | SIMOPT1_STOPE_MASK | SIMOPT1_RFEN_MASK) & (UINT8)(~((UINT8)SIMOPT1_COPE_MASK));

Setting SIMOPT1_RFEN_MASK to 1 will enable the RF block. This bit is not cleared by reset or when going to STOP1. In order to disable the RF block just clear this bit and you will find a current consumption of 0.5µA in STOP1.

I hope it helps.

Regards,

Tomas

PS: If my answer helps to solve your question, please mark it as "Correct". Thank you.

0 Kudos
767 Views
sunrme
Contributor III

Hi Tomas Vaverka,

Thank you very much for your help. I disabled rf block and power consumption became 0.5 uA.

0 Kudos
767 Views
artoylisaukko-o
Contributor I

TomasVaverka I had the same problem and I figured the solution out myself. However, even though the power consumption in STOP1 got solved, data is no longer transmitted! FXTH87 still wakes up and goes to sleep (STOP1) regularly (indicated by current meter) but I no longer receive data to the PC GUI. This gets solved immediately if I remove disabling the RF block from my code, which of course also increases power consumption. Any ideas would be most welcome.

I have tried both TPMS_RF_ENABLE(0) and SIMOPT1 &= 0xEF to switch off the RF block. Both give similar results.

0 Kudos
767 Views
artoylisaukko-o
Contributor I

I could actually get data transmitted by adding some delays. In the original code by Freescale/NXP, the first transmission after powerup actually fails. I suppose this has to to with RF part stabilization and adding the delays seemed to fix it first: BUT: the data is corrupt. The only way I can get proper data to be sent is to keep the RF block digital parts active during sleep. Would be really nice to find a solution for this.

0 Kudos