Oppure

Loading
22/07/16 12:19
a_butta
Buongiorno a tutti,

ho da poco ricevuto in regalo una Nikon Coolpix S7000 che tra le tante funzionalità racchiude anche quella wifi. I dettagli tecnici qui nikon.it/it_IT/product/digital-cameras/coolpix/super-zoom-share/…

Il wifi permette di poter connettere la fotocamera ad uno smart-device per poter usarla in remoto e trasferire immagini. Il problema è il seguente: l'applicazione che permette di sfruttare tale funzionalità è distribuita solo per Android e iOS. Sto cercando in generale di poter far comunicare (per ora) il PC (con Windows 10) con la fotocamera, nell'auspicio un domani di poter scrivere qualche riga di codice che mi permetta di scaricare le immagini sul mio Lumia (non bramo di più :rofl:)

La fotocamera crea un hotspot con un certo SSID. Mi collego alla rete e attraverso un ipconfig trovo che il gateway predefinito presenta ip 192.168.1.1, mentre il mio indirizzo IP dovrebbe essere 192.168.1.2. Il ping su entrambi gli indirizzi va a buon fine. Ho provato a digitare l'indirizzo del gateway direttamente nel browser per vedere se supportasse qualche collegamento web, ma nulla: l'indirizzo non è raggiungibile. La mia domanda è: che approccio dovrei seguire secondo voi per comunicare con la fotocamera, interrogandola e accedendo magari al suo storage? Ho davvero poche info sulla fotocamera purtroppo. E' un lavoro che si può affrontare?
aaa
22/07/16 13:29
GN
Postato originariamente da a_butta:
Ho provato a digitare l'indirizzo del gateway direttamente nel browser per vedere se supportasse qualche collegamento web, ma nulla: l'indirizzo non è raggiungibile.

Se, come dicevi prima, riesci a pingarla sì che è raggiungibile; il fatto che da browser non ottieni nessuna risposta significa che non c'è niente in ascolto sulla porta 80 (default per l'HTTP). Evidentemente la comunicazione con l'app avviene con un altro protocollo (forse, argh, proprietario). Io prenderei in considerazione le seguenti strade:
1) Usa nmap per vedere che server ci sono in ascolto sulla fotocamera (qui trovi istruzioni per usarlo su Windows nmap.org/book/…). Magari, se sei fortunato, potrebbe esserci ad esempio un server FTP per trasferire i files.
2) Potresti installare un emulatore di Android per Windows (es. Genymotion, Andy), installare lì l'app e vedere se riesci a connetterla con la fotocamera. A questo punto potresti usare Wireshark per sniffare il traffico e capire in che modo si scambiano i dati.
Tieni comunque presente che fare reverse engineering di un protocollo custom potrebbe rivelarsi parecchio complicato (e forse viola i termini di utilizzo).
aaa
22/07/16 13:43
a_butta
Innanzitutto ti ringrazio molto per la risposta! Ho già provato con l'emulatore: Ho installato android x86 su VirtualBox, tuttavia non posso far "vedere" a VB la rete Wi-Fi e per questo l'app non é in grado di funzionare... Qualche suggerimento su questa strada?

Per la strada nmap non c'ho pensato! Ci provo e faccio sapere :)
aaa
22/07/16 23:28
TheDarkJuster
Esiste un nikon sdk ufficiale.
Non so dirti se è compatibile con la tua fotocamera o se può fare ciò che vuoi...

Comunque... Noto che la fotocamera è compatibile con NFC! Perché non usare quello? Il protocollo di comunicazione dovrebbe essere più semplice da debuggare con un Arduino... Più sarai fortunato più l'algoritmo usato sarà standard!
I inoltre alcuni windows phone hanno un device nfc integrato.
aaa
23/07/16 9:51
GN
Postato originariamente da a_butta:non posso far "vedere" a VB la rete Wi-Fi e per questo l'app non é in grado di funzionare

Io intendevo di lasciare connesso il PC (reale) direttamente all'hotspot della fotocamera e vedere se l'app sulla macchina virtuale, tramite la connessione dell'host, riesce a connettersi.
Comunque se c'è un sdk ufficiale compatibile direi che senza dubbio usare quello è la strada migliore.
Ultima modifica effettuata da GN 23/07/16 9:51
aaa
24/07/16 9:28
a_butta
Postato originariamente da GN:
Postato originariamente da a_butta:non posso far "vedere" a VB la rete Wi-Fi e per questo l'app non é in grado di funzionare

Io intendevo di lasciare connesso il PC (reale) direttamente all'hotspot della fotocamera e vedere se l'app sulla macchina virtuale, tramite la connessione dell'host, riesce a connettersi.
Comunque se c'è un sdk ufficiale compatibile direi che senza dubbio usare quello è la strada migliore.


Già provato ma niente. L'app non é un grado di vedere la rete wireless e per questo non riesce a connettersi alla fotocamera. Per quanto riguarda l'approccio NFC niente: Il mio lumia 630 (uno dei più scarsi 8-| ) non lo supporta.

Provato con NMAP, trovo due porte tcp, ma lo stato é UNKNOWN o CLOSED. Secondo voi potrei provare con una connessione tcp/ip?

Per la Nikon SDK, si ho visto che é disponibile ma, a parte la montagna di dati personali che dovrei fornire per scaricarlo, Nikon dichiara che non esiste nessuna guida ufficiale se non qualche FAQ (tra l'altro non so nemmeno se e come é integrabile con C# in ambiente VS)

Consigli? :asd:

Grazie comunque di tutto!

EDIT: Confermo che non è disponibile l'SDK per il mio modello di fotocamera
Ultima modifica effettuata da a_butta 25/07/16 6:38
aaa
24/07/16 9:31
a_butta
Ulteriore dettaglio: Premetto che sulle reti non sono molto ferrato, ma attraverso Wireshark ho visto che l'indirizzo 192.168.1.1 (fotocamera) manda pacchetti con protocollo DHCP all'indirizzo 192.168.1.2 (PC). può voler dire qualcosa? Posso sfruttarlo in qualche modo?
aaa