From b407960ab3b7011278fbf13d72624e3d127a26fc Mon Sep 17 00:00:00 2001 From: bernd <bernd@heizung> Date: Sun, 4 Feb 2024 21:45:31 +0100 Subject: [PATCH] print exception, add script for reset to bootloader --- firmware/rust1/reset.py | 11 +++++++++++ firmware/rust1/rtumaster_pymodbus.py | 4 +++- 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 firmware/rust1/reset.py diff --git a/firmware/rust1/reset.py b/firmware/rust1/reset.py new file mode 100644 index 0000000..2e20e03 --- /dev/null +++ b/firmware/rust1/reset.py @@ -0,0 +1,11 @@ +# https://github.com/earlephilhower/arduino-pico/blob/c095fce5b2f26b03fa0e6374e3371a1799abb5b1/tools/uf2conv.py#L374C1-L382C32 +import serial, time +ser = serial.Serial() +ser.port = "/dev/ttyACM0" +ser.open() +ser.baudrate = 9600 +ser.dtr = True +time.sleep(0.1) +ser.dtr = False +ser.baudrate = 1200 +ser.close() diff --git a/firmware/rust1/rtumaster_pymodbus.py b/firmware/rust1/rtumaster_pymodbus.py index bd890c2..9c8ba68 100644 --- a/firmware/rust1/rtumaster_pymodbus.py +++ b/firmware/rust1/rtumaster_pymodbus.py @@ -39,6 +39,8 @@ def main(): logger.info("connected") x = client.read_holding_registers(address=1, count=1, slave=DEVICE_ADDR) + if isinstance(x, ModbusException): + raise x logger.info("holding reg 1: %s: %r", x, x.registers) scratch_reg = 2 @@ -96,7 +98,7 @@ def main(): time.sleep(0.1) except ModbusException as exc: - logger.error("%s", exc) + logger.exception("%s", exc) if __name__ == "__main__": main() -- GitLab