Usare OSCClass con Arduino UNO e Arduino WiFi Shield?

Salve a tutti questo é il mio primo post.
Sto lavorando ad un progetto di domotica.
Il problema che mi ha spinto a creare questo topic, come descritto nel titolo, riguarda l'utilizzo della libreria OSCClass in uno sketch per Arduino UNO con modulo WiFi. Infatti in seguito ad un errore di compilazione, ho indagato un pò, ed ora ho il dubbio se OSCClass e il wifi shield siano compatibili. Cioé mi sembra come se ci voglia per forza la Ethernet shield per poter usare la OSCclass.

Lo sketch é il seguente:

#include <SPI.h>  //libreria per la communicazione fra shield WiFi e Arduino UNO
#include <OSCClass.h> //libreria OSC
#include <WiFi.h> //libreria WiFi
#include <WiFiClient.h>
#include <WiFiServer.h>
#include <WiFiUdp.h>

int pinLedA=2;  //primo led su pin 2
int pinLedB=3;  //secondo led su pin 3
int pinLedC=4;  //terzo led su pin 4

OSCMessage recMes; //oggetto di classe OSCMessage che registrerà i messaggi inviati tramite OSC

OSCClass osc(&recMes); //istanza della classe OSC

char ssid[] = "SSID";     //  your network SSID (name) 
char pass[] = "PASS";    // your network password
int status = WL_IDLE_STATUS;     // the Wifi radio's status
int  serverPort  = 10000;

char *topAddress="butt"; //le applicazioni OSC sono caratterizzate da una gerarchia dei componenti grafici, qui viene descritta
char *subAddress[8]={ "ledA" , "ledB" , "ledC","ledAB" , "ledBC" , "ledAC","fadeA" , "fadeB"};

void setup() {
  WiFi.begin(ssid, pass); //metodo begin della classe Wifi, permette di passargli dei paramentri di una rete (WPA in questo caso) e di connetervi
  osc.begin(serverPort); //la porta sulla quale comunicheranno Arduino ed il dispositivo che invierà il segnale OSC
  
  pinMode(pinLedA, OUTPUT); //i pin corrispondenti ai led vengono settati su OUTPUT mode
  pinMode(pinLedB, OUTPUT); // "
  pinMode(pinLedC, OUTPUT); // "
  
  digitalWrite(pinLedA, LOW);  //i led vengono fatti partire da spenti
  digitalWrite(pinLedB, LOW);  //LED OFF
  digitalWrite(pinLedC, LOW);  //LED OFF
  
  osc.flush();
  
}

 

void loop() {
  
     if ( osc.available() ) {  // la condizione dell'if verifica se OSC contiene un messaggio
           
           if( !strcmp( recMes.getAddress(0) , topAddress ) ){  // questo secondo if ha una condizione che verifica se il livello piu alto del messaggio (cioé il livello 0) corrisponde a quello settato per "topAddress"
               
               int val= getIntValue(&recMes);
               
                if( !strcmp( recMes.getAddress(1) , subAddress[0] ) )  { digitalWrite(pinLedA, val); } //questo gruppo di if verifica quale subAdress é stata selezionata, e fa accendere il led corrispondente 
                if( !strcmp( recMes.getAddress(1) , subAddress[1] ) )  { digitalWrite(pinLedB, val); }
                if( !strcmp( recMes.getAddress(1) , subAddress[2] ) )  { digitalWrite(pinLedC, val); }
                
                if( !strcmp( recMes.getAddress(1) , subAddress[3] ) )  { digitalWrite(pinLedA, val); digitalWrite(pinLedB, val); } //questo gruppo di if é simile a quello di prima, ma fa accendere i led a due a due.
                if( !strcmp( recMes.getAddress(1) , subAddress[4] ) )  { digitalWrite(pinLedB, val); digitalWrite(pinLedC, val); }
                if( !strcmp( recMes.getAddress(1) , subAddress[5] ) )  { digitalWrite(pinLedA, val); digitalWrite(pinLedC, val); }
                
                               
           }
     } 
  }     
   
   
   //funzione per avere il prelievo del valore in integer

int getIntValue(OSCMessage *mes){
    switch( mes->getTypeTag(0) ){
        case 'i': { return mes->getArgInt(0); }
        break;
 
        case 'f':  { return int(mes->getArgFloat(0)); }
        break;
      }
}

e quando cerco di caricarlo, mi da questo errore:

Errore durante la compilazione

In file included from _controllo_3_pin.ino:2:
C:\Users\michele\Documents\Arduino\libraries\OSCClass/OSCClass.h:71:27: error: utility/w5100.h: No such file or directory
C:\Users\michele\Documents\Arduino\libraries\OSCClass/OSCClass.h:77:22: error: Ethernet.h: No such file or directory

Per concludere:
vorrei avere conferma del fatto di poter utilizzare o meno OSCClass con un wifi Shield;
se la risposta é negativa, conosco un'altra libreria di nome OSCuino, però anche quella dopo un po di ricerche pare che abbia bisogno necessariamente dell'ethernet shield;
se anche con Oscuino non si può utilizzare il wifi shield , come posso fare? a me serve necessariamente un modo per controllare con Android la mia scheda arduino tramite wifi.