-
Notifications
You must be signed in to change notification settings - Fork 129
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve monitoring #737
base: main
Are you sure you want to change the base?
Improve monitoring #737
Conversation
e857dd4
to
86ec759
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few open questions/notes:
} else { | ||
115_200 | ||
}; | ||
monitor_args.baud_rate = 74_880; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shall we do this for other baudrates too, or shall we let the user input the correct baudrate?
#[non_exhaustive] | ||
pub struct MonitorConfigArgs { | ||
/// Baud rate at which to communicate with target device | ||
#[arg(short = 'r', long, env = "MONITOR_BAUD", default_value = "115_200", value_parser = parse_uint32)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure about the name and short, we use baud
in ConnectArgs to set the baudrate at which we connect to the target. We could modify any of the two
espflash/src/cli/mod.rs
Outdated
pub non_interactive: bool, | ||
/// Avoids restarting the device before monitoring | ||
#[arg(long, requires = "non_interactive")] | ||
pub no_reset: bool, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I got this from espmonitor
and I think its useful to have an option where you do --non-intertactive --no-rest
for example:
❯ cargo r -r --bin espflash -- flash -M /Users/sergio/Documents/Espressif/tests/monitor/target/riscv32imac-unknown-none-elf/release/monitor --non-interac
tive
Finished `release` profile [optimized] target(s) in 0.38s
Running `target/release/espflash flash -M /Users/sergio/Documents/Espressif/tests/monitor/target/riscv32imac-unknown-none-elf/release/monitor --non-interactive`
...
[2025-01-31T11:58:28Z INFO ] Flashing has completed!
��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ESP-ROM:esp32c6-20220919
...
I (125) boot: Disabling RNG early entropy source...
INFO - Hello world!
INFO - Hello world!
INFO - Hello world!
Note all the noise chars after flashing, if we use no-reset
:
❯ cargo r -r --bin espflash -- flash -M /Users/sergio/Documents/Espressif/tests/monitor/target/riscv32imac-unknown-none-elf/release/monitor --non-interac
tive --no-reset
Compiling espflash v4.0.0-dev (/Users/sergio/Documents/Espressif/forks/espflash/espflash)
Finished `release` profile [optimized] target(s) in 18.59s
Running `target/release/espflash flash -M /Users/sergio/Documents/Espressif/tests/monitor/target/riscv32imac-unknown-none-elf/release/monitor --non-interactive --no-reset`
...
[2025-01-31T11:58:15Z INFO ] Flashing has completed!
....
ESP-ROM:esp32c6-20220919
...
INFO - Hello world!
INFO - Hello world!
No noise chars
86ec759
to
dd4bd30
Compare
dd4bd30
to
cd21e74
Compare
#[clap(flatten)] | ||
pub monitor_args: MonitorConfigArgs, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure how to make this require monitor
(I coulndt get requires
to work as it flatten
), but it doesnt make sense that an user could set the monitor_args
and not set monitor
. I can only think of a check in the flash
method that checks this and throws an error.
flash
--no-reset
flag