Arduino Nano + WIZ550io - Can't connect to Blynk Cloud

I’m trying to connect my Arduino Nano to the Blynk Cloud to report some very basic sensor information. To connect the Nano to the Internet I went with the WizNet WIZ550io Ethernet board. I’ve wired this up to the Nano - and ran the basic WebServer example and was able to get this working on my local network. It is worth noting, I placed the “Ethernet” library from Wiznet ( into my Libraries folder at Documents\Arduino\libraries as per instructions from the WizNet github and some other sources. I had to comment out these lines:

if (Ethernet.hardwareStatus() == EthernetNoHardware) {
    Serial.println("Ethernet shield was not found.  Sorry, can't run without hardware. :(");
    while (true) {
      delay(1); // do nothing, no point running without Ethernet hardware
  if (Ethernet.linkStatus() == LinkOFF) {
    Serial.println("Ethernet cable is not connected.");

As I would get an error when compiling:

exit status 1
'class EthernetClass' has no member named 'hardwareStatus'

However, once I removed these lines the webserver example worked fine.

Now when I try to connect the device to the Blynk Cloud using the Quickstart function - my nano gets an IP address from my network which I can also ping, but in the Serial Monitor all I can see is:

[5211] Connecting to
[37394] Connecting to
[69574] Connecting to
[101754] Connecting to

And the device won’t connect or show any updates either on the Blynk Cloud or on my Serial Monitor.

I copied my code from the Blynk Cloud - but leaving below in case it helps. Any suggestions/advice greatly appreciated:


  This is a simple demo of sending and receiving some data.
  Be sure to check out other examples!

// Template ID, Device Name and Auth Token are provided by the Blynk.Cloud
// See the Device Info tab, or Template settings
#define BLYNK_TEMPLATE_ID           "TMPLpvuQBTV9"
#define BLYNK_DEVICE_NAME           "Quickstart Device"
#define BLYNK_AUTH_TOKEN            "NrKBboxuAChO3ZY8CJLSPcakKTDE4oFI"

// Comment this out to disable prints and save space
#define BLYNK_PRINT Serial

#include <SPI.h>
#include <Ethernet.h>
#include <BlynkSimpleEthernet.h>

char auth[] = BLYNK_AUTH_TOKEN;

#define W5100_CS  10
#define SDCARD_CS 4

BlynkTimer timer;

// This function is called every time the Virtual Pin 0 state changes
  // Set incoming value from pin V0 to a variable
  int value = param.asInt();

  // Update state
  Blynk.virtualWrite(V1, value);

// This function is called every time the device is connected to the Blynk.Cloud
  // Change Web Link Button message to "Congratulations!"
  Blynk.setProperty(V3, "offImageUrl", "");
  Blynk.setProperty(V3, "onImageUrl",  "");
  Blynk.setProperty(V3, "url", "");

// This function sends Arduino's uptime every second to Virtual Pin 2.
void myTimerEvent()
  // You can send any value at any time.
  // Please don't send more that 10 values per second.
  Blynk.virtualWrite(V2, millis() / 1000);

void setup()
  // Debug console

  digitalWrite(SDCARD_CS, HIGH); // Deselect the SD card

  // You can also specify server:
  //Blynk.begin(auth, "", 80);
  //Blynk.begin(auth, IPAddress(192,168,1,100), 8080);

  // Setup a function to be called every second
  timer.setInterval(1000L, myTimerEvent);

void loop()
  // You can inject your own code or combine it with other sketches.
  // Check other examples on how to communicate with Blynk. Remember
  // to avoid delay() function!