Skip to content

UploadResult#updated_upload_port might be missing from the UploadResponse #2287

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

Closed
3 tasks done
kittaakos opened this issue Aug 30, 2023 · 4 comments · Fixed by #2288
Closed
3 tasks done

UploadResult#updated_upload_port might be missing from the UploadResponse #2287

kittaakos opened this issue Aug 30, 2023 · 4 comments · Fixed by #2288
Assignees
Labels
topic: code Related to content of the project itself type: imperfection Perceived defect in any part of project

Comments

@kittaakos
Copy link
Contributor

kittaakos commented Aug 30, 2023

Describe the problem

During the upload to a board, the port might change. After #2253, the CLI can detect it and provide this information to clients. As requested at #2253 (review), the upload port must always be set whether it has changed or not. Sometimes it's missing.

To reproduce

I could reproduce when the port was missing using the command line way of the CLI:

./arduino-cli version
arduino-cli  Version: 0.34.0 Commit: 304d48cd Date: 2023-08-22T15:54:20Z
cat ~/Documents/Arduino/minimal/minimal.ino 
void setup() {}
void loop() {}
./arduino-cli board list 
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem14201           serial   Serial Port (USB) Arduino MKR1000     arduino:samd:mkr1000        arduino:samd     
/dev/cu.usbmodem14301           serial   Serial Port (USB) Arduino Uno         arduino:avr:uno             arduino:avr      
/dev/cu.usbmodem5               serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano
./arduino-cli compile -b arduino:mbed_nano:nano33ble ~/Documents/Arduino/minimal
Sketch uses 84080 bytes (8%) of program storage space. Maximum is 983040 bytes.
Global variables use 43968 bytes (16%) of dynamic memory, leaving 218176 bytes for local variables. Maximum is 262144 bytes.

Used platform     Version Path                                                                      
arduino:mbed_nano 4.0.4   /Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.0.4

🐛 It fails with Arduino Nano 33 BLE:

./arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem5 ~/Documents/Arduino/minimal --format json
{
  "stdout": "Device       : nRF52840-QIAA\nVersion      : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nAddress      : 0x0\nPages        : 256\nPage Size    : 4096 bytes\nTotal Size   : 1024KB\nPlanes       : 1\nLock Regions : 0\nLocked       : none\nSecurity     : false\nErase flash\n\nDone in 0.001 seconds\nWrite 84088 bytes to flash (21 pages)\n\r[                              ] 0% (0/21 pages)\r[=                             ] 4% (1/21 pages)\r[==                            ] 9% (2/21 pages)\r[====                          ] 14% (3/21 pages)\r[=====                         ] 19% (4/21 pages)\r[=======                       ] 23% (5/21 pages)\r[========                      ] 28% (6/21 pages)\r[==========                    ] 33% (7/21 pages)\r[===========                   ] 38% (8/21 pages)\r[============                  ] 42% (9/21 pages)\r[==============                ] 47% (10/21 pages)\r[===============               ] 52% (11/21 pages)\r[=================             ] 57% (12/21 pages)\r[==================            ] 61% (13/21 pages)\r[====================          ] 66% (14/21 pages)\r[=====================         ] 71% (15/21 pages)\r[======================        ] 76% (16/21 pages)\r[========================      ] 80% (17/21 pages)\r[=========================     ] 85% (18/21 pages)\r[===========================   ] 90% (19/21 pages)\r[============================  ] 95% (20/21 pages)\r[==============================] 100% (21/21 pages)\nDone in 3.335 seconds\n",
  "stderr": ""
}
./arduino-cli compile -b arduino:avr:uno ~/Documents/Arduino/minimal
Sketch uses 444 bytes (1%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.

Used platform Version Path                                                                
arduino:avr   1.8.6   /Users/a.kitta/Library/Arduino15/packages/arduino/hardware/avr/1.8.6

✅ It works with Arduino Uno:

./arduino-cli upload -b arduino:avr:uno -p /dev/cu.usbmodem14301 ~/Documents/Arduino/minimal --format json
{
  "stdout": "",
  "stderr": "",
  "updated_upload_port": {
    "address": "/dev/cu.usbmodem14301",
    "label": "/dev/cu.usbmodem14301",
    "protocol": "serial",
    "protocol_label": "Serial Port (USB)",
    "properties": {
      "pid": "0x0043",
      "serialNumber": "75830303934351618212",
      "vid": "0x2341"
    },
    "hardware_id": "75830303934351618212"
  }
}

Expected behavior

updated_upload_port is always part of the response.

Arduino CLI version

0.34.0

Operating system

macOS

Operating system version

13.5

Additional context

I ran into a runtime error in IDE2. I am on a branch and working on new things. Hence, the breaking change can be IDE2. During debugging, I've seen partial Port objects with only the protocol and address properties via gRPC. The two things could be unrelated. However, the upload response was: {} log suggests the missing UploadResult message from the response.

2023-08-30T12:19:14.292Z root ERROR Request upload failed with error: Could not detect the port after the upload. Upload options were: {"sketch":{"name":"monitor3","uri":"file:///Users/a.kitta/Documents/Arduino/monitor3","mainFileUri":"file:///Users/a.kitta/Documents/Arduino/monitor3/monitor3.ino","otherSketchFileUris":[],"additionalFileUris":[],"rootFolderFileUris":[],"mtimeMs":1690878810006.6304},"fqbn":"arduino:mbed_nano:nano33ble","port":{"address":"/dev/cu.usbmodem14101","addressLabel":"/dev/cu.usbmodem14101","protocol":"serial","protocolLabel":"Serial Port (USB)","properties":{"pid":"0x805A","serialNumber":"131B9378799A643D","vid":"0x2341"},"hardwareId":"131B9378799A643D"},"verbose":true,"verify":false,"userFields":[],"progressId":"kba84zgl-6"}, upload response was: {} Error: Could not detect the port after the upload. Upload options were: {"sketch":{"name":"monitor3","uri":"file:///Users/a.kitta/Documents/Arduino/monitor3","mainFileUri":"file:///Users/a.kitta/Documents/Arduino/monitor3/monitor3.ino","otherSketchFileUris":[],"additionalFileUris":[],"rootFolderFileUris":[],"mtimeMs":1690878810006.6304},"fqbn":"arduino:mbed_nano:nano33ble","port":{"address":"/dev/cu.usbmodem14101","addressLabel":"/dev/cu.usbmodem14101","protocol":"serial","protocolLabel":"Serial Port (USB)","properties":{"pid":"0x805A","serialNumber":"131B9378799A643D","vid":"0x2341"},"hardwareId":"131B9378799A643D"},"verbose":true,"verify":false,"userFields":[],"progressId":"kba84zgl-6"}, upload response was: {}
    at CoreServiceImpl.upload (/Users/a.kitta/dev/git/arduino-ide/arduino-ide-extension/lib/node/core-service-impl.js:165:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async RpcProxyFactory.onRequest (/Users/a.kitta/dev/git/arduino-ide/node_modules/@theia/core/lib/common/messaging/proxy-factory.js:134:24)
    at async RpcProtocol.handleRequest (/Users/a.kitta/dev/git/arduino-ide/node_modules/@theia/core/lib/common/message-rpc/rpc-protocol.js:171:28)

Issue checklist

  • I searched for previous reports in the issue tracker
  • I verified the problem still occurs when using the nightly build
  • My report contains all necessary details
@kittaakos kittaakos added the type: imperfection Perceived defect in any part of project label Aug 30, 2023
@per1234 per1234 added the topic: code Related to content of the project itself label Aug 30, 2023
@cmaglie cmaglie self-assigned this Aug 31, 2023
@kittaakos
Copy link
Contributor Author

kittaakos commented Aug 31, 2023

The structure of the UploadResponse depends on where I (physically) plug the board on the Mac.

cat ~/Documents/Arduino/minimal/minimal.ino 
void setup() {}
void loop() {}
./arduino-cli version
arduino-cli  Version: 0.34.0 Commit: 304d48cd Date: 2023-08-22T15:54:20Z
./arduino-cli board list
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem2               serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano

🐛 On /dev/cu.usbmodem2 port, it fails:

./arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem2 ~/Documents/Arduino/minimal --format json -v --log-level debug
{
  "stdout": "Performing 1200-bps touch reset on serial port /dev/cu.usbmodem2\nWaiting for upload port...\nUpload port found on /dev/cu.usbmodem2\n\"/Users/a.kitta/Library/Arduino15/packages/arduino/tools/bossac/1.9.1-arduino2/bossac\" -d --port=cu.usbmodem2 -U -i -e -w \"/private/var/folders/z1/xkw1yh5n7rz4n8djprp1mdn80000gn/T/arduino/sketches/A051B7F4F3A6DA790A80412CD0106F8D/minimal.ino.bin\" -R\nSet binary mode\nversion()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nConnected at 921600 baud\nidentifyChip()=nRF52840-QIAA\nwrite(addr=0,size=0x34)\nwriteWord(addr=0x30,value=0x400)\nwriteWord(addr=0x20,value=0)\nversion()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nDevice       : nRF52840-QIAA\nVersion      : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nAddress      : 0x0\nPages        : 256\nPage Size    : 4096 bytes\nTotal Size   : 1024KB\nPlanes       : 1\nLock Regions : 0\nLocked       : none\nSecurity     : false\nErase flash\nchipErase(addr=0)\n\nDone in 0.001 seconds\nWrite 84088 bytes to flash (21 pages)\n\r[                              ] 0% (0/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0, size=0x1000)\n\r[=                             ] 4% (1/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x1000, size=0x1000)\n\r[==                            ] 9% (2/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x2000, size=0x1000)\n\r[====                          ] 14% (3/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x3000, size=0x1000)\n\r[=====                         ] 19% (4/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x4000, size=0x1000)\n\r[=======                       ] 23% (5/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x5000, size=0x1000)\n\r[========                      ] 28% (6/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x6000, size=0x1000)\n\r[==========                    ] 33% (7/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x7000, size=0x1000)\n\r[===========                   ] 38% (8/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x8000, size=0x1000)\n\r[============                  ] 42% (9/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x9000, size=0x1000)\n\r[==============                ] 47% (10/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xa000, size=0x1000)\n\r[===============               ] 52% (11/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xb000, size=0x1000)\n\r[=================             ] 57% (12/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xc000, size=0x1000)\n\r[==================            ] 61% (13/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xd000, size=0x1000)\n\r[====================          ] 66% (14/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xe000, size=0x1000)\n\r[=====================         ] 71% (15/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xf000, size=0x1000)\n\r[======================        ] 76% (16/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x10000, size=0x1000)\n\r[========================      ] 80% (17/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x11000, size=0x1000)\n\r[=========================     ] 85% (18/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x12000, size=0x1000)\n\r[===========================   ] 90% (19/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x13000, size=0x1000)\n\r[============================  ] 95% (20/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x14000, size=0x1000)\n\r[==============================] 100% (21/21 pages)\nDone in 3.332 seconds\nreset()\n",
  "stderr": ""
}
./arduino-cli board list
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem14201           serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano

✅ On /dev/cu.usbmodem14201 port, it works:

./arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem14201 ~/Documents/Arduino/minimal --format json -v --log-level debug
{
  "stdout": "Performing 1200-bps touch reset on serial port /dev/cu.usbmodem14201\nWaiting for upload port...\nUpload port found on /dev/cu.usbmodem14201\n\"/Users/a.kitta/Library/Arduino15/packages/arduino/tools/bossac/1.9.1-arduino2/bossac\" -d --port=cu.usbmodem14201 -U -i -e -w \"/private/var/folders/z1/xkw1yh5n7rz4n8djprp1mdn80000gn/T/arduino/sketches/A051B7F4F3A6DA790A80412CD0106F8D/minimal.ino.bin\" -R\nSet binary mode\nversion()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nConnected at 921600 baud\nidentifyChip()=nRF52840-QIAA\nwrite(addr=0,size=0x34)\nwriteWord(addr=0x30,value=0x400)\nwriteWord(addr=0x20,value=0)\nversion()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nDevice       : nRF52840-QIAA\nVersion      : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nAddress      : 0x0\nPages        : 256\nPage Size    : 4096 bytes\nTotal Size   : 1024KB\nPlanes       : 1\nLock Regions : 0\nLocked       : none\nSecurity     : false\nErase flash\nchipErase(addr=0)\n\nDone in 0.001 seconds\nWrite 84088 bytes to flash (21 pages)\n\r[                              ] 0% (0/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0, size=0x1000)\n\r[=                             ] 4% (1/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x1000, size=0x1000)\n\r[==                            ] 9% (2/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x2000, size=0x1000)\n\r[====                          ] 14% (3/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x3000, size=0x1000)\n\r[=====                         ] 19% (4/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x4000, size=0x1000)\n\r[=======                       ] 23% (5/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x5000, size=0x1000)\n\r[========                      ] 28% (6/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x6000, size=0x1000)\n\r[==========                    ] 33% (7/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x7000, size=0x1000)\n\r[===========                   ] 38% (8/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x8000, size=0x1000)\n\r[============                  ] 42% (9/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x9000, size=0x1000)\n\r[==============                ] 47% (10/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xa000, size=0x1000)\n\r[===============               ] 52% (11/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xb000, size=0x1000)\n\r[=================             ] 57% (12/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xc000, size=0x1000)\n\r[==================            ] 61% (13/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xd000, size=0x1000)\n\r[====================          ] 66% (14/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xe000, size=0x1000)\n\r[=====================         ] 71% (15/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0xf000, size=0x1000)\n\r[======================        ] 76% (16/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x10000, size=0x1000)\n\r[========================      ] 80% (17/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x11000, size=0x1000)\n\r[=========================     ] 85% (18/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x12000, size=0x1000)\n\r[===========================   ] 90% (19/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x13000, size=0x1000)\n\r[============================  ] 95% (20/21 pages)write(addr=0x34,size=0x1000)\nwriteBuffer(scr_addr=0x34, dst_addr=0x14000, size=0x1000)\n\r[==============================] 100% (21/21 pages)\nDone in 3.332 seconds\nreset()\n",
  "stderr": "",
  "updated_upload_port": {
    "address": "/dev/cu.usbmodem14201",
    "label": "/dev/cu.usbmodem14201",
    "protocol": "serial",
    "protocol_label": "Serial Port (USB)",
    "properties": {
      "pid": "0x805A",
      "serialNumber": "131B9378799A643D",
      "vid": "0x2341"
    },
    "hardware_id": "131B9378799A643D"
  }
}

@kittaakos
Copy link
Contributor Author

kittaakos commented Aug 31, 2023

Outputs with --log and without --format json:
✅ :

./arduino-cli board list
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem14301           serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano
./arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem14301 ~/Documents/Arduino/minimal -v --log --log-level debug

INFO[0000] Config file not found, using default values  
INFO[0000] arduino-cli version 0.34.0                   
INFO[0000] Executing `arduino-cli upload`               
INFO[0000] Checking signature                            index=/Users/a.kitta/Library/Arduino15/package_index.json signatureFile=/Users/a.kitta/Library/Arduino15/package_index.json.sig trusted=true
INFO[0000] Loading hardware from: /Users/a.kitta/Library/Arduino15/packages 
INFO[0000] Loading package Croduino_Boards from: /Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/hardware/Inkplate/1.0.1/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="Croduino_Boards:Inkplate@1.0.1"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/tools 
INFO[0000] Loaded tool                                   tool="Croduino_Boards:esptool_py@3.0.0"
INFO[0000] Loaded tool                                   tool="Croduino_Boards:mkspiffs@0.2.3"
INFO[0000] Loaded tool                                   tool="Croduino_Boards:xtensa-esp32-elf-gcc@1.22.0-96-g2852398-5.2.0"
INFO[0000] Loading package Inkplate_Boards from: /Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/hardware/esp32/3.0.1/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="Inkplate_Boards:esp32@3.0.1"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/tools 
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:esptool_py@4.2.1"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:mklittlefs@3.0.0-gnu12-dc7f933"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:mkspiffs@0.2.3"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:riscv32-esp-elf-gcc@gcc8_4_0-esp-2021r2-patch3"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:xtensa-esp32-elf-gcc@gcc8_4_0-esp-2021r2-patch3"
INFO[0000] Loading package arduino from: /Users/a.kitta/Library/Arduino15/packages/arduino/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:avr@1.8.6"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/esp32/2.0.11-debug/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:esp32@2.0.11-debug"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.0.4/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:mbed_nano@4.0.4"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_portenta/4.0.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:mbed_portenta@4.0.2"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/megaavr/1.8.8/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:megaavr@1.8.8"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_portenta/1.0.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:renesas_portenta@1.0.2"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_uno/1.0.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:renesas_uno@1.0.2"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/samd/1.8.13/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:samd@1.8.13"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/arduino/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/arduino/tools 
INFO[0000] Loaded tool                                   tool="arduino:CMSIS@4.5.0"
INFO[0000] Loaded tool                                   tool="arduino:CMSIS-Atmel@1.2.0"
INFO[0000] Loaded tool                                   tool="arduino:adb@32.0.0"
INFO[0000] Loaded tool                                   tool="arduino:arduinoOTA@1.2.1"
INFO[0000] Loaded tool                                   tool="arduino:arduinoOTA@1.3.0"
INFO[0000] Loaded tool                                   tool="arduino:arm-none-eabi-gcc@7-2017q4"
INFO[0000] Loaded tool                                   tool="arduino:avr-gcc@7.3.0-atmel3.6.1-arduino5"
INFO[0000] Loaded tool                                   tool="arduino:avr-gcc@7.3.0-atmel3.6.1-arduino7"
INFO[0000] Loaded tool                                   tool="arduino:avrdude@6.3.0-arduino17"
INFO[0000] Loaded tool                                   tool="arduino:bossac@1.7.0-arduino3"
INFO[0000] Loaded tool                                   tool="arduino:bossac@1.9.1-arduino2"
INFO[0000] Loaded tool                                   tool="arduino:bossac@1.9.1-arduino5"
INFO[0000] Loaded tool                                   tool="arduino:dfu-util@0.10.0-arduino1"
INFO[0000] Loaded tool                                   tool="arduino:dfu-util@0.11.0-arduino5"
INFO[0000] Loaded tool                                   tool="arduino:imgtool@1.8.0-arduino.2"
INFO[0000] Loaded tool                                   tool="arduino:openocd@0.10.0-arduino7"
INFO[0000] Loaded tool                                   tool="arduino:openocd@0.11.0-arduino2"
INFO[0000] Loaded tool                                   tool="arduino:rp2040tools@1.0.6"
INFO[0000] Loading package builtin from: /Users/a.kitta/Library/Arduino15/packages/builtin 
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/builtin/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/builtin/tools 
INFO[0000] Loaded tool                                   tool="builtin:ctags@5.8-arduino11"
INFO[0000] Loaded tool                                   tool="builtin:dfu-discovery@0.1.2"
INFO[0000] Loaded tool                                   tool="builtin:mdns-discovery@1.0.9"
INFO[0000] Loaded tool                                   tool="builtin:serial-discovery@1.4.0"
INFO[0000] Loaded tool                                   tool="builtin:serial-monitor@0.13.0"
INFO[0000] Loading package esp32 from: /Users/a.kitta/Library/Arduino15/packages/esp32/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/esp32/hardware/esp32/2.0.11/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="esp32:esp32@2.0.11"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/esp32/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/esp32/tools 
INFO[0000] Loaded tool                                   tool="esp32:esptool_py@4.5.1"
INFO[0000] Loaded tool                                   tool="esp32:mklittlefs@3.0.0-gnu12-dc7f933"
INFO[0000] Loaded tool                                   tool="esp32:mkspiffs@0.2.3"
INFO[0000] Loaded tool                                   tool="esp32:openocd-esp32@v0.11.0-esp32-20221026"
INFO[0000] Loaded tool                                   tool="esp32:riscv32-esp-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loaded tool                                   tool="esp32:riscv32-esp-elf-gdb@11.2_20220823"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp-elf-gdb@11.2_20220823"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp32-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp32s2-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp32s3-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loading package esp8266 from: /Users/a.kitta/Library/Arduino15/packages/esp8266/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="esp8266:esp8266@3.1.2"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/esp8266/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/esp8266/tools 
INFO[0000] Loaded tool                                   tool="esp8266:mklittlefs@3.1.0-gcc10.3-e5f9fec"
INFO[0000] Loaded tool                                   tool="esp8266:mkspiffs@3.1.0-gcc10.3-e5f9fec"
INFO[0000] Loaded tool                                   tool="esp8266:python3@3.7.2-post1"
INFO[0000] Loaded tool                                   tool="esp8266:xtensa-lx106-elf-gcc@3.1.0-gcc10.3-e5f9fec"
INFO[0000] Loading package rp2040 from: /Users/a.kitta/Library/Arduino15/packages/rp2040/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/rp2040/hardware/rp2040/3.2.2/installed.json
INFO[0000] Loaded platform                               platform="rp2040:rp2040@3.2.2"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/rp2040/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/rp2040/tools 
INFO[0000] Loaded tool                                   tool="rp2040:pqt-elf2uf2@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-gcc@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-mklittlefs@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-openocd@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-picotool@1.5.0-b-03f2812"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-pioasm@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-python3@1.0.1-base-3a57aed"
INFO[0000] Loading package teensy from: /Users/a.kitta/Library/Arduino15/packages/teensy/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/teensy/hardware/avr/1.57.0/installed.json
INFO[0000] Adding monitor tool                           protocol=teensy tool="teensy:teensy-monitor"
INFO[0000] Loaded platform                               platform="teensy:avr@1.57.0"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/teensy/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/teensy/tools 
INFO[0000] Loaded tool                                   tool="teensy:teensy-compile@5.4.1"
INFO[0000] Loaded tool                                   tool="teensy:teensy-discovery@1.57.0"
INFO[0000] Loaded tool                                   tool="teensy:teensy-monitor@1.57.0"
INFO[0000] Loaded tool                                   tool="teensy:teensy-tools@1.57.0"
INFO[0000] Loading hardware from: /Users/a.kitta/Documents/Arduino/hardware 
INFO[0000] Searching tools required for platform rp2040:rp2040@3.2.2 
INFO[0000] Required tool                                 tool="rp2040:pqt-elf2uf2@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-gcc@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-mklittlefs@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-openocd@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-picotool@1.5.0-b-03f2812"
INFO[0000] Required tool                                 tool="rp2040:pqt-pioasm@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-python3@1.0.1-base-3a57aed"
DEBU[0000] current best: esp8266:esp8266@3.1.2           bundle=false managed=true version=3.1.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries location=platform
DEBU[0000] current best: rp2040:rp2040@3.2.2             bundle=false managed=true version=3.2.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/rp2040/hardware/rp2040/3.2.2/libraries location=platform
DEBU[0000] current best: arduino:megaavr@1.8.8           bundle=false managed=true version=1.8.8
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/megaavr/1.8.8/libraries location=platform
DEBU[0000] current best: arduino:esp32@2.0.11-debug      bundle=false managed=true version=2.0.11-debug
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/esp32/2.0.11-debug/libraries location=platform
DEBU[0000] current best: arduino:mbed_portenta@4.0.2     bundle=false managed=true version=4.0.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_portenta/4.0.2/libraries location=platform
DEBU[0000] current best: arduino:avr@1.8.6               bundle=false managed=true version=1.8.6
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/libraries location=platform
DEBU[0000] current best: arduino:renesas_portenta@1.0.2  bundle=false managed=true version=1.0.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_portenta/1.0.2/libraries location=platform
DEBU[0000] current best: arduino:samd@1.8.13             bundle=false managed=true version=1.8.13
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/samd/1.8.13/libraries location=platform
DEBU[0000] current best: arduino:mbed_nano@4.0.4         bundle=false managed=true version=4.0.4
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.0.4/libraries location=platform
DEBU[0000] current best: arduino:renesas_uno@1.0.2       bundle=false managed=true version=1.0.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_uno/1.0.2/libraries location=platform
DEBU[0000] current best: Croduino_Boards:Inkplate@1.0.1  bundle=false managed=true version=1.0.1
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/hardware/Inkplate/1.0.1/libraries location=platform
DEBU[0000] current best: teensy:avr@1.57.0               bundle=false managed=true version=1.57.0
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/teensy/hardware/avr/1.57.0/libraries location=platform
DEBU[0000] current best: esp32:esp32@2.0.11              bundle=false managed=true version=2.0.11
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/esp32/hardware/esp32/2.0.11/libraries location=platform
DEBU[0000] current best: Inkplate_Boards:esp32@3.0.1     bundle=false managed=true version=3.0.1
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/hardware/esp32/3.0.1/libraries location=platform
INFO[0000] Loading libraries index file                  index=/Users/a.kitta/Library/Arduino15/library_index.json
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Documents/Arduino/libraries location=user
INFO[0001] starting discovery builtin:mdns-discovery process 
INFO[0001] starting discovery rp2040 process            
INFO[0001] starting discovery builtin:serial-discovery process 
INFO[0001] starting discovery teensy:teensy-discovery process 
INFO[0001] starting discovery builtin:dfu-discovery process 
INFO[0001] started discovery builtin:mdns-discovery process 
INFO[0001] started discovery builtin:serial-discovery process 
INFO[0001] started discovery teensy:teensy-discovery process 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery builtin:serial-discovery 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery teensy:teensy-discovery 
INFO[0001] started discovery builtin:dfu-discovery process 
INFO[0001] started discovery rp2040 process             
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery rp2040 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery builtin:dfu-discovery 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery builtin:mdns-discovery 
INFO[0001] from discovery builtin:serial-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] from discovery teensy:teensy-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery builtin:serial-discovery 
INFO[0001] sending command START_SYNC to discovery teensy:teensy-discovery 
INFO[0001] from discovery builtin:mdns-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] from discovery teensy:teensy-discovery received message type: start_sync, message: OK 
INFO[0001] sending command START_SYNC to discovery builtin:mdns-discovery 
INFO[0001] from discovery builtin:serial-discovery received message type: start_sync, message: OK 
INFO[0001] from discovery builtin:mdns-discovery received message type: start_sync, message: OK 
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.BLTH 
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.Bluetooth-Incoming-Port 
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.usbmodem14301 
INFO[0001] from discovery builtin:dfu-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery builtin:dfu-discovery 
INFO[0001] from discovery builtin:dfu-discovery received message type: start_sync, message: OK 
INFO[0001] from discovery rp2040 received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery rp2040 
INFO[0001] from discovery rp2040 received message type: start_sync, message: OK 
DEBU[0001] current best: arduino:mbed_nano@4.0.4         bundle=false managed=true version=4.0.4
INFO[0001] Required tool                                 tool="arduino:arm-none-eabi-gcc@7-2017q4"
INFO[0001] Required tool                                 tool="arduino:bossac@1.9.1-arduino2"
INFO[0001] Required tool                                 tool="arduino:dfu-util@0.10.0-arduino1"
INFO[0001] Required tool                                 tool="arduino:openocd@0.11.0-arduino2"
INFO[0001] Required tool                                 tool="arduino:rp2040tools@1.0.6"
DEBU[0001] current best: arduino:mbed_nano@4.0.4         bundle=false managed=true version=4.0.4
INFO[0001] Required tool                                 tool="arduino:arm-none-eabi-gcc@7-2017q4"
INFO[0001] Required tool                                 tool="arduino:bossac@1.9.1-arduino2"
INFO[0001] Required tool                                 tool="arduino:dfu-util@0.10.0-arduino1"
INFO[0001] Required tool                                 tool="arduino:openocd@0.11.0-arduino2"
INFO[0001] Required tool                                 tool="arduino:rp2040tools@1.0.6"
DEBU[0001] LAST: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/cu.usbmodem14301:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true /dev/tty.usbmodem14301:true]  phase="board reset"
DEBU[0001] TOUCH: /dev/cu.usbmodem14301                  phase="board reset"
INFO[0001] Performing 1200-bps touch reset on serial port /dev/cu.usbmodem14301  phase="board reset"
Performing 1200-bps touch reset on serial port /dev/cu.usbmodem14301
INFO[0001] from discovery builtin:serial-discovery received message type: remove, port: /dev/cu.usbmodem14301 
INFO[0001] Waiting for upload port...                    phase="board reset"
Waiting for upload port...
DEBU[0001] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0001] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.usbmodem14301 
DEBU[0002] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/cu.usbmodem14301:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true /dev/tty.usbmodem14301:true]  phase="board reset"
DEBU[0002] New ports found!                              phase="board reset"
DEBU[0003] CHECK: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/cu.usbmodem14301:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true /dev/tty.usbmodem14301:true]  phase="board reset"
INFO[0003] Upload port found on /dev/tty.usbmodem14301   phase="board reset"
Upload port found on /dev/tty.usbmodem14301
"/Users/a.kitta/Library/Arduino15/packages/arduino/tools/bossac/1.9.1-arduino2/bossac" -d --port=tty.usbmodem14301 -U -i -e -w "/private/var/folders/z1/xkw1yh5n7rz4n8djprp1mdn80000gn/T/arduino/sketches/A051B7F4F3A6DA790A80412CD0106F8D/minimal.ino.bin" -R
Set binary mode
version()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Connected at 921600 baud
identifyChip()=nRF52840-QIAA
write(addr=0,size=0x34)
writeWord(addr=0x30,value=0x400)
writeWord(addr=0x20,value=0)
version()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Device       : nRF52840-QIAA
Version      : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Address      : 0x0
Pages        : 256
Page Size    : 4096 bytes
Total Size   : 1024KB
Planes       : 1
Lock Regions : 0
Locked       : none
Security     : false
Erase flash
chipErase(addr=0)

Done in 0.001 seconds
Write 84088 bytes to flash (21 pages)
[                              ] 0% (0/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0, size=0x1000)
[=                             ] 4% (1/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x1000, size=0x1000)
[==                            ] 9% (2/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x2000, size=0x1000)
[====                          ] 14% (3/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x3000, size=0x1000)
[=====                         ] 19% (4/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x4000, size=0x1000)
[=======                       ] 23% (5/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x5000, size=0x1000)
[========                      ] 28% (6/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x6000, size=0x1000)
[==========                    ] 33% (7/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x7000, size=0x1000)
[===========                   ] 38% (8/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x8000, size=0x1000)
[============                  ] 42% (9/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x9000, size=0x1000)
[==============                ] 47% (10/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xa000, size=0x1000)
[===============               ] 52% (11/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xb000, size=0x1000)
[=================             ] 57% (12/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xc000, size=0x1000)
[==================            ] 61% (13/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xd000, size=0x1000)
[====================          ] 66% (14/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xe000, size=0x1000)
[=====================         ] 71% (15/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xf000, size=0x1000)
[======================        ] 76% (16/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x10000, size=0x1000)
[========================      ] 80% (17/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x11000, size=0x1000)
[=========================     ] 85% (18/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x12000, size=0x1000)
[===========================   ] 90% (19/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x13000, size=0x1000)
[============================  ] 95% (20/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x14000, size=0x1000)
[==============================] 100% (21/21 pages)
Done in 3.334 seconds
reset()
INFO[0007] from discovery builtin:serial-discovery received message type: remove, port: /dev/cu.usbmodem14301 
INFO[0008] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.usbmodem14301 
New upload port: /dev/cu.usbmodem14301 (serial)


🐛:

./arduino-cli board list
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem3               serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano
Output of ./arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem3 ~/Documents/Arduino/minimal -v --log --log-level debug

INFO[0000] Config file not found, using default values  
INFO[0000] arduino-cli version 0.34.0                   
INFO[0000] Executing `arduino-cli upload`               
INFO[0000] Checking signature                            index=/Users/a.kitta/Library/Arduino15/package_index.json signatureFile=/Users/a.kitta/Library/Arduino15/package_index.json.sig trusted=true
INFO[0000] Loading hardware from: /Users/a.kitta/Library/Arduino15/packages 
INFO[0000] Loading package Croduino_Boards from: /Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/hardware/Inkplate/1.0.1/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="Croduino_Boards:Inkplate@1.0.1"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/tools 
INFO[0000] Loaded tool                                   tool="Croduino_Boards:esptool_py@3.0.0"
INFO[0000] Loaded tool                                   tool="Croduino_Boards:mkspiffs@0.2.3"
INFO[0000] Loaded tool                                   tool="Croduino_Boards:xtensa-esp32-elf-gcc@1.22.0-96-g2852398-5.2.0"
INFO[0000] Loading package Inkplate_Boards from: /Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/hardware/esp32/3.0.1/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="Inkplate_Boards:esp32@3.0.1"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/tools 
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:esptool_py@4.2.1"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:mklittlefs@3.0.0-gnu12-dc7f933"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:mkspiffs@0.2.3"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:riscv32-esp-elf-gcc@gcc8_4_0-esp-2021r2-patch3"
INFO[0000] Loaded tool                                   tool="Inkplate_Boards:xtensa-esp32-elf-gcc@gcc8_4_0-esp-2021r2-patch3"
INFO[0000] Loading package arduino from: /Users/a.kitta/Library/Arduino15/packages/arduino/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:avr@1.8.6"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/esp32/2.0.11-debug/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:esp32@2.0.11-debug"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.0.4/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:mbed_nano@4.0.4"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_portenta/4.0.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:mbed_portenta@4.0.2"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/megaavr/1.8.8/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:megaavr@1.8.8"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_portenta/1.0.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:renesas_portenta@1.0.2"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_uno/1.0.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:renesas_uno@1.0.2"
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/samd/1.8.13/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="arduino:samd@1.8.13"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/arduino/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/arduino/tools 
INFO[0000] Loaded tool                                   tool="arduino:CMSIS@4.5.0"
INFO[0000] Loaded tool                                   tool="arduino:CMSIS-Atmel@1.2.0"
INFO[0000] Loaded tool                                   tool="arduino:adb@32.0.0"
INFO[0000] Loaded tool                                   tool="arduino:arduinoOTA@1.2.1"
INFO[0000] Loaded tool                                   tool="arduino:arduinoOTA@1.3.0"
INFO[0000] Loaded tool                                   tool="arduino:arm-none-eabi-gcc@7-2017q4"
INFO[0000] Loaded tool                                   tool="arduino:avr-gcc@7.3.0-atmel3.6.1-arduino5"
INFO[0000] Loaded tool                                   tool="arduino:avr-gcc@7.3.0-atmel3.6.1-arduino7"
INFO[0000] Loaded tool                                   tool="arduino:avrdude@6.3.0-arduino17"
INFO[0000] Loaded tool                                   tool="arduino:bossac@1.7.0-arduino3"
INFO[0000] Loaded tool                                   tool="arduino:bossac@1.9.1-arduino2"
INFO[0000] Loaded tool                                   tool="arduino:bossac@1.9.1-arduino5"
INFO[0000] Loaded tool                                   tool="arduino:dfu-util@0.10.0-arduino1"
INFO[0000] Loaded tool                                   tool="arduino:dfu-util@0.11.0-arduino5"
INFO[0000] Loaded tool                                   tool="arduino:imgtool@1.8.0-arduino.2"
INFO[0000] Loaded tool                                   tool="arduino:openocd@0.10.0-arduino7"
INFO[0000] Loaded tool                                   tool="arduino:openocd@0.11.0-arduino2"
INFO[0000] Loaded tool                                   tool="arduino:rp2040tools@1.0.6"
INFO[0000] Loading package builtin from: /Users/a.kitta/Library/Arduino15/packages/builtin 
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/builtin/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/builtin/tools 
INFO[0000] Loaded tool                                   tool="builtin:ctags@5.8-arduino11"
INFO[0000] Loaded tool                                   tool="builtin:dfu-discovery@0.1.2"
INFO[0000] Loaded tool                                   tool="builtin:mdns-discovery@1.0.9"
INFO[0000] Loaded tool                                   tool="builtin:serial-discovery@1.4.0"
INFO[0000] Loaded tool                                   tool="builtin:serial-monitor@0.13.0"
INFO[0000] Loading package esp32 from: /Users/a.kitta/Library/Arduino15/packages/esp32/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/esp32/hardware/esp32/2.0.11/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="esp32:esp32@2.0.11"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/esp32/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/esp32/tools 
INFO[0000] Loaded tool                                   tool="esp32:esptool_py@4.5.1"
INFO[0000] Loaded tool                                   tool="esp32:mklittlefs@3.0.0-gnu12-dc7f933"
INFO[0000] Loaded tool                                   tool="esp32:mkspiffs@0.2.3"
INFO[0000] Loaded tool                                   tool="esp32:openocd-esp32@v0.11.0-esp32-20221026"
INFO[0000] Loaded tool                                   tool="esp32:riscv32-esp-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loaded tool                                   tool="esp32:riscv32-esp-elf-gdb@11.2_20220823"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp-elf-gdb@11.2_20220823"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp32-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp32s2-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loaded tool                                   tool="esp32:xtensa-esp32s3-elf-gcc@esp-2021r2-patch5-8.4.0"
INFO[0000] Loading package esp8266 from: /Users/a.kitta/Library/Arduino15/packages/esp8266/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/installed.json
INFO[0000] Adding monitor tool                           protocol=serial tool="builtin:serial-monitor"
INFO[0000] Loaded platform                               platform="esp8266:esp8266@3.1.2"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/esp8266/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/esp8266/tools 
INFO[0000] Loaded tool                                   tool="esp8266:mklittlefs@3.1.0-gcc10.3-e5f9fec"
INFO[0000] Loaded tool                                   tool="esp8266:mkspiffs@3.1.0-gcc10.3-e5f9fec"
INFO[0000] Loaded tool                                   tool="esp8266:python3@3.7.2-post1"
INFO[0000] Loaded tool                                   tool="esp8266:xtensa-lx106-elf-gcc@3.1.0-gcc10.3-e5f9fec"
INFO[0000] Loading package rp2040 from: /Users/a.kitta/Library/Arduino15/packages/rp2040/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/rp2040/hardware/rp2040/3.2.2/installed.json
INFO[0000] Loaded platform                               platform="rp2040:rp2040@3.2.2"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/rp2040/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/rp2040/tools 
INFO[0000] Loaded tool                                   tool="rp2040:pqt-elf2uf2@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-gcc@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-mklittlefs@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-openocd@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-picotool@1.5.0-b-03f2812"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-pioasm@1.5.0-b-c7bab52"
INFO[0000] Loaded tool                                   tool="rp2040:pqt-python3@1.0.1-base-3a57aed"
INFO[0000] Loading package teensy from: /Users/a.kitta/Library/Arduino15/packages/teensy/hardware 
INFO[0000] Missing signature file                        index=/Users/a.kitta/Library/Arduino15/packages/teensy/hardware/avr/1.57.0/installed.json
INFO[0000] Adding monitor tool                           protocol=teensy tool="teensy:teensy-monitor"
INFO[0000] Loaded platform                               platform="teensy:avr@1.57.0"
INFO[0000] Checking existence of 'tools' path: /Users/a.kitta/Library/Arduino15/packages/teensy/tools 
INFO[0000] Loading tools from dir: /Users/a.kitta/Library/Arduino15/packages/teensy/tools 
INFO[0000] Loaded tool                                   tool="teensy:teensy-compile@5.4.1"
INFO[0000] Loaded tool                                   tool="teensy:teensy-discovery@1.57.0"
INFO[0000] Loaded tool                                   tool="teensy:teensy-monitor@1.57.0"
INFO[0000] Loaded tool                                   tool="teensy:teensy-tools@1.57.0"
INFO[0000] Loading hardware from: /Users/a.kitta/Documents/Arduino/hardware 
INFO[0000] Searching tools required for platform rp2040:rp2040@3.2.2 
INFO[0000] Required tool                                 tool="rp2040:pqt-elf2uf2@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-gcc@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-mklittlefs@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-openocd@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-picotool@1.5.0-b-03f2812"
INFO[0000] Required tool                                 tool="rp2040:pqt-pioasm@1.5.0-b-c7bab52"
INFO[0000] Required tool                                 tool="rp2040:pqt-python3@1.0.1-base-3a57aed"
DEBU[0000] current best: arduino:mbed_portenta@4.0.2     bundle=false managed=true version=4.0.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_portenta/4.0.2/libraries location=platform
DEBU[0000] current best: arduino:avr@1.8.6               bundle=false managed=true version=1.8.6
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/libraries location=platform
DEBU[0000] current best: arduino:renesas_portenta@1.0.2  bundle=false managed=true version=1.0.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_portenta/1.0.2/libraries location=platform
DEBU[0000] current best: arduino:megaavr@1.8.8           bundle=false managed=true version=1.8.8
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/megaavr/1.8.8/libraries location=platform
DEBU[0000] current best: arduino:samd@1.8.13             bundle=false managed=true version=1.8.13
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/samd/1.8.13/libraries location=platform
DEBU[0000] current best: arduino:mbed_nano@4.0.4         bundle=false managed=true version=4.0.4
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.0.4/libraries location=platform
DEBU[0000] current best: arduino:renesas_uno@1.0.2       bundle=false managed=true version=1.0.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/renesas_uno/1.0.2/libraries location=platform
DEBU[0000] current best: arduino:esp32@2.0.11-debug      bundle=false managed=true version=2.0.11-debug
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/arduino/hardware/esp32/2.0.11-debug/libraries location=platform
DEBU[0000] current best: esp32:esp32@2.0.11              bundle=false managed=true version=2.0.11
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/esp32/hardware/esp32/2.0.11/libraries location=platform
DEBU[0000] current best: rp2040:rp2040@3.2.2             bundle=false managed=true version=3.2.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/rp2040/hardware/rp2040/3.2.2/libraries location=platform
DEBU[0000] current best: Croduino_Boards:Inkplate@1.0.1  bundle=false managed=true version=1.0.1
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/Croduino_Boards/hardware/Inkplate/1.0.1/libraries location=platform
DEBU[0000] current best: Inkplate_Boards:esp32@3.0.1     bundle=false managed=true version=3.0.1
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/Inkplate_Boards/hardware/esp32/3.0.1/libraries location=platform
DEBU[0000] current best: esp8266:esp8266@3.1.2           bundle=false managed=true version=3.1.2
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries location=platform
DEBU[0000] current best: teensy:avr@1.57.0               bundle=false managed=true version=1.57.0
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Library/Arduino15/packages/teensy/hardware/avr/1.57.0/libraries location=platform
INFO[0000] Loading libraries index file                  index=/Users/a.kitta/Library/Arduino15/library_index.json
INFO[0000] Adding libraries dir                          dir=/Users/a.kitta/Documents/Arduino/libraries location=user
INFO[0001] starting discovery teensy:teensy-discovery process 
INFO[0001] starting discovery builtin:serial-discovery process 
INFO[0001] starting discovery rp2040 process            
INFO[0001] starting discovery builtin:mdns-discovery process 
INFO[0001] starting discovery builtin:dfu-discovery process 
INFO[0001] started discovery teensy:teensy-discovery process 
INFO[0001] started discovery builtin:serial-discovery process 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery teensy:teensy-discovery 
INFO[0001] started discovery rp2040 process             
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery rp2040 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery builtin:serial-discovery 
INFO[0001] started discovery builtin:mdns-discovery process 
INFO[0001] started discovery builtin:dfu-discovery process 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery builtin:mdns-discovery 
INFO[0001] sending command HELLO 1 "arduino-cli 0.34.0" to discovery builtin:dfu-discovery 
INFO[0001] from discovery teensy:teensy-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery teensy:teensy-discovery 
INFO[0001] from discovery builtin:serial-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] from discovery teensy:teensy-discovery received message type: start_sync, message: OK 
INFO[0001] sending command START_SYNC to discovery builtin:serial-discovery 
INFO[0001] from discovery builtin:serial-discovery received message type: start_sync, message: OK 
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.BLTH 
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.Bluetooth-Incoming-Port 
INFO[0001] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.usbmodem3 
INFO[0001] from discovery builtin:mdns-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery builtin:mdns-discovery 
INFO[0001] from discovery builtin:mdns-discovery received message type: start_sync, message: OK 
INFO[0001] from discovery builtin:dfu-discovery received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery builtin:dfu-discovery 
INFO[0001] from discovery builtin:dfu-discovery received message type: start_sync, message: OK 
INFO[0001] from discovery rp2040 received message type: hello, message: OK, protocol version: 1 
INFO[0001] sending command START_SYNC to discovery rp2040 
INFO[0001] from discovery rp2040 received message type: start_sync, message: OK 
DEBU[0001] current best: arduino:mbed_nano@4.0.4         bundle=false managed=true version=4.0.4
INFO[0001] Required tool                                 tool="arduino:arm-none-eabi-gcc@7-2017q4"
INFO[0001] Required tool                                 tool="arduino:bossac@1.9.1-arduino2"
INFO[0001] Required tool                                 tool="arduino:dfu-util@0.10.0-arduino1"
INFO[0001] Required tool                                 tool="arduino:openocd@0.11.0-arduino2"
INFO[0001] Required tool                                 tool="arduino:rp2040tools@1.0.6"
DEBU[0001] current best: arduino:mbed_nano@4.0.4         bundle=false managed=true version=4.0.4
INFO[0001] Required tool                                 tool="arduino:arm-none-eabi-gcc@7-2017q4"
INFO[0001] Required tool                                 tool="arduino:bossac@1.9.1-arduino2"
INFO[0001] Required tool                                 tool="arduino:dfu-util@0.10.0-arduino1"
INFO[0001] Required tool                                 tool="arduino:openocd@0.11.0-arduino2"
INFO[0001] Required tool                                 tool="arduino:rp2040tools@1.0.6"
DEBU[0001] LAST: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/cu.usbmodem3:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true /dev/tty.usbmodem3:true]  phase="board reset"
DEBU[0001] TOUCH: /dev/cu.usbmodem3                      phase="board reset"
INFO[0001] Performing 1200-bps touch reset on serial port /dev/cu.usbmodem3  phase="board reset"
Performing 1200-bps touch reset on serial port /dev/cu.usbmodem3
INFO[0001] from discovery builtin:serial-discovery received message type: remove, port: /dev/cu.usbmodem3 
INFO[0001] Waiting for upload port...                    phase="board reset"
Waiting for upload port...
DEBU[0001] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0001] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0002] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0002] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0002] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0002] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0003] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0003] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0003] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0003] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0004] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0004] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0004] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0005] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0005] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0005] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0005] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0006] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0006] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0006] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
DEBU[0006] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true]  phase="board reset"
INFO[0006] from discovery builtin:serial-discovery received message type: add, port: /dev/cu.usbmodem2 
DEBU[0007] WAIT: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/cu.usbmodem2:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true /dev/tty.usbmodem2:true]  phase="board reset"
DEBU[0007] New ports found!                              phase="board reset"
DEBU[0008] CHECK: map[/dev/cu.BLTH:true /dev/cu.Bluetooth-Incoming-Port:true /dev/cu.usbmodem14101:true /dev/cu.usbmodem2:true /dev/tty.BLTH:true /dev/tty.Bluetooth-Incoming-Port:true /dev/tty.usbmodem14101:true /dev/tty.usbmodem2:true]  phase="board reset"
INFO[0008] Upload port found on /dev/tty.usbmodem2       phase="board reset"
Upload port found on /dev/tty.usbmodem2
"/Users/a.kitta/Library/Arduino15/packages/arduino/tools/bossac/1.9.1-arduino2/bossac" -d --port=tty.usbmodem2 -U -i -e -w "/private/var/folders/z1/xkw1yh5n7rz4n8djprp1mdn80000gn/T/arduino/sketches/A051B7F4F3A6DA790A80412CD0106F8D/minimal.ino.bin" -R
Set binary mode
version()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Connected at 921600 baud
identifyChip()=nRF52840-QIAA
write(addr=0,size=0x34)
writeWord(addr=0x30,value=0x400)
writeWord(addr=0x20,value=0)
version()=Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Device       : nRF52840-QIAA
Version      : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Address      : 0x0
Pages        : 256
Page Size    : 4096 bytes
Total Size   : 1024KB
Planes       : 1
Lock Regions : 0
Locked       : none
Security     : false
Erase flash
chipErase(addr=0)

Done in 0.001 seconds
Write 84088 bytes to flash (21 pages)
[                              ] 0% (0/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0, size=0x1000)
[=                             ] 4% (1/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x1000, size=0x1000)
[==                            ] 9% (2/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x2000, size=0x1000)
[====                          ] 14% (3/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x3000, size=0x1000)
[=====                         ] 19% (4/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x4000, size=0x1000)
[=======                       ] 23% (5/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x5000, size=0x1000)
[========                      ] 28% (6/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x6000, size=0x1000)
[==========                    ] 33% (7/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x7000, size=0x1000)
[===========                   ] 38% (8/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x8000, size=0x1000)
[============                  ] 42% (9/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x9000, size=0x1000)
[==============                ] 47% (10/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xa000, size=0x1000)
[===============               ] 52% (11/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xb000, size=0x1000)
[=================             ] 57% (12/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xc000, size=0x1000)
[==================            ] 61% (13/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xd000, size=0x1000)
[====================          ] 66% (14/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xe000, size=0x1000)
[=====================         ] 71% (15/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0xf000, size=0x1000)
[======================        ] 76% (16/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x10000, size=0x1000)
[========================      ] 80% (17/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x11000, size=0x1000)
[=========================     ] 85% (18/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x12000, size=0x1000)
[===========================   ] 90% (19/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x13000, size=0x1000)
[============================  ] 95% (20/21 pages)write(addr=0x34,size=0x1000)
writeBuffer(scr_addr=0x34, dst_addr=0x14000, size=0x1000)
[==============================] 100% (21/21 pages)
Done in 3.335 seconds
reset()
INFO[0012] from discovery builtin:serial-discovery received message type: remove, port: /dev/cu.usbmodem2 

kittaakos pushed a commit to arduino/arduino-ide that referenced this issue Aug 31, 2023
Ref: arduino/arduino-cli#2287
Closes #2203

Signed-off-by: Akos Kitta <a.kitta@arduino.cc>
@kittaakos
Copy link
Contributor Author

The fix provided via #2288 might be a partial one. After some experimenting, I could not find a use case when the updated port was absent from the upload result, but the port has changed, and the updated port is incorrect in the response.

Steps to reproduce with the CLI:

./arduino-cli version   
arduino-cli  Version: 0.34.1 Commit: 048415c5 Date: 2023-08-31T11:46:44Z
./arduino-cli board list
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem14201           serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano
/arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem14201 ~/Documents/Arduino/minimal --format json
{
  "stdout": "Device       : nRF52840-QIAA\nVersion      : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]\nAddress      : 0x0\nPages        : 256\nPage Size    : 4096 bytes\nTotal Size   : 1024KB\nPlanes       : 1\nLock Regions : 0\nLocked       : none\nSecurity     : false\nErase flash\n\nDone in 0.001 seconds\nWrite 84088 bytes to flash (21 pages)\n\r[                              ] 0% (0/21 pages)\r[=                             ] 4% (1/21 pages)\r[==                            ] 9% (2/21 pages)\r[====                          ] 14% (3/21 pages)\r[=====                         ] 19% (4/21 pages)\r[=======                       ] 23% (5/21 pages)\r[========                      ] 28% (6/21 pages)\r[==========                    ] 33% (7/21 pages)\r[===========                   ] 38% (8/21 pages)\r[============                  ] 42% (9/21 pages)\r[==============                ] 47% (10/21 pages)\r[===============               ] 52% (11/21 pages)\r[=================             ] 57% (12/21 pages)\r[==================            ] 61% (13/21 pages)\r[====================          ] 66% (14/21 pages)\r[=====================         ] 71% (15/21 pages)\r[======================        ] 76% (16/21 pages)\r[========================      ] 80% (17/21 pages)\r[=========================     ] 85% (18/21 pages)\r[===========================   ] 90% (19/21 pages)\r[============================  ] 95% (20/21 pages)\r[==============================] 100% (21/21 pages)\nDone in 3.333 seconds\n",
  "stderr": "",
  "updated_upload_port": {
    "address": "/dev/cu.usbmodem14201",
    "label": "/dev/cu.usbmodem14201",
    "protocol": "serial",
    "protocol_label": "Serial Port (USB)",
    "properties": {
      "pid": "0x005A",
      "serialNumber": "0000000000000000131B9378799A643D",
      "vid": "0x2341"
    },
    "hardware_id": "0000000000000000131B9378799A643D"
  }
}

After the upload, the port is /dev/cu.usbmodem14201, but eventually, it has changed to /dev/cu.usbmodem2.

./arduino-cli board list
Port                            Protocol Type              Board Name          FQBN                        Core             
/dev/cu.BLTH                    serial   Serial Port       Unknown                                                          
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown                                                          
/dev/cu.usbmodem2               serial   Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano

@kittaakos
Copy link
Contributor Author

/arduino-cli upload -b arduino:mbed_nano:nano33ble -p /dev/cu.usbmodem14201 ~/

I could not reproduce the defect with 0.34.2. But I could no longer reproduce it with 0.34.0 either. I put the board in bootloader mode, but the port detection always worked. I have noticed that I do not see cu.usbmodem2 or cu.usbmodem3 with board list. The port was always cu.usbmodem14201 or cu.usbmodem14301.

I do not know what has changed. I am closing it and will reopen it if I can reproduce the bug.

@kittaakos kittaakos closed this as not planned Won't fix, can't repro, duplicate, stale Sep 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: code Related to content of the project itself type: imperfection Perceived defect in any part of project
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants