this is my first posting here, and I need to mention that I'm not a programmer etc..
Having my first Nano 33 IoT, and working (like every newbe) on a grill temperature regulation, everything worked quite fine, except that the Nano sometimes lost the connection to my home WIFI for a few min.
Building up more functionalities, and dashboard elements on the Arduino IoT Cloud, today at 1pm connection got lost again, and since then no way to get it back. Reading many positings here, I didnt found a real similar posting.
I updated the firmware (several times), and been running test programs etc..
Trying a WIFI check sketch, it returns "WiFi.status()=0" or "WL_NO_SHIELD". I always used the Cloud-IoT-Platform to upload sketches, dashboards worked fine, no physical damages happened.
I have no idea what a WIFI Shield is or can be, nor I found a "for dummies" understandable process to find out what could be the problem, or what I can try further.
The identifier name WL_NO_SHIELD is an artifact from the original WiFi library, which was used with the "Arduino WiFi Shield". With that library, you had a conventional Arduino board (e.g., Arduino Uno) with a separate PCB plugged in to the board to add the Wi-Fi communication capabilities. "Shield" is Arduino's term for those pluggable accessory PCBs.
The situation is a bit different with your Nano 33 IoT in that the Wi-Fi radio hardware is on the Arduino board itself. What WL_NO_SHIELD means in this context is that the primary ATSAMD21G18 microcontroller on your Nano 33 IoT is not successful communicating in some way with the u-blox NINA-W102 Wi-Fi radio module on the board.
If you haven't already, I would start by checking the basic network connectivity of the board. This takes a lot of the additional factors added by Arduino IoT Cloud out of the equation.
I would start with the Tools > CheckFirmwareVersion example sketch of the "WiFiNINA" library as a basic check on the communication with the Wi-Fi module.
If that is successful, try the "ScanNetworks" example sketch of the "WiFiNINA" library.
If that is successful, try the "WiFiWebClient" example sketch of the "WiFiNINA" library.
CheckFirmwareVersion:
16:50:30.452 -> WiFiNINA firmware check.
16:50:30.452 ->
16:50:31.176 -> Firmware version installed: 1.4.8
16:50:31.176 -> Latest firmware version available : 1.4.8
16:50:31.176 ->
16:50:31.176 -> Check result: PASSED
ScanNetworks
16:57:06.445 -> MAC: C8:C9:A3:E6:0E:AC
16:57:06.445 -> Scanning available networks...
16:57:06.445 -> ** Scan Networks **
16:57:10.287 -> number of available networks:5
16:57:10.287 -> 0) XXXX-Repeater Signal: -62 dBm Encryption: WPA2
16:57:10.287 -> 1) XXXX Signal: -83 dBm Encryption: WPA2
->the last one is the one it should connect to. Few days ago, it worked very good.
WiFiWebClient:
19:40:12.201 -> Attempting to connect to SSID: XXXX
19:40:23.515 -> Connected to WiFi
19:40:23.515 -> SSID: XXX
19:40:23.515 -> IP Address: 192.168.178.87
19:40:23.515 -> signal strength (RSSI):-45 dBm
19:40:23.515 ->
19:40:23.515 -> Starting connection to server...
19:40:23.683 -> connected to server
19:40:24.095 -> HTTP/1.1 200 OK
19:40:24.095 -> Content-Type: text/html; charset=ISO-8859-1
19:40:24.095 -> Date: Mon, 14 Mar 2022 18:40:22 GMT
19:40:24.095 -> Expires: -1
19:40:24.095 -> Cache-Control: private, max-age=0
19:40:24.095 -> P3P: CP="This is not a P3P policy! See P3P and Google's cookies - Google Account Help for more info."
19:40:24.095 -> Server: gws
19:40:24.095 -> X-XSS-Protection: 0
19:40:24.095 -> X-Frame-Options: SAMEORIGIN
19:40:24.143 -> Set-Cookie: NID=511=UlPwZPnzg5l6z88hdRRvKjb-Krxf62DNkc3YbTNEclP4AVxJEU1ETe3hcJqhJTDCDpp4l8ZGL35nq9Yt2zWbPYC6F-4Pnc54PwB8BVH_AANKSrrWPoRJEiEdPcgmbh5kRRX-EqKWaeJw2XwO3zqrnyk5xuC8-YSAUqGa6bMtjR8; expires=Tue, 13-Sep-2022 18:40:22 GMT; path=/; domain=.google.com; HttpOnly
19:40:24.143 -> Accept-Ranges: none
19:40:24.143 -> Vary: Accept-Encoding
19:40:24.143 -> Connection: close
19:40:24.143 -> Transfer-Encoding: chunked
19:40:24.143 ->
19:40:24.143 -> 3460
19:40:24.143 -> <!doctype html>arduino - Google Suche(function(){
19:40:24.143 -> document.documentElement.addEventListener("submit",function(b){var a;if(a=b.target){var c=a.getAttribute("data-..........
From my WIFI Router, I can see that the Arduino was logged on (" [
14.03.22 19:40:14 WLAN-Gerät angemeldet (2,4 GHz), 72 Mbit/s, arduino-0eac, IP 192.168.178.87, MAC C8:C9:A3:E6:0E:AC.")
So, the connection to SSID seemet to be successful. Hope this is useful information, what could be next steps?
many thanks
Kai
You have not posted your code so I can only provide some generic advice.
Most examples and sketches posted here use setup() to configure the network and then expect the network to just work. I recommend you remove all setup code from setup() and move everything to loop(). Test your connection on a regular basis on the application layer and reset the connection when necessary. I have a Nano 33 IoT running 24/7/365. It experiences about 10 disconnect events every day which it automatically takes care of.
Updating the firmware is not necessary unless the firmware update fixes a specific issue you are looking for. This is not a consumer product with a large team of developers creating new code every month. The old firmware are fine in most cases.
When necessary the WiFi code can be written in a way that reconnecting is done without affecting the rest of the application. I use switch-case to create a state machine that will just solve one issue at a time. The WiFi code never waits for anything and returns as soon as possible to loop. That way the main application can run continuously.
it seems that it connects to an WIFI. My problem is that it is not working anymore togehter with the Arduino IoT-Cloud - the device is shown as "offline", and no data reaches the dashboard anymore. Below the (relevant lines from the) code I'm using, or the IoT-Cloud prepares to establish a connection between the Nano and the IoT Cloud:
#include "thingProperties.h"
void setup() {
// Defined in thingProperties.h
initProperties();
I have purchased now another Nano33IoT (directly from Arduino), and connected the same way. Same situation - it showes no connection to the IoT-Platform. Filing a ticket now to the Arduino Helpdesk.
Unfortunately still problems. I have bought even a "maker plan", and my 2nd Nano 33 IoT has the same weak behavior as the other one, they connect to my wifi "as they want". The Arduinno service said that the failure would be in my Fritzbox 7590, (It would see the arduino as a threat, I should reboot it), but that changes nothing. I tried over my iPhone hotspot - same result. Sometimes they connect, sometimes not, there is no clear picture. I have bought an ESP32, they connect all the (!) time without any problems, also when the signal is very week (in rooms more far away from the router), where the Nano iOt does not connect at all.
The only thing I found is that wenn the nanon is connected to the Laptop, it seem to connect better. Serial mointor sometimes confirms connection, but it does not appear in the dashboard. Then, wenn I disconnect from the PC and connect to a simple USB-power souce, it's gone and does not come back. I added a power line WIFI adapter there, also without success, and tried a stronger trafo to allow more current to the usb-connector.
Very frustrating, also, as the ESP32 does not have these problems at all.
I have noticed that the FRITZ!Box products are often used by the people who report this type of problem with the Nano 33 IoT. You might find some information here:
I think there is a difference between how the ESP32 and the WiFiNINA handle things. The ESP32 libraries have reconnect options which the WiFININA does not seem to have. I can see disconnects with all boards Nano 33 IoT, ESP32, older ESPs they all have disconnects. Its just the Nano 33 IoT requires you to handles this manually and the ESP32 seem to be able to handle this by themselves.
Like in0, I have also noted that FRITZ!Box products could be part of the issue. Several users with issues mentioned they use them and I have one too.
I am also having this problem with my Arduino nano 33 Iot. It connected to the cloud just fine but now all of a sudden it just shoes offline. Has anyone found a solution to this?