ESP8266 SPI WiFi Shield ("nice to have")

bilekj:
Status 0 means SPISLAVE_TX_NODATA, i.e. master requested data but ESP8266 didn't have any prepared for it. A quick look in the code gives the thought:
It could mean:
a) loss of a message in SPI communication. Then after a timeout master repeats the message.
b) slow response from the internet that leads to a timeout. Hopefully master got the data later.

I wasn't able to understand if the communication was broken from the point the "Slave not ready" message was written or if it continued to run. Changes in version 0.2.0 were made especially to increase robustness of message exchange.

When I saw the error message, I tried to send data from the server to Arduino and it received and displayed correctly.
That's why I think that the code on the DUE continued to run waiting for data, and communication was not broken, otherwise I would have other messages about reconnecting.

Here's the code:

void loop()
{
  
  if(!client.connected())
  {
       // if you get a connection, report back via serial:
      Serial.print(++count) ;
      Serial.print(" - Connecting to server: "); Serial.print(TARGET_ADDR);
      if(client.connect(TARGET_ADDR, TARGET_PORT))
      {
        Serial.println("... Connected!");
      }
      else
      {
        Serial.println("... Not connected!!!!");
        client.flush();
        client.stop();
        delay(2000);
        if(count>1000)
        {
          count=0;
          do
          {
            WiFiSpi.disconnect();
            Serial.print("\r\nAttempting to REconnect to network: "); Serial.println(ssid);
            // Connect to WPA/WPA2 network:
            status = WiFiSpi.begin(ssid, pass); // connect to specific network
            //status = WiFiSpi.begin("", ""); // connect to last succeffull connected network
            // wait 5 seconds for connection:
            delay(6000);
          }
          while(status != WL_CONNECTED);
        }
        // you're connected now, so print out the data:
        Serial.println("Connected to the network!");
      }
  }
  
  if(client.connected())
  {
    if(client.available())
    {
      Serial.println("\rFromServer---");
      while(client.available())
      {
        char c = client.read();
        Serial.write(c);
        delay(5);
      }
      Serial.println("\r\n--------------");
    }
    else
    {
       delay(20);
    }
  }
}