Skip to content

Commit a5fdddf

Browse files
seov-nordickartben
authored andcommitted
boards: shields: npm2100_ek shield
Add an nPM2100 EK shield Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
1 parent 7072669 commit a5fdddf

File tree

3 files changed

+93
-0
lines changed

3 files changed

+93
-0
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Copyright (c) 2025 Nordic Semiconductor ASA
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config SHIELD_NPM2100_EK
5+
def_bool $(shields_list_contains,npm2100_ek)
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
.. _npm2100_ek:
2+
3+
nPM2100 EK
4+
##########
5+
6+
Overview
7+
********
8+
9+
The nPM2100 EK lets you test different functions and features of the nPM2100
10+
Power Management Integrated Circuit (PMIC).
11+
12+
Requirements
13+
************
14+
15+
The nPM2100 EK board is not a direct fit into an Arduino connector. However,
16+
the Zephyr shield must be connected to the Arduino shield connectors. That is,
17+
you need to connect the I2C lines to the ``arduino_i2c`` bus. This allows to
18+
use the shield with any host board that supports the Arduino connector.
19+
20+
Usage
21+
*****
22+
23+
To use the shield in any application, build it with the following command:
24+
25+
.. zephyr-app-commands::
26+
:board: your_board
27+
:shield: npm2100_ek
28+
:goals: build
29+
30+
For a comprehensive sample, refer to :zephyr:code-sample:`npm2100_ek`.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
/*
2+
* Copyright (C) 2025 Nordic Semiconductor ASA
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
#include <dt-bindings/regulator/npm2100.h>
7+
#include <zephyr/dt-bindings/input/input-event-codes.h>
8+
9+
&arduino_i2c {
10+
npm2100_pmic: pmic@74 {
11+
compatible = "nordic,npm2100";
12+
reg = <0x74>;
13+
14+
npm2100_gpio: gpio-controller {
15+
compatible = "nordic,npm2100-gpio";
16+
gpio-controller;
17+
#gpio-cells = <2>;
18+
ngpios = <2>;
19+
};
20+
21+
npm2100_regulators: regulators {
22+
compatible = "nordic,npm2100-regulator";
23+
24+
/* limits are set to min/max allowed values */
25+
npm2100_boost: BOOST {
26+
regulator-min-microvolt = <1800000>;
27+
regulator-max-microvolt = <3300000>;
28+
};
29+
30+
npm2100_ldosw: LDOSW {
31+
regulator-min-microvolt = <800000>;
32+
regulator-max-microvolt = <3000000>;
33+
};
34+
};
35+
36+
npm2100_wdt: watchdog {
37+
compatible = "nordic,npm2100-wdt";
38+
};
39+
40+
npm2100_vbat: vbat {
41+
compatible = "nordic,npm2100-vbat";
42+
};
43+
44+
npm2100_buttons: buttons {
45+
compatible = "gpio-keys";
46+
pmic_button0: pmic_button_0 {
47+
gpios = < &npm2100_gpio 0 GPIO_ACTIVE_LOW>;
48+
label = "Pmic button switch 0";
49+
zephyr,code = <INPUT_KEY_0>;
50+
};
51+
pmic_button1: pmic_button_1 {
52+
gpios = < &npm2100_gpio 1 GPIO_ACTIVE_LOW>;
53+
label = "Pmic button switch 1";
54+
zephyr,code = <INPUT_KEY_1>;
55+
};
56+
};
57+
};
58+
};

0 commit comments

Comments
 (0)