arduino-create-agent
arduino-create-agent copied to clipboard
[EDITOR-367] killupload not working
killupload
time="2018-08-10T17:46:42+02:00" level=info msg="{\"uploadStatus\": \"Killed\"}"
time="2018-08-10T17:46:42+02:00" level=info msg="Flashing with command:/home/stefania/.arduino-create/arduino/bossac/1.7.0/bossac -i -d --port=ttyACM0 -U true -i -e -w -v /tmp/arduino-create-agent218692468/sketch_aug10a.bin -R"
time="2018-08-10T17:46:44+02:00" level=info msg="Set binary mode"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0)=0x20007ffc"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0xe000ed00)=0x410cc601"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41002018)=0x10010305"
time="2018-08-10T17:46:44+02:00" level=info msg="version()=v2.0 [Arduino:XYZ] Nov 24 2015 11:35:16"
time="2018-08-10T17:46:44+02:00" level=info msg="chipId=0x10010005"
time="2018-08-10T17:46:44+02:00" level=info msg="Connected at 921600 baud"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0)=0x20007ffc"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0xe000ed00)=0x410cc601"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41002018)=0x10010305"
time="2018-08-10T17:46:44+02:00" level=info msg="Atmel SMART device 0x10010005 found"
time="2018-08-10T17:46:44+02:00" level=info msg="write(addr=0x20004000,size=0x34)"
time="2018-08-10T17:46:44+02:00" level=info msg="writeWord(addr=0x20004030,value=0x10)"
time="2018-08-10T17:46:44+02:00" level=info msg="writeWord(addr=0x20004020,value=0x20008000)"
time="2018-08-10T17:46:44+02:00" level=info msg="Device : ATSAMD21G18A"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0)=0x20007ffc"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0xe000ed00)=0x410cc601"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41002018)=0x10010305"
time="2018-08-10T17:46:44+02:00" level=info msg="Chip ID : 10010005"
time="2018-08-10T17:46:44+02:00" level=info msg="version()=v2.0 [Arduino:XYZ] Nov 24 2015 11:35:16"
time="2018-08-10T17:46:44+02:00" level=info msg="Version : v2.0 [Arduino:XYZ] Nov 24 2015 11:35:16"
time="2018-08-10T17:46:44+02:00" level=info msg="Address : 8192"
time="2018-08-10T17:46:44+02:00" level=info msg="Pages : 3968"
time="2018-08-10T17:46:44+02:00" level=info msg="Page Size : 64 bytes"
time="2018-08-10T17:46:44+02:00" level=info msg="Total Size : 248KB"
time="2018-08-10T17:46:44+02:00" level=info msg="Planes : 1"
time="2018-08-10T17:46:44+02:00" level=info msg="Lock Regions : 16"
time="2018-08-10T17:46:44+02:00" level=info msg="Locked : readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004020)=0xffff"
time="2018-08-10T17:46:44+02:00" level=info msg=none
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41004018)=0"
time="2018-08-10T17:46:44+02:00" level=info msg="Security : false"
time="2018-08-10T17:46:44+02:00" level=info msg="Boot Flash : true"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x40000834)=0x7000a"
time="2018-08-10T17:46:44+02:00" level=info msg="BOD : true"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x40000834)=0x7000a"
time="2018-08-10T17:46:44+02:00" level=info msg="BOR : true"
time="2018-08-10T17:46:44+02:00" level=info msg="Arduino : FAST_CHIP_ERASE"
time="2018-08-10T17:46:44+02:00" level=info msg="Arduino : FAST_MULTI_PAGE_WRITE"
time="2018-08-10T17:46:44+02:00" level=info msg="Arduino : CAN_CHECKSUM_MEMORY_BUFFER"
time="2018-08-10T17:46:44+02:00" level=info msg="Erase flash"
time="2018-08-10T17:46:44+02:00" level=info msg="chipErase(addr=0x2000)"
time="2018-08-10T17:46:44+02:00" level=info msg="done in 0.807 seconds"
time="2018-08-10T17:46:44+02:00" level=info msg=
time="2018-08-10T17:46:44+02:00" level=info msg="Write 9848 bytes to flash (154 pages)"
time="2018-08-10T17:46:44+02:00" level=info msg="write(addr=0x20005000,size=0x1000)"
time="2018-08-10T17:46:44+02:00" level=info msg="writeBuffer(scr_addr=0x20005000, dst_addr=0x2000, size=0x1000)"
time="2018-08-10T17:46:44+02:00" level=info msg="\r[============ ] 41% (64/154 pages)write(addr=0x20005000,size=0x1000)"
time="2018-08-10T17:46:44+02:00" level=info msg="writeBuffer(scr_addr=0x20005000, dst_addr=0x3000, size=0x1000)"
time="2018-08-10T17:46:44+02:00" level=info msg="\r[======================== ] 83% (128/154 pages)write(addr=0x20005000,size=0x680)"
time="2018-08-10T17:46:44+02:00" level=info msg="writeBuffer(scr_addr=0x20005000, dst_addr=0x4000, size=0x680)"
time="2018-08-10T17:46:44+02:00" level=info msg="\r[==============================] 100% (154/154 pages)"
time="2018-08-10T17:46:44+02:00" level=info msg="done in 0.067 seconds"
time="2018-08-10T17:46:44+02:00" level=info msg=
time="2018-08-10T17:46:44+02:00" level=info msg="Verify 9848 bytes of flash with checksum."
time="2018-08-10T17:46:44+02:00" level=info msg="checksumBuffer(start_addr=0x2000, size=0x1000) = 50ba"
time="2018-08-10T17:46:44+02:00" level=info msg="checksumBuffer(start_addr=0x3000, size=0x1000) = 3d7c"
time="2018-08-10T17:46:44+02:00" level=info msg="checksumBuffer(start_addr=0x4000, size=0x678) = 9c73"
time="2018-08-10T17:46:44+02:00" level=info msg="Verify successful"
time="2018-08-10T17:46:44+02:00" level=info msg="done in 0.007 seconds"
time="2018-08-10T17:46:44+02:00" level=info msg="CPU reset."
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0)=0x20007ffc"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0xe000ed00)=0x410cc601"
time="2018-08-10T17:46:44+02:00" level=info msg="readWord(addr=0x41002018)=0x10010305"
time="2018-08-10T17:46:44+02:00" level=info msg="writeWord(addr=0xe000ed0c,value=0x5fa0004)"
got message msg="{\"uploadStatus\": \"Killed\"}
but upload goes ahead
It looks like killupload
has been issued before the actual upload start, probably during the 1200 bps phase.
The only way to solve this is to cache the kill request and evaluate it before starting the actual upload (see https://github.com/arduino/arduino-create-agent/blob/devel/upload/upload.go#L150 and https://github.com/arduino/arduino-create-agent/blob/devel/upload/upload.go#L144)