Mega 2560 & Ethernet W5100

Salve, sono un nuovo iscritto appassionato di questo mondo ma con un problema che non riesco a risolvere.
Ho installato su una scheda mega 2560 uno shield equipaggiato con il chip W5100 come da foto allegata.
Ho testato il tutto con gli sketch DhcpAddressPrinter e WebServer con successo, ma appena inserisco una Micro SD da 128 Mb e rilancio lo sketch non funziona più.
Se è utile saperlo l’ho formattata in Fat 16.

Ho fatto delle ricerche ed ho provato i vari suggerimenti che ho trovato mettendo in HIGH e LOW i pin 4, 10 e 53 ma senza risultati.
Sicuramente sbaglio in qualche passaggio.
Vorrei far convivere la Ethernet con la SD per memorizzarci delle pagine web.

Un ringraziamento ed un saluto a tutti.

Mauro

Non ho mai provato una 128 su arduino (che ho un po' di dubbi), e nemmeno ho mai formattato in fat16. Però di sicuro io avrei (prima di iscrivermi a un forum) provato una 4/8/16Gb, formattato in fat16/fat32, cercato un po' su google sui tipi di SD ... SDHC, SDXC, classi di scrittura 2/4/6/10, fatto diverse prove,.... ecc, poi alla disperata chiedo lumi. Che prove hai fatto?

ciao

@mapidev: essendo il tuo primo post, ti chiederei cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con attenzione il REGOLAMENTO ... Grazie.

Guglielmo

Non vedo perché non dovrebbe funzionare una 128 MB. In ogni caso, se vuoi provare il mio webserver, quello che vuoi fare è abbastanza testato: https://github.com/SukkoPera/Sukkino/tree/sd_support.

Lo usa anche @As_Needed qua del forum per una stazione meteo pubblica, e per ora pare persino reggere ;).

Non vedo perché non dovrebbe funzionare una 128 MB

Tu hai la certezza che funzioni una 128 ? ce l'hai mai messa?

quello che vuoi fare è abbastanza testato

A me sembra che il suo problema venga prima di fare un web server, ma che sia quello di scrivere e leggere su una SD, prima si risolve quello poi si va a fare un webserver ... o mi sbaglio?

Vuoi rifilare un software ancora " under construction" .... "abbastanza testato" non basta, come nemmeno "non vedo perchè" ... ci vogliono prove fisiche per poterlo accertare ... io ho dubbi e tu? Possono le variabili int della SD.h gestire il numero dei cluster-settori di una 128Gb, può gestire un filesystem su una SD di quelle dimensioni? Io ho qualche dubbio ... ma non mi porrei il problema, poichè è inutile usare una SD così grande con arduino, sarebbe di gran lunga sprecata. Poi tanto non risponderà ne a me ne a te :)

Svegliato male oggi eh, @pablos?

[u]SD:[/u] Non ho nessuna prova da fornire in merito al supporto, tu ne hai in merito al NON supporto? Personalmente ho usato solo una paio di SD su Arduino, senza problemi, e da quel che leggo in giro i problemi di compatibilità si hanno abbastanza a caso, con vari esemplari, non c'è un particolare modello o una particolare capacità che non funzionano. Ci sono report di gente che usa SD da 128 MB (che non sono GB, per la cronaca, per quanto il discorso valga comunque) con successo, così come di altri che invece hanno problemi. Io volevo solo dire che non ci sono motivi per cui A PRIORI non possa funzionare, bisogna testare.

[u]Webbino:[/u] Se permetti, se "abbastanza testato" basti o meno lo deciderà mapidev. Non mi pare che abbia detto che ci deve controllare i parametri di funzionamento di un reattore nucleare, dunque proporglielo (mica ho minacciato di sterminargli la famiglia se non lo usa) non mi sembra una cosa così azzardata. In ogni caso, come dice la stessa licenza sotto cui è distribuito, Webbino è sviluppato in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Infatti, Webbino è software libero (quindi open source) e gratuito, più gente lo usa e riporta (o fixa in prima persona) bug, più il software migliorerà e più la comunità ne trarrà giovamento. Io personalmente non ci guadagno niente, per cui il tuo astio mi sembra davvero fuori posto. Non è abbastanza stabile? Miglioralo!

Ma figurati se c'è astio .. esagerato :) mapidev si è appena presentato ... vediamo cosa ci dice

Grazie per lo vostre celeri risposte.
Ho provveduto a scrivere una mia presentazione nell’apposito thread come giustamente richiesta da Guglielmo.
Si in effetti il problema che principalmente devo risolvere è quello di riuscire a gestire la SD.
Ho cercato molto in rete ed ho trovato tanti articoli e risposte di forum a questo quesito, ma tutti riportano la stessa cosa che poi è scritta sulle schede tecniche che si trovano sul sito arduino.cc.
Ho letto più di una volta che il limite è di 2 Gb e quindi pensavo che una SD da 128 Mb non avesse problemi, in ogni caso proverò con una da 2 Gb e vediamo come va.

Una domanda per Pablos: quando dici “classi di scrittura 2/4/6/10” che intendi?

Ho fatto una prova più specifica:

  1. senza la sd inserita ho caricato lo sketch DhcpAddressPrinter ed ha funzionato correttamente stampando l’ip assegnato
  2. inserita la sd e ricaricato lo stesso sketch non stampa più l’ip perchè ho visto che si blocca al comando “Ethernet.begin(mac)”

Nota per Pablos:
la SD con cui ho fatto le prove è da 128 Mb e non 128 Gb

Grazie per l’offerta di SukkoPera, penso che appena risolto il problema della SD proverò il tuo progetto che sicuramente sarà meglio del mio che lo devo ancora fare :-))

Una domanda che c’entra poco in questo thread ma per me importante, ho spuntato l’opzione “Notify me of replies.” ma non mi è arrivata nessuna notifica.

Un saluto a tutti e buon lavoro

Va bene, io comunque suggerivo di provare Webbino essenzialmente perché uno degli esempi inclusi legge la pagine da SD (senza bisogno di alcuna modifica, fatta salva l'abilitazione del supporto SD) e sia io, sia As_Needed, lo usiamo con successo con il tuo stesso hardware. Per cui se lo provi puoi avere una vaga certezza che, se funziona stai sbagliando qualcosa nel tuo software o, se non funziona, che probabilmente è la SD a non essere compatibile.

Ok mi sembra un'ottima idea, se riesco questa sera o al più tardi domani lo provo e vi faccio sapere come è andata. Ci sentiamo presto :)

Ah 128 mb :o !!! In effetti l'avevi scritto... Pensavo non esistessero più. No comunque non usare i 2gb avrai problemi comunque... 4-8-16 SDHC . Non 2 Gb

Buonasera a tutti. Ho preso una nuova sdhc da 4 Gb ma purtroppo il problema non si è risolto ::) Quello che non capisco è che basti solo inserirla per non far funzionare più la parte ethernet oltre che non si riesce a gestire la sd. Capisco che potrebbe non funzionare la sd ma addirittura bloccare tutto il resto mi sembra strano. Sto continuando a provare ma senza cognizione di causa purtroppo.

Messaggio per SukkoPera Vorrei provare ad usare il tuo progetto, ma non riesco a capire come caricare le librerie.

Ho trovato notizie che dicono di metterle nella cartella "APPDIR/libraries" ma non vedo le altre di default, in ogni caso ho provato ma senza risultato. Ho provato ha caricarle tramite l'opzione "sketch-#include libreria-aggiungi libreria da file" ma anche cosi non va, come devo fare? Grazie

Nella cartella dove salvi gli sketch dovresti avere una cartella libraries, se non c’è creala. Scarica il branch sd_support di Webbino e metti la cartella lì dentro. Modifica il file webbino_config.h per abilitare il supporto SD, istruzioni nel file stesso.

Devi installare anche la libreria PString: PString | Arduiniana

Fatto tutto, chiudi e riapri l’IDE.

Buonasera a tutti, problema risolto, mi sono fatto cambiare scheda, ora pare funziona tutto :-) Grazie per la vostra collaborazione a presto