快速上手Banana Pi BPI-M4 Zero 全志科技H618开源硬件开发开发板

Linux[编辑]

准备[编辑]

  1. Linux镜像支持SD卡或EMMC启动,并且会优先从SD卡启动。

  2. 建议使用A1级卡,至少8GB。

  3. 如果您想从 SD 卡启动,请确保可启动 EMMC 已格式化。

  4. 如果您想从 EMMC 启动并使用 Sdcard 作为存储,请确保 SD 卡已格式化且未刷新 Linux 映像。

  5. 下载最新的[Linux Linux Image],并确认md5校验和正确。

6.默认登录:pi/bananapi 或 root/bananapi

  1. wiki 指南仅适用于 [bananapi 4.9 bsp ubuntu/debian 镜像]。

将映像安装到 SD 卡[编辑]

  1. 在 Windows、Linux 和 MacOS 上使用 Balena Etcher 安装映像。

Balena Etcher是 Balena 的一款开源 GUI 闪存工具,可将操作系统映像闪存到 SD 卡或 USB 驱动器。

2. 在 Windows、Linux 和 MacOS 上使用 Balena Cli 安装映像。

Balena CLI是 balenaCloud 或 openBalena 的命令行界面。它可用于刷新 linux 映像。从balena-io下载安装程序或独立包并将其正确安装到您的 PC,然后您可以使用balena 的" local flash "命令选项将 Linux 映像刷新到 sdcard 或 USB 驱动器。

sudo balena 本地闪存路径/to/xxx-bpi-m4-zero-xxx.img.zip
 sudo balena 本地闪存路径/to/xxx-bpi-m4-zero-xxx.img.zip --drive /dev/disk2
 sudo balena 本地闪存路径/to/xxx-bpi-m4-zero-xxx.img.zip --drive /dev/disk2 --yes
  1. 在 Linux 上使用 dd 命令安装 Image,如果自动挂载则卸载 SD 卡设备 /dev/sdX 分区。实际上 bpi-copy 和这个 dd 命令是一样的。

    sudo apt-get install pv 解压缩
    sudo unzip -p xxx-bpi-m4-zero-xxx.img.zip | sudo unzip -p xxx-bpi-m4-zero-xxx.img.zip | 光伏 | dd of=/dev/sdX bs=10M 状态=noxfer

  2. 在Linux上使用bpi-tools安装镜像,将SD卡插入Linux PC并运行

    sudo apt-get install pv 解压缩
    sudo bpi-copy xxx-bpi-m4-zero-xxx.img.zip /dev/sdX

Ubuntu 桌面[编辑]

1.使用Ubuntu桌面版系统镜像,可以获得图形操作界面。

2、需要准备一台带HDMI接口的显示器、一根HDMI线、一个mini HDMI转HDMI转接头。

3、使用HDMI线和mini HDMI转HDMI转接头连接显示器和BPI-M4 Zero,将显示器输入接口切换到对应的HDMI接口,开机,稍等片刻即可看到桌面。

调试串口[编辑]

1.准备一个3.3v USB转TTL模块。

  1. 使用 USB 转 TTL 模块连接 PC USB 端口和板上的 Debug UART 端口。

  2. 在PC上打开串口终端软件,例如mobaxterm或putty。

4.以mobaxterm为例,设置好串口号和115200波特率后,即可打开BPI-M4 Zero UART终端。

1、准备好网线和路由器。

  1. 使用网线将路由器的LAN口连接到BPI-M4 Zero,同时将PC连接到另一个LAN口。

  2. 在路由器管理界面查看BPI-M4 Zero的IP地址,或者在BPI-M4 Zero的UART终端上使用以下命令查看IP地址。

    如果配置

    eth0: 标志=4163<UP、广播、运行、组播> mtu 1500
    inet 192.168.3.10 网络掩码 255.255.255.0 广播 192.168.3.255
    inet6 fe80::3e1f:688f:81ab:d8b7 prefixlen 64scopeid 0x20<链接>
    以太 02:00:54:a0:d6:a6 txqueuelen 1000(以太网)
    RX 数据包 553 字节 92549 (92.5 KB)
    RX 错误 0 丢弃 0 溢出 0 帧 0
    TX 数据包 329 字节 26023 (26.0 KB)
    TX 错误 0 丢弃 0 溢出 0 载波 0 冲突 0
    设备中断 42

  3. 在PC上打开SSH终端软件,例如mobaxterm或putty。

5、以mobaxterm为例,在IP地址栏填写获取到的IP地址,如上面的192.168.3.10,在Port端口填写22。

6、打开SSH终端,输入登录用户名/密码:pi/bananapi或root/bananapi。输入密码时不会有提示。请正常输入,完成后按回车键。

NoMachine远程桌面[编辑]

  1. 确保BPI-M4 Zero已连接互联网,并使用以下命令下载系统中的nomachine DEB安装包。

    wget https://download.nomachine.com/download/8.9/Arm/nomachine_8.9.1_1_arm64.deb

2.或者在PC浏览器中打开NoMachine for ARM - arm64下载页面,下载DEB安装包,然后通过SSH或U盘复制到BPI-M4零用户目录。

3、下载完成后,通过以下命令进行安装。请注意,文件名以实际下载的文件名为准。

  sudo dpkg -i nomachine_8.9.1_1_arm64.deb

4、PC端还需要下载并安装NoMachine。NoMachine下载页面选择适合PC操作系统的安装包,下载到本地并完成安装。

5、注意保持PC和BPI-M4 Zero在同一个局域网内。您可以先尝试SSH连接,确保局域网内正常通信。

6、在PC上打开NoMachine,点击添加按钮,在跳转后的窗口中的主机栏中输入BPI-M4 Zero的IP地址,然后点击添加按钮。

7. 单击已识别的端口图标,在弹出的新窗口中输入用户名/密码,然后单击确定按钮。

8.完成后续设置后,就可以看到桌面了。

9. 如果 HDMI 接口没有连接任何设备,NoMachine 远程桌面将显示黑屏。建议保留 HDMI 连接或连接 HDMI 诱饵设备。

无线上网[编辑]

使用nmcli命令扫描WiFi热点、连接热点、创建AP热点。

  nmcli device #列出设备
  nmcli device wifi list # 列出可用的wifi接入点,列表可以省略
  nmcli device wifi connect [SSID] 密码 [PASSWORD] # 连接热点 mySSID。连接成功后,会自动生成配置文件。如果以后想再次连接,可以使用 nmcli connection up [SSID] 命令。
  nmcli device disconnect [设备名称] # 断开wifi,使用nmcli device命令中显示的wifi设备名称
  nmcli device wifi hotspot con-name [NAME] ifname [设备名称] ssid [SSID] 密码 [PASSWORD] # 创建AP热点

  nmcli connection show #列出网络连接配置
  nmcli connection down [NAME] # 停用连接
  nmcli connection up [NAME] # 激活连接
  nmcli connection delete [SSID] #删除一个配置,不再保存信息并自动连接

  nmcli radio wifi off # 关闭wifi
  nmcli radio wifi on # 打开 wifi
  • nmcli命令参考文档
  • nmcli 命令参考示例

设置静态IP、DNS[编辑]

  1. 要设置静态IP,需要先保持连接。如果要设置以太网静态IP,首先必须保持以太网连接;如果要设置无线网络静态IP,首先必须保持WIFI连接。

2、如果上级路由器已将您要设置的IP地址分配给其他设备,请将其更改为空闲IP,或者要求其他设备放弃该IP。

  1. 使用 nmcli connection show 命令显示所有连接,例如:

    pi@bpi-m4zero:~$ nmcli 连接显示
    名称 UUID 类型 设备
    TP-LINK_5G_7747 e4a49726-adf1-44d7-a621-0e3af96cc390 无线网络wlx2cc3e6acd5d7
    有线连接 1 612eda94-55dc-3c85-b05e-f16c41775b4e 以太网 --

  2. 使用 nmcli connection show [NAME] 命令显示特定连接的所有属性,例如:

    nmcli connection show TP-LINK_5G_7747 #如果想看以太网,改成有线连接1

    #只列出三个常见的项目
    ipv4.dns: 192.168.3.1 #默认为网关地址
    ipv4.addresses: 192.168.3.10/24 #默认为路由器DHCP分配的IP地址
    ipv4.gateway: 192.168.3.1 #网关地址,默认为路由器的IP地址

5.设置静态IP:

  nmcli连接修改TP-LINK_5G_7747 ipv4.addresses 192.168.3.2

6.设置DNS:

  nmcli 连接修改 TP-LINK_5G_7747 ipv4.dns 8.8.8.8 #Google DNS

7.重置:

  重启

8.重启后查看是否修改成功:

  如果配置
  nmcli连接显示TP-LINK_5G_7747

网络时间同步[编辑]

Chrony 是一款开源免费网络时间协议 NTP 客户端和服务器软件。它允许计算机保持系统时钟与时钟服务器(NTP)同步,从而使您的计算机保持准确的时间。Chrony还可以作为服务器软件,为其他计算机提供时间同步服务。

  timedatectl set-ntp false #禁用基于NTP的网络时间同步

  sudo apt install chrony #安装chrony
  systemctl start chrony #启动chrony
  systemctl 启用计时
  systemctl 状态计时
  systemctl restart chrony #重启服务

  timedatectl status #查看时间同步状态
  timedatectl list-timezones #查看时区列表
  timedatectl set-timezone Asia/上海 #修改时区
  timedatectl set-ntp true #启用NTP网络时间同步

  日期 #查看时间
  sudo hwclock -r #查看硬件时钟
  • 慢性参考文档

查看硬件温度[编辑]

输入以下命令可查看BPI-M4 Zero板上芯片内置传感器返回的温度数据。

  传感器

修改HDMI输出分辨率[编辑]

使用Ubuntu桌面操作系统时,可以在设置中找到显示栏,修改分辨率。

使用U盘[编辑]

  1. 准备一个已经正常分区的U盘,插入BPI-M4 Zero的USB接口。如果是A型插头的U盘,还需要一个A型转C型转接头。

2、在Ubuntu桌面版中,可以看到U盘已经被识别,可以在文件管理器中打开,或者可以通过GParted工具进行分区管理。

3. 在终端中,将U盘挂载到本地目录:

  mkdir mnt #在~/user目录下创建一个单独的目录用于挂载,方便管理
  猫 /proc/分区 | grep "sd*" #列出以sd开头的分区
  sudo mount /dev/sda1 ~/mnt/ #挂载 /dev/sda1 到 ~/mnt/
  ls ~/mnt/ #挂载后可以列出U盘中的文件
  sudo umount -v /dev/sda1 #umount,即可移除U盘

使用音频设备[编辑]

准备一个音频文件,通过U盘或SSH复制到BPI-M4 Zero Ubuntu桌面系统。

HDMI音频[编辑]

1.准备一台具有HDMI音频输入功能的显示器,在显示器设置中打开相关功能,使用HDMI线和mini HDMI转HDMI适配器连接显示器。

  1. 在设置的声音栏中将输出设备设置为 HDMI 音频。

3.播放音频。

使用蓝牙[编辑]

  1. 打开Ubuntu桌面的设置,在蓝牙栏中连接蓝牙设备,例如蓝牙鼠标或键盘。

2、在终端中通过命令行连接蓝牙设备的方法如下:

pi@bpi-m4zero:~$ sudo bluetoothctl #打开蓝牙设备管理工具
[sudo] pi 的密码:
代理注册
[CHG] 控制器 2C:C3:E6:AC:D5:D8 可配对:是
[bluetooth]# power on #启动蓝牙功能,power off将其关闭
更改电源成功
[bluetooth]# discoveryable on #允许发现此设备
更改可发现成功
[CHG] 控制器 2C:C3:E6:AC:D5:D8 可发现:是
[蓝牙]# 可配对 #允许设备配对
更改配对成功
[蓝牙]# scan on #开始扫描
发现开始
[CHG] 控制器 2C:C3:E6:AC:D5:D8 发现:是
[NEW] Device D4:C4:85:A5:C6:B1 Logitech Pebble #蓝牙鼠标的MAC地址和设备名称
[CHG] 设备 D4:C4:85:A5:C6:B1 TxPower: 4
[bluetooth]#pair D4:C4:85:A5:C6:B1 #配对要连接的蓝牙设备的MAC地址
尝试与 D4:C4:85:A5:C6:B1 配对
[CHG] 设备 D4:C4:85:A5:C6:B1 已连接:是
[删除] 设备 A4:C1:38:9B:F6:FD SLPO20N20200059
[CHG] 设备 D4:C4:85:A5:C6:B1 UUID:00001800-0000-1000-8000-00805f9b34fb
[CHG] 设备 D4:C4:85:A5:C6:B1 UUID:00001801-0000-1000-8000-00805f9b34fb
[CHG] 设备 D4:C4:85:A5:C6:B1 UUID:0000180a-0000-1000-8000-00805f9b34fb
[CHG] 设备 D4:C4:85:A5:C6:B1 UUID: 0000180f-0000-1000-8000-00805f9b34fb
[CHG] 设备 D4:C4:85:A5:C6:B1 UUID: 00001812-0000-1000-8000-00805f9b34fb
[CHG] 设备 D4:C4:85:A5:C6:B1 UUID:00010000-0000-1000-8000-011f2000046d
[CHG] 设备 D4:C4:85:A5:C6:B1 服务已解决:是
[CHG] 设备 D4:C4:85:A5:C6:B1 配对:是
配对成功#配对成功
[CHG] 设备 D4:C4:85:A5:C6:B1 模式别名:usb:v046DpB021d0007
[bluetooth]# exit #退出蓝牙设备管理工具
pi@bpi-m4zero:~$

archlinux蓝牙参考文档

传输文件[编辑]

SCP[编辑]

Linux系统中的scp(安全复制)命令用于以安全的方式在服务器之间复制文件。

SCP 命令或安全复制允许在本地主机和远程主机之间或两个远程主机之间安全地传输文件。

它使用与 Secure Shell (SSH) 协议中使用的相同的身份验证和安全性。

您可以将文件从 Windows 终端复制到同一 LAN 上的 Linux 系统。只需确保 Open SSH 客户端已打开并且可以在"设置">"应用程序">"可选功能"中查看。

如果要将文件从Windows系统复制到Linux系统,还需要启用Open SSH服务器。

scp命令格式为:

scp [可选] 文件源 文件目标

1.[options]为可选参数,如-r,可用于递归复制整个目录。

2.file_source 要复制的文件或目录。

3.file_target如果最后输入了特定的文件名,则会复制过去的路径并重命名。

以将本地文件从Windows系统复制到Linux系统为例。在 Windows 终端中,输入:

PS D:\temp\temp_4> scp ".\hello.txt" pi@192.168.3.12 :"/home/pi/Downloads/"

您还可以在Windows终端中将Linux系统中的文件复制到本地计算机:

PS D:\temp\temp_4> scp pi@192.168.3.12 :"/home/pi/Downloads/hello.txt" "D:\temp\temp_4"

其中pi@192.168.3.12为Linux系统中的用户名,BPI-M4 Zero在局域网中的IP地址。

其中:"/home/pi/Downloads/hello.txt"是Linux系统中的文件路径。

其中"D:\temp\temp_4"是Windows系统中的路径。

scp参考文档

mobaxterm

可以使用 mobaxterm 或其他类似软件通过图形界面管理文件。

mobaxterm 下载

mobaxterm-linux 预览版

如下图,在mobaxterm中建立SSH连接后,界面左侧会出现文件管理窗口,支持通过拖放文件的方式进行复制粘贴。

相关推荐
小牛itbull11 分钟前
ReactPress 安装指南:从 MySQL 安装到项目启动
前端·javascript·数据库·mysql·react.js·开源·reactpress
蜜桃小阿雯1 小时前
JAVA开源项目 微服务在线教育系统 计算机毕业设计
java·开发语言·spring boot·微服务·java-ee·开源·maven
shitian08114 小时前
用轻量云服务器搭建一个开源的商城系统,含小程序和pc端
服务器·小程序·开源
修复bug5 小时前
npm完整发包流程(亲测可验证)
前端·npm·开源
科士威传动7 小时前
微型导轨在自动化生产线中起什么作用?
人工智能·科技·自动化·制造
IT规划师13 小时前
开源 - Ideal库 - 常用枚举扩展方法(二)
开源·c#·.net core·ideal库·枚举转换
_xaboy14 小时前
开源项目低代码表单设计器FcDesigner扩展组件分组
低代码·开源·动态表单·formcreate·低代码表单·可视化表单设计器
亥时科技15 小时前
相亲小程序(源码+文档+部署+讲解)
java·小程序·开源·源代码管理
OpenBayes18 小时前
OpenBayes 一周速览丨VASP 教程上线!HPC 助力材料计算;AllClear 公共云层去除数据集发布,含超 23k 个全球分布的兴趣区域
人工智能·深度学习·机器学习·自然语言处理·开源·数据集·大语言模型