Hi,
I got a nano every board with a sketch/hex already on it.
I would like to first backup that sketch/hex locally and then try to disassemble it in order to be able to understand what the code does (I have a vague idea) and hopefully to improve it.
The most I could accomplish using Google, ChatGPT, yandex, etc. was to end up running the following command, which doesn't seem to work (I've built the avrdude from source on Ubuntu 22.04, following this tutorial):
# /usr/local/bin/avrdude -vv -p atmega4809 -c jtag2updi -r -b 115200 -P /dev/ttyACM0 -U flash:r:board.hex:i
Avrdude version 8.0-20250311 (8c4b69ac)
Copyright see https://github.com/avrdudes/avrdude/blob/main/AUTHORS
System wide configuration file is /usr/local/etc/avrdude.conf
User configuration file /root/.avrduderc does not exist
Touching serial port /dev/ttyACM0 at 1200 baud
Waiting for new port... using same port /dev/ttyACM0
Using port : /dev/ttyACM0
Using programmer : jtag2updi
Programmer baud rate : 115200
JtagmkII_open_pdi()
JtagmkII_getsync() attempt 1 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 1 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 2 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 2 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 3 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 3 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 4 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 4 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 5 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 5 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 6 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 6 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 7 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 7 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 8 of 10: sending sign-on command:
Error jtagmkII_recv_frame() jtagmkII.c 575: timeout
Warning jtagmkII_getsync() jtagmkII.c 650: attempt 8 of 10: sign-on command: status -1
JtagmkII_getsync() attempt 9 of 10: sending sign-on command: ^[[A^[[A^C
Is there any documentation on this topic so I can avoid annoying you guys on this forum? If not, is this even possible and does anyone have any idea how to do this properly?
Thanks in advance.