Webbino - Server web "dinamico" per Arduino

Il 101 usa lo stesso chip della MKR, quindi direi che al momento non funziona. Il vecchio invece dovrebbe andare.

Aspetta, il 101 è uno shield che monti dove ti pare, anche su una UNO e quindio potrebbe andare, ma non lo posseggo e non posso provare ... ... il vecchio invece usa la vecchia libreria WiFi.h e non so se lo hai implementato.

Mi sa che ... te stai a incarta' co' tutte 'ste schede :D :D :D

Guglielmo

Sìììì, è implementato! Guarda i #define:

/* Network device selection: please enable *only one* of the following,
 * corresponding to the network device you will be using
 */
#define WEBBINO_USE_WIZ5100
//~ #define WEBBINO_USE_WIZ5500
//~ #define WEBBINO_USE_ENC28J60
//~ #define WEBBINO_USE_ESP8266
//~ #define WEBBINO_USE_ESP8266_STANDALONE
//~ #define WEBBINO_USE_WIFI                             <-----
//~ #define WEBBINO_USE_WIFI101
//~ #define WEBBINO_USE_DIGIFI

Il 101 è uno shield, ok, ma usa lo stesso chip wifi della MKR, tanto che la libreria di interfaccia è la stessa (WiFi101.h). Il vecchio usa un'altra libreria (WiFi.h).

SukkoPera: Sìììì, è implementato! Guarda i #define:

Ohibò ... m'era totalmente sfuggito ... faccio sicuramente la prova :D :D :D

SukkoPera: Il 101 è uno shield, ok, ma usa lo stesso chip wifi della MKR, tanto che la libreria di interfaccia è la stessa (WiFi101.h). Il vecchio usa un'altra libreria (WiFi.h).

Si, ma il problema con la MKR1000 mica deriva dal WiFi, deriva dal fatto che usi progmem su una MCU ARM. Lo shield invece lo monti sulla MCU che vuoi ... sulla UNO hai un AVR e non ci sono problemi di progmem.

Guglielmo

Ah sì, in effetti mi sa checchairaggione :D.

Grazie mille sukkopera! Rimango in attesa, ma quanto tempo occorre? Così per farmi un idea. E poi immagino che dovrò cancellare la vecchia libreria e caricare tutto nuovo vero? E ricompilare con la nuova libreria

Come già detto prima, io ti consiglio intanto di aggiornare alla 0.9.0 che trovi sul Library Manager. Non risolve il tuo problema, ma intanto dovrai fare delle modifiche da cui non potrai sottrarti (niente di troppo complesso in ogni caso).

Quando avrò implementato il buffering (spero entro prossima settimana), non dovrai cambiare più niente se sarai già allineato alla 0.9.0.

Grazie Mille Sukkopera, allora faccio questo passaggio sicuramente prima di tutto. ma dimmi una cosa, nel caso quindi dovessi collegare l'arcuino con uno shield wifi il problema (lentezza incredibile caricamento pagina da remoto o da rete locale dopo il ponte wifi) non si presenterebbe?

Veramente ho detto che il problema è proprio dovuto al wifi...

@gpb01: Sei mica riucito a testare i due shield wifi? Io nel frattempo ho committato sul master il fix per la MKR1000. Se riesci a provare anche quella... ;)

SukkoPera: io nel frattempo ho committato sul master il fix per la MKR1000. Se riesci a provare anche quella... ;)

  1. messo #define WEBBINO_USE_WIFI101
  2. compilato per MKR1000, compilazione OK
  3. lanciato esempio LedControl (dopo aver cambiato il numero del pin del led in LED_BUILTIN, così funziona su tutte le schede).
  4. Sul monitor seriale nessun segno di vita ... 4.1 ... se si vuole che la seriale funzioni bene tocca aggiungere:
while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
 }
  1. ricompilato e sul monitor seriale ricevuto:
Webbino 0.9.0
Trying to get an IP address through DHCP

... e null altro :( ... si blocca li così.

Appena posso provo con la vecchia WiFi (che è l'uinca che ho).

Guglielmo

  1. Non posso mettere LED_BUILTIN di default perché su una Uno con Ethernet Shield il pin 13 non è ovviamente utilizzabile :(.

  2. Buono a sapersi, non ci avevo pensato, lo aggiungerò in tutti gli esempi.

  3. Moooolto strano, visto che fin lì dovrebbe praticamente essere codice "standard". Domanda idiota: hai messo il tuo SSID/password, sì?

Le credenziali le ho messe solo qui :

#elif defined (WEBBINO_USE_WIFI) || defined (WEBBINO_USE_WIFI101) || \
      defined (WEBBINO_USE_ESP8266_STANDALONE)
    #include 

    // Wi-Fi parameters
    #define WIFI_SSID        "ssid"
    #define WIFI_PASSWORD    "password"

    NetworkInterfaceWiFi netint;

Debbo dirti che averle in più punti confonde le idee ed uno si deve andare a leggere le #ifdef ... mettile SEMPRE definite in testa, tanto dove ti servono così ce l'hai, dove non ti servono le ignori !

Guglielmo

... anzi, come già ti avevo suggerito di far diventare il file di configurazione un file "locale", mettici dentro anche queste due voci e tutto è in un solo punto e per ogni singolo programma.

Guglielmo

Ma infatti è giusto metterle solo lì :).

Sì, appena ho tempo lavorerò per quella cosa del file di configurazione.

Ho appena provato con una UNO ed il vecchio WiFi shield (quello basato su AT32UC3) decommentando:

define WEBBINO_USE_WIFI

e ...

Webbino 0.9.0
Trying to get an IP address through DHCP
DHCP configuration done:
- IP: 192.168.1.172
- Netmask: 255.255.255.0
- Default Gateway: 192.168.1.1

... provo ad accedere dal browser all'indirizzo 192.168.1.172 e ... la richiesta rimane li appesa senza che appaia nulla :(

Guglielmo

P.S.: Sicuro che non debbo decomenntare altro ? La porta ho visto che l'hai rimessa a 80 quindi ... ::)

Ho attivato il debug e chiamato di nuovo la pagina ...

Webbino 0.9.0
Trying to get an IP address through DHCP
FW Version: 1.1.0
Connecting to AP: xxxxxxxxxx
Joined AP, local IP address: 192.168.1.172
DHCP configuration done:
- IP: 192.168.1.172
- Netmask: 255.255.255.0
- Default Gateway: 192.168.1.1
Pages available in flash memory:
0. /index.html
Tags available:
0. ST_ON_CHK
1. ST_OFF_CHK
2. WEBBINO_VER
New client
Client disconnected
New client
Client disconnected
New client
Client disconnected
New client
Client disconnected
New client
Client disconnected

... e così via all'infinito

Guglielmo

Il ping funziona?

zoomx: Il ping funziona?

Si, si, funziona ... è un problema nascosto altrove ... considera che NON credo che Sukkopera abbia mai potuto provare la parte NON Ethernet ... ::)

Guglielmo

L'ho provata solo su ESP. Fammi pensare... :)