13.3inch Magic Mirror C4

来自Waveshare Wiki
跳转至: 导航搜索

说明

{{{name2}}}
{{{name3}}}
功能简介
特性 13.3寸智能魔镜,树莓派CM4主控,智能语音对话
分辨率 1920×1080
主控 树莓派CM4
' 无特性,不解释
' 无特性,不解释
接口

产品概述

本产品是13.3寸智能魔镜,由树莓派CM4驱动,能显示新闻、天气、时间,支持智能语音对话,1920x1080超清分辨率,带钢化玻璃电容触摸面板。

产品特点

  • 内置树莓派CM4主控,64位1.5GHz四核,4GB内存双频WIFI,蓝牙5.0(仅带CM4魔镜套餐内置了CM4)
  • IPS屏,1920×1080超清分辨率
  • 单向透视镜面,能显示新闻、天气、时间
  • 内置黑磁高保真喇叭,优质MEMS硅麦克风,带3.5mm音频接口
  • 支持中英文语音对话,搭载Snowboy语音唤醒,科大讯飞,谷歌助手
  • 钢化玻璃电容触摸面板,最高支持10点触摸,硬度达6H
  • 支持通用的挂壁架,背面有75×75mm的挂壁固定孔(M4螺丝孔)
  • 自带75°倾斜角度支架

USB2.0

USB接口在CM4上默认是被禁用的,以节省电源。如果需要启动,你需要在config.txt文件中添加以下内容:

dtoverlay=dwc2,dr_mode=host

重启之后即可

如果使用最新的树莓派OS(2021年10月30号之后的镜像)USB2.0是默认是OTG模式,CM4会报错:

config failed, hub doesn't have any ports! (err -19)

不过USB还是可以使用的,如果想移除这个错误,在config.txt的[cm4]中移除otg_mode=1,并且添加dtoverlay=dwc2,dr_mode=host(不添加是无法识别USB的)。
CM4 Burn EMMC 12.png


如何使用

在树莓派原始镜像上配置环境运行程序

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.检查USB声卡驱动

检测声卡
  • 检查播放:aplay -l
  • 检查录音:arecord -l

3.安装Magic Mirror

curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt install -y nodejs
git clone https://github.com/MichMich/MagicMirror
cd MagicMirror/
npm install
安装成功后运行如下命令显示
DISPLAY=:0 npm start
屏幕显示如图
MgicMirror-1.png
添加MMM-VoiceAssistant模块
cd ~/MagicMirror/modules
git clone https://github.com/waveshare/MMM-VoiceAssistant.git
cd MMM-VoiceAssistant
cp config/config.js.en ~/MagicMirror/config/config.js  #显示英文
#cp config/config.js.cn ~/MagicMirror/config/config.js  #显示中文
cd ~/MagicMirror
DISPLAY=:0 npm start
屏幕显示如图
MgicMirror-2.png

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 .
测试snowboy唤醒
cd ~/snowboy/examples/Python3
python3 demo.py resources/models/smart_mirror.umdl
说smart_mirror,如果有检测到则会显示类似这样的信息,同时会响ding的一声
INFO:snowboy:Keyword 1 detected at time: 2019-12-03 11:30:16

6.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官方指导的链接。
https://developers.google.com/assistant/sdk/guides/service/python
请根据指南第三步,配置开发人员项目和配置账户,并创建一个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 会回应。

7.设置开机启动

安装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

使用PM2启动MagicMirror

cd MagicMirror/modules/MMM-VoiceAssistant/pi
pm2 start mm.sh

使用PM2启动snowboy 语音助手程序

cd MagicMirror/modules/MMM-VoiceAssistant/pi
pm2 start snowboy.sh

设置开机启动PM2脚本

pm2 save

可以运行下面语句关闭对应的脚本服务。注意,需要使用Pi用户,不能使用管理员用户。

pm2 stop mm
pm2 stop snowboy

8.设置屏幕常亮

打开 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:程序中唤醒词采用的是公有模型,理论上对所有人都有效,但是如果实际不能唤醒可以到snowboy官方注册账号训练自己的模型或者更改其他唤醒词。

登录snowboy:https://snowboy.kitt.ai 网站,找到需要设置的唤醒词,或者添加新的唤醒词。
MgicMirror-3.png
点击录音和下载图标录音声音,录制三次然后最后检测声音模型是否可用。
MgicMirror-4.png
下载生成的私有模型,.pmdl后缀的文件,例如Alexa.pmdl.
将文件复制到~/MagicMirror/modules/MMM-VoiceAssistant/pi目录下.注意文件名要用英文,如果不是英文则修改文件名。
打开启动脚本文件修改。
vi snowboy.sh
替换脚本中的文件名,其中第一个smart_mirror.umdl为中文唤醒,第二个snowboy.umdl为引文唤醒词。
cd ~/MagicMirror/modules/MMM-VoiceAssistant/pi
~/env/bin/python3 demo.py smart_mirror.umdl snowboy.umdl

2.国内用户不能显示新闻,一直显示loading
系统默认英文显示,国内需要科学上网才能显示,更改配置显示中文即可以显示。

cd ~/MagicMirror/modules/MMM-VoiceAssistant/config
cp config.js.cn ~/MagicMirror/config/config.js  #显示中文
#cp config.js.en ~/MagicMirror/config/config.js  #显示英文
sudo reboot  #重启

3.科大讯飞服务每天只有500次申请次数,超过将不再响应。用户可以将申请账户,修改程序ID和KEY
程序中用到语音合成tts和aiui两种服务。打开~/MagicMirror/modules/MMM-VoiceAssistant/pi/aiui.py。可以看到如下程序

500

修改对应的值替换账户,注释中有文档中心连接。

4.Google Assistant Service每天只有500次申请次数,超过将不再响应。用户可以将申请账户,修改程序ID
打开~/MagicMirror/modules/MMM-VoiceAssistant/pi/audiofileinput.py。可以如下代码

600

按照前面 6.Google Assistant Service 安装部分操作,注册账户,设备模型,安装授权。
最后将程序中的 DEVICE_ID,DEVICE_MODEL_ID替换为对应的值


RS232

在/boot/config.txt添加 dtoverlay=uart3

sudo nano  /boot/config.txt
dtoverlay=uart3
#设备号 /dev/ttyAMA1

RS485

打开树莓派终端,输入以下指令进入配置界面

sudo raspi-config
#选择Interfacing Options -> Serial,关闭shell访问,打开硬件串口
#设备号 /dev/ttyS0
L76X GPS Module rpi serial.png

按键介绍

13.3inch-HDMI-LCD-H-Manual-02.jpg

  • 1:打开或关闭LCD显示,如长时间不使用LCD,可通过该按键关闭LCD显示,以降低功耗。
  • 2:方向键
  • 3:确定功能
  • 4:打开菜单和返回功能

资料

3D 图纸

软件

其他教程

教程

树莓派入门教程(新)
树莓派入门教程
树莓派OpenCV教程
树莓派littleGL系列教程
树莓派QT教程
树莓派OpenWrt教程

FAQ

先拧下屏幕背面的螺丝,然后使用用卡片类的,要有些硬度的工具,类似于下图,沿着屏幕后盖的边缘打开屏幕后盖
13.3inch Magic Mirror FAQ.png
13.3inch Magic Mirror FAQ2.png
然后将CM安装在下图所示的板子背面
13.3inch Magic Mirror FAQ3.png



售后


联系人:彭工
EMAIL:2851966006@qq.com
电话:0755-83040712
QQ:2851966006
微信:扫下方二维码添加
Pqy.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证