Banana Pi M2 Zero 是一款超紧凑型单板计算机,尺寸仅 60 mm × 30 mm。它搭载 Allwinner H2+ 四核 Cortex-A7 处理器和 512 MB RAM,适合空间受限的轻量级系统应用。与其他 Banana Pi 产品一样,它同时支持 Linux 和 Android 操作系统。
四核 ARM Cortex A7 CPU H2+
512 MB SDRAM
板载 WiFi(AP6212)和蓝牙
Mini HDMI
建议使用 A1 等级、容量至少 8 GB 的存储卡。
在 Linux PC 上安装 bpi-tools(如果使用其他工具烧录镜像,可跳过此步)。如果无法访问安装地址或遇到其他安装问题,请前往 bpi-tools 源代码仓库,手动下载并安装。
$ apt-get install pv
$ curl -sL https://github.com/BPI-SINOVOIP/bpi-tools/raw/master/bpi-tools | sudo -E bash
下载最新的 Linux 镜像,并确认 MD5 校验和正确。
默认登录账号/密码:pi/bananapi 或 root/bananapi
Windows PC
使用 balenaEtcher 安装镜像。
balenaEtcher 是 Balena 开发的开源图形化烧录工具,可将操作系统镜像写入 SD 卡或 USB 存储设备。
单击“Flash from file”选择镜像。
单击“Select target”选择目标设备。
单击“Flash!”开始烧录。
Linux PC
有两种方法供您选择。
在 Linux 上使用 dd 命令写入镜像。如果系统自动挂载了 SD 卡设备 /dev/sdX 的分区,请先卸载。bpi-copy 实际执行的操作与此 dd 命令相同。
$ sudo apt-get install pv unzip
$ sudo unzip -p xxx-bpi-m2_zero-xxx.img.zip | pv | dd of=/dev/sdX bs=10M status=noxfer
在 Linux 上使用 bpi-tools 安装镜像:将 SD 卡插入 Linux PC,然后执行以下命令。
$ sudo apt-get install pv unzip
$ sudo bpi-copy xxx-bpi-m2_zero-xxx.img.zip /dev/sdX
获取 M2 Zero BSP 源代码
$ git clone https://github.com/BPI-SINOVOIP/BPI-M2P-bsp-4.4
按 README.md 中的说明构建源代码,并将软件包更新到已烧录 BPI 镜像的 SD 卡。
准备一张已安装系统(Ubuntu/Raspbian 等)的 SD 卡。
从 SD 卡启动。启动完成后,复制所需文件并配置系统,然后关闭 M2 Zero。(如果无须配置系统,可跳过此步。)
将 SD 卡插入运行 Linux 的 PC。
cd /media
然后执行:
ln -s <your account> pi
执行
bpi-migrate -c bpi-m2z.conf -c ubuntu-mate-from-sd.conf -d /dev/sdx
此时即可得到自定义镜像。
在 M2 Zero 控制台上:
执行
./adbd.sh
然后执行
ps -ax | grep adbd
检查 adbd 是否已启动。
在 PC 终端上:
如果 adbd 已成功启动,请通过 OTG-USB 线将 M2 Zero 连接到运行 Ubuntu 的 PC。 执行
adb devices
检查 PC 是否已识别 M2 Zero 的 OTG 设备。 如果已经识别,可执行:
adb shell
此时已通过 adb 连接到 M2 Zero。
可通过以下两种方式配置 WiFi 客户端。
使用命令设置 WiFi 客户端
ip link set wlan0 up
iw dev wlan0 scan | grep SSID
vim /etc/wpa_supplicant/wpa_supplicant.conf
network={
ssid="ssid"
psk="password"
priority=1
}
wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
dhclient wlan0
通过图形界面配置 WiFi 客户端
git clone https://github.com/BPI-SINOVOIP/BPI-files/tree/master/SD/100MB
bpi-bootsel BPI-cleanboot-8k.img.gz /dev/sdX
这里使用 HDF5640 摄像头。
Guvcview
通过图形界面操作摄像头。
依次选择 Applications → Sound & Video → guvcview。
Shell
/usr/local/bin 中还提供了用于测试摄像头的内置命令。
测试拍照功能
./test_ov5640_image_mode.sh
测试视频录制功能
./cameratest.sh
如何更改显示分辨率
以下以将 M2Z 的 HDMI 输出改为 1080P 为例。
执行
mount /dev/mmcblk0p1 /mnt
cd /mnt/bananapi/bpi-m2z/linux
找到“sys_config.fex”。
执行
vim sys_config.fex
将
screen0_output_mode = 5
改为
screen0_output_mode = 10
保存修改后,使用
fex2bin
命令“fex2bin sys_config.fex script.bin”将 sys_config.fex 转换为 bin 文件,然后重新启动。
参数含义:
安装 BPI-Tools
curl -sL https://github.com/BPI-SINOVOIP/bpi-tools/raw/master/bpi-tools | sudo -E bash -
更新 BPI-Tools
bpi-tools
安装 RPi.GPIO
git clone https://github.com/BPI-SINOVOIP/RPi.GPIO
cd RPi.GPIO
sudo apt-get update
sudo apt-get install python-dev python3-dev
执行
sudo python setup.py install
或
sudo python3 setup.py install
使用 RPi.GPIO
cd /usr/local/bin
./bpi_test_g40.py
还提供以下内置测试命令:
/usr/local/bin
如何更新 WiringPi
bpi-update -c pkglist.conf
bpi-update -c bpi-pkg-bpi-wiringpi.conf
RGB 1602 LCD
/usr/local/bin/bpi_test_lcd1602.sh
0.96 英寸 OLED 显示屏
/usr/local/bin/bpi_test_52pi.sh
8×8 RGB LED 矩阵
首先需要一块用于 8×8 LED 矩阵的 GPIO 扩展板。
/usr/local/bin/bpi_test_gpio40.sh