Espelho Inteligente com Alexa: Guia Completo de Instalação

Um espelho com funcionalidades inteligentes, que incorpora um Amazon Echo, oferece uma nova perspectiva de interação.

Se você já construiu um espelho inteligente, provavelmente já desfruta de acesso rápido a calendários, informações meteorológicas e notícias. Mas as possibilidades vão muito além! Através do software Magic Mirror, você pode expandir suas funcionalidades com a adição de módulos, como a integração da Alexa para controle por voz.

Esses módulos são desenvolvidos por terceiros, oferecendo uma vasta gama de opções. Desde funcionalidades práticas, como a Alexa ou detecção de presença através de câmeras ou sensores infravermelhos, até adições mais recreativas, como animações de neve ou informações de reprodução do Spotify.

Recomendamos o módulo mmm-awesome-alexa, pois aparenta ter suporte contínuo de um desenvolvedor ativo, embora existam outras alternativas de módulos Alexa para o software Magic Mirror.

Caso prefira integrar o Google Assistente, o Google oferece um tutorial detalhado sobre como instalá-lo em um Raspberry Pi, incluindo etapas, imagens e links para download. Embora existam módulos Magic Mirror para o Google Assistente, nossa análise constatou que são frequentemente problemáticos, causando travamentos ou sobrepondo as informações exibidas no espelho. Para uma configuração mais direta, sugerimos adicionar o Kit Google AIY e seguir seu tutorial específico.

O processo de instalação da maioria dos módulos envolve três etapas básicas:

1. Baixar o código do módulo a partir do GitHub.
2. Configurar as opções específicas do módulo.
3. Adicionar o módulo à configuração do espelho.

A complexidade das etapas dois e três varia de acordo com o módulo. A configuração da Alexa exige mais passos do que adicionar uma animação de neve, por exemplo. Este módulo Alexa em particular também requer a instalação de software adicional (dependências) antes do download do módulo.

Materiais Necessários

Este guia parte do princípio de que você já possui um espelho inteligente funcional. Caso ainda não o tenha, comece por essa etapa, levando em consideração os materiais adicionais listados aqui ao calcular custos e espaço.

Materiais:

  • Espelho Inteligente pronto
  • Microfone
  • Alto-falante

Para o microfone e alto-falante, sugerimos o Kit de Voz Google AIY. Por um custo acessível, você terá dificuldade em encontrar uma combinação microfone/alto-falante mais econômica. Não é obrigatório usar a caixa de papelão incluída; pode ser mais prático deixar os componentes expostos e conectar o microfone e o alto-falante externamente ao espelho.

Existe uma segunda versão do Kit de Voz Google AIY disponível, mas é mais cara e inclui um Raspberry Pi Zero, que não tem potência suficiente para executar os comandos de voz ou o software Magic Mirror. Portanto, essa opção não é recomendada.

Após conectar o alto-falante e o microfone, você estará pronto para instalar o módulo Alexa. Se estiver utilizando o kit AIY do Google, basta seguir o guia de montagem para conectar os componentes.

Instalando as Dependências do Módulo

Antes de baixar e configurar o mmm-awesome-alexa, é necessário instalar algumas dependências essenciais para o funcionamento do módulo. É sempre recomendável atualizar o Raspberry Pi antes de iniciar a instalação de qualquer software. No seu Raspberry Pi, execute o seguinte comando:

sudo apt update && sudo apt upgrade

Com o Raspberry Pi atualizado, execute os seguintes comandos individualmente:

sudo apt-get install sox libsox-fmt-all
sudo apt-get install swig3.0 python-pyaudio python3-pyaudio sox
pip install pyaudio
sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg libav-tools
sudo apt-get install libatlas-base-dev

Cada comando instala uma dependência, e todas são necessárias para o funcionamento adequado do módulo. Execute cada comando, espere o download e a instalação serem concluídos e, em seguida, execute o próximo comando.

Baixando o Código do Módulo

O primeiro passo para adicionar um módulo ao Magic Mirror é baixar seu código a partir do GitHub. Para isso, acesse o Raspberry Pi, abra o terminal e navegue até o diretório onde os módulos são armazenados. Em seguida, use um comando de download para obter o código do GitHub. Se tiver acesso ao shell, você pode realizar todo esse processo remotamente.

Após abrir o terminal, digite o seguinte comando:

cd ~/MagicMirror/modules

Este comando irá direcioná-lo para a pasta de módulos do Magic Mirror. Ao baixar um novo módulo, é importante estar nesse diretório para manter tudo organizado. O próximo passo é baixar o código do GitHub usando o seguinte comando:

git clone https://github.com/dolanmiu/MMM-awesome-alexa.git

Assim que o download for concluído, entre no diretório do módulo com o comando:

cd MMM-awesome-alexa

O módulo Alexa precisa de algumas dependências adicionais para funcionar corretamente. Execute o seguinte comando para instalá-las:

npm install --only=prod

Em seguida, entre na pasta node_modules que foi criada:

cd node_modules

Exclua a pasta snowboy que foi adicionada pelos comandos anteriores, pois precisaremos de uma versão mais recente:

rm -rf snowboy

Agora, faça o download da versão mais recente do snowboy utilizando o seguinte comando:

git clone https://github.com/Kitt-AI/snowboy.git

Antes de continuar, entre na pasta snowboy:

cd snowboy

Remova a pasta node_modules e instale algumas dependências adicionais. É fundamental que você permaneça na pasta snowboy durante essas etapas. Execute os seguintes comandos um por um:

rm -rf node_modules
npm install nan --save 
npm install [email protected] --save 
npm install 
npm run prepublish 
npm install --save-dev electron-rebuild 
npm install nan 
./node_modules/.bin/electron-rebuild

Com essas etapas concluídas, o módulo está totalmente baixado e instalado.

Configurando o Módulo Alexa

Agora que o módulo mmm-awesome-alexa está instalado, é necessário configurá-lo. Comece entrando no diretório raiz do módulo. No terminal, execute o comando:

cd ~/MagicMirror/modules/MMM-awesome-alexa

Este módulo Alexa possui um assistente de configuração que deve ser executado. Digite o seguinte no terminal:

npm run config-helper

Você verá um prompt solicitando um ID de cliente. Como você está configurando um dispositivo Echo personalizado, acesse o site de desenvolvedor da Alexa em seu navegador. Faça login com sua conta Amazon.

Após o login, clique no botão “Começar”. Como você está criando um dispositivo, clique em “Produtos” e depois em “Criar Produto”.

Na próxima tela, insira um nome e um ID para o seu produto. Sugerimos “Magic_Mirror_Alexa” para o nome e “SeuNome_MM_Alexa” para o ID. Selecione “Smart Home” para a categoria e habilite as opções de viva-voz e campo remoto. Responda “Não” a todas as perguntas que aparecerem e clique em “Avançar”.

Na tela de perfil de segurança, clique em “Criar novo perfil”. Use o mesmo nome do ID do produto para o perfil de segurança. Em seguida, digite uma descrição de sua preferência e clique em “Avançar”.

Confirme o contrato e clique em “Concluir”.

Clique no produto recém-criado e depois no perfil de segurança. Você verá o ID e o segredo do cliente.

No campo de entrada de URL de retorno permitido, digite:
https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse

Clique no botão “Adicionar”. Role para baixo e clique na caixa de atualização para finalizar a adição do URL.

No terminal, você verá um prompt solicitando o ID do cliente. Copie o ID do cliente do navegador, cole-o no terminal e pressione Enter. Em seguida, o terminal solicitará o segredo do cliente. Volte ao navegador, copie o segredo do cliente, cole-o no terminal e pressione Enter.

Quando solicitado a inserir um ID de dispositivo, digite o nome que você criou anteriormente como ID do produto (Magic_Mirror_Alexa no nosso exemplo).

Quando solicitado a fornecer um URL de retorno, digite o seguinte comando e pressione Enter:

https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse

O terminal exibirá um link personalizado. Copie e cole-o no seu navegador. Faça login com sua conta Amazon, se solicitado. Clique em “Permitir” na próxima tela.

Você verá um erro no navegador, mas não se preocupe! Isso é esperado. Analise o URL da página de erro e localize a seção “Código = xxxxxx”.

Copie as letras e números que aparecem entre “code =” e “& scope”, cole-os no terminal e pressione Enter.

Quando perguntado se deseja gerar a configuração do MagicMirror, digite Y e pressione Enter.

Você será questionado sobre qual palavra de ativação usar. “Alexa” é a opção padrão, então pressione Enter.

Responda “Não” ao uso de modo lite e visualização.

O assistente de configuração gerará as informações do módulo. Elas serão semelhantes a isto:

{
 module: "MMM-awesome-alexa",
 position: "bottom_bar",
 config: {
 wakeWord: "Alexa",
 clientId: "SEU_ID_DE_CLIENTE",
 clientSecret: "SEU_SEGREDO_DE_CLIENTE",
 deviceId: "SEU_ID_DE_DISPOSITIVO",
 refreshToken: "SEU_TOKEN_DE_ATUALIZAÇÃO",
 lite: false,
 isSpeechVisualizationEnabled: false
 }
 }

Copie essas linhas, pois será necessário adicioná-las à configuração do Magic Mirror.

Adicionando o Módulo Alexa à Configuração do Magic Mirror

Em seguida, entre no diretório de configuração do Magic Mirror com o seguinte comando:

cd ~/MagicMirror/config

Abra o arquivo config.js utilizando o editor nano:

nano config.js

Logo após a primeira instância de }, (que marca o fim de um módulo), pressione Enter para criar uma linha em branco antes da próxima entrada {, que indica o início de um novo módulo.

Na nova linha em branco que você criou, cole o código do módulo obtido nas etapas do assistente de configuração. O código gerado automaticamente possui um erro, portanto, será necessário adicionar uma vírgula após o colchete final para que seu módulo termine com },

Use Ctrl + x para fechar o arquivo. Quando solicitado, digite “y” para confirmar o salvamento e pressione Enter para manter o mesmo nome do arquivo.

O módulo está concluído. Para reiniciar o software Magic Mirror com o módulo instalado, digite pm2 restart mm e o software Magic Mirror será reiniciado. A Alexa já deve estar funcionando no seu espelho mágico.

Este é um dos módulos mais complexos para configurar no Magic Mirror. Mas para outros módulos, as etapas básicas são semelhantes: baixe o código, configure as opções específicas, adicione o módulo à configuração. Você pode adicionar efeitos de neve, um detector de movimento ou até mesmo exibir suas fotos do Google.