Can't add new OPTA to Arduino Cloud

Thank you for your reply. I initially tried to attach the log as a file, but I received a notification stating that new users are not permitted to perform this action. Therefore, I can only paste the log output from the Cloud Agent debug monitor (running on localhost:8991) into this message.

The steps I followed are as follows:

  1. Opened the Cloud Agent debug monitor.

  2. In the Arduino Cloud Device section, use the “Add Device” feature to register an OPTA device.

  3. On the web interface, the screen remained stuck on “Updating Your Board for Improved Setup.”

The images below illustrate the results I obtained when adding the OPTA to the Cloud (see Figures 1–3).

I originally thought the issue might be limited to that particular OPTA unit, so I tried a brand-new, unopened device—and encountered the same behavior.

Log:

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

sendraw /dev/cu.usbmodem1101 VaoCAAraAAEgA4EYZDn/qlU=

sendraw /dev/cu.usbmodem1101 VaoDAAMB4fGqVQ==

close /dev/cu.usbmodem1101

Closing serial port /dev/cu.usbmodem1101

Shutting down reader on /dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

{
  "Cmd": "Close",
  "Desc": "Got unregister/close on port.",
  "Port": "/dev/cu.usbmodem1101",
  "Baud": 9600
}

Shutting down writer on /dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

writerBuffered just got closed. make sure you make a new one. port:/dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": false,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

{
  "Cmd": "Serial",
  "ProgrammerStatus": "Starting"
}

{
  "Msg": "Flashing with command:/Users/wujinrong/.arduino-create/arduino/arduino-fwuploader/2.4.1/arduino-fwuploader firmware list -b arduino:mbed_opta:opta",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "No firmwares available.",
  "ProgrammerStatus": "Busy"
}

{
  "Flash": "Ok",
  "ProgrammerStatus": "Done"
}

downloadtool dfu-util 0.10.0-arduino1 arduino keep

{
  "DownloadStatus": "Pending",
  "Msg": "Ensure that the files are executable"
}

{
  "DownloadStatus": "Pending",
  "Msg": "Updating map with location /Users/wujinrong/.arduino-create/arduino/dfu-util/0.10.0-arduino1"
}

{
  "DownloadStatus": "Success",
  "Msg": "Map Updated"
}

{
  "Cmd": "Serial",
  "ProgrammerStatus": "Starting"
}

{
  "Msg": "Restarting in bootloader mode",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Flashing with command:/Users/wujinrong/.arduino-create/arduino/dfu-util/0.10.0-arduino1/dfu-util --device 0x2341:0x0364 -D /var/folders/2j/7ppn_8vn073gvg54yxbf3x_r0000gn/T/arduino-create-agent3282408446/provisioningv2.bin -a0 --dfuse-address=0x08040000:leave",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "dfu-util 0.10-dev",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Copyright 2010-2021 Tormod Volden and Stefan Schmidt",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "This program is Free Software and has ABSOLUTELY NO WARRANTY",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Please report bugs to http://sourceforge.net/p/dfu-util/tickets/",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "dfu-util: Warning: Invalid DFU suffix signature",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "dfu-util: A valid DFU suffix will be required in a future dfu-util release",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Opening DFU capable USB device...",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Device ID 2341:0364",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Device DFU version 011a",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Claiming USB DFU Interface...",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Setting Alternate Interface #0 ...",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Determining device status...",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "DFU state(2) = dfuIDLE, status(0) = No error condition is present",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "DFU mode device DFU version 011a",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Device returned transfer size 4096",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "DfuSe interface name: \"Internal Flash   \"",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Downloading element to address = 0x08040000, size = 1122116",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "\rErase   \t[                         ]   0%            0 bytes\rErase   \t[                         ]   0%            0 bytes\rErase   \t[=                        ]   4%        45056 bytes\rErase   \t[==                       ]   8%        90112 bytes\rErase   \t[==                       ]  11%       131072 bytes\rErase   \t[===                      ]  12%       135168 bytes\rErase   \t[====                     ]  16%       180224 bytes\rErase   \t[=====                    ]  20%       225280 bytes\rErase   \t[=====                    ]  23%       262144 bytes\rErase   \t[======                   ]  24%       270336 bytes\rErase   \t[=======                  ]  28%       315392 bytes\rErase   \t[========                 ]  32%       360448 bytes\rErase   \t[========                 ]  35%       393216 bytes\rErase   \t[=========                ]  36%       405504 bytes\rErase   \t[==========               ]  40%       450560 bytes\rErase   \t[===========              ]  44%       495616 bytes\rErase   \t[===========              ]  46%       524288 bytes\rErase   \t[============             ]  48%       540672 bytes\rErase   \t[=============            ]  52%       585728 bytes\rErase   \t[==============           ]  56%       630784 bytes\rErase   \t[==============           ]  58%       655360 bytes\rErase   \t[===============          ]  60%       675840 bytes\rErase   \t[================         ]  64%       720896 bytes\rErase   \t[=================        ]  68%       765952 bytes\rErase   \t[=================        ]  70%       786432 bytes\rErase   \t[==================       ]  72%       811008 bytes\rErase   \t[===================      ]  76%       856064 bytes\rErase   \t[====================     ]  80%       901120 bytes\rErase   \t[====================     ]  81%       917504 bytes\rErase   \t[=====================    ]  84%       946176 bytes\rErase   \t[======================   ]  88%       991232 bytes\rErase   \t[=======================  ]  92%      1036288 bytes\rErase   \t[=======================  ]  93%      1048576 bytes\rErase   \t[======================== ]  96%      1077248 bytes\rErase   \t[=========================] 100%      1122116 bytes",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Erase    done.",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "\rDownload\t[                         ]   0%            0 bytes\rDownload\t[=                        ]   4%        45056 bytes\rDownload\t[==                       ]   8%        90112 bytes\rDownload\t[==                       ]   8%        94208 bytes\rDownload\t[===                      ]  12%       135168 bytes\rDownload\t[====                     ]  16%       180224 bytes\rDownload\t[====                     ]  17%       196608 bytes\rDownload\t[=====                    ]  20%       225280 bytes\rDownload\t[======                   ]  24%       270336 bytes\rDownload\t[======                   ]  26%       299008 bytes\rDownload\t[=======                  ]  28%       315392 bytes\rDownload\t[========                 ]  32%       360448 bytes\rDownload\t[========                 ]  35%       401408 bytes\rDownload\t[=========                ]  36%       405504 bytes\rDownload\t[==========               ]  40%       450560 bytes\rDownload\t[===========              ]  44%       495616 bytes\rDownload\t[===========              ]  44%       503808 bytes\rDownload\t[============             ]  48%       540672 bytes\rDownload\t[=============            ]  52%       585728 bytes\rDownload\t[=============            ]  54%       606208 bytes\rDownload\t[==============           ]  56%       630784 bytes\rDownload\t[===============          ]  60%       675840 bytes\rDownload\t[===============          ]  63%       708608 bytes\rDownload\t[================         ]  64%       720896 bytes\rDownload\t[=================        ]  68%       765952 bytes\rDownload\t[==================       ]  72%       811008 bytes\rDownload\t[===================      ]  76%       856064 bytes\rDownload\t[====================     ]  80%       901120 bytes\rDownload\t[====================     ]  81%       913408 bytes\rDownload\t[=====================    ]  84%       946176 bytes\rDownload\t[======================   ]  88%       991232 bytes\rDownload\t[======================   ]  90%      1015808 bytes\rDownload\t[=======================  ]  92%      1036288 bytes\rDownload\t[======================== ]  96%      1077248 bytes\rDownload\t[======================== ]  99%      1118208 bytes\rDownload\t[=========================] 100%      1122116 bytes",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Download done.",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "File downloaded successfully",
  "ProgrammerStatus": "Busy"
}

{
  "Msg": "Transitioning to dfuMANIFEST state",
  "ProgrammerStatus": "Busy"
}

{
  "Flash": "Ok",
  "ProgrammerStatus": "Done"
}

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1102",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": false,
    "VendorID": "0x2341",
    "ProductID": "0x0364"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": false,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

open /dev/cu.usbmodem1101 9600 timedraw

{
  "Cmd": "Open",
  "Desc": "Got register/open on port.",
  "Port": "/dev/cu.usbmodem1101",
  "Baud": 9600,
  "BufferType": "timedraw"
}

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

close /dev/cu.usbmodem1101

Closing serial port /dev/cu.usbmodem1101

Shutting down reader on /dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

{
  "Cmd": "Close",
  "Desc": "Got unregister/close on port.",
  "Port": "/dev/cu.usbmodem1101",
  "Baud": 9600
}

Shutting down writer on /dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

writerBuffered just got closed. make sure you make a new one. port:/dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": false,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

list

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": false,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

open /dev/cu.usbmodem1101 9600 timedraw

{
  "Cmd": "Open",
  "Desc": "Got register/open on port.",
  "Port": "/dev/cu.usbmodem1101",
  "Baud": 9600,
  "BufferType": "timedraw"
}

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

sendraw /dev/cu.usbmodem1101 VaoCAAraAAEgA4EYZDn/qlU=

sendraw /dev/cu.usbmodem1101 VaoDAAMB4fGqVQ==

sendraw /dev/cu.usbmodem1101 VaoDAAMC02qqVQ==

close /dev/cu.usbmodem1101

Closing serial port /dev/cu.usbmodem1101

Shutting down reader on /dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

{
  "Cmd": "Close",
  "Desc": "Got unregister/close on port.",
  "Port": "/dev/cu.usbmodem1101",
  "Baud": 9600
}

Shutting down writer on /dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": true,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

writerBuffered just got closed. make sure you make a new one. port:/dev/cu.usbmodem1101

Serial Ports:
[
  {
    "Name": "/dev/cu.usbmodem1101",
    "SerialNumber": "004000283033511933333437",
    "IsOpen": false,
    "VendorID": "0x35D1",
    "ProductID": "0x0164"
  }
]

Figure 1:

Figure 2:

Figure 3: