如何制作一面自己的魔镜 MagicMirror

Table of Contents

一、准备工作

1. 硬件准备

  • 树莓派(推荐 Raspberry Pi 4 或更新版本)
    • 需要配备 SD 卡(至少 8GB,推荐 16GB 或更大),用于安装系统。
  • 显示器
    • 普通的电脑显示器或平板显示器即可,大小根据需求选择。
  • 双向镜子(Two-Way Mirror)
    • 这种镜子既可以反射光线又允许屏幕后面的内容透过。可以从网上购买或者找本地玻璃店定制。
  • 其他工具
    • HDMI 线:用于连接显示器与树莓派。
    • 电源适配器:为树莓派供电。
    • 框架:用于固定镜子和显示器(可以是木框、金属框等)。

二、安装和配置 MagicMirror 软件

1. 安装树莓派操作系统

  1. 下载 Raspberry Pi Imager
  2. 将树莓派操作系统(Raspberry Pi OS)写入 SD 卡。
  3. 插入树莓派,接入电源、显示器、键盘鼠标,完成系统的初始配置(语言、WiFi 等)。

2. 安装 MagicMirror²

  1. 打开树莓派终端,运行以下命令安装 MagicMirror²:
    bash -c "$(curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/install.sh)"
  2. 安装完成后,MagicMirror 的默认文件将位于 ~/MagicMirror 目录。

3. 启动 MagicMirror

  • 使用以下命令启动 MagicMirror:
    cd ~/MagicMirror
    npm start
  • 运行后,你应该能看到 MagicMirror 的默认界面,包括时间、天气和新闻等模块。

三、配置 MagicMirror

MagicMirror 的配置文件位于 ~/MagicMirror/config/config.js,可以通过编辑这个文件来自定义界面。

1. 修改配置文件

  1. 打开配置文件:
    nano ~/MagicMirror/config/config.js
  2. 根据需求修改默认模块的设置,例如调整时区、更改显示位置、修改语言等。

2. 添加模块

MagicMirror 提供许多开源模块,你可以从 MagicMirror 模块目录 中找到需要的模块。以下是一个模块安装的例子:

  • 安装天气模块(MMM-WeatherForecast)
    1. 进入模块目录:
      cd ~/MagicMirror/modules
    2. 克隆模块代码:
      git clone https://github.com/YOUR_MODULE_REPO.git
    3. 根据模块说明,在 config.js 中添加模块配置。

例如:

modules: [
    {
        module: "weather",
        position: "top_right",
        config: {
            location: "Beijing",
            locationID: "1816670",  // 你所在城市的 OpenWeatherMap ID
            appid: "YOUR_OPENWEATHER_API_KEY"  // 需要去 OpenWeatherMap 注册获取
        }
    }
]

四、提升 MagicMirror 的功能

1. 添加语音控制

可以集成语音助手(如 Google Assistant 或 Alexa),通过麦克风控制镜子显示内容。

2. 使用触控屏

如果选择带触控功能的显示器,可以将 MagicMirror 变成一个交互式设备。

3. 自动启动 MagicMirror

让 MagicMirror 在树莓派启动时自动运行:

  1. 编辑 ~/.bashrc 文件:
    nano ~/.bashrc
  2. 在文件末尾添加:
    cd ~/MagicMirror
    npm start

4. 远程访问

通过手机或电脑访问 MagicMirror,方法如下:

  1. 在树莓派上运行以下命令,开启服务器模式:
    npm run server
  2. 在浏览器中输入 http://<树莓派IP>:8080,即可访问 MagicMirror。

五、DIY 外观和框架

  1. 设计框架

    • 使用木质或金属框,将显示器和双向镜子固定在一起。
    • 镜子的背面需要遮光材料,确保屏幕内容清晰可见。
  2. 隐藏电线

    • 将电线整理后隐藏在框架内,保持外观整洁。
  3. 调整镜子透明度

    • 如果屏幕内容不够亮,可以调整镜子的透光率(推荐透光率在 30%-50%)。

六、实用提示

  • 模块调试:当模块出错时,使用以下命令查看日志:
    pm2 logs
  • 屏幕方向:如果显示器需要旋转,可以通过 raspi-config 调整屏幕方向:
    sudo raspi-config

Comments |0|

Legend *) Required fields are marked
**) You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
Category: 似水流年