Decodificare telecomando a 433mhz

Salve a tutti. Ho un problema con l'rx di arduino.
Ho acquistato QUESTO tx ed rx, e ho collegato l'rx (quello rettangolare) vcc a 5v - gnd a gnd e data (pin accanto a vcc) al pin 2 di arduino uno (ho provato anche su mega sui pin 18 19 20 21 2 3 ma senza risultato.
Ho provato la libreria RCSwitch e virtualWire aprendo gli esempi, ma sulla seriale non leggo nulla.
Al momento il modulo tx è staccato, perchè voglio solamente captare il segnale e decodificarlo.
Ho provato con un telecomando della BFT (cancello) e FAAC entrambi a 433 (c'è scritto sul telecomando)
al momento mi ritrovo con arduino uno e solo l'RX connesso.
Ho provato a mettere un filo per l'antenna, ad un cm del ricevitore a premere il telecomando...
Cosa sbaglio? internet l'ho girato in largo e lungo ormai da due giorni. Questa è l'ultima spiaggia.
Grazie

Ho ordinato anche io quel componente per fare delle letture di un sensore thermo hygro della oregon scientific, mi arriva tra una settimana +/- ... quando faccio qualche esperimento potrò magari aiutarti

devi usare un pin timer e l'interrupt

Se non metti lo sketch però .....

Lo sketch è il seguente:

/*
Example for receiving

GitHub - sui77/rc-switch: Arduino lib to operate 433/315Mhz devices like power outlet sockets.

If you want to visualize a telegram copy the raw data and
paste it into rc-switch raw data viewer
*/

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

void setup() {
Serial.begin(9600);
mySwitch.enableReceive(0); // Receiver on inerrupt 0 => that is pin #2
}

void loop() {
if (mySwitch.available()) {
output(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength(), mySwitch.getReceivedDelay(), mySwitch.getReceivedRawdata(),mySwitch.getReceivedProtocol());
mySwitch.resetAvailable();
}
}

Questo codice è il simpleRecive_advanced della libreria rcswitch.
Ho provato anche quello della virtualwire ma sulla seriale non mi appare nulla. Ieri su github, nella pagina appartenente alla libreria rcswitch leggo che non tutti i telecomandi sono compatibili. Adesso mi spiego ...ma ne ho provati 3-4. Può essere che sono cosi sfigato?
In teoria quel modulo tx ed rx serve per far comunicare due arduini utilizzando il suo tx(quello che ti arriva a casa quando compri l'rx)... quindi se devi inviare dati direttamente che estrapoli da arduino va più che bene, ma per decodificare un 433 non credo proprio, a meno che non sei moooolto fortunato ad avere un telecomando con chipset compatibile. Spero di essermi spiegato bene.

per decodificare un 433 non credo proprio, a meno che non sei moooolto fortunato ad avere un telecomando con chipset compatibile

Credo di non aver capito la risposta, possiedi lo stesso shield che ho io, che mi serve per catturare qualsiasi cosa arriva su 433.00 Mhz, mentre tu con la stessa scheda cerchi di decodificare due telecomandi che lavorano a 433.92 Mhz?

mi sfugge qualcosa forse ... parliamone :slight_smile: :slight_smile:

salve rox, ti posso confermare ciò che hai letto, e cioè che non tutti i telecomandi sono compatibili.
il fatto che non riesci a ricevere il telecomando dipende dal tipo di decodifica che fa la libreria che stai utilizzando. i moduli di per se possono ricevere benissimo ogni telecomando.
per prima cosa ti consiglio di verificare che il telecomando non sia "rolling code" altrimenti non hai speranza.
poi potresti aprire uno dei telecomandi che hai a disposizione e vedere che integrato monta. da qui (cercando e leggendo il datasheet) puoi risalire al tipo di codifica.
anche io sto sperimentando con i telecomandi apricancello. per telecomandi vecchiotti che hanno una codifica a 12bit ho trovato questa libreria che funziona bene:
http://forum.arduino.cc/index.php?topic=186882.0http://forum.arduino.cc/index.php?topic=186882.0

c'è anche un'altra libreria per i telecomandi 433, si chiama mi pare "RF Remote".
poi, se proprio non riesci a ricevere, ti consigliio questi telecomandi, molto economici e funzionano benissimo con la RCSwitch.
http://www.ebay.it/itm/281175850984?_trksid=p2060353.m2749.l2648&ssPageName=STRK%3AMEBIDX%3AIT

Ma infatti lo scopo del tutto è ricavare il treno di bit 00101010101010000010101111...a me non interessa trovare librerie per il suo utilizzo. Me la farò io se necessario

ovvio pablos che lo scopo è quello.
il fatto è che io con la virtualwire non riesco a ricevere nulla, pur provando con diversi tipi di telecomando.
poi ho trovato la pappina pronta ed ho smesso di indagare :-*

perchè anche tu hai problemi?

No. Non ho problemi non ho ancora i componenti. Ma da quanto leggo dovrei ricevere 32 bit dei quali 12 sono la temperatura, 12 bit umidità e il restanti 8 dovrebbero essere la decodifica del canale ma non sono certo finché non ho le cose sottomano. Quello che non ho compreso è perché mi viene detto che non mi servirà a nulla se non ho un chipset compatibile, io sto solo sondando l'etere su una precisa frequenza perchè non dovrebbe funzionare? ... oh magari ho capito male io :slight_smile:

Nel caso di roxdragon siamo un passo avanti, seguendo una logica di procedura iniziale, non mi preuccuperei da subito a decodificare il reale codice bit trasmesso tramite librerie, visto che non ricevo nulla inizierei a eliminare la libreria cercando di capire se esiste o no una trasmissione, una volta che ho stabilito che esiste una comunicazione, ovvero che ricevo qualcosa anche di incomprensibile, allora posso pensare di comprenderne il linguaggio.

Qui ci troviamo nel caso dove non si riceve nulla ... è colpa delle connessioni? è colpa delle librerie? è colpa di un malfunzionamento delle schede? è colpa delle frequenze tx 433.92 e rx 433.00?
Dal mio punto di vista, per capirne la causa bisogna buttare tutto e ricominciare da 0 limitandosi a leggere solo il pin RX di arduino in modo elementare per poi procedere al passo sucessivo e decidere cosa fare.

Si, ho provato alla fine anche con un arduino uno ma non va. La seriale è sempre vuota.

@pablos Comunque si hai capito bene vorrei decodificare un telecomando a 433 però appunto ho questo problema.

Scusate una cosa, ma in questo articolo : http://www.ebay.it/itm/281175850984?_trksid=p2060353.m2749.l2648&ssPageName=STRK%3AMEBIDX%3AIT che avete postato, c'è messo , compatibile faac bft ecc.. non capisco se è rolling code... o ad apprendimento?

  • Domanda stupida (?)
    Se acquistassi quel telecomando, (faccio l'autoapprendimento al mio bft) e poi provo a decodificarlo con arduino non sarebbe una buona idea? visto che avete detto che quello funziona sicuro con arduino? Secondo me se si vuole conoscere la VERA codifica del proprio cancello,porta o ciò che sia bisogna fare così.
  • Acquistare un telecomando con chipset compatibile a RCSwitch
  • Fare l'autoapprendimento in modo che il nuovo telecomando memorizzi i codici.
  • Decodificare in raw con arduino
  • Giocare con la codifica :smiley:

PS nel frattempo vi posto la info che vi dicevo delle incompatibilità del chipset:

Info
Send RC codes

Use your Arduino to operate remote radio controlled devices. This will most likely work with all popular low cost power outlet sockets.

All you need is a Arduino, a 315/433MHz AM transmitter (find out where to get one or hack your existing remote control) and one or more devices with a SC5262 / SC5272, HX2262 / HX2272, PT2262 / PT2272, EV1527, RT1527, FP1527 or HS1527 chipset. Also supports Intertechno outlets.

Receive and decode RC codes

Find out what codes your remote is sending. Use your remote to control your Arduino.

All you need is a Arduino, a 315/433MHz AM receiver (altough there is no instruction yet, yes it is possible to hack an existing device) and a remote hand set.

roxdragon:
Si, ho provato alla fine anche con un arduino uno ma non va. La seriale è sempre vuota.

cosa intendi per seriale? il serial monitor dell'IDE dell'esempio di rc-switch o stai leggendo i dati raw dal ricevitore?
i telecomandi sono ad apprendimento.

visto che avete detto che quello funziona sicuro con arduino?

no, ho detto che quel telecomando è compatibile con rc-switch.
con arduino sono tutti compatibili, basta avere la libreria giusta per decodificarli (o scriversela).

pablos:
Quello che non ho compreso è perché mi viene detto che non mi servirà a nulla se non ho un chipset compatibile, io sto solo sondando l'etere su una precisa frequenza perchè non dovrebbe funzionare? ... oh magari ho capito male io :slight_smile:

il discorso del chipset riguarda esclusivamente la compatibilità tra telecomando e libreria utilizzata per la decodifica, in questo caso rc-switch.
il modulo di per se è un semplice ricevitore sui 433, di suo non fa alcuna decodifica, per cui puoi ricevere di tutto. la decodifica va fatta via sw.
quello che sta riportando roxdragon è scritto nella descrizione della lib. rc-swiitch, non è riferito al modulo in generale.

Mi sa che qui parlammu e nu ce capimmu

pablos:
Mi sa che qui parlammu e nu ce capimmu

ho avuto anche io questa impressione ;D

pablos:
Qui ci troviamo nel caso dove non si riceve nulla ... è colpa delle connessioni? è colpa delle librerie? è colpa di un malfunzionamento delle schede? è colpa delle frequenze tx 433.92 e rx 433.00?
Dal mio punto di vista, per capirne la causa bisogna buttare tutto e ricominciare da 0 limitandosi a leggere solo il pin RX di arduino in modo elementare per poi procedere al passo sucessivo e decidere cosa fare.

se non ho male inteso, roxdragon sta usando la libreria rc-switch, dalla quale dice di non ricevere nulla. per mia esperienza la cosa più probabile è un 'incompatibilità tra telecomando e libreria. ho provato a lungo tale libreria, e ti posso dire che se il telecomando non ha una codifica supportata dalla lib, sembra che il modulo non riceva nulla (i dati raw non vengono passati dalla libreria) perchè il serial monitor non mostra nulla. credo sia questa la condizione in cui si trova l'utente, ma potrei anche aver frainteso.
nel tuo caso il discorso del chipset e compatibilità non c'entra niente, visto che non devi interfacciarti con un telecomando e comunque hai intenzione di usare la virtualwire (che riceverebbe anche dati raw).

spero di essermi capito :slight_smile:

Sei riuscito poi a leggere qualsiasi bit premendo il telecomando?

Io, intendevo dire di escludere la lib RCSwitch per vedere se effettivamente quello shield legge qualcosa, perchè ho l'impressione che con quei telecomandi serva un ricevitore 434 Mhz

Esattamente si hai capito bene. Comunque non va nemmeno con la virtualwire..
Farò altre prove e vi faccio sapere..

anch'io ho avuto problemi con la virtualwire.
nei prossimi giorni ci tornerò sopra e farò altre prove, al momento non mi è possibile.

hai provato l'altra libreria che ti ho linkato?
hai guardato che integrato monta il tuo telecomando?