Hello,
I've got quite a lot of experience with Arduino and electronics in general, although this is my first time working with a WiFi enabled Arduino board. I have setup and used a number of of network related projects on other platforms.
I've got the Opla IoT Kit which comes with the MKR WiFi 1010 board.
I've managed to work through the tutorials and create my own code in the IDE to connect to my network, access information on the internet and display it on the device without any significant problems - I had to update the firmware on the board before it would connect to my network.
I'm now trying to get the board set up through the Arduino IoT Cloud. I'm following the steps to setup a new device, with the MKR board plugged in, the plugin running, select Arduino device, it detects the MKR WiFi 1010 board and allows me to continue to configure and name the device. It then runs through 3 steps, uploading the sketch (which it completes and I can hear the relay on the IoT carrier tick over), it completes the second step and then keeps failing on the 3rd, being some sort of final check.
I get this error each time:
{"id":"3Z8W7MfK","code":"bad_request","status":400,"detail":"[RM54Su0+] 400 invalid_request: request.wifi_fw_version must match the regexp "^(?P0|[1-9]\\d*)\\.(?P0|[1-9]\\d*)\\.(?P0|[1-9]\\d*)(?:-(?P(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-])(?:\\.(?:0|[1-9]\\d|\\d*[a-zA-Z-][0-9a-zA-Z-]))))?(?:\\+(?P[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)))?$" but got value "", attribute: request.wifi_fw_version, value: , regexp: ^(?P0|[1-9]\d)\.(?P0|[1-9]\d*)\.(?P0|[1-9]\d*)(?:-(?P(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-])(?:\.(?:0|[1-9]\d|\d*[a-zA-Z-][0-9a-zA-Z-]))))?(?:\+(?P[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$"}
I've tried this on a Mac on Chrome and Safari and on a Windows 10 PC on Chrome and Firefox. I've also tried on two Networks, and my phone's hotspot network.
I'm not really sure how to go from here. You can't edit or see any of the code being uploaded to the device by the Arduino IoT Cloud application, so I'm not sure where/why it is failing and the error doesn't look like it has any useful troubleshooting information.
The board is also "upset" by this process and goes into a mode which can only be recovered with a double tap of the reset button otherwise it's unrecognised by the computer and application.