跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
MediaWiki帮助
Mcuzone Wiki
搜索
搜索
登录
个人工具
登录
查看“0006 MPTPU(M.2 E) EN”的源代码
页面
讨论
大陆简体
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
特殊页面
页面信息
←
0006 MPTPU(M.2 E) EN
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== '''Keywords''' == Raspberry Pi5, PCIe, TPU, DTPU, Driver installation, Operation demonstration, AI, Google, Coral == '''Ⅰ、Introduction''' == MPTPU is a TPU expansion board specifically designed for the Raspberry Pi 5, driven by a Coral TPU module through PCIe 1x Gen2. TPU module on the Raspberry Pi system requires the installation of drivers and configuration of the operating environment. This document is based on the MPTPU expansion board (single TPU), and the driver installation is also applicable for dual TPU setups. '''''Note: The operation requires a stable internet connection to the regions out of China (you may need to find your own method). Otherwise, many files may not download or may only partially download, which could ultimately lead to the code failing to run.''''' == '''Ⅱ、Hardware Resources''' == 2.1 Specifically designed for the PCIe interface of the Raspberry Pi 5. 2.2 Support M.2 E-KEY PCIe and Google coral Edge TPU. 2.3 CSI/DSI slots: Supports 0.5mm pitch 22-pin cables and 1mm pitch 15-pin cables. 2.4 An onboard power indicator LED ("PWR"). 2.5 Adopts high-quality electronic components, lead-free production, immersion gold process; the PCB board is UL certified and RoHS compliant. 2.6 The board has four M2.5 mounting holes, with a recessed design on the top of the board to facilitate the use of the 40-Pin GPIO without affecting the use of the Raspberry Pi 5's 40-Pin GPIO. http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_33.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_34.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_35.jpg == '''Ⅲ、System flashing''' == 3.1 The Raspberry Pi OS used in this document is: 2024-07-04-raspios-bookworm-armhf.img.xz(Raspberry Pi OS with desktop)。 You can download it in: https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit 3.2 Use Imager or balenaEtcher to flash the OS image in TF card. [[0005 MPS2242 2280(单SSD扩展板)#3.2 从TF卡启动|Click here to read the instructions for System flashing]] == '''Ⅳ、Driver installation and configuration''' == === 4.1 Config config.txt === After the system starts, open the Raspberry Pi terminal and enter the command: <code>sudo nano /boot/firmware/config.txt</code> or: <code>sudo mousepad /boot/firmware/config.txt</code> Add the codes in the ending of this file: <code>dtparam=pciex1</code> <code>kernel=kernel8.img</code> <code>dtoverlay=pineboards-hat-ai</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_01.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_02.jpg then,save the file and reboot the system: <code>sudo reboot</code> === 4.2 Ensuring software environment === After reboot the system, open the Raspberry Pi terminal and enter the command: <code>uname -r</code> After ensuring the kernel version is greater than 4.18, enter: <code>lsmod | grep apex</code> Ensure there is no output, then you can begin installing the TPU driver. http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_03.jpg === 4.3 Install necessary software === Ensure the network is connected to internet connection to the regions out of China (you may need to find your own method), and then add the Google TPU software library: <code>echo "deb <nowiki>https://packages.cloud.google.com/apt</nowiki> coral-edgetpu-stable main" | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list</code> <code>curl <nowiki>https://packages.cloud.google.com/apt/doc/apt-key.gpg</nowiki> | sudo apt-key add -</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_04.jpg Update the software list after adding: <code>sudo apt-get update</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_06.jpg Install the necessary software after the update is completed: <code>sudo apt-get install cmake libedgetpu1-std devscripts debhelper dkms dh-dkms</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_07.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_08.jpg === 4.4 Install Gasket Driver === 依次输入以下命令安装Gasket Driver: <code>git clone <nowiki>https://github.com/google/gasket-driver.git</nowiki></code> <code>cd gasket-driver</code> <code>sudo debuild -us -uc -tc -b</code> <code>cd ..</code> <code>sudo dpkg -i gasket-dkms_1.0-18_all.deb</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_09.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_10.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_11.jpg 安装完成后输入以下命令确保驱动以及软件安装成功: <code>sudo apt-get install gasket-dkms libedgetpu1-std</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_12.jpg 接下来添加udev rule去获得设备操作权限: <code>sudo sh -c "echo 'SUBSYSTEM==\"apex\", MODE=\"0660\", GROUP=\"apex\"' >> /etc/udev/rules.d/65-apex.rules"</code> 添加用户到apex: <code>sudo groupadd apex</code> <code>sudo adduser $USER apex</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_13.jpg 设置完成后重启系统: <code>sudo reboot</code> === 4.5 验证模块检测以及驱动安装 === 系统启动后验证模块检测以及驱动安装: <code>lspci -nn | grep 089a</code> <code>ls /dev/apex_0</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_14.jpg 这里板载单TPU,因此可以看到一个TPU模块。 输入<code>sudo lspci -v</code>可以看到驱动加载: http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_15.jpg === 4.6 代码运行环境配置 === Google TPU模块代码运行需要在Python3.6-3.9之间,而树莓派最新系统的Python版本为3.11,因此我们需要使用Pyenv来下载老版本Python。 首先进行依赖安装: <code>sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python3-openssl</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_17.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_18.jpg 依赖安装完成后进行pyenv的安装: <code>curl <nowiki>https://pyenv.run</nowiki> | bash</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_19.jpg 输入: <code>sudo nano ~/.bashrc</code> 或者: <code>sudo mousepad ~/.bashrc</code> 在文件最下面添加以下代码: <code>export PYENV_ROOT="$HOME/.pyenv"</code> <code>[[</code><code> -d $PYENV_ROOT/bin </code><code>]]</code><code> && export PATH="$PYENV_ROOT/bin:$PATH"</code> <code>eval "$(pyenv init -)"</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_20.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_21.jpg 添加完成后保存退出并重新加载shell: <code>exec "$SHELL"</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_22.jpg 接下来我们可以利用pyenv安装老系统版本Python: <code>pyenv install -v 3.8.8</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_23.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_24.jpg 等待安装成功后我们将系统Python版本更改为3.8.8: <code>pyenv global 3.8.8</code> 更改成功后可以查看当前Python使用版本为3.8.8: <code>pyenv versions</code> <code>python3 -V</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_25.jpg == '''五、下载和运行演示代码''' == === 5.1 下载代码和运行模组 === 依次输入以下命令进行下载: <code>mkdir coral && cd coral</code> <code>git clone <nowiki>https://github.com/google-coral/pycoral.git</nowiki></code> <code>cd pycoral</code> <code>cd test_data</code> <code>git clone <nowiki>https://github.com/google-coral/test_data.git</nowiki></code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_26.jpg http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_27.jpg 接下来下载代码运行模组 <code>pip3 install numpy</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_28.jpg <code>pip3 install Pillow</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_29.jpg <code>pip3 install --extra-index-url <nowiki>https://google-coral.github.io/py-repo/</nowiki> pycoral</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_30.jpg === 5.2 运行代码 === 模组下载完成后返回 coral/pycoral路径下 <code>cd ..</code> 输入以下代码进行代码运行 <code>python3 examples/classify_image.py \</code> <code>--model test_data/test_data/mobilenet_v2_1.0_224_inat_bird_quant_edgetpu.tflite \</code> <code>--labels test_data/test_data/inat_bird_labels.txt \</code> <code>--input test_data/test_data/parrot.jpg</code> http://www.mcuzone.com/wiki/0006_MPW7_TPU/0006_MPW7_TPU_31.jpg '''<big>鉴于本开发板的测试需要在外网下载大量数据,为了方便用户进行测试,用户在购买本开发板后,可以联系我司获取已经配置完毕的树莓派OS镜像。</big>''' {{联系我们_图标}}
本页使用的模板:
模板:Contact Us icon
(
查看源代码
)
返回
0006 MPTPU(M.2 E) EN
。
开关有限宽度模式