Yún – Utilizziamo una scheda SD

luca 12/11/2013 22

Lavorando con Arduino Yun, è consigliato l’uso di una memoria SD esterna per ospitare i propri files: questo a causa del limitato numero di scritture della memoria interna. In questo tutorial vedremo come fare…

Per prima cosa inseriamo la nostra SD card nello slot di Arduino Yun:

Colleghiamoci ora allo Yun in SSH: se abbiamo un PC Windows, possiamo utilizzare il programma gratuito PuTTY. Inseriamo l’indirizzo IP della scheda e selezioniamo SSH come protocollo:

Inseriamo root come account e la password del nostro Yun:

Digitiamo il comando dmesg che visualizza tutti i messaggi di sistema. Se la SD card è stata correttamente riconosciuta, saranno presenti dei messaggi simili a quelli dello screenshot. Il “nome” della scheda in Linino sarà sda1:

Dobbiamo ora creare due cartelle all’interno della SD: la cartella arduino e, al suo interno, la cartella www; possiamo usare il comando mkdir. Infine creiamo un file contenente la scritta Hello World:

Smontiamo la scheda SD (umount /dev/sda1), quindi estraiamo e reinseriamo la scheda. Possiamo ora visualizzarne il contenuto tramite un browser web, all’indirizzo http://yun_ip/sd; ad esempio per visualizzare il file creato in precedenza:

Come funziona

Il webserver uHTTPd ha come document root (ovvero come cartella “principale”, dove è memorizzata l’interfaccia web di Yun) la cartella /www. Quando viene inserita una scheda SD, se questa contiene il path /arduino/www, viene creato automaticamente un link simbolico all’interno della /www:

WinSCP

Possiamo gestire i files presenti in Arduino Yun, inclusi quelli memorizzati sulla memoria SD, anche tramite una comoda interfaccia grafica. Per Windows è disponibile gratuitamente l’applicativo WinSCP. Inseriamo sempre l’indirizzo IP di Yun e selezioniamo come protocollo SCP:

Nella finestra di sinistra, sarà possibile navigare all’interno delle varie cartelle:

22 Comments »

  1. Mauro 15/11/2013 at 13:56 - Reply

    Grande Luca !!!
    bellissimo tutorial come sempre.
    Mi è venuta voglia di provare subito la Yun con la SD Card.

    Mauro

  2. Hartmut Knauff 05/04/2014 at 11:56 - Reply

    Grazie mille Luca, molto soccorrevole!
    Hartmut

  3. Andrea 20/06/2014 at 09:10 - Reply

    Ciao e grazie per i tuoi tutorial (grazie anche ai tuoi Mauro!)
    Ho visto che è possibile effettuare un extroot di Linino su partizione SD, ovviamente, dopo aver fatto estroot, se la sd non è inserita la yun non partirà con il Linino contenuto in essa, ma partirà ugualmente? Voglio dire, facendo questo extroot è come far partire un pc da chiavetta USB, quando togli la chiavetta il pc si avvia comunque dal SO sul disco fisso… funziona così anche con la Yun oppure senza SD è morta? Posso ritornare indietro facendo un reset della yun (mettendo l’immagine nella SD e dal pannello web di yun resettare)?

    • luca 22/06/2014 at 12:25 - Reply

      Ciao Andrea,

      leggendo la teoria di extroot su cui si basa tutto, sembra che ci sia cmq un processo di failover che – se non trova il filesystem sulla sd – fa il boot da quello “locale”… non ho però provato quindi non posso confermartelo.

  4. Timothy Porter 05/09/2014 at 21:26 - Reply

    When I upload the sketch over Wi-Fi, I get the error “Warning: Problem accessing board folder /www/sd” in the IDE and the symlink is never created. Any ideas why this could be happening?

  5. Aaron 09/09/2014 at 17:21 - Reply

    Wonderful post! Thank you.

  6. Bruce Kellett 15/11/2014 at 20:52 - Reply

    Great job!!! I really like how well winscp works. Now back to work

  7. Gary 09/01/2015 at 16:53 - Reply

    HI Everything went well until I tried the UMOUNT command, which would not work. I reformatted the SD drive and tried again. Now there are SDA1 and SDA2 showing up with dnesg command ??? Very confused at this point. . .Gary

  8. Steve 13/02/2015 at 03:17 - Reply

    Hello and thank you for your help. I followed your instructions and made /mnt/sda1/arduino/www/hello.txt however when I load a webpage http://192.168.240.1/sd/hello.txt I get a message saying “No such file or directory”. I can see this file in both /mnt/sda1/… and /mnt/sd/…
    Can you offer any additional advice as this is very frustrating.
    Thanks.

    • luca 13/02/2015 at 21:26 - Reply

      Hi Steve,

      it could be that Arduino didn’t automatically create the symlink… try removing the SD and inserting again: you should find a symlink in /www (so basically if you type cd /www/sd you should jump to the content of your SD card)

  9. gennaro 19/02/2015 at 17:33 - Reply

    ciao luca,
    stavo seguendo questo tuo tutorial e mi sono bloccato al punto in cui visualizzo la scheda alla linea sda: sda1 con il comando dmesg.
    Nella foto successiva tu crei una cartella che sei già all’interno della scheda ovvero /mnt/sda1# come ci sei entrato ? se provo a fare cd mnt mi dice “-ash: cd: can’t cd to mnt ”

    Grazie

    • luca 24/02/2015 at 20:57 - Reply

      Ciao Gennaro, probabilmente quando dai quel comando non sei nella “root”, prova con cd /mnt/sda1 e dovresti riuscire ad entrare nella cartella per poi proseguire con il comando mkdir arduino etc…

  10. Alfred 20/05/2015 at 20:52 - Reply

    Ciao Luca,
    Io non sono in grado di visualizzare il nome della SD, con il comando dmesg mi viene scritto
    “[…]sda: ”
    con scritto nulla. Come mai?

    • luca 21/05/2015 at 09:01 - Reply

      Ciao Alfred

      fai così, togli la SD, reinseriscila e posta le ultime righe del dmesg

  11. Alfred 04/06/2015 at 18:08 - Reply

    Ciao Luca,
    Ieri sera mi andava il programma e riuscivo a lavorarci, oggi invece ho fatto un reset del Wi-Fi e non mi manda più le istruzioni da una pagina web, perchè quando clicco su un bottone mi da questo errore:
    “Failed to load resource: the server responded with a status of 403 (OK)”
    Ma non capisco il perchè dato che ieri sera andava perfettamente.

  12. Stefano 03/09/2015 at 00:00 - Reply

    Ciao Luca,
    prima di tutto ti faccio i miei complimenti per il post.
    Ho un problema: quando inserisco la uSD in Arduino YUN non mi viene creato automaticamente il link nel folder /www ma lo devo creare “a mano” con WinSCP. Ho provato ad inserire anche una chiavetta USB Flash ma ho lo stesso problema. Come posso fare in modo che venga creato automaticamente il link inserendo la uSD?

    • luca 06/09/2015 at 09:58 - Reply

      Ciao Stefano, perché funzioni, sulla SD deve già essere presente (anche vuota) la struttura di cartelle /arduino/www come spiegato ad esempio qui.

  13. Stefano 07/09/2015 at 00:35 - Reply

    Ciao Luca,
    grazie della risposta.
    OK sviluppo lo schema delle cartelle.

  14. Andrea 20/11/2015 at 00:36 - Reply

    Ciao Luca, ho lo stesso problema di Steve. Ho provato a rimuovere e reinserire la scheda ma in /www mi ritrovo solo il file hello.txt non vedo alcun link.
    Mi potresti aiutare a superare questo step?

  15. Pellumb 19/12/2015 at 13:01 - Reply

    hi Luca, thank you for the great tutorial. However, when trying to log in arduino yun,I’m getting: Command ‘cd “/www”‘
    failed with return code 0 and error message
    -ash: groups: not found.

    any tips how to get out of this knot will be greatly appreciated

    • luca 22/12/2015 at 11:37 - Reply

      Hi! Could you try to reflash the Linux image?

  16. Pellumb Bara 09/09/2016 at 10:39 - Reply

    Luca sorry for the delay! I did and it worked on the browser just fine. Did complete my “clock” project, and all tested fine but at the very same day temboo had automatically changed the key (because it was the end of the month – they say!!!:) I was left in dark!

    Your site is an awesome learning resource.

    Have you written any stuff on Linux / or can you please recommend a good Linux book?

    all the best ,,

    Pellumb

Leave A Response »

Questo sito usa i cookie per poterti offrire una migliore esperienza di navigazione maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi