- Edited
Now we’re talking!
Average of 6uA in sleep mode at 3.6V. That includes the LIS2DH and the external flash in sleep/power down. Slightly better than the current nRF9160 Feather at ~10uA.
Now we’re talking!
Average of 6uA in sleep mode at 3.6V. That includes the LIS2DH and the external flash in sleep/power down. Slightly better than the current nRF9160 Feather at ~10uA.
jaredwolff Hi Jared, Awesome!
What was driving the current high?
One culprit is the UART console. That should be disabled when the device is operating in low current applications:
int setup_uart()
{
static const struct device *const console_dev =
DEVICE_DT_GET(DT_CHOSEN(zephyr_console));
/* Disable console UART */
int err = pm_device_action_run(console_dev, PM_DEVICE_ACTION_SUSPEND);
if (err < 0)
{
printk("Unable to suspend console UART. (err: %d)\n", err);
return err;
}
/* Turn off to save power */
NRF_CLOCK->TASKS_HFCLKSTOP = 1;
return 0;
}
I was having issues with NCS 2.5.x so when I switched to 2.6.1 I had much better luck configuring the nPM1300. I’m aiming to release the board synced with NCS 2.7.x.
jaredwolff Nice! Makes sense that the UART be disabled for low current usage.
I’m glad that the nRF9161 board will be released with NCS 2.7.x. Latter has some major changes in SoC / board names and definitions, plus Sysbuild for multi-image/multi-SoC support.
I have NCS 2.7.0 (pre-release) installed but will wait for a “release Version” before moving a few of the multi-image builds to Sysbuild.
Is the beige connector going to be for I2C STEMMA? Thanks.
zpm1066 Is the beige connector going to be for I2C STEMMA? Thanks.
Currently connected to the SWD lines for the RP2040 for programming with an external Picoprobe
jaredwolff
Is the plan to let it stay connected to SWD on board release or use it for I2C and program the board via USB? Thanks.
The RP2040 can be programmed with the built in bootloader. The nRF9161 is programmed with the RP2040 running CMSIS DAP.
I actually don’t necessarily need the extra connector for programming purposes. Something like Qwiic or STEMMA would be attractive for you @zpm1066?
jaredwolff Absolutely! An I2C STEMMA / Qwiic connector would be pretty useful for quick hookups to sensors, OLED display, etc. Most boards these days support this connector.
I2C STEMMA / Qwiic would be useful here as well if you have room for it ️
Sounds good! I’ve replaced the 3 pin with a 4pin Qwiic
A little preview:
Also, just a thought - Not sure if it’s relevant for others, or if the cost is going to be higher, but a 16bit ADC instead of the 12bit one currently on would be great I’m currently connecting adafruits ADS1115 to get that additional resolution
Get really more than 12 bits from a ADC isn’t easy in my experience.
And sometimes it requires an additional amplification. So I’m not sure, how many will then be happy with it.
Not sure if you guys have had this issue but modem traces don’t work well with non-Nordic devices since a while back. (The nRF9161 Feather will only have one USB-UART port)
Working on a PR for the Cellular Monitor so it can use any available port on your machine.
Great little tool especially to find out that these devices are no longer being pre-programmed with IMEIs! I will be pre-programming them here so no worries about that.
Nice thing is both the onboard LNA works for GPS. A single antenna is all that’s needed for the nRF9161 Feather!
Tracking: 5 Using: 5 Unhealthy: 0
-----------------------------------
Latitude: 41.XXX
Longitude: -72.XXX
Altitude: 89.0 m
Accuracy: 10.0 m
Speed: 0.3 m/s
Speed accuracy: 1.2 m/s
Heading: 0.0 deg
Date: 2024-07-23
Time (UTC): 20:19:55.091
PDOP: 5.1
HDOP: 2.6
VDOP: 4.4
TDOP: 3.7
Another very cool thing that the nPM1300 includes is an extremely low power mode which replicates what I did in the early designs of the nRF9160 Feather: deep powerdown/hibernate.
Here’s the measurement of the nRF9161 Feather in hibernate. About 600nA!
On the Joulscope it’s actually a little less on avg (~300nA) :
deep powerdown/hibernate.
Does this mean, the nRF9161 is power off?
If so, how does it power on again?
Great question @AchimKraus!
There’s an internal timer on the nPM1300 which allows to shut down all regulators and then powers them back on after a certain time interval. I was testing every 10 seconds but I’m sure it can go longer than that.
Also if you insert USB or send a pulse on the EN pin it will also turn on.
jaredwolff
Do you have pull-up resistors on the Qwiic I2C? If not, it would be good to have them. Thanks.