FS2400 current consumption after wakeup

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

FS2400 current consumption after wakeup

90 Views
PINKMAN
Contributor III

hello expert:

my chip is S32K312 and SBC is FS2400

now i need to wake up the chip and the wakeup source is a GPIO falling edge

before make S32K312 going to standby ,i set the FS2400 goto LPON mode 

/* register M_WU1_EN : filed CAN_WUEN set to wakeup and interrupt(03) */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_WU1_EN_ADDR, SBC_FS24_IP_M_CAN_WUEN_MASK);

/* register M_IOWU_EN : filed WAKE2,WAKE3,HVIO1 set to no wakeup and interrupt(00) */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_IOWU_EN_ADDR, 0x00);

/* register M_CAN : filed CAN MODE set to Transceiver receive only mode */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_CAN_ADDR, SBC_FS24_IP_M_CAN_MODE_RX_ONLY);

/* go to LPON mode */

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_SYS_CFG_ADDR, SBC_FS24_IP_M_GO2LPON_MASK)

 

after wakeup ,i set the SBC goto normal

Lpspi_Ip_Init(&Lpspi_Ip_PhyUnitConfig_SpiPhyUnit_SBC_Instance_0);

Sbc_FS24_Ip_InitDriver(&Sbc_FS24_Ip_Config);

Sbc_FS24_Ip_InitDevice(SBC_FS24_DEVICE_ID);

eReturnValue = Sbc_FS24_Ip_CanTrcvSetState(SBC_FS24_DEVICE_ID, SBC_FS24_CANTRCV_STATE_ACTIVE);

Sbc_FS24_Ip_WriteRegister(0, SBC_FS24_IP_M_SYS_CFG_ADDR, SBC_FS24_IP_M_GO2NORMAL_MASK);

 

i found the current consumption is 54mA but the POR current consumption is 72mA

 

if i do nothing about the SBC before goto standby ,after wakeup ,the current consumption is same as POR,

so i think the sbc status is something wrong ,can you tell me why?

 

0 Kudos
Reply
2 Replies

37 Views
RafaR
NXP Employee
NXP Employee

Hello PINKMAN

Good day!

Based on the behavior you described, I do not think the FS2400 is necessarily "stuck", but it is very likely that after waking from LPON the SBC is not returning to exactly the same configuration/state as after a POR

The datasheet states that waking from LPON returns the device directly to Normal mode through the wake-up sequence. The device does not re-enter INIT state automatically after an LPON wake-up

Also, if the device goes in LPON or LPOFF or Fail-safe mode while in INIT state, the device stays in INIT state, which can lead to misconfiguration of the device. It is recommended to read the INIT_S status bit in M_STATUS register before going to LPON or LPOFF mode, and to go only if the device is no longer in INIT state


I would capture and compare the following registers in both cases (POR path and LPON-wakeup path):

M_STATUS

M_SYS_CFG

M_CAN

M_SYS1_CFG

M_REG_CTRL

M_IOWU_EN

M_WU1_EN

 

I hope this information has helped you, please let me know if you need help with anything else.

Have a great day and best of luck.

0 Kudos
Reply

17 Views
PINKMAN
Contributor III

hi : RafaR

Based on your suggestion, I compared the FS2400 registers during POR and wake-up. I found that during POR, the value of register M_REG_CTRL is 0x04, while after wake-up, the value of register M_REG_CTRL is 0x1304. Based on this finding, I traced it to the function Sbc_FS24_Ip_InitDevice → Sbc_FS24_Ip_OptionalInitSequence → Sbc_FS24_Ip_InitMain, where there is an operation on M_REG_CTRL. However, this function has a prerequisite that SBC_FS24_NORMAL == ePowState. Therefore, during POR, this function can be executed, but during wake-up, GOTONORMAL is executed after Sbc_FS24_Ip_InitDevice, so this function cannot be executed, resulting in a power consumption difference.

So I have two questions:
1. Is Sbc_FS24_Ip_InitDevice mandatory? Because I found that even if I do not call it during initialization, CAN message transmission/reception and power supply still work fine.
2. Where does this power consumption difference mainly come from?

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2403637%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EFS2400%20current%20consumption%20after%20wakeup%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2403637%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3Ehello%20expert%3A%3C%2FP%3E%3CP%3Emy%20chip%20is%20S32K312%20and%20SBC%20is%20FS2400%3C%2FP%3E%3CP%3Enow%20i%20need%20to%20wake%20up%20the%20chip%20and%20the%20wakeup%20source%20is%20a%20GPIO%20falling%20edge%3C%2FP%3E%3CP%3Ebefore%20make%20S32K312%20going%20to%20standby%20%2Ci%20set%20the%20FS2400%20goto%20LPON%20mode%26nbsp%3B%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CP%3E%3CSPAN%3E%2F*%20register%20M_WU1_EN%20%3A%20filed%20CAN_WUEN%20set%20to%20wakeup%20and%20interrupt(03)%20*%2F%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_WriteRegister%3C%2FSPAN%3E%3CSPAN%3E(0%2C%20SBC_FS24_IP_M_WU1_EN_ADDR%2C%20%3C%2FSPAN%3E%3CSPAN%3ESBC_FS24_IP_M_CAN_WUEN_MASK%3C%2FSPAN%3E%3CSPAN%3E)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%2F*%20register%20M_IOWU_EN%20%3A%20filed%20WAKE2%2CWAKE3%2CHVIO1%20set%20to%20no%20wakeup%20and%20interrupt(00)%20*%2F%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_WriteRegister(0%2C%20SBC_FS24_IP_M_IOWU_EN_ADDR%2C%200x00)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%2F*%20register%20M_CAN%20%3A%20filed%20CAN%20MODE%20set%20to%20Transceiver%20receive%20only%20mode%20*%2F%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_WriteRegister(0%2C%20SBC_FS24_IP_M_CAN_ADDR%2C%20SBC_FS24_IP_M_CAN_MODE_RX_ONLY)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%2F*%20go%20to%20LPON%20mode%20*%2F%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_WriteRegister(0%2C%20SBC_FS24_IP_M_SYS_CFG_ADDR%2C%20SBC_FS24_IP_M_GO2LPON_MASK)%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3Eafter%20wakeup%20%2Ci%20set%20the%20SBC%20goto%20normal%20%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CP%3E%3CSPAN%3ELpspi_Ip_Init(%26amp%3BLpspi_Ip_PhyUnitConfig_SpiPhyUnit_SBC_Instance_0)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_InitDriver(%26amp%3BSbc_FS24_Ip_Config)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_InitDevice(SBC_FS24_DEVICE_ID)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EeReturnValue%20%3D%20Sbc_FS24_Ip_CanTrcvSetState(SBC_FS24_DEVICE_ID%2C%20%3C%2FSPAN%3E%3CSPAN%3ESBC_FS24_CANTRCV_STATE_ACTIVE%3C%2FSPAN%3E%3CSPAN%3E)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ESbc_FS24_Ip_WriteRegister(0%2C%20SBC_FS24_IP_M_SYS_CFG_ADDR%2C%20SBC_FS24_IP_M_GO2NORMAL_MASK)%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3C%2FDIV%3E%3C%2FDIV%3E%3CP%3E%3CSPAN%3Ei%20found%20the%20current%20consumption%20is%2054mA%20but%20the%20POR%20current%20consumption%20is%2072mA%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3Eif%20i%20do%20nothing%20about%20the%20SBC%20before%20goto%20standby%20%2Cafter%20wakeup%20%2Cthe%20current%20consumption%20is%20same%20as%20POR%2C%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3Eso%20i%20think%20the%20sbc%20status%20is%20something%20wrong%20%2Ccan%20you%20tell%20me%20why%3F%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3C%2FDIV%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2403795%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20FS2400%20current%20consumption%20after%20wakeup%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2403795%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%20PINKMAN%3C%2FP%3E%0A%3CP%3EGood%20day!%3C%2FP%3E%0A%3CP%3EBased%20on%20the%20behavior%20you%20described%2C%20I%20do%20not%20think%20the%20FS2400%20is%20necessarily%20%22stuck%22%2C%20but%20it%20is%20very%20likely%20that%20after%20waking%20from%20LPON%20the%20SBC%20is%20not%20returning%20to%20exactly%20the%20same%20configuration%2Fstate%20as%20after%20a%20POR%3C%2FP%3E%0A%3CP%3EThe%20datasheet%20states%20that%20waking%20from%20LPON%20returns%20the%20device%20directly%20to%20Normal%20mode%20through%20the%20wake-up%20sequence.%20The%20device%20does%20not%20re-enter%20INIT%20state%20automatically%20after%20an%20LPON%20wake-up%3C%2FP%3E%0A%3CP%3EAlso%2C%20%3CEM%3Eif%20the%20device%20goes%20in%20LPON%20or%20LPOFF%20or%20Fail-safe%20mode%20while%20in%20INIT%20state%2C%20the%20device%20stays%20in%20INIT%20state%2C%20which%20can%20lead%20to%20misconfiguration%20of%20the%20device.%20It%20is%20recommended%20to%20read%20the%20INIT_S%20status%20bit%20in%20M_STATUS%20register%20before%20going%20to%20LPON%20or%20LPOFF%20mode%2C%20and%20to%20go%20only%20if%20the%20device%20is%20no%20longer%20in%20INIT%20state%3C%2FEM%3E%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EI%20would%20capture%20and%20compare%20the%20following%20registers%20in%20both%20cases%20(POR%20path%20and%20LPON-wakeup%20path)%3A%3C%2FP%3E%0A%3CP%3EM_STATUS%3C%2FP%3E%0A%3CP%3EM_SYS_CFG%3C%2FP%3E%0A%3CP%3EM_CAN%3C%2FP%3E%0A%3CP%3EM_SYS1_CFG%3C%2FP%3E%0A%3CP%3EM_REG_CTRL%3C%2FP%3E%0A%3CP%3EM_IOWU_EN%3C%2FP%3E%0A%3CP%3EM_WU1_EN%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EI%20hope%20this%20information%20has%20helped%20you%2C%20please%20let%20me%20know%20if%20you%20need%20help%20with%20anything%20else.%3C%2FP%3E%0A%3CP%3EHave%20a%20great%20day%20and%20best%20of%20luck.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2404391%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20FS2400%20current%20consumption%20after%20wakeup%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2404391%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3Ehi%20%3A%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F242156%22%20target%3D%22_blank%22%3E%3CSPAN%20class%3D%22%22%3ERafaR%3C%2FSPAN%3E%3C%2FA%3E%3C%2FP%3E%3CP%3EBased%20on%20your%20suggestion%2C%20I%20compared%20the%20FS2400%20registers%20during%20POR%20and%20wake-up.%20I%20found%20that%20during%20POR%2C%20the%20value%20of%20register%20M_REG_CTRL%20is%200x04%2C%20while%20after%20wake-up%2C%20the%20value%20of%20register%20M_REG_CTRL%20is%200x1304.%20Based%20on%20this%20finding%2C%20I%20traced%20it%20to%20the%20function%20Sbc_FS24_Ip_InitDevice%20%E2%86%92%20Sbc_FS24_Ip_OptionalInitSequence%20%E2%86%92%20Sbc_FS24_Ip_InitMain%2C%20where%20there%20is%20an%20operation%20on%20M_REG_CTRL.%20However%2C%20this%20function%20has%20a%20prerequisite%20that%20SBC_FS24_NORMAL%20%3D%3D%20ePowState.%20Therefore%2C%20during%20POR%2C%20this%20function%20can%20be%20executed%2C%20but%20during%20wake-up%2C%20GOTONORMAL%20is%20executed%20after%20Sbc_FS24_Ip_InitDevice%2C%20so%20this%20function%20cannot%20be%20executed%2C%20resulting%20in%20a%20power%20consumption%20difference.%3C%2FP%3E%3CP%3ESo%20I%20have%20two%20questions%3A%3CBR%20%2F%3E1.%20Is%20Sbc_FS24_Ip_InitDevice%20mandatory%3F%20Because%20I%20found%20that%20even%20if%20I%20do%20not%20call%20it%20during%20initialization%2C%20CAN%20message%20transmission%2Freception%20and%20power%20supply%20still%20work%20fine.%3CBR%20%2F%3E2.%20Where%20does%20this%20power%20consumption%20difference%20mainly%20come%20from%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E