MagicMirror - Instalação

Magic Mirror

Transforma um espelho num assistente pessoal.

Material utilizado:

  • Moldura
  • Espelho Acrílico ( SupremeTech 18 x 24 x 0,04 " Espelho Transparente Acrílico, 30% Transparente)
    Mandei vir da Amazon. Tem que se ter cuidado com o seu manuseio pois é bastante frágil (risca
    facilmente) e temos também de o fixar bem pois se fica solto mostra a imagem ovalizada.
  • Monitor. Comprei um de 19" no OLX
  • Vidro de 2mm onde vai encostar o espelho (protege e ajuda a sua fixação)
  • Sonoff mini (liga por 10m o MagicMirror quando alguém passa em frente a um sensor de
    movimento) Tentei instalar o módulo MMM-PIR e náo consegui que ele funcionasse.

Instalação

1 - Hardware
Raspberry Pi 2, 3 e 4

2 - Deverá instalar a versão mais recente do Raspberry Pi OS (anteriormente chamado de Raspbian)
(não deverá instalar a versão Lite)
- Baixar a imagem da versão mais atual (imager_1.4.exe)
- Executar o ficheiro
- Escolher o sistema que quer instalar e o cartão (No meu caso instalei o Raspberry Pi OS (32-BIT)
e um cartão de 16 G
Remover do pc e introduzir o cartão no raspberry

3 - Embora existam instaladores automáticos, usei a instalação manual (recomendado)
Abrir o terminal e digitar:

 curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

 sudo apt install -y nodejs

 git clone https://github.com/MichMich/MagicMirror

 Entrar na directoria MagicMirror: cd MagicMirror/
 Digitar: npm install

 Fazer uma cópia do arquivo config.js.sample: cp config/config.js.sample config/config.js

 Iniciar o Magic Mirror com: npm run start

4 - Rodar o monitor (opcional)
Precisamos de acrescentar a seguinte linha ao ficheiro /boot/config.txt: display_rotate=1
Para isso usamos o seguinte comando: sudo nano /boot/config.txt
Gravamos e reiniciamos o raspberry.

5 - Para iniciar o MagicMirror mais fácilmente e não ter que entrar sempre na directoria MagicMirror e
ter que digitar npm run start vamos instalar o PM2

 sudo npm install -g pm2

 pm2 startup

 Precisamos de criar um script de shell simples. De preferência, colocamos este script fora da pasta 
 MagicMirror para ter certeza de que não haverá problemas se quisermos mais tarde fazer 
 atualizações

 cd  ~ 
 nano mm.sh

 grave e saia
 Agora certifique-se de que o script de shell seja executável executando o seguinte comando:

 chmod + x mm.sh

 Para garantir que o MagicMirror reinicia após a reinicialização, você vai precisas de gravar o 
 estado atual de todos os scripts em execução via PM2. Para fazer isso, execute o seguinte 
 comando: 

 pm2 save

 Com o MagicMirror rodando via PM2, temos algumas ferramentas úteis:

 Reiniciar MagicMirror
    pm2 start mm

 Parar MagicMirror
    pm2 stop mm

 Mostrar os registos do MagicMirror
    pm2 logs mm

 Mostra as informações do processo MagicMirror
    pm2 show mm

6 - Módulos

Existe um grande número de módulos disponíveis em: 
https://github.com/MichMich/MagicMirror/wiki/3rd-party-modules
Vou referir aqui apenas os que no momento estou a utilizar e alguns aspectos da configuração 
deles.

No ficheiro /home/pi/MagicMirror/config/config.js estão os módulos utilizados e as respectivas 
configurações.

Nesse ficheiro podemos alterar a posição onde os módulos vão aparecer, a linguagem, o formato 
de hora e as unidades métricas:

language: "pt",
timeFormat: 24,
units: "metric"

Tenho os seguintes módulos instalados:

 - alert - Módulo padrão do MagicMirror - Não alterei nada

 - clock - Módulo padrão do MagicMirror - Não alterei nada

 - calendar - Módulo padrão do MagicMirror. Exibe eventos de um calendário público. Tem uma 
   série de opções de configuração. A única coisa que alterei foi o url que passou a ser : url: 
   webcal://calendarr.com/portugal/ics/

 - compliments - Este módulo pode exibir as frases que entenderem. Além de outras configurações 
   (horas, velocidade, intervalo de tempo...),  essas frases são colocadas em: 
   /home/pi/MagicMirror/modules/default/compliments/compliments.js

 - Current Weather - Este módulo mostra as condições meteorológicas de um determinado local. 
   Vão precisar de location , locationID e appid. Esta informação conseguem-na no ficheiro 
   city.list.json.gz em: http://bulk.openweathermap.org/sample/

 - MMM-GooglePhotos  - Mostra de forma aleatoria fotos armazenadas  por nós em álbuns do 
  Google Fotos (https://github.com/ChrisAcrobat/MMM-GooglePhotos). Se seguirmos à risca as 
  instruções que o autor da, vai surgir um problema que é a criação da pasta MMM-GooglePhotos 
  fora da pasta MagicMirror/modules. Para isso, executamos as linhas de comandos:
   
   git clone https://github.com/eouia/MMM-GooglePhotos.git
   cd MMM-GooglePhotos
   npm install

   já dentro da pasta MagicMirror/modules

 - newsfeed - Módulo padrão do MagicMirror - Mostra no rodapé as últimas notícias baseadas em 
   RSS. É facil de encontrar diferentes notícias baseadas em RSS na internet. No meu caso tenho 
   as notícias de última hora (https://www.noticiasaominuto.com/rss/ultima-hora)

- MMM-Carousel - Para finalizar, tenho um módulo que me permite mostrar uma sequência de 
  ecrans. Seria bastante difícil, num só ecran mostrar um número grande de módulos. Este módulo 
  permite especificar o número de ecrans e a informação que cada um vai mostrar.
                 slides: {
	            main: ['calendar', 'compliments', 'currentweather', 'weatherforecast', 'newsfeed'],
	            "Slide 2": ['MMM-Reddit', 'newsfeed'],
	            "Slide 3": ['MMM-GooglePhotos', 'newsfeed'] }

Espero que esta informação possa ser útil a quem estiver interessado em construír um MagicMirror.

Tirei algumas fotos mas estão pouco definidas (tenho que aumentar o brilho do monitor). De qualquer forma vou pôr estas e depois quando der mais brilho e tirar outras com melhor qualidade, troco-as.



9 Likes

Muito bom, parabéns.
Parece mesmo estar aí uma coisa bem feita e muito completa. Já vi algumas maneiras de fazer isso, mas se um dia se aventurar neste caminho sem dúvida que vou seguir este tutorial.

Amigo @sslopes, parece que está aí um bom trabalho. Mas gostava de ver mais fotos e até mesmo da moldura em si…
Gastou quantos €€€ em material? Fora o rpi e sonoff.
Obrigado

Bom dia @karma. Vou juntar mais fotos e posto. Tirando o rpi e sonoff, tenho o espelho acrílico ( SupremeTech 18 x 24 x 0,04 " Espelho Transparente Acrílico, 30% Transparente) comprado na Amazon por cerca de 40 euros e o monitor de 19" comprado no OLX por cerca de 30 euros. A moldura fiz com madeira comprada no Leroy. Ao certo não te sei dizer quanto gastei na madeira e na tinta mas não foi muito. Além do prazer que me dá a “bricolage”, optei por fazer a moldura também por causa da espessura que ela teria de ter para cobrir o monitor.


Copyright © 2017-2020. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade