Gestire la SD WiFi Toshiba FlashAir W-04 con Ubuntu 16.04 LTS

Questo articolo lo dedico a tutti coloro che cercano informazioni su come poter gestire al meglio la SD Toshiba (che vedete qui a lato, con diversi formati di memoria), che solitamente viene utilizzata nelle macchine fotografiche professionali (quelle sprovviste di WiFi a bordo) al fine di poter gestire velocemente e facilmente il download dei propri file.

Io ne ho comperate un paio, sfruttando un’occasione vista su Amazon, prendendo la versione W-04 da 32 GB. Seguendo dei consigli di amici fotografi, proverò ad utilizzarle al meglio sulle Canon 600D e Canon 7D (per quest’ultima assieme all’adattatore per CF ad alta velocità).

Mi è bastato fare una veloce ricerca in rete, per trovare subito il blog di bernaerts.dyndns.org e capire come gestire questa card SD WiFi con Nautilus.

Desidero tradurre questo suo articolo, in modo da rendere più semplici le operazioni ai visitatori italiani appassionati di fotografia e di software libero.

La card Toshiba FlashAir è un dispositivo WiFi molto versatile. Al suo interno include un Access Point WiFi e un server HTTP interno per permettere di gestire il suo contenuto con un qualsiasi browser. Toshiba fornisce diversi client per Android e Windows, ma di solito, Linux viene sempre dimenticato.

Per gestire direttamente i file tramite i dispositivi Android e iOS, è sufficiente installare l’applicazione sul proprio smartphone, tramite Google Play. Dopo un breve setup, avrete disponibili sul vostro smartphone le foto scattate dalla vostra fotocamera.

Questo articolo spiega come configurare un computer con S.O. Linux per gestire il contenuto della card FlashAir card con il file manager Nautilus.

NOTA: La connessione WiFi tra la card SD e il vostro computer, avviene come ogni altro dispositivo di rete. Il SSID della vostra card sarà simile a ‘flashair_xxxxxxxxxxxx‘ (dove le x rappresentano l’indirizzo MAC della scheda), mentre la password di iniziale da inserire è “12345678“. 
Una volta connessi alla vostra card, potrete modificare questi dati, agendo direttamente via web dal PC dall’indirizzo http://flashair/ , oppure tramite l’App installata sul vostro smartphone.
Trovate le informazioni di dettaglio (in inglese), a questo link.

È necessario configurare una specifica directory sul vostro computer che diventi la copia identica on-line / off-line della vostra card SD. Quando connetterete per la prima volta la vostra SD, la maggior parte dei file che verranno caricati in questa prima sessione potrebbero essere solo delle miniature, che se in gran numero potrebbero mandare in sovraccarico temporaneo la vostra connessione WiFi. Ma non abbiate timore, accade solo la prima volta!
Da questo momento avrete la possibilità di scaricare facilmente e velocemente il contenuto delle vostre immagini e/o dei vostri video con un semplice click destro, attraverso il file manager Nautilus.
Quando avrete disconnesso la vostra card FlashAir, tutti i file scaricati in quella cartella rimarranno sul vostro computer. Da questo momento, ogni qual volta riconnetterete la vostra FlashAir, questa aggiornerà solo il suo contenuto.
Quanto trovate descritto è stato testato con un S.O. Ubuntu 16.04 LTS con D.E. Gnome, ma dovrebbe essere possibile applicarlo senza problemi anche alle altre distribuzioni Linux più recenti…

 

1. Principio di base

Il principio di base è quello di creare una directory /media/flashair nel computer e mantenerla sincronizzata con il contenuto della card FlashAir, ogni volta che la card verrà connessa in rete.

Tutti credono che basti solamente  connettere o disconnettere la card FlashAir attraverso il WiFi affinché il processo di sincronizzazione abbia inizio automaticamente, ma non è così.
Il processo di sincronizzazione non può essere gestito come una completa sincronizzazione in real time, in quanto la connessione WiFi non è altrettanto veloce.

Questo però può essere facilmente risolto, in modo da rendere agevole l’uso quando desideriamo cercare dei file all’interno del contenuto della card:

  • Il contenuto della directory verrà aggiornato in real-time ogni volta che voi entrerete nella cartella
  • I file verranno recuperati come anteprime, per ridurre la loro dimensione
  • Potrete scaricare i file semplicemente agendo con l’azione del tasto destro del vostro mouse sull’anteprima visualizzata, tramite il file manager Nautilus

Quando il file verrà visualizzato come anteprima, verrà indicata la sua dimensione per informare quanto pesante sarà il suo scaricamento in locale.

Ci sono alcune azioni disponibili nel menu visualizzato cliccando con il tasto destro del mouse, all’interno del file manager Nautilus:

  • Scarica : scarica il file dalla card FlashAir e rimpiazza l’anteprima
  • Cancella : elimina il file sulla card FlashAir
  • Carica : invia il file sulla card FlashAir

In questo modo, potete accedere in locale alla vostra card FlashAir card e decidere di caricare o scaricare qualsiasi  file voi desideriate…

Quando vi sposterete di cartella in Nautilus, il contenuto delle directory si aggiornerà automaticamente inserendo le anteprime mancanti provenienti dalla card FlashAir.

Quando sarete off-line, essendo la directory locale una copia esatta della card, qualsiasi file scaricato in precedenza resterà disponibile sul vostro PC.

Lo stato di on-line e off-line viene rilevato automaticamente attraverso la connessione del vostro WiFi con la rete della card FlashAir.

Il contenuto della directory locale della card FlashAir è accessibile attraverso il menu  Preferiti di Nautilus che visualizzerà lo stato della connessione WiFi (connessodisconnesso).

 

2. Informazioni tecniche

La sincronizzazione tra Nautilus e la card FlashAir viene gestita da 3 script principali.

2.1. Script Network Detection

Lo script di rilevamento della rete viene chiamato ogni volta che voi connettete/disconnettete il vostro computer dalla rete.

Questo fa si che venga attivato il sistema per capire lo stato di online & offline della card attraverso la disponibilità della sua rete.

La rete WiFi della card FlashAir viene rilevato mediante il suo SSID, che inizia sempre per  FlashAir_

Quando la rete della card FlashAir è connessa, questo farà avviare lo script  Daemon Synchronisation.

La stessa rete ‘uccide‘ questo script quando la rete della card FlashAir viene disconnessa.

 

2.2. Script Daemon Synchronisation

Questo demone dello script è responsabile della sincronizzazione dei contenuti tra il vostro computer e la card FlashAir.

Questo semplice script viene caricato quando la card FlashAir risulta on-line e avvia un evento inotifywait nella struttura locale delle directory.

Attraverso inotify, avvia la sincronizzazione del contenuto delle directory ogni volta che voi vi spostate di directory con il programma Nautilus.

Grazie a questo script, ogni subdirectory che voi andrete a visualizzare verrà sincronizzata dallo script  Worker Synchronisation.

 

2.3. Script Worker Synchronisation

Lo script Worker Synchronisation si occupa di gestire principalmente i task di sincronizzazione principali.

Viene attivato dallo script Daemon Synchronisation e da alcune azioni di Nautilus.

Gestisce completamente il processo di comunicazione con il server HTTP di FlashAir:

  • connessione della rete FlashAir
  • disconnessione della rete FlashAir
  • Aggiornamento del contenuto delle directory
  • Scaricamento dei file
  • Importazione dei file
  • Eliminazione dei file

Ogni volta che avvengono delle comunicazioni tra il vostro computer e la vostra card FlashAir, verrà visualizzata una notifica in background simile a questa.

Durante la Connessione di rete di FlashAir, lo script effettua alcune azioni:

  1. rileva il tipo di accesso alla card (Read Only o Read/Write)
  2. dichiara l’indirizzo IP della card FlashAir in /etc/hosts
  3. aggiorna lo stato dei Preferiti di Nautilus
  4. attiva le azioni di Nautilus rispettando il tipo di accesso alla card

Directory content update viene attivato da un evento inotify. Consiste in alcune azioni:

  1. legge la lista dei file nelle directory della card FlashAir
  2. preleva gli attributi dei nuovi file (tipo, dimensione, …)
  3. genera le anteprime in base agli attributi
  4. crea nuove sotto-directory

Il downloadupload e la eliminazione dei file viene attivata da alcune tipiche azioni di Nautilus, effettuate sulle anteprime o sui file.

Queste azioni di Nautilus vengono dichiarate durante il tempo di connessione / disconnessione, come di seguito:

  • sono disponibili solo sulla directory della struttura locale
  • sono disponibili solo quando la card FlashAir è connessa
  • il download è possibile solo per le anteprime dei file sulla card FlashAir
  • l’upload è possibile solamente per i file locali se la card risulta scrivibile (upload permesso)
  • l’eliminazione dei file sulla card FlashAir è disponibile solo se la card risulta scrivibile (upload permesso)

 

3. Accesso read/write

Per impostazione predefinita, la vostra card FlashAir è accessibile attraverso la rete WiFi in sola modalità Read Only.

In questo modo avrete la possibilità di salvare tutte le vostre foto, ma non avrete la possibilità di poterle cancellare dalla card o inserire foto sulla card lavorando dal PC.

Se desiderate abilitare l’accesso alla vostra card FlashAir in modalità Read/Write, dovrete prima inserire la vostra card in un lettore SD e aggiungere il valore UPLOAD=1 al file di configurazione SD_WLAN/CONFIG .

[Vendor] …
UPLOAD=1
 

Successivamente a questa modifica, dalla prossima connessione della card SD avrete abilitato l’accesso in modalità Read/Write.

 

4. Configurazione

È possibile configurare altri aspetti e comportamenti del processo di sincronizzazione della card FlashAir,  attraverso il file  /etc/flashair.conf

I parametri principali sono:

  • flashair-mount – Path dove montare il contenuto della card FlashAir  (/media/flashair per default)
  • flashair-filelist – file di cache presente in ogni subdirectory proprietaria dei contenuti (.filelist per default)

Potete anche configurare le conferme visualizzate a display inbase alle azioni effettuate::

  • confirm-download – Dialogo di conferma visualizzato ogni volta che voi effettuate il download di alcuni file dalla card FlashAir
  • confirm-upload – Dialogo di conferma visualizzato ogni volta che voi effettuate l’upload di alcuni file nella card FlashAir
  • confirm-delete – Dialogo di conferma visualizzato ogni volta che voi effettuate la cancellazione di alcuni file dalla card FlashAir

 

5. Installazione

Tutti i file richiesti, sono disponibili presso questo  repository GitHub :

  • lo script network detection
  • lo script daemon
  • lo script worker
  • i file Nautilus actions.desktop
  • icone

Gli script richiedono i pacchetti inotify-toolsimagemagickcurl e yad, per poter essere installati.

Come pre-requisito è richiesta l’installazione dell’ambiente di notifica in   background che viene utilizzato dai tool di sincronizzazione di FlashAir. Sono sempre disponibili dallo stesso repository GitHub.

Dal Terminale, digitate:
# wget https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/desktop/desktop-display-install.sh
# chmod +x desktop-display-install.sh
# ./desktop-display-install.sh

Potete ora installare tutti gli ambienti di sincronizzazione di FlashAir attraverso uno script di installazione completo. Questo script controlla tutte le dipendenze, installa tutti i file e li configura in modo completo.

Dal Terminale, digitate:
# wget https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/FlashAir/FlashAir-install.sh
# chmod +x FlashAir-install.sh
# ./FlashAir-install.sh

Ora sarà necessario terminare la sessione corrente e uscire, per rientrare nuovamente ed avere le modifiche apportate.

Successivamente poi potrete:

  1. connettere la vostra card di rete FlashAir
  2. visualizzare il contenuto della vostra card attraverso il file manager Nautilus

 

Spero che quanto avete trovato descritto vi sia stato d’aiuto.

Questo articolo è stato pubblicato come lo vedete scritto, senza dare alcuna garanzia di funzionamento sul vostro sistema operativo Linux che state utilizzando.
Se credete che questo articolo (quello in inglese, che qui è stato tradotto oggi da me…) richieda un approfondimento e/o delle modifiche, o semplicemente credete che vi abbia risparmiato del tempo e abbia risolto il vostro problema o i vostri dubbi, fatemelo sapere scrivendo a nicolas.bernaerts@laposte.net. Grazie !

Trovate l’articolo originale, a questo link

Grazie per aver visitato il mio blog, lasciate un vostro commento a questo post...