<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/104289/high-current-consuption-using-bme280-on-seeed-xiao-ble-nrf52840-in-zephyr-rtos</link><description>Hi, 
 I&amp;#39;m developing an IoT product using nRF52840 provided by Seeed (Xiao BLE) with a BME280 sensor connected via I2C on a custom PCB, without another peripheral that BME280 and passive components for I2C connection. I can&amp;#39;t get low power consumption</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 09 May 2024 14:50:16 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/104289/high-current-consuption-using-bme280-on-seeed-xiao-ble-nrf52840-in-zephyr-rtos" /><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/482669?ContentTypeID=1</link><pubDate>Thu, 09 May 2024 14:50:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1eef7451-fd12-4569-a175-2ad15e1f5bcc</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;Hi, I&amp;#39;m back with news.&amp;nbsp;&lt;br /&gt;I could solve it for Seeed Xiao, using SAADC NRFX drivers, and was not necessary to use the uninit() function, provided by SAADC NRFX driver:&lt;br /&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;	status = nrfx_saadc_init(NRFX_SAADC_DEFAULT_CONFIG_IRQ_PRIORITY);
	if (status != NRFX_SUCCESS)
	{
		LOG_INF(&amp;quot;SAADC init failed: %d\n&amp;quot;, status);
	}
	else
		LOG_INF(&amp;quot;SAADC init successful&amp;quot;);

	status = nrfx_saadc_channel_config(&amp;amp;saadc_channel);
	if (status != NRFX_SUCCESS)
	{
		LOG_INF(&amp;quot;SAADC config failed: %d\n&amp;quot;, status);
	}
	else
		LOG_INF(&amp;quot;SAADC config successful&amp;quot;);
	uint32_t channels_mask = nrfx_saadc_channels_configured_get();
	status = nrfx_saadc_simple_mode_set(channels_mask,
										NRF_SAADC_RESOLUTION_12BIT,
										NRF_SAADC_OVERSAMPLE_DISABLED,
										NULL);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;And here is the PPK2 trace, with low power consumption during SAADC standby:&lt;br /&gt;&lt;br /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1715266187748v1.png" /&gt;&lt;br /&gt;&lt;br /&gt;For some reason, Zephyr RTOS ADC API not manage well power consumption.&lt;/p&gt;
&lt;p&gt;Thanks a lot!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/450653?ContentTypeID=1</link><pubDate>Mon, 16 Oct 2023 15:54:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e93acc86-b173-40ab-9198-50a7483778f9</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;Ok Jared, I&amp;#39;ll try ASAP with the uninit/init funciton (I guess that I will use SAADC driver functions, because of NRF52840 has not ADC peripheral), instead of using Zephyr API, then I&amp;#39;ll back with news.&lt;/p&gt;
&lt;p&gt;Maybe this is an opportunity to propose PM improvements in Zephyr API, I&amp;#39;ll try it later.&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;p&gt;Julian&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/450304?ContentTypeID=1</link><pubDate>Fri, 13 Oct 2023 12:53:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a0521144-9a0f-47ec-9185-f23e8269dc76</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="jelsesser"]Has nrfx driver power management implementation? [/quote]
&lt;p&gt;No not quite, but you can easily disable the peripheral by calling the &lt;a href="https://github.com/NordicSemiconductor/nrfx/blob/f147ea557d5e2a04cb95ab8328204bcf36d8f410/drivers/src/nrfx_adc.c#L91"&gt;un init function&lt;/a&gt;. Unfortuantly, the Zephyr API lacks this kind of function which makes it difficult to disable the peripheral.&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;Jared&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/450130?ContentTypeID=1</link><pubDate>Thu, 12 Oct 2023 16:32:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b7aaf794-7719-44f9-b6a3-30464855c841</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;Hi Jared,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m using Zephyr API to measure each 15 min battery level:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;int adc_init(void)
{
	int err;

	gpio_pin_configure_dt(&amp;amp;vbat_pin, GPIO_OUTPUT);

	if (!device_is_ready(adc_chan7.dev))
	{
		printk(&amp;quot;ADC controller device not ready\n&amp;quot;);
		return -EINVAL;
	}

	err = adc_channel_setup_dt(&amp;amp;adc_chan7);
	if (err &amp;lt; 0)
	{
		printk(&amp;quot;Could not setup channel (%d)\n&amp;quot;, err);
		return err;
	}
}

uint8_t get_battery_level(void)
{
	uint8_t err;
	int16_t buf;
	struct adc_sequence sequence = {
		.buffer = &amp;amp;buf,
		/* buffer size in bytes, not number of samples */
		.buffer_size = sizeof(buf),
	};
	double vbat;

	int32_t val_mv;
	(void)adc_sequence_init_dt(&amp;amp;adc_chan7, &amp;amp;sequence);

	err = adc_read(adc_chan7.dev, &amp;amp;sequence);
	if (err &amp;lt; 0)
	{
		printk(&amp;quot;Could not read (%d)\n&amp;quot;, err);
		return 1;
	}
	/* conversion to mV may not be supported, skip if not */
	val_mv = buf;
	err = adc_raw_to_millivolts_dt(&amp;amp;adc_chan7,
								   &amp;amp;val_mv);
	if (err &amp;lt; 0)
	{
		printk(&amp;quot; (value in mV not available)\n&amp;quot;);
		return 1;
	}
	else
	{
		vbat = val_mv * (1510.0 / 510.0); //Resistive divider
		uint8_t bat_level = (vbat - VBAT_MIN) * 100 / (VBAT_MAX - VBAT_MIN);
		return bat_level;
	}
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Has nrfx driver power management implementation? Or can I fix it with a workaround in Zephyr?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/450094?ContentTypeID=1</link><pubDate>Thu, 12 Oct 2023 13:57:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:451f684a-fe4b-4a59-b03d-58646f8a0983</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Very good progress on this,&lt;/p&gt;
&lt;p&gt;I see that there isn&amp;#39;t any implementation for the power management module for the ADC yet.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What API are you using for the ADC, are you using the nrfx driver directly or using the Zephyr API?&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;Jared&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/449921?ContentTypeID=1</link><pubDate>Wed, 11 Oct 2023 20:33:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1b59e331-99d1-4e68-85b6-eaae98875885</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;Hi Jared,&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve modified registers with debugger and power consuption has decreased a few dozen of uA. How can I set registers on code? There is some API?&lt;/p&gt;
&lt;p&gt;In the other hand, I realized that SAADC still idle consumes&amp;nbsp;about 200uA. When I measure current with &amp;quot;&lt;span&gt;CONFIG_ADC&lt;/span&gt;&lt;span&gt;=n&amp;quot;, power consumption turns as desired (just 6uA in idle vs 200uA with CONFIG_ADC=y):&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1697056173028v1.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;How can I set ADC to sleep mode between readings in Zephyr? In config file I&amp;#39;ve set:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;And in overlay file:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;&amp;amp;adc {
	#address-cells = &amp;lt;1&amp;gt;;
	#size-cells = &amp;lt;0&amp;gt;;

	channel@7 {
		reg = &amp;lt;7&amp;gt;;
		zephyr,gain = &amp;quot;ADC_GAIN_1_5&amp;quot;;
		zephyr,reference = &amp;quot;ADC_REF_INTERNAL&amp;quot;;
		zephyr,vref-mv = &amp;lt;750&amp;gt;;
		zephyr,acquisition-time = &amp;lt;ADC_ACQ_TIME_DEFAULT&amp;gt;;
		zephyr,input-positive = &amp;lt;NRF_SAADC_AIN7&amp;gt;; /* P0.31 */
		zephyr,resolution = &amp;lt;12&amp;gt;;
	};
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Thanks for your help&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/449299?ContentTypeID=1</link><pubDate>Mon, 09 Oct 2023 08:29:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1240f701-8882-4cf7-ac2f-7a7f2a8ecdcb</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="jelsesser"]&lt;p&gt;I&amp;#39;ve read PIN_CNF[4] and&amp;nbsp;&lt;span&gt;PIN_CNF[5] registers corresponding to SDA/SCL pins, and there is no change:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Before&amp;nbsp;&amp;nbsp;&lt;span&gt;PM_DEVICE_ACTION_SUSPEND:&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;&lt;img style="max-height:240px;max-width:320px;cursor:zoom-in;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/0726.Captura-de-pantalla-2023_2D00_10_2D00_05-195939.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;After&amp;nbsp;PM_DEVICE_ACTION_SUSPEND:&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;&lt;img style="max-height:240px;max-width:320px;cursor:zoom-in;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/8231.Captura-de-pantalla-2023_2D00_10_2D00_05-195954.png" /&gt;&lt;/span&gt;&lt;/p&gt;[/quote]
&lt;p&gt;Ok, seems my suspicion was right. Can you try to configure the pins back to the&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf52840/gpio.html?cp=5_0_0_5_8_1_9#register.PIN_CNF-0-31"&gt;default&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;which is as input, input buffer disconnected, no PULL, SOS1, and SENSE disabled? You can write&amp;nbsp;&lt;span&gt;0x00000002 directly to both registers to put their back to default.&lt;/span&gt;&lt;/p&gt;
[quote user="jelsesser"]It&amp;#39;s that OK? Or maybe it can reset SYSTEM_ON mode?[/quote]
&lt;p&gt;SENSE isn&amp;#39;t enabled by default, so I would disable it&amp;nbsp; unless you use that feature on purpose.&lt;/p&gt;
[quote user="jelsesser"]In the other hand, I&amp;#39;ve cutted both (SDA and SCL) traces and current in SYSTEM OFF has made no change.[/quote]
&lt;p&gt;Thanks for this information, that is very good to know.&amp;nbsp;&lt;/p&gt;
[quote user="jelsesser"]If I try sleep_demo of Seeed in Arduino, the power consuption is very low.[/quote]
&lt;p&gt;Yes, my guess is that there is some fw configuration that is causing this.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;Jared&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/449213?ContentTypeID=1</link><pubDate>Fri, 06 Oct 2023 14:56:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:884849b1-fc43-4927-b025-686d0a1ffc4f</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve read PIN_CNF[4] and&amp;nbsp;&lt;span&gt;PIN_CNF[5] registers corresponding to SDA/SCL pins, and there is no change:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Before&amp;nbsp;&amp;nbsp;&lt;span&gt;PM_DEVICE_ACTION_SUSPEND:&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Captura-de-pantalla-2023_2D00_10_2D00_05-195939.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;After&amp;nbsp;PM_DEVICE_ACTION_SUSPEND:&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Captura-de-pantalla-2023_2D00_10_2D00_05-195954.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Also I realize that PIN_CFG[2] bit SENSE is like this (LOW):&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Captura-de-pantalla-2023_2D00_10_2D00_05-200034.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;It&amp;#39;s that OK? Or maybe it can reset SYSTEM_ON mode?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;In the other hand, I&amp;#39;ve cutted both (SDA and SCL) traces and current in SYSTEM OFF has made no change.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If I try sleep_demo of Seeed in Arduino, the power consuption is very low.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Regards&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/448964?ContentTypeID=1</link><pubDate>Thu, 05 Oct 2023 09:56:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7ccc6763-693f-4679-a0f3-3538c3f8c837</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Can you read out the &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf52840/gpio.html?cp=5_0_0_5_8_1_9#register.PIN_CNF-0-31"&gt;PIN_CNF&lt;/a&gt;[n] register for the I2C pins after&amp;nbsp;pm_device_action_run(dev, PM_DEVICE_ACTION_SUSPEND) has returned? I&amp;#39;m suspecting that pins are not configured back to default.&lt;/p&gt;
&lt;p&gt;Also could you try to cut the trace between the slave and the nRF52840 after putting it in low power mode to see if it makes the system off sleep current decrease?&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;Jared&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/448842?ContentTypeID=1</link><pubDate>Wed, 04 Oct 2023 13:48:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b668add1-d1f0-432c-8168-e232aad0b29f</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;I&amp;#39;m using 2.3.0 version.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here is the dts output:. I&amp;#39;ve disabled spi3 because of the Seeed XIao external flash, that has an extra consumption.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;/dts-v1/;

/ {
	#address-cells = &amp;lt; 0x1 &amp;gt;;
	#size-cells = &amp;lt; 0x1 &amp;gt;;
	model = &amp;quot;Seeed XIAO BLE&amp;quot;;
	compatible = &amp;quot;seeed,xiao-ble&amp;quot;;
	chosen {
		zephyr,entropy = &amp;amp;cryptocell;
		zephyr,flash-controller = &amp;amp;flash_controller;
		zephyr,console = &amp;amp;usb_cdc_acm_uart;
		zephyr,shell-uart = &amp;amp;usb_cdc_acm_uart;
		zephyr,uart-mcumgr = &amp;amp;usb_cdc_acm_uart;
		zephyr,bt-mon-uart = &amp;amp;usb_cdc_acm_uart;
		zephyr,bt-c2h-uart = &amp;amp;usb_cdc_acm_uart;
		zephyr,sram = &amp;amp;sram0;
		zephyr,flash = &amp;amp;flash0;
		zephyr,code-partition = &amp;amp;code_partition;
		zephyr,ieee802154 = &amp;amp;ieee802154;
	};
	aliases {
		led0 = &amp;amp;led0;
		led1 = &amp;amp;led1;
		led2 = &amp;amp;led2;
		pwm-led0 = &amp;amp;pwm_led0;
		bootloader-led0 = &amp;amp;led0;
		mcuboot-led0 = &amp;amp;led0;
		watchdog0 = &amp;amp;wdt0;
		spi-flash0 = &amp;amp;p25q16h_spi;
		sw0 = &amp;amp;button0;
		sw1 = &amp;amp;button1;
	};
	soc {
		#address-cells = &amp;lt; 0x1 &amp;gt;;
		#size-cells = &amp;lt; 0x1 &amp;gt;;
		compatible = &amp;quot;nordic,nRF52840-QIAA&amp;quot;, &amp;quot;nordic,nRF52840&amp;quot;, &amp;quot;nordic,nRF52&amp;quot;, &amp;quot;simple-bus&amp;quot;;
		interrupt-parent = &amp;lt; &amp;amp;nvic &amp;gt;;
		ranges;
		nvic: interrupt-controller@e000e100 {
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			compatible = &amp;quot;arm,v7m-nvic&amp;quot;;
			reg = &amp;lt; 0xe000e100 0xc00 &amp;gt;;
			interrupt-controller;
			#interrupt-cells = &amp;lt; 0x2 &amp;gt;;
			arm,num-irq-priority-bits = &amp;lt; 0x3 &amp;gt;;
			phandle = &amp;lt; 0x1 &amp;gt;;
		};
		systick: timer@e000e010 {
			compatible = &amp;quot;arm,armv7m-systick&amp;quot;;
			reg = &amp;lt; 0xe000e010 0x10 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		ficr: ficr@10000000 {
			compatible = &amp;quot;nordic,nrf-ficr&amp;quot;;
			reg = &amp;lt; 0x10000000 0x1000 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		uicr: uicr@10001000 {
			compatible = &amp;quot;nordic,nrf-uicr&amp;quot;;
			reg = &amp;lt; 0x10001000 0x1000 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		sram0: memory@20000000 {
			compatible = &amp;quot;mmio-sram&amp;quot;;
			reg = &amp;lt; 0x20000000 0x40000 &amp;gt;;
		};
		clock: clock@40000000 {
			compatible = &amp;quot;nordic,nrf-clock&amp;quot;;
			reg = &amp;lt; 0x40000000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x0 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		power: power@40000000 {
			compatible = &amp;quot;nordic,nrf-power&amp;quot;;
			reg = &amp;lt; 0x40000000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x0 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		radio: radio@40001000 {
			compatible = &amp;quot;nordic,nrf-radio&amp;quot;;
			reg = &amp;lt; 0x40001000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x1 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			ieee802154-supported;
			ble-2mbps-supported;
			ble-coded-phy-supported;
			tx-high-power-supported;
			ieee802154: ieee802154 {
				compatible = &amp;quot;nordic,nrf-ieee802154&amp;quot;;
				status = &amp;quot;okay&amp;quot;;
			};
		};
		uart0: xiao_serial: uart@40002000 {
			compatible = &amp;quot;nordic,nrf-uarte&amp;quot;;
			reg = &amp;lt; 0x40002000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x2 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			current-speed = &amp;lt; 0x1c200 &amp;gt;;
			pinctrl-0 = &amp;lt; &amp;amp;uart0_default &amp;gt;;
			pinctrl-1 = &amp;lt; &amp;amp;uart0_sleep &amp;gt;;
			pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
		};
		i2c0: i2c@40003000 {
			compatible = &amp;quot;nordic,nrf-twim&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40003000 0x1000 &amp;gt;;
			clock-frequency = &amp;lt; 0x186a0 &amp;gt;;
			interrupts = &amp;lt; 0x3 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		spi0: xiao_spi: spi@40003000 {
			compatible = &amp;quot;nordic,nrf-spi&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40003000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x3 0x1 &amp;gt;;
			max-frequency = &amp;lt; 0x7a1200 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			pinctrl-0 = &amp;lt; &amp;amp;spi0_default &amp;gt;;
			pinctrl-1 = &amp;lt; &amp;amp;spi0_sleep &amp;gt;;
			pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
		};
		i2c1: xiao_i2c: i2c@40004000 {
			compatible = &amp;quot;nordic,nrf-twi&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40004000 0x1000 &amp;gt;;
			clock-frequency = &amp;lt; 0x186a0 &amp;gt;;
			interrupts = &amp;lt; 0x4 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			pinctrl-0 = &amp;lt; &amp;amp;i2c1_default &amp;gt;;
			pinctrl-1 = &amp;lt; &amp;amp;i2c1_sleep &amp;gt;;
			pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
			bme280@76 {
				compatible = &amp;quot;bosch,bme280&amp;quot;;
				reg = &amp;lt; 0x76 &amp;gt;;
			};
		};
		spi1: spi@40004000 {
			compatible = &amp;quot;nordic,nrf-spim&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40004000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x4 0x1 &amp;gt;;
			max-frequency = &amp;lt; 0x7a1200 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		nfct: nfct@40005000 {
			compatible = &amp;quot;nordic,nrf-nfct&amp;quot;;
			reg = &amp;lt; 0x40005000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x5 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		gpiote: gpiote@40006000 {
			compatible = &amp;quot;nordic,nrf-gpiote&amp;quot;;
			reg = &amp;lt; 0x40006000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x6 0x5 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		adc: adc@40007000 {
			compatible = &amp;quot;nordic,nrf-saadc&amp;quot;;
			reg = &amp;lt; 0x40007000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x7 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			#io-channel-cells = &amp;lt; 0x1 &amp;gt;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			phandle = &amp;lt; 0x10 &amp;gt;;
			channel@7 {
				reg = &amp;lt; 0x7 &amp;gt;;
				zephyr,gain = &amp;quot;ADC_GAIN_1_5&amp;quot;;
				zephyr,reference = &amp;quot;ADC_REF_INTERNAL&amp;quot;;
				zephyr,vref-mv = &amp;lt; 0x2ee &amp;gt;;
				zephyr,acquisition-time = &amp;lt; 0x0 &amp;gt;;
				zephyr,input-positive = &amp;lt; 0x8 &amp;gt;;
				zephyr,resolution = &amp;lt; 0xc &amp;gt;;
			};
		};
		timer0: timer@40008000 {
			compatible = &amp;quot;nordic,nrf-timer&amp;quot;;
			status = &amp;quot;okay&amp;quot;;
			reg = &amp;lt; 0x40008000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x4 &amp;gt;;
			interrupts = &amp;lt; 0x8 0x1 &amp;gt;;
			prescaler = &amp;lt; 0x0 &amp;gt;;
		};
		timer1: timer@40009000 {
			compatible = &amp;quot;nordic,nrf-timer&amp;quot;;
			status = &amp;quot;okay&amp;quot;;
			reg = &amp;lt; 0x40009000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x4 &amp;gt;;
			interrupts = &amp;lt; 0x9 0x1 &amp;gt;;
			prescaler = &amp;lt; 0x0 &amp;gt;;
		};
		timer2: timer@4000a000 {
			compatible = &amp;quot;nordic,nrf-timer&amp;quot;;
			status = &amp;quot;okay&amp;quot;;
			reg = &amp;lt; 0x4000a000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x4 &amp;gt;;
			interrupts = &amp;lt; 0xa 0x1 &amp;gt;;
			prescaler = &amp;lt; 0x0 &amp;gt;;
			phandle = &amp;lt; 0xd &amp;gt;;
		};
		rtc0: rtc@4000b000 {
			compatible = &amp;quot;nordic,nrf-rtc&amp;quot;;
			reg = &amp;lt; 0x4000b000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x3 &amp;gt;;
			interrupts = &amp;lt; 0xb 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			clock-frequency = &amp;lt; 0x8000 &amp;gt;;
			prescaler = &amp;lt; 0x1 &amp;gt;;
		};
		temp: temp@4000c000 {
			compatible = &amp;quot;nordic,nrf-temp&amp;quot;;
			reg = &amp;lt; 0x4000c000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0xc 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		rng: random@4000d000 {
			compatible = &amp;quot;nordic,nrf-rng&amp;quot;;
			reg = &amp;lt; 0x4000d000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0xd 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		ecb: ecb@4000e000 {
			compatible = &amp;quot;nordic,nrf-ecb&amp;quot;;
			reg = &amp;lt; 0x4000e000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0xe 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		ccm: ccm@4000f000 {
			compatible = &amp;quot;nordic,nrf-ccm&amp;quot;;
			reg = &amp;lt; 0x4000f000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0xf 0x1 &amp;gt;;
			length-field-length-8-bits;
			status = &amp;quot;okay&amp;quot;;
		};
		wdt: wdt0: watchdog@40010000 {
			compatible = &amp;quot;nordic,nrf-wdt&amp;quot;;
			reg = &amp;lt; 0x40010000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x10 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		rtc1: rtc@40011000 {
			compatible = &amp;quot;nordic,nrf-rtc&amp;quot;;
			reg = &amp;lt; 0x40011000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x4 &amp;gt;;
			interrupts = &amp;lt; 0x11 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			clock-frequency = &amp;lt; 0x8000 &amp;gt;;
			prescaler = &amp;lt; 0x1 &amp;gt;;
		};
		qdec: qdec0: qdec@40012000 {
			compatible = &amp;quot;nordic,nrf-qdec&amp;quot;;
			reg = &amp;lt; 0x40012000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x12 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		comp: comparator@40013000 {
			compatible = &amp;quot;nordic,nrf-comp&amp;quot;;
			reg = &amp;lt; 0x40013000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x13 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
			#io-channel-cells = &amp;lt; 0x1 &amp;gt;;
		};
		egu0: swi0: egu@40014000 {
			compatible = &amp;quot;nordic,nrf-egu&amp;quot;, &amp;quot;nordic,nrf-swi&amp;quot;;
			reg = &amp;lt; 0x40014000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x14 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		egu1: swi1: egu@40015000 {
			compatible = &amp;quot;nordic,nrf-egu&amp;quot;, &amp;quot;nordic,nrf-swi&amp;quot;;
			reg = &amp;lt; 0x40015000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x15 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		egu2: swi2: egu@40016000 {
			compatible = &amp;quot;nordic,nrf-egu&amp;quot;, &amp;quot;nordic,nrf-swi&amp;quot;;
			reg = &amp;lt; 0x40016000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x16 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		egu3: swi3: egu@40017000 {
			compatible = &amp;quot;nordic,nrf-egu&amp;quot;, &amp;quot;nordic,nrf-swi&amp;quot;;
			reg = &amp;lt; 0x40017000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x17 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		egu4: swi4: egu@40018000 {
			compatible = &amp;quot;nordic,nrf-egu&amp;quot;, &amp;quot;nordic,nrf-swi&amp;quot;;
			reg = &amp;lt; 0x40018000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x18 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		egu5: swi5: egu@40019000 {
			compatible = &amp;quot;nordic,nrf-egu&amp;quot;, &amp;quot;nordic,nrf-swi&amp;quot;;
			reg = &amp;lt; 0x40019000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x19 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		timer3: timer@4001a000 {
			compatible = &amp;quot;nordic,nrf-timer&amp;quot;;
			status = &amp;quot;okay&amp;quot;;
			reg = &amp;lt; 0x4001a000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x6 &amp;gt;;
			interrupts = &amp;lt; 0x1a 0x1 &amp;gt;;
			prescaler = &amp;lt; 0x0 &amp;gt;;
		};
		timer4: timer@4001b000 {
			compatible = &amp;quot;nordic,nrf-timer&amp;quot;;
			status = &amp;quot;okay&amp;quot;;
			reg = &amp;lt; 0x4001b000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x6 &amp;gt;;
			interrupts = &amp;lt; 0x1b 0x1 &amp;gt;;
			prescaler = &amp;lt; 0x0 &amp;gt;;
		};
		pwm0: pwm@4001c000 {
			compatible = &amp;quot;nordic,nrf-pwm&amp;quot;;
			reg = &amp;lt; 0x4001c000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x1c 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			#pwm-cells = &amp;lt; 0x3 &amp;gt;;
			pinctrl-0 = &amp;lt; &amp;amp;pwm0_default &amp;gt;;
			pinctrl-1 = &amp;lt; &amp;amp;pwm0_sleep &amp;gt;;
			pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
			phandle = &amp;lt; 0xf &amp;gt;;
		};
		pdm0: pdm@4001d000 {
			compatible = &amp;quot;nordic,nrf-pdm&amp;quot;;
			reg = &amp;lt; 0x4001d000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x1d 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		acl: acl@4001e000 {
			compatible = &amp;quot;nordic,nrf-acl&amp;quot;;
			reg = &amp;lt; 0x4001e000 0x1000 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		flash_controller: flash-controller@4001e000 {
			compatible = &amp;quot;nordic,nrf52-flash-controller&amp;quot;;
			reg = &amp;lt; 0x4001e000 0x1000 &amp;gt;;
			partial-erase;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x1 &amp;gt;;
			flash0: flash@0 {
				compatible = &amp;quot;soc-nv-flash&amp;quot;;
				erase-block-size = &amp;lt; 0x1000 &amp;gt;;
				write-block-size = &amp;lt; 0x4 &amp;gt;;
				reg = &amp;lt; 0x0 0x100000 &amp;gt;;
				partitions {
					compatible = &amp;quot;fixed-partitions&amp;quot;;
					#address-cells = &amp;lt; 0x1 &amp;gt;;
					#size-cells = &amp;lt; 0x1 &amp;gt;;
					sd_partition: partition@0 {
						label = &amp;quot;softdevice&amp;quot;;
						reg = &amp;lt; 0x0 0x27000 &amp;gt;;
					};
					code_partition: partition@27000 {
						label = &amp;quot;code_partition&amp;quot;;
						reg = &amp;lt; 0x27000 0xc5000 &amp;gt;;
					};
					storage_partition: partition@ec000 {
						label = &amp;quot;storage&amp;quot;;
						reg = &amp;lt; 0xec000 0x8000 &amp;gt;;
					};
					boot_partition: partition@f4000 {
						label = &amp;quot;adafruit_boot&amp;quot;;
						reg = &amp;lt; 0xf4000 0xc000 &amp;gt;;
					};
				};
			};
		};
		ppi: ppi@4001f000 {
			compatible = &amp;quot;nordic,nrf-ppi&amp;quot;;
			reg = &amp;lt; 0x4001f000 0x1000 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		mwu: mwu@40020000 {
			compatible = &amp;quot;nordic,nrf-mwu&amp;quot;;
			reg = &amp;lt; 0x40020000 0x1000 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
		};
		pwm1: pwm@40021000 {
			compatible = &amp;quot;nordic,nrf-pwm&amp;quot;;
			reg = &amp;lt; 0x40021000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x21 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
			#pwm-cells = &amp;lt; 0x3 &amp;gt;;
		};
		pwm2: pwm@40022000 {
			compatible = &amp;quot;nordic,nrf-pwm&amp;quot;;
			reg = &amp;lt; 0x40022000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x22 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
			#pwm-cells = &amp;lt; 0x3 &amp;gt;;
		};
		spi2: spi@40023000 {
			compatible = &amp;quot;nordic,nrf-spim&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40023000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x23 0x1 &amp;gt;;
			max-frequency = &amp;lt; 0x7a1200 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		rtc2: rtc@40024000 {
			compatible = &amp;quot;nordic,nrf-rtc&amp;quot;;
			reg = &amp;lt; 0x40024000 0x1000 &amp;gt;;
			cc-num = &amp;lt; 0x4 &amp;gt;;
			interrupts = &amp;lt; 0x24 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			clock-frequency = &amp;lt; 0x8000 &amp;gt;;
			prescaler = &amp;lt; 0x1 &amp;gt;;
		};
		i2s0: i2s@40025000 {
			compatible = &amp;quot;nordic,nrf-i2s&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40025000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x25 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		usbd: zephyr_udc0: usbd@40027000 {
			compatible = &amp;quot;nordic,nrf-usbd&amp;quot;;
			reg = &amp;lt; 0x40027000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x27 0x1 &amp;gt;;
			num-bidir-endpoints = &amp;lt; 0x1 &amp;gt;;
			num-in-endpoints = &amp;lt; 0x7 &amp;gt;;
			num-out-endpoints = &amp;lt; 0x7 &amp;gt;;
			num-isoin-endpoints = &amp;lt; 0x1 &amp;gt;;
			num-isoout-endpoints = &amp;lt; 0x1 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			usb_cdc_acm_uart: cdc-acm-uart {
				compatible = &amp;quot;zephyr,cdc-acm-uart&amp;quot;;
			};
		};
		uart1: uart@40028000 {
			compatible = &amp;quot;nordic,nrf-uarte&amp;quot;;
			reg = &amp;lt; 0x40028000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x28 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		qspi: qspi@40029000 {
			compatible = &amp;quot;nordic,nrf-qspi&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x40029000 0x1000 &amp;gt;, &amp;lt; 0x12000000 0x8000000 &amp;gt;;
			reg-names = &amp;quot;qspi&amp;quot;, &amp;quot;qspi_mm&amp;quot;;
			interrupts = &amp;lt; 0x29 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
		};
		pwm3: pwm@4002d000 {
			compatible = &amp;quot;nordic,nrf-pwm&amp;quot;;
			reg = &amp;lt; 0x4002d000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x2d 0x1 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
			#pwm-cells = &amp;lt; 0x3 &amp;gt;;
		};
		spi3: spi@4002f000 {
			compatible = &amp;quot;nordic,nrf-spim&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x0 &amp;gt;;
			reg = &amp;lt; 0x4002f000 0x1000 &amp;gt;;
			interrupts = &amp;lt; 0x2f 0x1 &amp;gt;;
			max-frequency = &amp;lt; 0x1e84800 &amp;gt;;
			rx-delay-supported;
			rx-delay = &amp;lt; 0x2 &amp;gt;;
			status = &amp;quot;disabled&amp;quot;;
			pinctrl-0 = &amp;lt; &amp;amp;spi3_default &amp;gt;;
			pinctrl-1 = &amp;lt; &amp;amp;spi3_sleep &amp;gt;;
			pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
			cs-gpios = &amp;lt; &amp;amp;gpio0 0x19 0x1 &amp;gt;;
			p25q16h_spi: p25q16h@0 {
				compatible = &amp;quot;jedec,spi-nor&amp;quot;;
				reg = &amp;lt; 0x0 &amp;gt;;
				wp-gpios = &amp;lt; &amp;amp;gpio0 0x16 0x1 &amp;gt;;
				hold-gpios = &amp;lt; &amp;amp;gpio0 0x17 0x1 &amp;gt;;
				spi-max-frequency = &amp;lt; 0x632ea00 &amp;gt;;
				jedec-id = [ 85 60 15 ];
				sfdp-bfp = [ E5 20 F1 FF FF FF FF 00 44 EB 08 6B 08 3B 80 BB EE FF FF FF FF FF 00 FF FF FF 00 FF 0C 20 0F 52 10 D8 08 81 ];
				size = &amp;lt; 0x1000000 &amp;gt;;
				has-dpd;
				t-enter-dpd = &amp;lt; 0xbb8 &amp;gt;;
				t-exit-dpd = &amp;lt; 0x1f40 &amp;gt;;
			};
		};
		gpio0: gpio@50000000 {
			compatible = &amp;quot;nordic,nrf-gpio&amp;quot;;
			gpio-controller;
			reg = &amp;lt; 0x50000000 0x200 0x50000500 0x300 &amp;gt;;
			#gpio-cells = &amp;lt; 0x2 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			port = &amp;lt; 0x0 &amp;gt;;
			sense-edge-mask = &amp;lt; 0xffffffff &amp;gt;;
			phandle = &amp;lt; 0xc &amp;gt;;
		};
		gpio1: gpio@50000300 {
			compatible = &amp;quot;nordic,nrf-gpio&amp;quot;;
			gpio-controller;
			reg = &amp;lt; 0x50000300 0x200 0x50000800 0x300 &amp;gt;;
			#gpio-cells = &amp;lt; 0x2 &amp;gt;;
			ngpios = &amp;lt; 0x10 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			port = &amp;lt; 0x1 &amp;gt;;
			phandle = &amp;lt; 0xe &amp;gt;;
		};
		cryptocell: crypto@5002a000 {
			compatible = &amp;quot;nordic,nrf-cc310&amp;quot;;
			reg = &amp;lt; 0x5002a000 0x1000 &amp;gt;;
			status = &amp;quot;okay&amp;quot;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x1 &amp;gt;;
			cryptocell310: crypto@5002b000 {
				compatible = &amp;quot;arm,cryptocell-310&amp;quot;;
				reg = &amp;lt; 0x5002b000 0x1000 &amp;gt;;
				interrupts = &amp;lt; 0x2a 0x1 &amp;gt;;
			};
		};
	};
	pinctrl: pin-controller {
		compatible = &amp;quot;nordic,nrf-pinctrl&amp;quot;;
		uart0_default: uart0_default {
			phandle = &amp;lt; 0x2 &amp;gt;;
			group1 {
				psels = &amp;lt; 0x2b &amp;gt;;
			};
			group2 {
				psels = &amp;lt; 0x1002c &amp;gt;;
				bias-pull-up;
			};
		};
		uart0_sleep: uart0_sleep {
			phandle = &amp;lt; 0x3 &amp;gt;;
			group1 {
				psels = &amp;lt; 0x2b &amp;gt;, &amp;lt; 0x1002c &amp;gt;;
				low-power-enable;
			};
		};
		i2c1_default: i2c1_default {
			phandle = &amp;lt; 0x6 &amp;gt;;
			group1 {
				psels = &amp;lt; 0xc0004 &amp;gt;, &amp;lt; 0xb0005 &amp;gt;;
			};
		};
		i2c1_sleep: i2c1_sleep {
			phandle = &amp;lt; 0x7 &amp;gt;;
			group1 {
				psels = &amp;lt; 0xc0004 &amp;gt;, &amp;lt; 0xb0005 &amp;gt;;
				low-power-enable;
			};
		};
		pwm0_default: pwm0_default {
			phandle = &amp;lt; 0x8 &amp;gt;;
			group1 {
				psels = &amp;lt; 0x160011 &amp;gt;;
				nordic,invert;
			};
		};
		pwm0_sleep: pwm0_sleep {
			phandle = &amp;lt; 0x9 &amp;gt;;
			group1 {
				psels = &amp;lt; 0x160011 &amp;gt;;
				low-power-enable;
			};
		};
		spi0_default: spi0_default {
			phandle = &amp;lt; 0x4 &amp;gt;;
			group1 {
				psels = &amp;lt; 0x4002d &amp;gt;, &amp;lt; 0x5002f &amp;gt;, &amp;lt; 0x6002e &amp;gt;;
			};
		};
		spi0_sleep: spi0_sleep {
			phandle = &amp;lt; 0x5 &amp;gt;;
			group1 {
				psels = &amp;lt; 0x4002d &amp;gt;, &amp;lt; 0x5002f &amp;gt;, &amp;lt; 0x6002e &amp;gt;;
				low-power-enable;
			};
		};
		spi3_default: spi3_default {
			phandle = &amp;lt; 0xa &amp;gt;;
			group1 {
				psels = &amp;lt; 0x40015 &amp;gt;, &amp;lt; 0x50014 &amp;gt;, &amp;lt; 0x60018 &amp;gt;;
			};
		};
		spi3_sleep: spi3_sleep {
			phandle = &amp;lt; 0xb &amp;gt;;
			group1 {
				psels = &amp;lt; 0x40015 &amp;gt;, &amp;lt; 0x50014 &amp;gt;, &amp;lt; 0x60018 &amp;gt;;
				low-power-enable;
			};
		};
		qspi_default: qspi_default {
			group1 {
				psels = &amp;lt; 0x1d0015 &amp;gt;, &amp;lt; 0x1f0014 &amp;gt;, &amp;lt; 0x200018 &amp;gt;, &amp;lt; 0x210016 &amp;gt;, &amp;lt; 0x220017 &amp;gt;, &amp;lt; 0x1e0019 &amp;gt;;
			};
		};
		qspi_sleep: qspi_sleep {
			group1 {
				psels = &amp;lt; 0x1d0015 &amp;gt;, &amp;lt; 0x1f0014 &amp;gt;, &amp;lt; 0x200018 &amp;gt;, &amp;lt; 0x210016 &amp;gt;, &amp;lt; 0x220017 &amp;gt;, &amp;lt; 0x1e0019 &amp;gt;;
				low-power-enable;
			};
		};
	};
	rng_hci: entropy_bt_hci {
		compatible = &amp;quot;zephyr,bt-hci-entropy&amp;quot;;
		status = &amp;quot;okay&amp;quot;;
	};
	cpus {
		#address-cells = &amp;lt; 0x1 &amp;gt;;
		#size-cells = &amp;lt; 0x0 &amp;gt;;
		cpu@0 {
			device_type = &amp;quot;cpu&amp;quot;;
			compatible = &amp;quot;arm,cortex-m4f&amp;quot;;
			reg = &amp;lt; 0x0 &amp;gt;;
			#address-cells = &amp;lt; 0x1 &amp;gt;;
			#size-cells = &amp;lt; 0x1 &amp;gt;;
			itm: itm@e0000000 {
				compatible = &amp;quot;arm,armv7m-itm&amp;quot;;
				reg = &amp;lt; 0xe0000000 0x1000 &amp;gt;;
				swo-ref-frequency = &amp;lt; 0x1e84800 &amp;gt;;
			};
		};
	};
	sw_pwm: sw-pwm {
		compatible = &amp;quot;nordic,nrf-sw-pwm&amp;quot;;
		status = &amp;quot;disabled&amp;quot;;
		generator = &amp;lt; &amp;amp;timer2 &amp;gt;;
		clock-prescaler = &amp;lt; 0x0 &amp;gt;;
		#pwm-cells = &amp;lt; 0x3 &amp;gt;;
	};
	xiao_d: connector {
		compatible = &amp;quot;seeed,xiao-gpio&amp;quot;;
		#gpio-cells = &amp;lt; 0x2 &amp;gt;;
		gpio-map-mask = &amp;lt; 0xffffffff 0xffffffc0 &amp;gt;;
		gpio-map-pass-thru = &amp;lt; 0x0 0x3f &amp;gt;;
		gpio-map = &amp;lt; 0x0 0x0 &amp;amp;gpio0 0x2 0x0 &amp;gt;, &amp;lt; 0x1 0x0 &amp;amp;gpio0 0x3 0x0 &amp;gt;, &amp;lt; 0x2 0x0 &amp;amp;gpio0 0x1c 0x0 &amp;gt;, &amp;lt; 0x3 0x0 &amp;amp;gpio0 0x1d 0x0 &amp;gt;, &amp;lt; 0x4 0x0 &amp;amp;gpio0 0x4 0x0 &amp;gt;, &amp;lt; 0x5 0x0 &amp;amp;gpio0 0x5 0x0 &amp;gt;, &amp;lt; 0x6 0x0 &amp;amp;gpio1 0xb 0x0 &amp;gt;, &amp;lt; 0x7 0x0 &amp;amp;gpio1 0xc 0x0 &amp;gt;, &amp;lt; 0x8 0x0 &amp;amp;gpio1 0xd 0x0 &amp;gt;, &amp;lt; 0x9 0x0 &amp;amp;gpio1 0xe 0x0 &amp;gt;, &amp;lt; 0xa 0x0 &amp;amp;gpio1 0xf 0x0 &amp;gt;;
	};
	leds {
		compatible = &amp;quot;gpio-leds&amp;quot;;
		led0: led_0 {
			gpios = &amp;lt; &amp;amp;gpio0 0x1a 0x1 &amp;gt;;
			label = &amp;quot;Red LED&amp;quot;;
		};
		led1: led_1 {
			gpios = &amp;lt; &amp;amp;gpio0 0x1e 0x1 &amp;gt;;
			label = &amp;quot;Green LED&amp;quot;;
		};
		led2: led_2 {
			gpios = &amp;lt; &amp;amp;gpio0 0x6 0x1 &amp;gt;;
			label = &amp;quot;Blue LED&amp;quot;;
		};
	};
	pwmleds {
		compatible = &amp;quot;pwm-leds&amp;quot;;
		pwm_led0: pwm_led_0 {
			pwms = &amp;lt; &amp;amp;pwm0 0x0 0x1312d00 0x1 &amp;gt;;
		};
	};
	zephyr,user {
		io-channels = &amp;lt; &amp;amp;adc 0x7 &amp;gt;;
	};
	buttons {
		compatible = &amp;quot;gpio-keys&amp;quot;;
		status = &amp;quot;okay&amp;quot;;
		button0: button_0 {
			gpios = &amp;lt; &amp;amp;gpio0 0x2 0x11 &amp;gt;;
			label = &amp;quot;Reset button&amp;quot;;
		};
		button1: button_1 {
			gpios = &amp;lt; &amp;amp;gpio0 0xe 0x11 &amp;gt;;
			label = &amp;quot;VBAT_PIN&amp;quot;;
		};
	};
};
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/448840?ContentTypeID=1</link><pubDate>Wed, 04 Oct 2023 13:41:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:53b1e7f2-74e8-4339-904a-4b84cf894b07</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;Hi Jared,&lt;/p&gt;
&lt;p&gt;1) Here is my schematics:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1696425407174v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;It&amp;#39;s just a XIAO BLE connected to a SMD BME280 and electronic stuff (needed to connect BME280 via I2C, according to its datasheet (&lt;a id="" href="https://www.bosch-sensortec.com/products/environmental-sensors/humidity-sensors-bme280/"&gt;https://www.bosch-sensortec.com/products/environmental-sensors/humidity-sensors-bme280/&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;2)I&amp;#39;m sorry, I&amp;#39;ve not the nRF52840DK in my possession.&lt;/p&gt;
&lt;p&gt;3)I connect the PPK as source meter, directly to XIAO BLE BAT pins&amp;nbsp;with 3V3. (here is the Xiao schematic&amp;nbsp;&lt;a id="" href="https://files.seeedstudio.com/wiki/XIAO-BLE/Seeed-Studio-XIAO-nRF52840-Sense-v1.1.pdf"&gt;https://files.seeedstudio.com/wiki/XIAO-BLE/Seeed-Studio-XIAO-nRF52840-Sense-v1.1.pdf&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;I could solve the ripple, by adding manually pm functions as follows:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;			pm_device_state_get(dev, &amp;amp;bme280_state);
			if (bme280_state == PM_DEVICE_STATE_SUSPENDED)
			{
				pm_device_action_run(dev, PM_DEVICE_ACTION_RESUME);
			}
			reftime_1 = k_uptime_get();
			sensor_sample_fetch(dev);
			pm_device_action_run(dev, PM_DEVICE_ACTION_SUSPEND);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;This has improved the consumption, but it&amp;#39;s still high in idle thread (about 450uA):&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1696426820968v5.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;And here is the SYSTEM OFF sample PPK2 trace, with 200uA consumption:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1696426779137v4.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/448703?ContentTypeID=1</link><pubDate>Tue, 03 Oct 2023 18:59:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cca77a10-6224-446c-9f3a-2cfc7a5a65c9</guid><dc:creator>Mariano Goluboff</dc:creator><description>&lt;p&gt;What version of the SDK are you using? Also, can you share the output DeviceTree file for your build? You should be able to find it in build/zephyr/zephyr.dts&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/448467?ContentTypeID=1</link><pubDate>Mon, 02 Oct 2023 09:05:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4543b8d9-49bc-4bc7-b567-edfffde3ff2a</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;Hi there,&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Could you share your schematics?&lt;/li&gt;
&lt;li&gt;Can you try to reproduce the same with our development kit connected to the BME280 sensor?&lt;/li&gt;
&lt;li&gt;How is the PPK2 connected to your custom board?&amp;nbsp;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;/p&gt;
[quote user=""] even if I try the system_off Zephyr example.[/quote]
&lt;p&gt;Can you share a PPK2 trace from this?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;Jared&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: High current consuption using BME280 on Seeed Xiao BLE (nRF52840) in Zephyr RTOS</title><link>https://devzone.nordicsemi.com/thread/448389?ContentTypeID=1</link><pubDate>Fri, 29 Sep 2023 16:38:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a74d39c3-a1f7-4cb4-88d6-56d653495623</guid><dc:creator>jelsesser</dc:creator><description>&lt;p&gt;I&amp;#39;ve also tried with this errata without sucess:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Ferrata_nRF52840_Rev3%2FERR%2FnRF52840%2FRev3%2Flatest%2Fanomaly_840_87.html&amp;amp;cp=5_0_1_0_1_6"&gt;https://infocenter.nordicsemi.com/index.jsp?topic=%2Ferrata_nRF52840_Rev3%2FERR%2FnRF52840%2FRev3%2Flatest%2Fanomaly_840_87.html&amp;amp;cp=5_0_1_0_1_6&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>