Ciao a tutti...
Sto usando il NodeMcu con il modulino ESP8266.
Ho fatto uno sketch che mi crea un server con una pagina HTML, mi collego con lo smartphone e va tutto bene.
Mi sono accorto però che mi assiste un solo client alla volta, se volessi collegarmi con un altro smartphone o PC o Tablet non mi fa collegare e quindi non mi carica la pagina html, dovrei chiudere la pagina sul promo client e poi posso aprire con un altro smartphone o quant'altro.
C'è una funzione o una parte di codice che mi permette di avere la possibilità di avere il server che riesce a gestire più client alla volta? magari una decina insieme?
Ripeto sempre che questo è il forum di Arduino.cc dove si fornisce assistenza per problemi relativi a problematiche che coinvolgono Arduino, i suoi collegamenti e la sua programmazione.
Quindi, ben vengano domande che riguardano moduli ESP8266 collegati ad Arduino, ma domande per moduli che nulla hanno a che vedere con Arduino, prodotti da altri produttori che hanno semplicemente utilizzato/sfruttato l'IDE per sviluppare un loro "core" e facilitare la programmazione delle loro schede, come le schede NodeMcu, sarebbe bene che venissero poste al produttore. Grazie.
Guglielmo
P.S.: Ciò non toglie che, se qualcuno avesse la risposta al tuo quesito, sicuramente cercherà di aiutarti
Beh questo problema lo avresti anche usando una Ethernet shield su Arduino. Il fatto è che su queste MCU tu NON hai un vero web server, che generalmente ha già il supporto per più processi e sessioni, ma che il suo funzionamento viene simulato da codice.
Questo significa che dovresti implementare non solo la possibilità di gestire varie connessioni, ma che devi poter distinguere ogni sessione e relativo ambiente/richieste, magari anche cookie e quant'altro, il tutto contemporaneamente (o quasi) con una MCU che NON ha multitasking, e soprattutto, anche volendo impegnarci a realizzare qualcosa di simile, richiederebbe molta CPU e molta RAM.
Ora, direi che se la tua pagina non richiede login o sessioni ed è, diciamo, semplice (es. mostra solamente lo stato dei sensori), per gestire più connessioni contemporanee ti serve un oggetto server ed un array di oggetti client (dimensionato in base al numero massimo di client che vuoi ammettere/gestire).
Prova a vedere QUI troverai un esempio che forse dovrebbe aiutarti.