build system: Add 'make monitor' target from arduino-esp32

Originally added to arduino-esp32 by @me-no-dev. It's so useful, we
want it in esp-idf as well! :)
This commit is contained in:
Angus Gratton 2016-12-30 12:19:02 +11:00
parent 7883a5bae5
commit 03551ec2da
4 changed files with 59 additions and 0 deletions

View File

@ -36,6 +36,16 @@ This will flash the entire project (app, bootloader and partition table) to a ne
You don't need to run `make all` before running `make flash`, `make flash` will automatically rebuild anything which needs it.
# Viewing Serial Output
The `make monitor` target will use the already-installed [miniterm](http://pyserial.readthedocs.io/en/latest/tools.html#module-serial.tools.miniterm) (a part of pyserial) to display serial output from the ESP32 on the terminal console.
Exit miniterm by typing Ctrl-].
To flash and monitor output in one pass, you can run:
`make flash monitor`
# Compiling & Flashing Just the App
After the initial flash, you may just want to build and flash just your app, not the bootloader and partition table:

View File

@ -178,4 +178,44 @@ config ESPTOOLPY_AFTER
default "hard_reset" if ESPTOOLPY_AFTER_RESET
default "no_reset" if ESPTOOLPY_AFTER_NORESET
choice MONITOR_BAUD
prompt "'make monitor' baud rate"
default MONITOR_BAUD_115200B
help
Baud rate to use when running 'make monitor' to view serial output
from a running chip.
Can override by setting the MONITORBAUD environment variable.
config MONITOR_BAUD_9600B
bool "9600 bps"
config MONITOR_BAUD_57600B
bool "57600 bps"
config MONITOR_BAUD_115200B
bool "115200 bps"
config MONITOR_BAUD_230400B
bool "230400 bps"
config MONITOR_BAUD_921600B
bool "921600 bps"
config MONITOR_BAUD_2MB
bool "2 Mbps"
config MONITOR_BAUD_OTHER
bool "Custom baud rate"
endchoice
config MONITOR_BAUD_OTHER_VAL
int "Custom baud rate value" if MONITOR_BAUD_OTHER
default 115200
config MONITOR_BAUD
int
default 9600 if MONITOR_BAUD_9600B
default 57600 if MONITOR_BAUD_57600B
default 115200 if MONITOR_BAUD_115200B
default 230400 if MONITOR_BAUD_230400B
default 921600 if MONITOR_BAUD_921600B
default 2000000 if MONITOR_BAUD_2MB
default MONITOR_BAUD_OTHER_VAL if MONITOR_BAUD_OTHER
endmenu

View File

@ -67,4 +67,12 @@ erase_flash:
@echo "Erasing entire flash..."
$(ESPTOOLPY_SERIAL) erase_flash
MONITORBAUD ?= $(CONFIG_MONITOR_BAUD)
# note: if you want to run miniterm from command line, can simply run
# miniterm.py on the console. The '$(PYTHON) -m serial.tools.miniterm'
# is to allow for the $(PYTHON) variable overriding the python path.
monitor: $(call prereq_if_explicit,%flash)
$(PYTHON) -m serial.tools.miniterm --rts 0 --dtr 0 --raw $(ESPPORT) $(MONITORBAUD)
.PHONY: erase_flash

View File

@ -30,6 +30,7 @@ help:
@echo "make clean - Remove all build output"
@echo "make size - Display the memory footprint of the app"
@echo "make erase_flash - Erase entire flash contents"
@echo "make monitor - Display serial output on terminal console"
@echo ""
@echo "make app - Build just the app"
@echo "make app-flash - Flash just the app"