Campainha sem fio - (Raspberry PI e Amazon Dash): 4 etapas (com imagens)
Campainha sem fio - (Raspberry PI e Amazon Dash): 4 etapas (com imagens)
Anonim
Image
Image
Campainha sem fio - (Raspberry PI e Amazon Dash)
Campainha sem fio - (Raspberry PI e Amazon Dash)

O que isso faz? (veja o vídeo)

Quando o botão é pressionado, o Raspberry detecta um novo registro do dispositivo na rede sem fio. Dessa forma, ele pode reconhecer o botão que está sendo pressionado e passar as informações sobre o fato para o seu celular (ou dispositivo de sua escolha)

Neste projeto, você verá como transformar o Amazon Dash em uma campainha sem fio (link do tutorial em vídeo na última etapa)

Coisas que você precisa para este projeto:

Amazon Dash Button - A Amazon oferece botões WIFI nos EUA que podem ser configurados para ignorar a funcionalidade da Amazon e fazer com que funcione como um botão sem fio ou um switch.

Tasker - aplicativo Android, que permite automatizar as tarefas do dia a dia, usaremos este framework para exibir uma notificação no celular

AutoRemote - plugin Tasker que permite a comunicação entre o celular e o raspberry

Raspberry Pi - um microcomputador que fará a varredura da rede em busca de botões WIFI pressionados - deve ser conectado à rede (via WIFI ou LAN)

Etapa 1: Configurando o botão WIFI

Configurando o botão WIFI
Configurando o botão WIFI
Configurando o botão WIFI
Configurando o botão WIFI
Configurando o botão WIFI
Configurando o botão WIFI

Conecte o botão ao WIFI

  1. Pressione o botão por 5 segundos para inserir o dispositivo em um modo de transmissão WIFI.
  2. Abra o seu celular (ou qualquer dispositivo wi-fi) e procure o Amazon Configure Me
  3. Uma vez conectado ao dispositivo, abra um navegador da web e navegue até 192.168.0.1
  4. Selecione sua rede e digite sua senha
  5. Seu botão agora está pronto para balançar

Etapa 2: Configurando Raspberry PI

Configurando o Raspberry PI
Configurando o Raspberry PI
Configurando o Raspberry PI
Configurando o Raspberry PI

Procurando o MAC de seus botões

Certifique-se de ter as seguintes bibliotecas instaladas:

sudo apt-get install tcpdump

sudo apt-get install arp-scan

sudo pip3 install scapy-python3

Use o script Doorbell.py para descobrir o MAC do seu botão - veja os comentários no script.

O script foi atualizado e modificado para Python 3

Configurando o script responsável por interceptar o pressionamento de botões

Precisaremos modificar o script doorbell.py, abri-lo e substituir SEU MAC DE BOTÃO VAI AQUI pelo MAC salvo na etapa acima. Procure SUA CHAVE AR VAI AQUI - aqui é onde as chaves Autoremote serão coladas. Mostrarei como obter as chaves na próxima etapa.

Se você tiver os novos botões JK29LP - consulte esta postagem para obter o script python3 correto:

Etapa 3: AutoRemote e Tasker

AutoRemote e Tasker
AutoRemote e Tasker

AutoRemote

Abra o AR no seu celular e vá para o seu URL pessoal (algo como https://goo.gl/xXxXx). A barra de endereço conterá a chave de que precisamos para a campainha.py - ela começará com:

autoremotejoaomgcd.appspot.com/?key=YOUR_KE…

Copie a chave (tudo após o símbolo =) e substitua SUA CHAVE AR VAI AQUI no script.

Tasker

Vamos criar um perfil. Nossa condição é um EVENTO-plugin- Autoremote e defina o filtro para AmazonGreen (ou qualquer mensagem que você usou em doorbell.py)

Crie uma tarefa que exibirá uma notificação. Alerta aberto - notifique e digite suas informações. Esta mensagem será exibida em sua tela. O perfil é fornecido como um arquivo de projeto.

Etapa 4: Fim das dicas

Image
Image
Concurso Hack Your Day
Concurso Hack Your Day

Seu Raspberry está pronto para interceptar os pressionamentos de botão. Ele permite um toque a cada 6 a 10 segundos, e vários botões também podem ser pressionados. Enquanto o script estiver em execução - você pode receber as notificações (considere executá-lo no início)

O script deve exibir o aviso abaixo durante a operação:

AVISO: Nenhuma rota encontrada para o destino IPv6:: (nenhuma rota padrão?)

Você pode retirar o rótulo padrão usando uma ferramenta afiada e colá-lo de outra maneira ou usá-lo como um estêncil para gerar o seu próprio. (Ver foto)

Se você quiser executar este script na inicialização, use o método rc.local, coloque sleep 10 antes da linha com seu script para permitir a execução.

Tutorial em vídeo completo no meu canal do YouTube: Campainha sem fio

Concurso Hack Your Day
Concurso Hack Your Day

Segundo prêmio no concurso Hack Your Day