Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Reti e LAN - Approccio alla programmazione per comunicazione con fotocamera wireless
Forum - Reti e LAN - Approccio alla programmazione per comunicazione con fotocamera wireless

Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 14:19
Venerdì, 22/07/2016
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 http://www.nikon.it/it_IT/product/digital-cameras/coolpix/ ...

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?


PM Quote
Avatar
GN (Member)
Guru


Messaggi: 770
Iscritto: 30/04/2011

Segnala al moderatore
Postato alle 15:29
Venerdì, 22/07/2016
Testo quotato

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 https://nmap.org/book/inst-windows.html). 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).


PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 15:43
Venerdì, 22/07/2016
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 :)


PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1453
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 1:28
Sabato, 23/07/2016
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.

PM Quote
Avatar
GN (Member)
Guru


Messaggi: 770
Iscritto: 30/04/2011

Segnala al moderatore
Postato alle 11:51
Sabato, 23/07/2016
Testo quotato

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 il 23/07/2016 alle 11:51


PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 11:28
Domenica, 24/07/2016
Testo quotato

Postato originariamente da GN:
Testo quotato

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 il 25/07/2016 alle 8:38


PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 11:31
Domenica, 24/07/2016
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?


PM Quote