mirror of
https://github.com/esphome/esphome.git
synced 2024-11-10 09:17:46 +01:00
Add deassert_rts_dtr option to force RTS/DTR low when using miniterm (#2089)
This commit is contained in:
parent
d3375193a9
commit
e5366dbbe7
3 changed files with 16 additions and 1 deletions
|
@ -11,6 +11,7 @@ from esphome.config import iter_components, read_config, strip_default_ids
|
||||||
from esphome.const import (
|
from esphome.const import (
|
||||||
CONF_BAUD_RATE,
|
CONF_BAUD_RATE,
|
||||||
CONF_BROKER,
|
CONF_BROKER,
|
||||||
|
CONF_DEASSERT_RTS_DTR,
|
||||||
CONF_LOGGER,
|
CONF_LOGGER,
|
||||||
CONF_OTA,
|
CONF_OTA,
|
||||||
CONF_PASSWORD,
|
CONF_PASSWORD,
|
||||||
|
@ -99,10 +100,21 @@ def run_miniterm(config, port):
|
||||||
baud_rate = config["logger"][CONF_BAUD_RATE]
|
baud_rate = config["logger"][CONF_BAUD_RATE]
|
||||||
if baud_rate == 0:
|
if baud_rate == 0:
|
||||||
_LOGGER.info("UART logging is disabled (baud_rate=0). Not starting UART logs.")
|
_LOGGER.info("UART logging is disabled (baud_rate=0). Not starting UART logs.")
|
||||||
|
return
|
||||||
_LOGGER.info("Starting log output from %s with baud rate %s", port, baud_rate)
|
_LOGGER.info("Starting log output from %s with baud rate %s", port, baud_rate)
|
||||||
|
|
||||||
backtrace_state = False
|
backtrace_state = False
|
||||||
with serial.Serial(port, baudrate=baud_rate) as ser:
|
ser = serial.Serial()
|
||||||
|
ser.baudrate = baud_rate
|
||||||
|
ser.port = port
|
||||||
|
|
||||||
|
# We can't set to False by default since it leads to toggling and hence
|
||||||
|
# ESP32 resets on some platforms.
|
||||||
|
if config["logger"][CONF_DEASSERT_RTS_DTR]:
|
||||||
|
ser.dtr = False
|
||||||
|
ser.rts = False
|
||||||
|
|
||||||
|
with ser:
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
raw = ser.readline()
|
raw = ser.readline()
|
||||||
|
|
|
@ -7,6 +7,7 @@ from esphome.automation import LambdaAction
|
||||||
from esphome.const import (
|
from esphome.const import (
|
||||||
CONF_ARGS,
|
CONF_ARGS,
|
||||||
CONF_BAUD_RATE,
|
CONF_BAUD_RATE,
|
||||||
|
CONF_DEASSERT_RTS_DTR,
|
||||||
CONF_FORMAT,
|
CONF_FORMAT,
|
||||||
CONF_HARDWARE_UART,
|
CONF_HARDWARE_UART,
|
||||||
CONF_ID,
|
CONF_ID,
|
||||||
|
@ -104,6 +105,7 @@ CONFIG_SCHEMA = cv.All(
|
||||||
cv.GenerateID(): cv.declare_id(Logger),
|
cv.GenerateID(): cv.declare_id(Logger),
|
||||||
cv.Optional(CONF_BAUD_RATE, default=115200): cv.positive_int,
|
cv.Optional(CONF_BAUD_RATE, default=115200): cv.positive_int,
|
||||||
cv.Optional(CONF_TX_BUFFER_SIZE, default=512): cv.validate_bytes,
|
cv.Optional(CONF_TX_BUFFER_SIZE, default=512): cv.validate_bytes,
|
||||||
|
cv.Optional(CONF_DEASSERT_RTS_DTR, default=False): cv.boolean,
|
||||||
cv.Optional(CONF_HARDWARE_UART, default="UART0"): uart_selection,
|
cv.Optional(CONF_HARDWARE_UART, default="UART0"): uart_selection,
|
||||||
cv.Optional(CONF_LEVEL, default="DEBUG"): is_log_level,
|
cv.Optional(CONF_LEVEL, default="DEBUG"): is_log_level,
|
||||||
cv.Optional(CONF_LOGS, default={}): cv.Schema(
|
cv.Optional(CONF_LOGS, default={}): cv.Schema(
|
||||||
|
|
|
@ -163,6 +163,7 @@ CONF_DATA_TEMPLATE = "data_template"
|
||||||
CONF_DAYS_OF_MONTH = "days_of_month"
|
CONF_DAYS_OF_MONTH = "days_of_month"
|
||||||
CONF_DAYS_OF_WEEK = "days_of_week"
|
CONF_DAYS_OF_WEEK = "days_of_week"
|
||||||
CONF_DC_PIN = "dc_pin"
|
CONF_DC_PIN = "dc_pin"
|
||||||
|
CONF_DEASSERT_RTS_DTR = "deassert_rts_dtr"
|
||||||
CONF_DEBOUNCE = "debounce"
|
CONF_DEBOUNCE = "debounce"
|
||||||
CONF_DECELERATION = "deceleration"
|
CONF_DECELERATION = "deceleration"
|
||||||
CONF_DEFAULT_MODE = "default_mode"
|
CONF_DEFAULT_MODE = "default_mode"
|
||||||
|
|
Loading…
Reference in a new issue