树莓派5使用PCIE接口连接NVME M.2固态硬盘SSD

固态硬盘选型

目前测试可用的是雷克沙(Lexar) PLAY 1TB SSD 固态硬盘 2230 M.2接口

固态硬盘安装

New NVMe SSDs are not partitioned and will need to be both partitioned and formatted when first connected to the Raspberry Pi before they will be accessed in the Explorer.

树莓派系统配置

Enable the external PCIe port on the Raspberry Pi 5. Edit /boot/firmware/config.txt and add the following at the bottom:

修改后的完整内容:

开机自动挂载

查看磁盘分区:

增加挂载项:

参考链接


解决Visual Studio Code在Raspberry Pi 4运行特别缓慢的问题

在树莓派4通过命令行安装 Visual Studio Code 如下:

但是运行特别缓慢,调试 Python 代码会持续卡住,CPU 长时间 100% 占用。

目前一个可用的办法就是在 Visual Studio Code 中禁用 GPU 加速。

具体操作如下:

  • Open Visual Studio Code

  • Open the Command Palette by hitting your F1 key or the key combo Ctrl+Shift+P,或者菜单中选择 “命令面板” 如下图:

  • Begin typing runtime and you should see “Preferences: Configure Runtime Arguments” appear (Pictured below). Click it or hit Enter to open a configuration file called argv.json which allows us to set runtime arguments.

  • There should be the line "disable-hardware-acceleration": true, commented out. (Pictured below)

  • Uncomment the line by deleting the preceding // or add the line if it is missing entirely.
    Tip: Be careful not forget the comma if the line is not the last uncommented one inside the curly braces.

  • Save the file and restart Visual Studio Code for the change to take effect.

参考链接


實測 Raspberry Pi 5 上的 SD 卡效能

在 Raspberry Pi 5 使用高速的 SD 卡有用嗎? 我們實測 Raspberry Pi 5 上的 SD 卡效能,發現使用同一張 SD 卡可以在 Raspberry Pi 5 有更高的效能,可實際發揮 UHS-I SDR104 的速度。

要順暢的使用 Raspberry Pi,SD 卡(或稱 microSD 卡)是重要的組件。因為 SD 卡的速度會直接影響 Raspberry Pi 的運作速度,就像硬碟的速度影響傳統桌上型電腦的運作速度一樣。從 SD 卡中讀取資料的速度越快,Raspberry Pi 的啟動速度就越快,程式的載入速度就越快。同樣,寫入速度也會影響保存大量資料的程式的運作效果,因此使用高速的 SD 卡非常重要。

SD 卡科普

SD 卡的速度等級會印在卡片本身或包裝上。下圖所示的 32GB 卡屬於 Class 4,以字母 C 內的 4 表示——這表示它的寫入速度為 4MB/s。

圖片來源:Raspberry Pi SD Card Speed Test
圖片來源:Raspberry Pi SD Card Speed Test

下面顯示的 64GB 卡屬於 Class 10,因此可以用 10MB/s 的速度寫入。上頭顯示的 UHS(Ultra High Speed) Class 1 的標誌,字母 U 裡面的 1,對應著相同的速度。

圖片來源:Raspberry Pi SD Card Speed Test
圖片來源:Raspberry Pi SD Card Speed Test

效能標示

表格來源:SD卡
表格來源:SD卡

A2 等級 SD 卡,最低隨機讀取(Random Read Speed)要達到 4000 IOPS,最低隨機寫入(Random Write Speed)要達到 2000 IOPS

速度標示

表格來源: SD卡
表格來源:SD卡

例如標示 UHS-I SDR104 要能達到 104MB/s 的總線速度(Bus speed)。

表格來源:SD卡
表格來源:SD卡

而最低寫入速度為 30 MB/s 的話,可以在 UHS Speed Class 標示為 Class 3 (U3),在 Video Speed Class 標示為 Class 30 (V30),表示可以順暢的播放 4K 影片 60/120 fps (UHS)。

因為 Raspberry Pi 5 升級了 SD Controller,因此可支援 SD 卡 的 SDR104 高速模式。

Raspberry Pi 上的 SD 卡效能測試工具

自從 2020-05-27 Raspberry Pi OS 釋出後就新增了多種應用程式,例如內建 Raspberry Pi Diagnostics 功能可以診斷各種硬體資源,第一個工具就是 SD 卡效能檢測(SD Card Speed Test)。

SD Card Speed Test 操作方法

SD Card Speed Test 解讀

  • 操作過程將每秒隨機寫入操作 500 次,每秒隨機讀取操作 1500 次。
  • IOPS(Input/Output Operations Per Second)是一個用於電腦儲存裝置效能測試的量測方式,表示每寫寫入/讀取次數。
  • 如果將 IOPS 乘以 Transfer Size in Bytes 可計算出每秒可讀寫的頻寬(單位 MB/s)
  • 本例的循序寫入速度(Sequential Write Speed)為 42390 KB/sec,超過 12MB/s 標準。
  • 本例的隨機寫入速度(Random Write Speed)為 2109 IOPS,超過 2000 IOPS 標準。
  • 本例的隨機讀取速度(Random Read Speed)為 4755 IOPS,超過 4000 IOPS 標準。
  • 日誌檔預設會用 rpdiags.txt 檔名存放在家目錄。

實測 Raspberry Pi 5 上的 SD 卡效能

測試環境
測試結果

從左上、右上、左下、右下依序為 Raspberry Pi 5、Pi 4、Pi 3B+、Pi 3B(圖片來源:PiePie 台灣樹莓派)
從左上、右上、左下、右下依序為 Raspberry Pi 5、Pi 4Pi 3B+Pi 3B(圖片來源:PiePie 台灣樹莓派

上圖是使用同一張 microSDXC UHS-I(V30)(A2) 64GB 記憶卡使用 SD Card Speed Test 在 Raspberry Pi 不同主板上的執行結果。下方圖表可清楚看到在 Raspberry Pi 5Pi 4Pi 3B+Pi 3BZero 2 上執行,Raspberry Pi 5 上的 SD 卡效能 可以發揮的更好!

SD Card Speed Test 在不同 Raspberry Pi 主板上的執行結果(表格來源:PiePie 台灣樹莓派)
SD Card Speed Test 在不同 Raspberry Pi 主板上的執行結果(表格來源:PiePie 台灣樹莓派

備註:64-bit OS 只支援 Pi 3B 和 Zero 2 以上版本。

参考链接


【教學/基礎】實測 Raspberry Pi 5 上的 SD 卡效能

Raspberry Pi 携手江波龙,推出自有品牌 A2 认证 MicroSD 存储卡

Raspberry Pi 当地时间昨日(2024/10/08)新闻博客,树莓派官方宣布推出自有品牌 MicroSD 存储卡,包含 32GB、64GB 和 128GB 三种容量,旨在 Raspberry Pi 生态用户提供高性价比选择

Raspberry Pi 携手江波龙,推出自有品牌 A2 认证 microSD 存储卡

Raspberry Pi SD Card 符合 SD 6.1 规范,可在 -25℃~+85℃ 下工作,拥有 C10、U3、V30 速度等级认证,在搭配 Raspberry Pi 5、使用 SDR104 总线速度模式时随机 4K 读写性能分别可达 5000 \ 2000 IOPS。

Raspberry Pi 官方表示,其在对可提升随机 I/O 吞吐性能的 SD 存储卡命令队列(CQ)模式进行兼容性验证时发现,部分第三方 A2 应用程序性能等级存储卡并未良好实现 CQ 模式,这成为 Raspberry Pi 推出第一方 A2 速度等级存储卡的动机。

Raspberry Pi 最终选择江波龙为第一方“经济高效”存储卡的 OEM 合伙伙伴。江波龙生产的这批存储卡通过了在重 I/O 负载下意外断电 1 万次的稳健性测试,并针对 Raspberry Pi 5 进行了优化。

Raspberry Pi SD Card 存储卡 32GB 款在合作伙伴处售价 9.95 美元(备注:当前约 70.1 元人民币),64GB 款则为 11.95 美元(当前约 84.2 元人民币)。

Raspberry Pi 本次还为 Raspberry Pi 5 推出了定价 3 美元(当前约 21.1 元人民币)的 Bumper 卡扣式硅胶底座,可保护单板计算机的底部和边缘。

参考链接


Ubuntu 22.04 (x64)树莓派4B(Raspberry Pi 4B)源代码编译

树莓派上的操作


树莓派使用的系统是通过 Raspberry Pi Imager 安装的 2023-05-03-raspios-bullseye-armhf.img.xz

1.升级到最新版内核保证与下载的内核源码版本一致

2.升级完整后重启

3.查看内核版本

4.把最新版本的内核配置保存到.config中,以备以后编译内核使用

文件被存储到了/proc/config.gz中。

目前最新版本是 6.1.12,当前内核启动默认会切换到 64位内核了,即使安装的是32位系统镜像也是这样。

如果想从32位内核启动,那么需要在 config.txt 中配置 arm_64bit

继续阅读Ubuntu 22.04 (x64)树莓派4B(Raspberry Pi 4B)源代码编译

树莓派3B+/4B报告“low voltage warning”

需求场景

用的好好的树莓派,有一天连接VNC,发现桌面任务栏一直提示

如下图:

看样子是供电不足,可是树莓派的负载并不高啊。

解决方案

搜了一大圈基本都是说电源的问题,现在使用的电源是以前小米2/小米Note手机自带的电源。经过反复测试,发现跟温度有关,冬天的时候问题不大,到了夏天,由于老式电源转换效率低,大量电能被转换成了热量,导致长时间充电后,温度上升很快,引起降压,断电后过一段时间就可以了,但是一旦温度上升到一定程度,问题依旧。

后来买了个努比亚大白20W氮化镓充电器之后,就不会报告这个错误了。氮化镓的充电器转化效率更高,升温更少,并且更耐高温。

由于这个提示只有在连接显示器或VNC连接时才能在GUI桌面任务栏看到,如果是SSH登录就看不到了,非常的不方便。最好是能够通过命令判断是否电压不足。

具体的脚本详见 https://gist.github.com/maxme/d5f000c84a4313aa531288c35c3a8887

通过此脚本可以查看CPU和电压不足的问题。不过每次登录之后需要手动运行,实在不方面。而且脚本中采用了while循环需要手动中断脚本。所以可以把代码中的while循环去掉,并且在SSH登录的时候执行命令病输出到登录信息上。

注意电压充足的情况下,输出电压为1.2V,而不是 5V,主板的5V是没办法通过脚本直接测量的。我们只能通过脚本测量CPU、内存控制器、内存输入输出、内存本身的电压,主板电压只能用万用表来测量。

效果如下,具体方式参考 ubuntu修改ssh登录提示信息

修改后的raspberry-power-supply-check.sh代码如下:

参考链接


树莓派Raspberry Pi 3B+

参数一览

  • SoC:新版BCM2837B0,4 Core Cortex A53 64Bit V8,频率1.4GHz
  • RAM:1GB LPDDR2内存(我的是ELPIDA尔必达的颗粒)
  • LAN:千兆以太网接口,最高理论速率480Mbps(USB2.0总线),支持802.3az、9KB巨型帧、POE
  • WLAN&Bluetooth:Cypress CYW43455,模块化,支持2.4GHz/5GHz,802.11a/b/g/n/ac,Bluetooth 4.2
  • ROM:MicroSD Card(TF卡)
  • Other Port:HDMI x1、Ethernet x1、USB 2.0 x4,PowerIn(MicroUSB) x1,3.5mm Audio x1,Jumper x1,Camera Socket x1,Display Output Socket x1

继续阅读树莓派Raspberry Pi 3B+

树莓派固件更新 rpi-update

1 简介

rpi-update是一个用于更新树莓派固件的工具,可以通过apt get install rpi-update来安装

一般来说直接执行下面的命令就可以更新固件(扯淡,基本不可能好吗):

2 跳过自更新

rpi-update启动时会更新自己,如果报以下错误:

可以尝试一下他说的方法来解决:

如果都不行,直接跳过算了,反正也可以用apt来更新这个工具,没必要让他更新自己。

跳过自更新,直接更新固件的方法:

3 【究极方法】本地更新

即使跳过自更新,下载速度也太慢,还经常断流。可以考虑本地更新:

先在PC上下载固件(可以用一下魔法上网):

然后用scp传到树莓派上的/root目录下,之后ssh连上树莓派:

4 检查

对于树莓派4的一个检查方法:

看该目录下是否有libEGL.solibGLESv2.so这两个库,更新前这两个库都是没有的。

如果这两个库出现了,并且是真正的库而不是软链接,就说明更新大概可能也许成功了吧。

参考链接


树莓派固件更新(rpi-update)的那些坑