Ou melhor dizendo - Tentando desvendar Controle Remoto RF.

Depois que consegui fazer funcionar o Analisador Lógico com o Arduino, tenho feito várias verificações que sempre quis fazer. Fiz uma análise de controle remoto usando a Luz infravermelha e agora estou fazendo uma análise mais apurada de controle remoto que usa Rádio-frequência RF).

Tutorial - Analisador Lógico com Arduino:

http://labdegaragem.com/profiles/blogs/tutorial-analisador-l-gico-c...

Decodificando Controle Remoto infravermelho:

http://labdegaragem.com/profiles/blogs/6223006:BlogPost:315534

Já li em vários Blogs do Lab de Garagem, que muitos desejam usar o Controle Remoto RF com o Arduino.

Para a minha decepção e acredito que  muitos se decepcionarão também, os controles remotos atuais são criptografados.Por isso, alguns já tentaram usar e falharam.

Para entender melhor, fiz uma análise do Controle Remoto do fabricante Rossi. (aciona a abertura e fechamento de portões de garagem). Esse controle usa o chip HCS201 da Microchip:

http://ww1.microchip.com/downloads/en/DeviceDoc/41098c.pdf

Possui dois botões (chaves) S0 e S1. A frequência da portadora é de 433,92 MHz. Usa uma pilha de 12V.

O link da Rossi portões, com os circuitos de controle de portões:

http://www.rossiportoes.com.br/produtos/120-central-de-comando.html

Lendo o data sheet do chip HCS201 da Microchip, percebi que a tecnologia usada é bem segura.

Ele é bem versátil - cada chip tem um número de série programável de 28 bits e uma chave de criptografia de 64 bits (acredito que é impossível descobri-la) . Essas informações são gravadas pelo fabricante do controle remoto (no caso a Rossi).

Cada transmissão tem um código diferente, por isso, se o circuito receptor não souber a chave criptográfica do fabricante, não haverá rotina de decodificação que permita identificar qual código foi transmitido. Fiz vários testes e comprovei ! Pressionei várias vezes o botão S1 e a cada momento o trem de pulsos era de um formato diferente.

Seria possível usar o controle remoto, desde que usasse um chip programado pelo desenvolvedor.

Assim a rotina de decodificação usaria a chave gravada no chip.

Vejam que interessante as várias telas capturadas usando o Analisador Lógico com o Arduíno.

Minhas medições foram no saída TX OUT do chip HCS201. Alimentei o controle remoto com 5V para não danificar o Arduino.

Essa captura foi feita pressionando o botão S1 - taxa de amostragem de 5 KHz :

Vejam que tem 12 pulsos de preambulo para sincronização :

Taxa de amostragem de 10 Khz.

Os 12 pulsos de preambulo usam a largura de pulso de 780 us:

(taxa de amostragem 50 KHz) 

Para decodificar os bits 0 e bit 1 :

Esse é o formato do Bit 0 : (taxa de amostragem 50 KHz) 

E esse é o formato do Bit 1 : (taxa de amostragem 50 KHz) 

Exibições: 87365

Responder esta

Respostas a este tópico

Ola, meu nome é Sanilo, tudo bom? Sou novo no ramo da eletrônica, estou estudando e gostaria saber se voce pode me esclarecer algumas dúvidas:

Em relação ao circuito integrado HT6P20B...Me corrija por favor se eu estiver errado:

Cada pulso na chave D0 o trem de pulso sempre sera o mesmo?

Cada pulso na chave D1 o trem de pulso sempre sera o mesmo?

Em relação o primeiro bit serve para sicronismo entre emissor e receptor?

Os 22 bits de endereçamento serve para diferenciar um controle remoto de outro? E evitar o acionamento de outros circuitos?

Os 2 bits de dados (D1 e D0) = ( 0 1 ) 
serve para abrir e fechar o portão por exemplo, ligado/desligado?

O que é período anti-code?

No caso do outro circuito que é mais seguro.Que é o chip HCS201 da Microchip, quer dizer que dentro dele há varios diferentes tipos de codigos ("trems de pulsos"),e se é possivel contar quantos codigos("trems de pulsos") há dentro dele?

O que é O resistor do oscilador?

Sanilo bom dia , respondendo as suas questões :

Cada pulso na chave D0 o trem de pulso sempre sera o mesmo?

Sim, o trem de pulsos sempre será o mesmo.

Cada pulso na chave D1 o trem de pulso sempre sera o mesmo?

Sim, o trem de pulsos não é criptografado como no outro chip. Sempre será o mesmo.

Em relação o primeiro bit serve para sincronismo entre emissor e receptor?

Quem sincroniza é o receptor. O transmissor envia os pulsos.

Assim como :Transmissor -  Estou enviando mensagem! - e o receptor pensa com ele mesmo: opa, tem alguém transmitindo algo. Vou verificar se é para mim.

Os 22 bits de endereçamento serve para diferenciar um controle remoto de outro? E evitar o acionamento de outros circuitos?

Sim, os 22 bits são de endereçamento. Se o receptor identificar o mesmo endereçamento que foi transmitido, ele executará a ação requisitada.

Os 2 bits de dados (D1 e D0) = ( 0 1 ) 
serve para abrir e fechar o portão por exemplo, ligado/desligado?

Sim, eles que selecionam a ação a ser executada. No caso do portão, se receber um bit e o mesmo estiver fechado, ele se abrirá. Se o portão estiver aberto, ele se fechará. Um bit para cada dispositivo. No meu controle, um botão D0 para abrir/fechar o portão e outro bit D1 para ligar/desligar o alarme. 

O que é período anti-code?

Periodo anti-code são alguns pulsos de verificação. Para comprovar que todo o trem de pulsos foi recebido.

No caso do outro circuito que é mais seguro.Que é o chip HCS201 da Microchip, quer dizer que dentro dele há varios diferentes tipos de codigos ("trems de pulsos"),e se é possivel contar quantos codigos("trems de pulsos") há dentro dele?

No caso do HCS201, existe criptografia dos dados transmitidos. Cada sequência de pulsos é diferente da outra. Para um mesmo botão, várias sequências diferentes são enviadas cada vez que o botão é acionado. Dentro do receptor, existe um algoritmo (segredo) que identifica os bits. Se conseguir descobrir como ele faz isso, você ficará famoso!

O que é O resistor do oscilador?

Resistor de oscilador define a frequencia do oscilador.

Parabéns pelo forum e muito obrigado mesmo por responder, resposta rapida e bem completa, em relação ao ficar famoso acho que não tenho muito miolo ainda pra conseguir isso....kkkkkk....perguntei isso tudo porque estou tentando construir um circuito emissor e receptor, mais claro com segurança, algum tipo de criptografia, estou pensando em usar o HT12E e H12D mas pelo que eu vi e entendi tenho que aterrar os pinos dos endereços do emissor e do receptor, mais isso não me da segurança nenhuma? ou não é possivel implementar uma segurança? Ou posso por um microcontrolador e programar uma sequencia de pulsos nos pinos de endereços no emissor e que tambem de ao mesmo tempo a mesma sequencia no receptor, pensei nisso mais não sei se funciona ainda não tenho esses componentes ainda pra fazer esse teste, você tem alguma ideia sobre isso?

Olá josé tudo certo, fiz alguns testes com arduino e um controle de alarme que tenho com chip SCL1527 obtive os seguintes resultados da foto. E tenho algumas duvidas.

Os 332 microseconds que aparece ali na serial do arduino significa o tempo total que o emissor levou para enviar os bits para o receptor?

No caso do raw data, aqueles valores tem alguma unidade?

Posso saber o tempo entre os bits enviados?

Procure o data  sheet do chip e estude-o para entender o funcionamento.

Não conheço esse chip. 

http://www.sc-tech.cn/en/SCL1527.pdf

Faça a analise que fez, apertando outros botões, para comparar os resultados.

Mto bom !!!

Muito alem do tradicional estudo de bibliotecas prontas.

Sobre as tecnologias, muito poucos fabricantes hoje adotam os novos sistemas de segurança. Acontece que ela encarece e o publico não solicita. Solicita sim controles bonitos.. Mas alcance e seguranca nao sao itens priorizados pela maioria. Mesmo as melhores marcas tem versões com o HT6P, que são as mais instaladas, ja que o vendedor nem lembra de oferecer a outra.

Apenas os mais antigos ainda, aqueles onde vc tinha que cortar um jumper para programar, estão em desuso para novas instalações por serem de difícil programação. 

A abertura do portão por ladroes usando um gerador de códigos que eu saiba ainda não foi usada no Brasil, então podemos nos sentir seguros... Mas imagino que a falta de bibliotecas para esse padrão se deve ao fato de sermos um dos poucos países que ainda usa (visa preço e não qualidade) e ainda pelo fato de envolver segurança.

Imagina se alguém resolve fazer um gerador de códigos sequenciais e manda pra uma antena no telhado com um transmissor potente, alcançando alguns kms e abrindo todos os portões... Mesmo que leve uns dias, abre.

Eduardo, 

No caso dessa  tecnologia mais antiga  HT6P20 com código fixo - as possibilidades são infimas.

Imagine 2 elevado a 22 é igual a 4.194.304 combinações ! 

No caso do chip mais antigo ainda HT6026 pemitem 19.683 combinações ( 3 elevado a 9).

http://www.holtek.com/pdf/consumer/6026v110.pdf

O mais precário é o HT12E - 4096 combinações (2 elevado a 12)

http://www.holtek.com/pdf/consumer/2_12ev120.pdf

Mas Eduardo, nem o codificado  Rolling Code. esta livre desse gerador de códigos?

No tutorial diz o seguinte:

A tecnologia “Rolling Code” é bem sofisticada e não digo que é impossível, mas é pouco provável de se conseguir clonar.

 

Postagem adicionada a guia de Tutoriais: Artigos e Outros

Parabéns!!!

Obrigado , Marcelo.

É uma grande satisfação poder compartilhar conhecimento com os colegas do Lab.

Abraços 

Gustavo Murta

Olá amigos, primeiramente gostaria de parabenizar pela bela explicação disponibilizada, foi de grande utilidade para mim, porém estou com um probleminha e gostaria de saber se poderiam me ajudar. Consegui clonar o código do controle ppa tok do meu portão basculante corretamente, porém quando envio o código pelo emissor nada acontece, o portão simplesmente não abre. Quando coloco um receptor em outro arduino o código está chegando perfeitamente ao receptor, com address, button e lambda tudo perfeito, mas no receptor do portão aparentemente não chega, inclusive coloquei o emissor do lado do receptor do portão e nada aconteceu… o que será que está acontecendo? Será frequência levemente diferente ou algo assim?!

Esse controle PPA TOK usa a frequencia de 433 Mhz , não é?

Ele usa qual chip ? Se for o HCS201 é impossivel clona-lo.

E qual transmissor esta usando ? Envie um link da internet sobre o seu modelo.

Pode ser que exista alguma diferença de frequência sim.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço