PSM floor current is 60uA not 4uA

Hi there, 

We are running a power consumption test using PSM mode, and we are however not measuring the 4uA floor current as expected.

We are requesting a active time of 6 minutes, and TAU time of 30minutes. We are also using eDRX.

However after the active time has passed, the device does not go into a low power state. There also appears to be a lot of noise:

I can confirm that the network does assign us the correct timers, as we get the following message in:

+CEREG: 1,"0001","01A2D002",7,,,"00100110","11100000"

Kindly advise what can be the issue here?

Parents
  • I guess, if you check GSMA Energy Efficiency for Mobile IoT , page 11, figure 1, you will recognize the difference between "active time" (T3324, or ) and "Inactivity timer". Others use the terms "PSM Activity Timer" and "RRC Activity Timer". So you selected the phase when switching from RRC Connected to Idle, but sleeping is the reached after Idle (in you case 6 minutes). Just wait and measure later.

  • Hi Achim,

    I did not select the phase where it goes from RRC connect to Idle. I selected the phase during which idle time (as you can see in the figure, 6 minutes of multiple eDRX cycles occured) goes to sleeping. The "inactivity timer" is present in the very first spike, I am just zoomed out a lot.

    I have waited more than the 30minutes periodic TAU, which comes in successfully after 30minutes as expected. So I guess there is indeed an issue with the PSM.

    The current in the sleeping state sits around 60uA.

  • Hi Frikkie,

    Which voltage and current levels do you have on SIM_1V8 pin (pin 49, according to the Testing UICC interface as GPIO documentation)?

    Best regards,
    Dejan

  •   I have had a problem with similar symptoms before. It required a lot of digging but eventually I found out that it was an issue with the SIM card itself - the SIM card was configured to report that it supported the UICC SUSPEND command, but in reality it rejected the command when it was sent. The nrf91 modem firmware then did not power off the SIM card (ignoring that the SIM reported an error) and went to sleep, and then the SIM was basically left on in sleep mode causing about 50uA of current draw.

    Have you tried measuring the SIM current on the nrf9160dk? There is a special header for it next to the SIM card socket.

    In my case, this was with a custom SIM card that is used with a cellular network emulator, so it was of course a bit of an unusual situation. Have you tried testing with a SIM card from a completely different carrier? Once I fixed this issue with the SIM, I could get down to about 4uA or so.

  • > When we upload the 8547.merged.hex file and run it, we are able to go into u 4uA sleep state:

    If it's the SIM, I guess, this firmware doesn't switch to sleeping, it switches off. On the other side, if it switches to sleeping and not off, then the SIM card should not be the issue.

    Looking forward to the outcome using the Serial LTE Modem of a newer NCS. There you can select between sleeping and switching off (just to mention: I don't know, why nordic chose the term "sleeping" for +CFUN=0, but anyway, we will see, what their "sleep" and "idle" will bring.)

  • Hi  , there are usually three things that can cause around 30-60 uA in idle:

    1. UART ENABLE. The serial LTE modem sample uses UART0 for the AT interface by default. That means that UART0 will turn off with the AT#XSLEEP=2. However, UART1 and UART2 could still be running, and might have to be switched off as well.

      You can do this through the .overlay file (boards/nrf9160dk_nrf9160_ns.overlay). In this file you can see that UART2 is switched on by default.
      &uart2 {
          compatible = "nordic,nrf-uarte";
          current-speed = <115200>;
          status = "disabled";
          tx-pin = <10>;
          rx-pin = <11>;
          rts-pin = <12>;
          cts-pin = <13>;
          hw-flow-control;
      };
      &uart1 {
          status = "disabled";
      };
    2. GPIOTE IN event. The IN event is not used by the serial LTE modem sample by default, but if you modify the code and add an other wake up pin or similar, you may have enabled the IN event on this pin. Here is an example on how you can use the low power SENSE event instead of the IN event on pin P0.06 and pin P0.07, using the .overlay file:
      &gpio0 {
          sense-edge-mask = <(1 << 6) | (1 << 7)>;
      };
    3. SIM. The SIM card is powered by the SIM_1V8 pin on the nRF91. If this line is 1.8V it means that the SIM has not been shut down, and is still probably in clock stop mode consuming around 30-60 uA. The only way to shut down the SIM is to cut the power, which means that the SIM_1V8 pin will be 0V.

      The modem should automatically cut the power during PSM. However, there are cards in the market that switches profiles based on a timeout from the modem. The nRF91 will not deactivate the card if the card has requested a timer and a timer is still running. So unfortunately some SIMs will never allow the nRF91 to cut the power. This is probably what experienced with the SIM he tested.

      Whether or not this is the reason for the additional 60uA can be easily checked by measuring the voltage on SIM_1V8. It must be 0V, otherwise the SIM will consume power.

    Best regards,
    Stian

  • I can confirm that it is not the SIM card. Voltage over the sim card is 1.8V until the device enters PSM sleep mode, where it drops to 0V. There is also negligible current flowing throught the sim in this state.

Reply Children
  • > where it drops to 0V. 

    Great, so only 1 and 2 left.

    If these two are verified, then maybe

    4: using eDRX and PSM together doesn't work as expected.

  • Achim Kraus said:
    4: using eDRX and PSM together doesn't work as expected.

    I have not seen any issues with the modem itself, related to current consumption in PSM. eDRX (RRC idle) is part of the PSM request. It will stay in eDRX during the "active time" before entering PSM and is a very common use case. The problem is most likely in the application.

    I tried the NCS 1.9.0 version of the application, and I had to specifically change uart2 status to "disabled" in order to get the current down. This was the only change necessary. Unfortunately I was not able to get the NCS 1.8.0 version to run, it's just crashing during boot, and I will have to investigate why this happens. Anyways, 1.8.0 is quite old now so it would be great if you could try out a newer version of NCS.

    By the way, I see that you are using the PPK. A new PPK firmware update was released today that was targeting issues with showing the idle current correctly when the current is drawn in bursts, which is often the case with buck/boost converters implementing burst mode. The reported idle current was higher than the actual current consumption. This is now fixed. Although I understand that this is probably not the case here since the hex-file I created earlier did show the correct current consumption. Just wanted to mention it. The PPK firmware will be updated automatically when the PPK software is updated through nRF connect for desktop.

  • > By the way, I see that you are using the PPK. A new PPK firmware update was released today

    Great. I will do that tomorrow.

    I don't use eDRX and I'm also not aware of any issues in PSM without eDRX. Therefore I mentioned "4" just in the case, that 1 and 2 are also not responsible for the larger current. We will see, if verifying 1 and 2 already answers the topic.

    What may speedup this topic would be a prebuild "serial LTE modem". I guess using that with the AT/modem settings applied by Frikkie should give some more answers.

  • Hi,

     let us know the results of your testing.

    Best regards,
    Dejan

  • Hi all,

    Apologies for the delay in response - we had other priorities to attend to first. However, looking forward to get back onto this and solve it as we think PSM might be a feature that we can use. (We are still considering PSM vs just turning the modem of completely).

    Anyways, we have also manually disabled the uarts and will start testing with it, hopefully it solves the issue. 

    Will keep you updated.

Related