geekcookies / geektalks

Quattro chiacchiere tra gli ascoltatori del podcast
8 stars 1 forks source link

ORVIBO Allone WIWO-R1 Smart WIFI e python #12

Open CalibroZero opened 8 years ago

CalibroZero commented 8 years ago

Sono nuovamente quì a chiedere il vostro aiuto. Come ho postato la settimana scorsa, mi sono regalato questo aggeggino cinese ORVIBO ALLONE che promette (e fino ad ora mantiene) la possibilità di pilotare, da smartphone, tutti quei dispositivi dotati di una porta ad infrarossi.

L'idea era quella di automatizzare mediante .. Domoticz l'accensione e lo spegnimento del condizionatore e di qualche altro oggettino presente nella stanza.

Devo ammettere che funziona molto bene da APP (ios/android) ma quando voglio far lavorare mediante script, così da poterlo inserire in domoticz, le cose si complicano.

Letteratura su internet in merito alla gestione del'oggettino medianti sistemi di scripting,se ne trova, ma quasi tutta fà riferimento ad un progetto ormai accantonato di nome Ninja Block (Support for this repo will soon cease, because the Ninja Block platform faces an uncertain future).

Girovagando pensavo di aver trovato la soluzione facile ai miei problemi mediante questo script in python che sembrava proprio fare al caso mio https://github.com/cherezov/orvibo

Lo script riconosce senza problemi il device ORVIBO e permette il learning dei vari pulsanti del/dei telecomando/i in un file, ma dopo aver eseguito l'accensione/spegnimento via irda del device collegato non c'è più verso di farlo funzionare mediante script (e da questo il termine non lineare usto nel tweet)

come scrivevo in una altra issue, purtroppo non ho molto tempo da dedicarci, ma se a qualcuno viene qualche idea in proposito, ve ne sarei profondamente grati.

Grazie ragazzi per il vostro lavoro.

cesco78 commented 8 years ago

Ma non esiste un supporto ufficiale della casa di produzione?

kidpixo commented 8 years ago

Ciao, grazie per la segnalazione, sembra molto carino questo gingillo, magari quando approfondisci la cosa e ne fai un progetto organico ne possiamo parlare in trasmissione! Non conosco l'oggetto in questione, ma dando un occhiata al repository ho trovato queste issues :

Su che piattaforma fai girare lo script?

Su github ci sono diversi progetti basati su orbivo in diversi linguaggi, se non risolvi provane qualche altro Search:orvibo

@cesco78 imagino che non supportino scripting , troppo da hacker...

CalibroZero commented 8 years ago

Grazie ragazzi, perchè siete sempre puntuali e ricchi di consigli.

Allora ho provato su tre raspberry b+ 2 e 3 e proprio in questo momento, visto la pulce che mi avete messo nel'orecchio ho appena provato dal mac.

Il risultato non cambia. la prima volta funziona e poi cessa di funzionare. Ho anche provato a fare un copy del file.. nella speranza che fosse solo un problema di corruzione dello stesso , ma nulla.

@cesco78 il produttore non rilascia nulla, e in un post, che ora non trovo diceva esplicitamente che non avrebbe rilasciato api (letto troppo tardi).

Tutto quello che si trova on line è dato dal reverse engineering e di parecchie catture via wireshark. Paradossalmente la presa comandata.. tale S20 dello stesso produttore, ha più supporto.

cesco78 commented 8 years ago

Brutte notizie allora, dubito che ne uscirai facilmente se è tutto dato da reverse engineering. Sono caduto nella stessa trappola dopo essermi fatto regalare la lampada smart Natuled, si controlla solo dall'app e non ci sono nè ora ne mai le api. Ho desistito.

ccxx72 commented 8 years ago

Troppo Off-Topic Mi autocensuro :-D

kidpixo commented 8 years ago

Uhm se é una soluzione fatta "a mano" allora o provi a sporcarti le mani per capire che cosa non va ( io metterei una linea di debuger qui orvibo.py:linea 153) per vedere che succede e debuggare la riposta.

La cosa migliore sarebbe con ipython , il debugger é davvero migliore, ma con python dovrebbe andare anche , vedi pdb – Interactive Debugger

Ma se ho capito, riesci a fare almeno una volta on/off via script e poi non funziona piú o lo fai col telecomando? Nel secondo caso mi fa pensare che magari il telecomando ha qualche chiave attaccata (tipo MAC address) che lo script non simula, ma magari mi sbaglio.

Come ultima opzione, documenta bene i passi che fai per riprodurre il problema, le versioni di tutto quello che hai usato ( python , mac OS e vari Raspbian) e apri una issue da loro Issues · cherezov/orvibo.

Ultimissimo step, prova il branch cherezov/orvibo at keep_connection che ha una funzione

+    def keep_connection(self):
+        """ Keeps connection to the Orvibe device.
+        """

non implementata nel branch master di cherezov/orvibo

In bocca al lupo!

CalibroZero commented 8 years ago

Grazie ragazzi, Ho provato il branch che mi ha segnalato kidpixo ma continua non funzionare correttamente, funziona la prima volta e poi più niente.

Come diceva cesco78, il reverse spesso non da buoni risultati, ho comunque scritto a cherezov autore dello script per capire se è solo un problema che affligge me o più diffuso.

Fatte queste precisazioni, e visto che non riesco a venirne fuori.. mio malgrado pensavo di affidarmi ad un hardware differente, che sembra fare al caso mio.. e questa volta con API ben documentate e open source.

Il prodotto in questione è IRKit http://getirkit.com/en/ , voi cosa ne pensate ?

ccxx72 commented 8 years ago

La domanda e' : perche' ? Cioe' , perche' cercare una roba da interfacciare con API e cose varie quando con 5 euro potresti risolvere ? Vedi un pochino qui http://blog.mrossi.com/ Io l'intenzione di fare una cosa del genere l'avevo da un po', scommetto pure @cesco78, per cui potremmo anche buttarci. Siccome al @cesco78 piace il D1 mini si potrebbe anche usare quello, ma suppongo di poter fare qualcosa anche con un ESP-01 e un DS18B20, anche se non vorrei per questioni di espansione. Tu @CalibroZero cosa ne pensi ?

PS : era quello che volevo gia' scrivere nel post autocensurato :-D

kidpixo commented 8 years ago

Mi hai levato le parole di bocca, io ho trovato lo stesso progetto fatto col Raspberry How to turn your Raspberry Pi into an infrared remote control .