13.3inch Magic Mirror
| ||||||||||||||||||||||
| ||||||||||||||||||||||
| ||||||||||||||||||||||
|
目录
产品概述
本产品是通用HDMI显示屏,1920x1080超清分辨率,带钢化玻璃电容触摸面板。 支持树莓派和各种mini PC,也可以当成计算机显示器。
产品特点
- IPS屏,1920×1080超清分辨率
- 钢化玻璃电容触摸面板,硬度达6H
- 支持Raspberry Pi、BB Black等主流mini PC
- 配合Raspberry Pi使用时,支持Raspbian / Ubuntu / Kali / Retropie和WIN10 IoT,免驱
- 作为计算机显示器使用时,支持Windows 10 / 8.1 / 8 / 7,十点触控,免驱
- 支持多国语言OSD菜单(可用于电源控制,调节亮度/对比度等)
- 带3.5mm音频接口,支持HDMI音频输出
- 内置黑磁高保真喇叭(无需外接音箱)
- 支持VGA输入(需另配VGA转接线)
- 支持通用的挂壁架,背面有75×75mm的挂壁固定孔(M4螺丝孔)
- 自带75°倾斜角度支架
如何使用
您可以通过两种方法使用 Magic Mirros:方法一,使用预配置的镜像。方法二,在树莓派原始镜像上配置环境运行程序。
新手或者首次安装推荐安装预配置的镜像,预配置镜像已安装需要的库和驱动,程序开机自动运行。
方法一,使用预配置的镜像
- 1) 这里提供预配置的镜像,解压并把镜像写入到TF卡中(打开Win32DiskImager.exe软件,选择.img文件,点击「write」烧写镜像)。
- Pi2/Pi3/Pi3+启动镜像------------提取码:c16g
- 2) 烧写完成后,把卡插入树莓派上,连接上网线,打开电源开关。正常就会启动系统了。
- 3) 魔镜支持中英文语音对话,中文采用科大讯飞的AIUI ,英文采用Google Assistant Service,搭载Snowboy唤醒词检测引擎。
- 程序默认有两个唤醒词"魔镜魔镜"和"snowboy"。使用“魔镜魔镜”唤醒会识别为中文调用科大讯飞API。使用“snowboy”唤醒会识别为英文调用Google Assistant API。
- 注意:镜像中snowboy唤醒采用的是私有模型,只对作者本人有效。其他用户需要到snowboy官方注册账号训练自己的模型。
- snowboy:https://snowboy.kitt.ai/
- 科大讯飞AIUI:https://aiui.iflyos.cn/index-aiui
- Google Assistant:https://developers.google.com/assistant/sdk/guides/service/python
方法二,在树莓派原始镜像上配置环境运行程序(非专业人士可以跳过)
1.安装树莓派镜像
- 1)将树莓派镜像写入到TF卡中,在TF卡更目录下新建一个名为SSH的空白文件开启SSH,编辑TF卡根目录下的config.txt文件设置屏幕分辨率。在config.txt文件末尾添加:
hdmi_group=2 hdmi_mode=82 hdmi_cvt 1920 1080 60 6 0 0 0
- 必须确保等号两边没有空格。
- 2) 保存并将TF卡插入树莓派, Magic Mirror接上网线,树莓派上电后正常等待几秒后可正常显示。
- 3)树莓派正常启动后可以通过鼠标键盘操作,也可以通过SSH或VNC操作。
2.安装WM8960声卡驱动
- 请勿切换软件源,切换了软件源可能会安装失败,需要重新烧录镜像
git clone https://github.com/waveshare/WM8960-Audio-HAT cd WM8960-Audio-HAT #需要等待一定的时间 sudo ./install.sh sudo reboot
- 编辑/boot/config.txt,注释掉默认音频
#dtparam=audio=on
- 重启后运行如下命令看下驱动是否加载成功。
pi@raspberrypi:~ $ sudo dkms status wm8960-soundcard, 1.0, 4.19.58-v7l+, armv7l: installed
- 检测声卡
- 检查播放:aplay -l
pi@raspberrypi:~ $ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: wm8960soundcard [wm8960-soundcard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0
- 检查录音:arecord -l
pi@raspberrypi:~ $ arecord -l **** List of CAPTURE Hardware Devices **** card 0: wm8960soundcard [wm8960-soundcard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0
3.安装Magic Mirror
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt install -y nodejs git clone https://github.com/MichMich/MagicMirror cd MagicMirror/ npm install
- 安装成功后运行如下命令显示
DISPLAY=:0 npm start
4.安装Python3虚拟环境
sudo apt-get update sudo apt-get install python3-dev python3-venv python3 -m venv env env/bin/python -m pip install --upgrade pip setuptools wheel source env/bin/activate
- 注意:之后的所有操作都是在虚拟环境中进行,重新打开终端需运行如下命令进入到虚拟环境中。
source ~/env/bin/activate
5.snowboy 安装
- 安装依赖库
sudo apt-get install swig sudo apt-get install libatlas-base-dev sudo apt-get install portaudio19-dev sudo apt-get install flac pip3 install PyAudio pip3 install SpeechRecognition
- 下载编译snowboy
git clone https://github.com/Kitt-AI/snowboy.git cd snowboy/swig/Python3 make cd ../../examples/Python3
- 修改snowboydecoder.py文件,将from . import snowboydetect 改为 import snowboydetect,去掉 from .
Google Assistant Service 安装
注意:在中国,无法直接使用Google的服务。需要科学上网,必须搭建可以访问google的路由器,然后树莓派连接到路由器。 注意:自2019年6月28日起,不再支持Python的Google Assistant Library 。只能用 Google Assistant Service。
- 在主目录(/home/pi)中新建 .asoundrc 文件,确保Google Assistant可以使用正确的麦克风和扬声器。
nano .asoundrc
- 新建 .asoundrc文件,将以下配置添加到文件中保存。
pcm.!default { type asym capture.pcm "mic" playback.pcm "speaker" } pcm.mic { type plug slave { pcm "hw:0,0" } } pcm.speaker { type plug slave { pcm "hw:0,0" } }
在开始使用Google Assistant之前,需要将Google Assistant Service 安装到树莓派中。以下是Google官方指导的链接。 请根据指南第三步,配置开发人员项目和配置账户,并创建一个OAuth Client ID JSON文件。 不要忘记将JSON文件复制到您的Raspberry Pi。 请根据指南第四步,注册设备模型。
安装Google Assistant SDK
(env) $ sudo apt-get install portaudio19-dev libffi-dev libssl-dev (env) $ python -m pip install --upgrade google-assistant-sdk[samples]
授权Google Assistant SDK 安装或更新授权工具
(env) $ python -m pip install --upgrade google-auth-oauthlib[tool]
生成凭据以能够运行示例代码和工具。引用您在上一步中下载的JSON文件 ;您可能需要将其复制到设备。不要重命名该文件。
(env) $ google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ --save --headless --client-secrets /path/to/client_secret_ client-id .json
可以在终端中看到一个URL:
Please visit this URL to authorize this application: https://...
复制URL并将其粘贴到浏览器中(可以在任何计算机上完成)。该页面将要求您登录您的Google帐户。登录到上一步中创建开发人员项目的Google帐户 。 从API批准许可请求后,浏览器中将显示一个代码,例如“ 4 / XXXX”。将此代码复制并粘贴到终端中:
Please go to this URL: https://... Enter the authorization code:
如果授权成功,您将看到类似于以下的响应。如果您看到InvalidGrantError,则输入了无效的代码。请重试,请小心复制并粘贴整个代码。
credentials saved: /path/to/.config/google-oauthlib-tool/credentials.json
运行如下命令测试 my-dev-project为创建的Actions Console项目的Google Cloud Platform项目ID。要在Actions Console中找到项目ID 、 my-model为在上一步中注册设备模型的名称。
googlesamples-assistant-pushtotalk --project-id my-dev-project --device-model-id my-model
按Enter键,然后尝试以下一些查询 Who am I? What time is it? 正常情况Google Assitant 会回应。
设置开机启动
安装PM2
sudo npm install -g pm2
设置PM2开机启动
pm2 startup
运行此命令后会显示一个类似如下的命令,复制此命令到终端运行。
[PM2] To setup the Startup Script, copy/paste the following command: sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
创建MagicMirror 开机脚本
cd MagicMirror/modules/MMM-VoiceAssistant/pi nano mm.sh
添加如下语句
cd ~/MagicMirror DISPLAY=:0 npm start
添加可执行属性
chmod +x mm.sh
使用PM2启动MagicMirror
pm2 start mm.sh
显示屏幕常亮
打开 lightdm.conf
sudo vi /etc/lightdm/lightdm.conf
修改 lightdm.conf 找到[SeatDefaults]段下的’xserver-command’,取消注释,修改为如下:
#xserver-command=X
修改为
xserver-command=X -s 0 -dpms
- -s # –设置屏幕保护不启用
- dpms 关闭电源节能管理
重启
sudo reboot
按键介绍
- 1:打开或关闭LCD显示,如长时间不使用LCD,可通过该按键关闭LCD显示,以降低功耗。
- 2:方向键
- 3:确定功能
- 4:打开菜单和返回功能
视频
3D 图纸
软件
其他教程
教程
- 树莓派系列教程:人生若只如初见
- 树莓派系列教程:烧写镜像
- 树莓派系列教程:远程登录树莓派(SSH登陆/远程桌面登陆/串口登陆)
- 树莓派系列教程:更换软件源
- 树莓派系列教程:访问树莓派
- 树莓派系列教程:配置WiFi
- 树莓派系列教程:系统配置(raspi-config)
- 树莓派系列教程:中文输入法
- 树莓派系列教程:摄像头
- 树莓派系列教程:Linux常用命令以及vi/vim编辑器
- 树莓派系列教程:文件共享(samba)
- 树莓派系列教程:wiringPi、bcm2835、python库安装
- 树莓派系列教程:如何点亮一个LED灯(上)
- 树莓派系列教程:如何点亮一个LED灯(下)
- 树莓派系列教程:按键
- 树莓派系列教程:I2C
- 树莓派系列教程:I2C编程
- 树莓派系列教程:I2C总线控制BMP180
- 树莓派系列教程:Serial串口
- 树莓派系列教程:红外遥控
- 树莓派系列教程:RTC
- 树莓派系列教程:PCF8591 AD/DA
- 树莓派系列教程:SPI
- 树莓派系列教程:物联网之MQTT
- Alphabot树莓派教程:变身路由器
- Alphabot树莓派教程:刷LEDE(OpenWRT)系统变身路由器
- 树莓派引脚对照表
- SIM868 ppp拨号上网
认证资料
FAQ
|
|
|
|