Files

30 lines
1.4 KiB
Plaintext

# Plain-UART companion transport (BLE + UART companion + text CLI hybrid)
#
# For companion boards whose USB-C is a USB-UART bridge (e.g. Heltec V3 /
# CP2102) or that have no native USB device controller. Runs the same wired-
# companion stack as the native-USB CDC backend (frame parser, TX ring, text
# CLI, BLE-arbitrated interface) over a plain UART selected by the board's
# `zephcore,companion-uart` chosen node.
#
# Build (Heltec V3):
# west build -b heltec_wifi_lora32_v3/esp32s3/procpu zephcore --pristine -- \
# -DEXTRA_CONF_FILE="boards/common/serial_companion.conf"
#
# BLE stays on (default for the companion role), so this is the full hybrid:
# BLE and the UART companion arbitrate first-come-first-served, and a human
# typing over the same UART gets the text CLI.
CONFIG_ZEPHCORE_COMPANION_SERIAL=y
# The companion stack drives the UART through the interrupt-driven API
# (uart_irq_*), so it must be enabled (not always default on ESP32).
CONFIG_UART_INTERRUPT_DRIVEN=y
# Hand the chosen UART to the companion: the Zephyr console driver must NOT
# also own it, or boot/printk bytes would corrupt the binary protocol stream.
# (Production companion builds are CONFIG_LOG=n already; this also silences
# the bare console.) Debug builds that need logs should route them to a
# second UART or RTT rather than re-enabling the console on the companion UART.
CONFIG_UART_CONSOLE=n
CONFIG_SHELL=n