/*
 * Copyright (c) 2022, Thomas Stranger
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/*
 * Example configuration of a DS18b20 device on an Arduino serial bus, using
 * the zephyr-serial 1-Wire driver.
 * Open drain configuration allows communication by simply connecting the bus
 * line to the UART RX pin as well as the TX pin
 * An external pull-up should be added anyways.
 */

#include "serial_overlay.dtsi"

&pinctrl {
	uart1_default: uart1_default {
		group1 {
			psels = <NRF_PSEL(UART_RX, 1, 1)>;
			bias-pull-up;
		};
		group2 {
			psels = <NRF_PSEL(UART_TX, 1, 2)>;
			/* max. 5mA drive strength: */
			nordic,drive-mode = <NRF_DRIVE_H0D1>;
		};
	};
};
