| /* |
| * Copyright (c) 2021 Laird Connectivity |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /dts-v1/; |
| #include <nordic/nrf52840_qiaa.dtsi> |
| #include "bt610-pinctrl.dtsi" |
| |
| / { |
| model = "Laird BT610 Sensor"; |
| compatible = "lairdconnect,bt610"; |
| |
| chosen { |
| zephyr,console = &uart0; |
| zephyr,shell-uart = &uart0; |
| zephyr,uart-mcumgr = &uart0; |
| zephyr,bt-mon-uart = &uart0; |
| zephyr,bt-c2h-uart = &uart0; |
| zephyr,sram = &sram0; |
| zephyr,flash = &flash0; |
| zephyr,code-partition = &slot0_partition; |
| }; |
| |
| leds { |
| compatible = "gpio-leds"; |
| led1: led_1 { |
| gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; |
| label = "Red LED 1"; |
| }; |
| led2: led_2 { |
| gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>; |
| label = "Green LED 2"; |
| }; |
| }; |
| |
| pwmleds { |
| compatible = "pwm-leds"; |
| |
| led1pwm: led_1_pwm { |
| pwms = <&pwm0 0 PWM_MSEC(20) PWM_POLARITY_NORMAL>; |
| label = "Red PWM LED 1"; |
| }; |
| |
| led2pwm: led_2_pwm { |
| pwms = <&pwm1 0 PWM_MSEC(20) PWM_POLARITY_NORMAL>; |
| label = "Green PWM LED 2"; |
| }; |
| }; |
| |
| buttons { |
| compatible = "gpio-keys"; |
| button1: button_1 { |
| gpios = <&gpio0 24 GPIO_PULL_UP>; |
| label = "Boot button switch 1 (SW1)"; |
| }; |
| button2: button_2 { |
| gpios = <&gpio1 1 GPIO_PULL_UP>; |
| label = "Tamper switch 2 (SW2)"; |
| }; |
| mag1: mag_1 { |
| compatible = "honeywell,sm351lt"; |
| gpios = <&gpio1 15 0>; |
| label = "SM3531LT_0"; |
| }; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| dinenable1: din_enable_1 { |
| label = "Digital Input 1 Enable"; |
| gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| dinenable2: din_enable_2 { |
| label = "Digital Input 2 Enable"; |
| gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| din1: din_1 { |
| label = "Digital Input 1"; |
| gpios = <&gpio0 9 GPIO_PULL_UP>; |
| }; |
| |
| din2: din_2 { |
| label = "Digital Input 2"; |
| gpios = <&gpio1 11 GPIO_PULL_UP>; |
| }; |
| |
| thermenable: therm_enable { |
| label = "Thermistor Inputs Enable"; |
| gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; |
| }; |
| |
| analogenable: analog_enable { |
| label = "Analog Inputs Enable"; |
| gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| highsupplyenable: high_supply_enable { |
| label = "High Voltage Power Supply Enable"; |
| gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| expanderirq: expander_irq { |
| label = "Port Expander Interrupt Request"; |
| gpios = <&gpio1 14 GPIO_PULL_UP>; |
| }; |
| |
| ain1: ain_1 { |
| label = "Analog Input 1"; |
| gpios = <&gpio0 2 GPIO_PULL_UP>; |
| }; |
| |
| ain2: ain_2 { |
| label = "Analog Input 2"; |
| gpios = <&gpio0 3 GPIO_PULL_UP>; |
| }; |
| |
| vref: v_ref { |
| label = "Voltage Reference"; |
| gpios = <&gpio0 29 GPIO_PULL_UP>; |
| }; |
| |
| expanderreset: expander_reset { |
| label = "Port Expander Reset"; |
| gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| batteryoutputenable: battery_output_enable { |
| label = "Battery Output Enable"; |
| gpios = <&gpio0 30 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| do1mcu: do_1_mcu { |
| label = "Digital Output 1"; |
| gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| do2mcu: do_2_mcu { |
| label = "Digital Output 2"; |
| gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| ain1sel: ain_1_current_measurement_selection { |
| label = "Analogue Input 1 Current/Voltage measurement select"; |
| gpios = <&gpio_exp0 0 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| ain2sel: ain_2_current_measurement_selection { |
| label = "Analogue Input 2 Current/Voltage measurement select"; |
| gpios = <&gpio_exp0 1 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| ain3sel: ain_3_current_measurement_selection { |
| label = "Analogue Input 3 Current/Voltage measurement select"; |
| gpios = <&gpio_exp0 2 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| ain4sel: ain_4_current_measurement_selection { |
| label = "Analogue Input 4 Current/Voltage measurement select"; |
| gpios = <&gpio_exp0 3 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| aina0: analog_input_selection_0 { |
| label = "Analogue Input Mux 0"; |
| gpios = <&gpio_exp0 4 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| aina1: analog_input_selection_1 { |
| label = "Analogue Input Mux 1"; |
| gpios = <&gpio_exp0 5 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| aux1: aux_input_1 { |
| label = "Aux Input 1"; |
| gpios = <&gpio_exp0 6 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| aux2: aux_input_2 { |
| label = "Aux Input 2"; |
| gpios = <&gpio_exp0 7 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| /* These aliases are provided for compatibility with samples */ |
| aliases { |
| led0 = &led1; |
| led1 = &led2; |
| led0pwm = &led1pwm; |
| led1pwm = &led2pwm; |
| sw0 = &button1; |
| sw1 = &button2; |
| sw2 = &mag1; |
| mcuboot-button0 = &button1; |
| mcuboot-led0 = &led1; |
| }; |
| }; |
| |
| &pwm0 { |
| status = "okay"; |
| pinctrl-0 = <&pwm0_default>; |
| pinctrl-1 = <&pwm0_sleep>; |
| pinctrl-names = "default", "sleep"; |
| }; |
| |
| &pwm1 { |
| status = "okay"; |
| pinctrl-0 = <&pwm1_default>; |
| pinctrl-1 = <&pwm1_sleep>; |
| pinctrl-names = "default", "sleep"; |
| }; |
| |
| &adc { |
| status = "okay"; |
| }; |
| |
| &gpiote { |
| status = "okay"; |
| }; |
| |
| &gpio0 { |
| status = "okay"; |
| }; |
| |
| &gpio1 { |
| status = "okay"; |
| }; |
| |
| &uart0 { |
| compatible = "nordic,nrf-uarte"; |
| current-speed = <115200>; |
| status = "okay"; |
| pinctrl-0 = <&uart0_default>; |
| pinctrl-1 = <&uart0_sleep>; |
| pinctrl-names = "default", "sleep"; |
| }; |
| |
| &uart1 { |
| compatible = "nordic,nrf-uarte"; |
| current-speed = <115200>; |
| status = "okay"; |
| pinctrl-0 = <&uart1_default>; |
| pinctrl-1 = <&uart1_sleep>; |
| pinctrl-names = "default", "sleep"; |
| }; |
| |
| &i2c0 { |
| compatible = "nordic,nrf-twi"; |
| status = "okay"; |
| |
| pinctrl-0 = <&i2c0_default>; |
| pinctrl-1 = <&i2c0_sleep>; |
| pinctrl-names = "default", "sleep"; |
| gpio_exp0: tca9538@70 { |
| compatible = "ti,tca9538"; |
| reg = <0x70>; |
| label = "tca9538"; |
| gpio-controller; |
| #gpio-cells = <2>; |
| ngpios = <8>; |
| nint-gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; |
| }; |
| }; |
| |
| &spi1 { |
| compatible = "nordic,nrf-spi"; |
| status = "okay"; |
| cs-gpios = <&gpio0 25 0>, |
| <&gpio0 31 0>; |
| pinctrl-0 = <&spi1_default>; |
| pinctrl-1 = <&spi1_sleep>; |
| pinctrl-names = "default", "sleep"; |
| }; |
| |
| &qspi { |
| status = "okay"; |
| pinctrl-0 = <&qspi_default>; |
| pinctrl-1 = <&qspi_sleep>; |
| pinctrl-names = "default", "sleep"; |
| mx25r64: mx25r6435f@0 { |
| compatible = "nordic,qspi-nor"; |
| reg = <0>; |
| writeoc = "pp4io"; |
| readoc = "read4io"; |
| sck-frequency = <8000000>; |
| label = "MX25R64"; |
| jedec-id = [c2 28 17]; |
| sfdp-bfp = [ |
| e5 20 f1 ff ff ff ff 03 44 eb 08 6b 08 3b 04 bb |
| ee ff ff ff ff ff 00 ff ff ff 00 ff 0c 20 0f 52 |
| 10 d8 00 ff 23 72 f5 00 82 ed 04 cc 44 83 68 44 |
| 30 b0 30 b0 f7 c4 d5 5c 00 be 29 ff f0 d0 ff ff |
| ]; |
| size = <67108864>; |
| has-dpd; |
| t-enter-dpd = <10000>; |
| t-exit-dpd = <35000>; |
| }; |
| }; |
| |
| &flash0 { |
| partitions { |
| compatible = "fixed-partitions"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| /* 96K */ |
| boot_partition: partition@0 { |
| label = "mcuboot"; |
| reg = <0x00000000 0x00018000>; |
| }; |
| /* 896K */ |
| slot0_partition: partition@18000 { |
| label = "image-0"; |
| reg = <0x00018000 0x000E0000>; |
| }; |
| |
| /* |
| * The flash starting at 0x000f8000 and ending at |
| * 0x000fffff is reserved for use by the application. |
| */ |
| |
| /* |
| * Storage partition will be used by FCB/NVS |
| * if enabled. 32K |
| */ |
| storage_partition: partition@f8000 { |
| label = "storage"; |
| reg = <0x000f8000 0x00008000>; |
| }; |
| }; |
| }; |
| |
| &mx25r64 { |
| partitions { |
| compatible = "fixed-partitions"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| /* 896K */ |
| slot1_partition: partition@0 { |
| label = "image-1"; |
| reg = <0x00000000 0x000E0000>; |
| }; |
| /* 16K */ |
| scratch_partition: partition@E0000 { |
| label = "image-scratch"; |
| reg = <0x000E0000 0x00004000>; |
| }; |
| /* 112K */ |
| customer_partition: partition@E4000 { |
| label = "customer-storage"; |
| reg = <0x000E4000 0x0001C000>; |
| }; |
| /* 7MB */ |
| lfs_partition: partition@100000 { |
| label = "lfs_storage"; |
| reg = <0x00100000 0x00700000>; |
| }; |
| }; |
| }; |