Difference between revisions of "Template:FriendlyCoreGeneral/zh"
(updated by API) |
(updated by API) |
||
(48 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
{{FriendlyCoreRK3399Introduce/zh}} | {{FriendlyCoreRK3399Introduce/zh}} | ||
| NanoPi-M4 = | | NanoPi-M4 = | ||
+ | {{FriendlyCoreRK3399Introduce/zh}} | ||
+ | | NanoPi-M4V2 = | ||
+ | {{FriendlyCoreRK3399Introduce/zh}} | ||
+ | | NanoPi-M4B = | ||
{{FriendlyCoreRK3399Introduce/zh}} | {{FriendlyCoreRK3399Introduce/zh}} | ||
| NanoPi-NEO4 = | | NanoPi-NEO4 = | ||
{{FriendlyCoreRK3399Introduce/zh}} | {{FriendlyCoreRK3399Introduce/zh}} | ||
− | | NanoPi-R1 = | + | | SOM-RK3399 = |
− | {{ | + | {{FriendlyCoreRK3399Introduce/zh}} |
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2S-Plus | ||
+ | | NanoPi-R2C = | ||
+ | {{FriendlyCoreRK3328Introduce/zh}} | ||
+ | | NanoPi-Duo | ||
+ | | NanoPi-Duo2 | ||
+ | | NanoPi-K1-Plus | ||
+ | | NanoPi-M1 | ||
+ | | NanoPi-M1-Plus | ||
+ | | NanoPi-NEO | ||
+ | | NanoPi-NEO2 | ||
+ | | NanoPi-NEO2-Black | ||
+ | | NanoPi-NEO-Air | ||
+ | | NanoPi-NEO-Core | ||
+ | | NanoPi-NEO-Core2 | ||
+ | | NanoPi-NEO-Plus2 | ||
+ | | NanoPi-R1 | ||
+ | | NanoPi-R1S-H3 | ||
+ | | NanoPi-R1S-H5 | ||
+ | | ZeroPi = | ||
+ | {{FriendlyCoreAllwinnerIntroduce/zh}} | ||
| #default = | | #default = | ||
{{FriendlyCoreGeneralIntroduce/zh}} | {{FriendlyCoreGeneralIntroduce/zh}} | ||
}} | }} | ||
===运行FriendlyCore=== | ===运行FriendlyCore=== | ||
+ | {{#switch: {{{1}}} | ||
+ | | SOM-4418 = | ||
+ | | #default = | ||
* 对于有HDMI接口的板子,如果要在电视上进行操作,您需要连接USB鼠标和键盘。 | * 对于有HDMI接口的板子,如果要在电视上进行操作,您需要连接USB鼠标和键盘。 | ||
− | * 如果您需要进行内核开发,最好选购一个串口配件,连接了串口,则可以通过串口终端对开发板进行操作。 | + | * 如果您需要进行内核开发,最好选购一个串口配件,连接了串口,则可以通过串口终端对开发板进行操作。 |
+ | }} | ||
{{#switch: {{{1}}} | {{#switch: {{{1}}} | ||
| NanoPC-T4 = | | NanoPC-T4 = | ||
| NanoPi-M4 = | | NanoPi-M4 = | ||
+ | | NanoPi-M4V2 = | ||
+ | | NanoPi-M4B = | ||
| NanoPi-NEO4 = | | NanoPi-NEO4 = | ||
− | | NanoPi-NEO2 = | + | | SOM-RK3399 = |
− | + | | NanoPi-NEO2 = | |
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-NEO2.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-NEO2.jpg|frameless|400px]]<br> | ||
| NanoPi-NEO = | | NanoPi-NEO = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-NEO.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-NEO.jpg|frameless|400px]]<br> | ||
| NanoPi-NEO-Plus2 = | | NanoPi-NEO-Plus2 = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-NEO-Plus2.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-NEO-Plus2.jpg|frameless|400px]]<br> | ||
| NanoPi-NEO-Core = | | NanoPi-NEO-Core = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-NEO-Core.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-NEO-Core.jpg|frameless|400px]]<br> | ||
| NanoPi-M1 = | | NanoPi-M1 = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-M1.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-M1.jpg|frameless|400px]]<br> | ||
| NanoPi-M1-Plus = | | NanoPi-M1-Plus = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-NanoPi-M1-Plus.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-NanoPi-M1-Plus.jpg|frameless|400px]]<br> | ||
| NanoPi-A64 = | | NanoPi-A64 = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-A64.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-A64.jpg|frameless|400px]]<br> | ||
| NanoPi-NEO-Air = | | NanoPi-NEO-Air = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
[[File:PSU-ONECOM-AIR.jpg|frameless|400px]]<br> | [[File:PSU-ONECOM-AIR.jpg|frameless|400px]]<br> | ||
| NanoPi-R1 = | | NanoPi-R1 = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
− | 接上串口后,请注意串口模块的DC口和NanoPi | + | 接上串口后,请注意串口模块的DC口和NanoPi R1的MicroUSB口都需要供电:<br /> |
[[File:PSU-ONECOM-R1.jpg|frameless|500px]]<br> | [[File:PSU-ONECOM-R1.jpg|frameless|500px]]<br> | ||
− | | NanoPi- | + | | NanoPi-R1S-H3 = |
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,请注意串口模块的DC口和NanoPi R1S-H3的MicroUSB口都需要供电:<br /> | ||
+ | [[File:PSU-ONECOM-R1S.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-R1S-H5 = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,请注意串口模块的DC口和NanoPi R1S-H5的MicroUSB口都需要供电:<br /> | ||
+ | [[File:PSU-ONECOM-R1S.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2C = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,请注意串口模块的DC口和NanoPi都需要供电:<br /> | ||
+ | [[File:PSU-ONECOM-R1S.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-NEO2-Black = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,请注意串口模块的DC口和NanoPi NEO2 Black的MicroUSB口都需要供电:<br /> | ||
+ | [[File:PSU-ONECOM-NEO2-Black.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-Duo | ||
| NanoPi-Duo2 = | | NanoPi-Duo2 = | ||
− | + | <!-- Duox not support ONECOM --> | |
+ | | SOM-4418 = | ||
| #default = | | #default = | ||
− | + | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | |
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
以NanoPi-M1为例:<br>[[File:PSU-ONECOM-M1.jpg|frameless|400px]]<br> | 以NanoPi-M1为例:<br>[[File:PSU-ONECOM-M1.jpg|frameless|400px]]<br> | ||
}} | }} | ||
{{#switch: {{{1}}} | {{#switch: {{{1}}} | ||
+ | | SOM-RK3399 = | ||
+ | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:somrk3399usb2serialport.jpg|frameless|500px]]<br> | ||
| NanoPC-T4 = | | NanoPC-T4 = | ||
{{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:T4usb2serialport.jpg|frameless|500px]]<br> | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:T4usb2serialport.jpg|frameless|500px]]<br> | ||
| NanoPi-M4 = | | NanoPi-M4 = | ||
+ | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:m4usb2serialport.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-M4V2 = | ||
+ | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:m4usb2serialport.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-M4B = | ||
{{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:m4usb2serialport.jpg|frameless|500px]]<br> | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:m4usb2serialport.jpg|frameless|500px]]<br> | ||
| NanoPi-NEO4 = | | NanoPi-NEO4 = | ||
Line 73: | Line 131: | ||
也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
[[File:USB2UART-NEO2.jpg|frameless|400px]]<br> | [[File:USB2UART-NEO2.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO2-Black = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:Matrix-USB2UART_nanopi_NEO2-Black.jpg|frameless|500px]]<br> | ||
| NanoPi-NEO-Core = | | NanoPi-NEO-Core = | ||
也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
Line 94: | Line 155: | ||
也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
[[File:Matrix-USB2UART_nanopi_NEO.jpg|frameless|400px]]<br> | [[File:Matrix-USB2UART_nanopi_NEO.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO-Air = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:Matrix-USB2UART_NEO_Air.jpg|frameless|500px]]<br> | ||
| NanoPi-R1 = | | NanoPi-R1 = | ||
也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
[[File:Matrix-USB2UART_nanopi_R1.jpg|frameless|500px]]<br> | [[File:Matrix-USB2UART_nanopi_R1.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-R1S-H3 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:Matrix-USB2UART_nanopi_R1S-H3.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-R1S-H5 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:Matrix-USB2UART_nanopi_R1S-H3.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2C = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板供电:<br> | ||
+ | [[File:Matrix-USB2UART_nanopi_R2S.jpg|frameless|500px]]<br> | ||
+ | | SOM-4418 = | ||
| #default = | | #default = | ||
也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
Line 117: | Line 193: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | <!-- | ||
===使用npi-config配置系统=== | ===使用npi-config配置系统=== | ||
npi-config是一个命令行下的系统配置工具,可以对系统进行一些初始化的配置,可配置的项目包括:用户密码、系统语言、时区、Hostname、SSH开关、自动登录选项等,在命令行执行以下命令即可进入: | npi-config是一个命令行下的系统配置工具,可以对系统进行一些初始化的配置,可配置的项目包括:用户密码、系统语言、时区、Hostname、SSH开关、自动登录选项等,在命令行执行以下命令即可进入: | ||
Line 124: | Line 201: | ||
npi-config的显示界面如下所示:<br /> | npi-config的显示界面如下所示:<br /> | ||
[[File:npi-config.jpg|frameless|500px|npi-config]]<br /> | [[File:npi-config.jpg|frameless|500px|npi-config]]<br /> | ||
+ | --> | ||
{{#switch: {{{1}}} | {{#switch: {{{1}}} | ||
| NanoPC-T4 = | | NanoPC-T4 = | ||
{{FriendlyCoreRK3399QtDev/zh}} | {{FriendlyCoreRK3399QtDev/zh}} | ||
| NanoPi-M4 = | | NanoPi-M4 = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-M4V2 = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-M4B = | ||
{{FriendlyCoreRK3399QtDev/zh}} | {{FriendlyCoreRK3399QtDev/zh}} | ||
| NanoPi-NEO4 = | | NanoPi-NEO4 = | ||
{{FriendlyCoreRK3399QtDev/zh}} | {{FriendlyCoreRK3399QtDev/zh}} | ||
− | | NanoPi- | + | | NanoPi-R2S |
− | + | | NanoPi-R2C-Plus | |
+ | | NanoPi-R2S-Plus | ||
+ | | NanoPi-R2C = | ||
+ | {{FriendlyCoreRK3328QtDev/zh}} | ||
| #default = | | #default = | ||
===开发Qt应用=== | ===开发Qt应用=== | ||
请参考 [[How to Build and Install Qt Application for FriendlyELEC Boards/zh]]<br> | 请参考 [[How to Build and Install Qt Application for FriendlyELEC Boards/zh]]<br> | ||
}} | }} | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
===开机自动运行Qt示例程序=== | ===开机自动运行Qt示例程序=== | ||
使用npi-config工具进行开启: | 使用npi-config工具进行开启: | ||
Line 147: | Line 229: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
进入Boot Options -> Autologin -> Qt/Embedded,选择Enable然后重启即可。 | 进入Boot Options -> Autologin -> Qt/Embedded,选择Enable然后重启即可。 | ||
− | |||
− | |||
===扩展TF卡文件系统=== | ===扩展TF卡文件系统=== | ||
第一次启动FriendlyCore系统时,系统会自动扩展文件系统分区,请耐心等待,TF卡/eMMC的容量越大,需要等待的时间越长,进入系统后执行下列命令查看文件系统分区大小: | 第一次启动FriendlyCore系统时,系统会自动扩展文件系统分区,请耐心等待,TF卡/eMMC的容量越大,需要等待的时间越长,进入系统后执行下列命令查看文件系统分区大小: | ||
Line 155: | Line 235: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | {{#switch: {{{1}}} | ||
+ | | NanoPi-NEO | ||
+ | | NanoPi-DUO | ||
+ | | NanoPi-M1 | ||
+ | | NanoPi-NEO-Core | ||
+ | | NanoPi-NEO2 | ||
+ | | NanoPi-NEO-Core2 | ||
+ | | NanoPi-NEO2-Black | ||
+ | | NanoPi-R1S-H3 | ||
+ | | NanoPi-R1S-H5 | ||
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2S-Plus | ||
+ | | ZeroPi = | ||
+ | <!-- 这些板子不带蓝牙功能 --> | ||
+ | | #default = | ||
===使用蓝牙传输文件=== | ===使用蓝牙传输文件=== | ||
以传输文件到手机为例进行说明,首先,将你的手机蓝牙设置为可侦测状态,然后执行以下命令开始蓝牙搜索:<br /> | 以传输文件到手机为例进行说明,首先,将你的手机蓝牙设置为可侦测状态,然后执行以下命令开始蓝牙搜索:<br /> | ||
Line 202: | Line 299: | ||
apt-get install bluetooth bluez obexftp openobex-apps python-gobject ussp-push | apt-get install bluetooth bluez obexftp openobex-apps python-gobject ussp-push | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | }} | |
===连接WiFi=== | ===连接WiFi=== | ||
{{Linux-WiFi/zh}} | {{Linux-WiFi/zh}} | ||
− | |||
<!--带WiFi和BT的APXX芯片的板子--> | <!--带WiFi和BT的APXX芯片的板子--> | ||
{{#switch: {{{1}}} | {{#switch: {{{1}}} | ||
Line 215: | Line 311: | ||
{{Linux-Bluetooth/zh}} | {{Linux-Bluetooth/zh}} | ||
| NanoPC-T2 = | | NanoPC-T2 = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | SOM-4418 = | ||
{{S5Pxx18-APmode/zh}} | {{S5Pxx18-APmode/zh}} | ||
{{Linux-Bluetooth/zh}} | {{Linux-Bluetooth/zh}} | ||
Line 233: | Line 332: | ||
{{Linux-Bluetooth/zh}} | {{Linux-Bluetooth/zh}} | ||
}} | }} | ||
+ | |||
===连接以太网=== | ===连接以太网=== | ||
− | |||
默认插上网线开机,会自动连接并通过DHCP获取IP地址,如需要配置静态IP地址,请参考 NetworkManager 的相关文档: [[Use NetworkManager to configure network settings]]。 | 默认插上网线开机,会自动连接并通过DHCP获取IP地址,如需要配置静态IP地址,请参考 NetworkManager 的相关文档: [[Use NetworkManager to configure network settings]]。 | ||
− | |||
{{#switch: {{{1}}} | {{#switch: {{{1}}} | ||
| NanoPC-T4 | NanoPi-M4 | NanoPi-NEO4 = | | NanoPC-T4 | NanoPi-M4 | NanoPi-NEO4 = | ||
Line 250: | Line 348: | ||
| #default = | | #default = | ||
}} | }} | ||
+ | |||
+ | ===定制命令行的欢迎信息(文字LOGO)=== | ||
+ | 欢迎信息主要是这个目录下的脚本来打印的: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | /etc/update-motd.d/ | ||
+ | </syntaxhighlight> | ||
+ | 比如要修改 FriendlyELEC 的大字LOGO,可以修改/etc/update-motd.d/10-header 这个文件,比如要将LOGO改为HELLO,可将以下行: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | TERM=linux toilet -f standard -F metal $BOARD_VENDOR | ||
+ | </syntaxhighlight> | ||
+ | 改为: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | TERM=linux toilet -f standard -F metal HELLO | ||
+ | </syntaxhighlight> | ||
+ | ===修改时区=== | ||
+ | 例如更改为Shanghai时区: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo rm /etc/localtime | ||
+ | sudo ln -ls /usr/share/zoneinfo/Asia/Shanghai /etc/localtime | ||
+ | </syntaxhighlight> | ||
+ | |||
{{#switch: {{{1}}} | {{#switch: {{{1}}} | ||
| NanoPC-T4 = | | NanoPC-T4 = | ||
{{RK3399SelectALSAAudioDevice/zh}} | {{RK3399SelectALSAAudioDevice/zh}} | ||
| NanoPi-M4 = | | NanoPi-M4 = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M4V2 = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M4B = | ||
{{RK3399SelectALSAAudioDevice/zh}} | {{RK3399SelectALSAAudioDevice/zh}} | ||
| NanoPi-NEO4 = | | NanoPi-NEO4 = | ||
{{RK3399SelectALSAAudioDevice/zh}} | {{RK3399SelectALSAAudioDevice/zh}} | ||
− | | NanoPi-R1 = | + | | SOM-RK3399 = |
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPC-T2 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | SOM-4418 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPC-T3 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPC-T3-Plus = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi2 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-Fire2A = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M2A = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-S2 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | Smart4418 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | Smart6818 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-Fire3 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M3 = | ||
+ | {{S5Pxx18SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-Duo2 = | ||
+ | {{SelectAudio/zh |NanoPi-Duo2 }} | ||
+ | | NanoPi-R1 | ||
+ | | NanoPi-R1S-H3 | ||
+ | | NanoPi-R1S-H5 | ||
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2S-Plus | ||
+ | | NanoPi-R2C = | ||
<!-- do nothing --> | <!-- do nothing --> | ||
| #default = | | #default = | ||
{{SelectAudio/zh}} | {{SelectAudio/zh}} | ||
+ | }} | ||
+ | |||
+ | {{#switch: {{{1}}} | ||
+ | | NanoPC-T4 = | ||
+ | {{RK3399FanControl/zh}} | ||
+ | | NanoPi-M4 = | ||
+ | {{RK3399FanControl/zh}} | ||
+ | | NanoPi-M4V2 = | ||
+ | {{RK3399FanControl/zh}} | ||
+ | | NanoPi-M4B = | ||
+ | {{RK3399FanControl/zh}} | ||
+ | | NanoPi-M4B = | ||
+ | {{RK3399FanControl/zh}} | ||
+ | | SOM-RK3399 = | ||
+ | {{RK3399FanControl/zh}} | ||
+ | | NanoPi-NEO4 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPC-T2 = | ||
+ | <!-- do nothing --> | ||
+ | | SOM-4418 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPC-T3 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPC-T3-Plus = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi2 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-Fire2A = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-M2A = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-S2 = | ||
+ | <!-- do nothing --> | ||
+ | | Smart4418 = | ||
+ | <!-- do nothing --> | ||
+ | | Smart6818 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-Fire3 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-M3 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-Duo2 = | ||
+ | <!-- do nothing --> | ||
+ | | NanoPi-R1 | ||
+ | | NanoPi-R1S-H3 | ||
+ | | NanoPi-R1S-H5 | ||
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2S-Plus | ||
+ | | NanoPi-R2C = | ||
+ | <!-- do nothing --> | ||
+ | | #default = | ||
+ | <!-- do nothing --> | ||
}} | }} |
Latest revision as of 10:53, 4 December 2023
Contents
1 FriendlyCore的使用
1.1 介绍
FriendlyCore,是一个没有X-windows环境,基于Ubuntu core构建的系统,使用Qt-Embedded作为图形界面的轻量级系统,兼容Ubuntu系统软件源,非常适合于企业用户用作产品的基础OS。
本系统除了保留Ubuntu Core的特性以外,还包括以下特性:
- 支持电容和电阻触摸屏 (型号:S700, X710, S70, HD702, S430, HD101, S70等友善电子推出的LCD屏)
- 支持WiFi连接
- 支持以太网连接
- 支持蓝牙,已预装bluez等相关软件包
- 支持音频播放
- 支持Qt 5.10.0 EGLES和OpenGL ES1.1/2.0 (限S5P4418/S5P6818平台)
1.2 运行FriendlyCore
- 对于有HDMI接口的板子,如果要在电视上进行操作,您需要连接USB鼠标和键盘。
- 如果您需要进行内核开发,最好选购一个串口配件,连接了串口,则可以通过串口终端对开发板进行操作。
使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:
接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:
以NanoPi-M1为例:
也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:
以NanoPi-NEO2为例:
- FriendlyCore默认帐户:
普通用户:
用户名: pi 密码: pi
Root用户:
用户名: root 密码: fa
默认会以 pi 用户自动登录,你可以使用 sudo npi-config 命令取消自动登录。
- 更新软件包:
$ sudo apt-get update
1.3 开发Qt应用
请参考 How to Build and Install Qt Application for FriendlyELEC Boards/zh
1.4 开机自动运行Qt示例程序
使用npi-config工具进行开启:
sudo npi-config
进入Boot Options -> Autologin -> Qt/Embedded,选择Enable然后重启即可。
1.5 扩展TF卡文件系统
第一次启动FriendlyCore系统时,系统会自动扩展文件系统分区,请耐心等待,TF卡/eMMC的容量越大,需要等待的时间越长,进入系统后执行下列命令查看文件系统分区大小:
df -h
1.6 使用蓝牙传输文件
以传输文件到手机为例进行说明,首先,将你的手机蓝牙设置为可侦测状态,然后执行以下命令开始蓝牙搜索:
hcitool scan
搜索到设备时,结果举例如下:
Scanning ... 2C:8A:72:1D:46:02 HTC6525LVW
这表示搜索到一台名为HTC6525LVW的手机,我们记下手机名称前面的MAC地址,然后用sdptool命令查看该手机支持的蓝牙服务:
sdptool browser 2C:8A:72:1D:46:02
注:上述命令中的MAC地址请替换成手机实际的蓝牙MAC地址
这个命令会详细列出手机蓝牙所支持的协议,我们需要关心的是一个名为 OBEX Object Push 的文件传输服务,以HTC6525LVW手机为例,其显示结果如下所示:
Service Name: OBEX Object Push Service RecHandle: 0x1000b Service Class ID List: "OBEX Object Push" (0x1105) Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 12 "OBEX" (0x0008) Profile Descriptor List: "OBEX Object Push" (0x1105) Version: 0x0100
从上面的信息可以看到,这个手机的OBEX Object Push服务的所用的频道是12, 我们需要将它传递给obexftp命令,最后发起文件传输请求的命令如下:
obexftp --nopath --noconn --uuid none --bluetooth -b 2C:8A:72:1D:46:02 -B 12 -put example.jpg
注:上述命令中的MAC地址、频道和文件名请替换成实际的
执行上述命令后,请留意手机屏幕,正常情况下手机会弹出配对和接收文件的提示,确定后就开始文件传輪了。
蓝牙常见问题:
1) 开发板上找不到蓝牙设备, 可尝试用以下命令开启蓝牙:
rfkill unblock 0
2) 提示找不到相关命令,可尝试用以下命令安装相关软件:
apt-get install bluetooth bluez obexftp openobex-apps python-gobject ussp-push
1.7 连接WiFi
无论是SD WiFi还是USB WiFi, 它们的连接方式都是一样的。正基科技的APXX系列芯片属于SD WiFi,另外系统默认也已经支持市面上众多常见的USB WiFi,已测试过的USB WiFi型号如下:
序号 型号 1 RTL8188CUS/8188EU 802.11n WLAN Adapter 2 RT2070 Wireless Adapter 3 RT2870/RT3070 Wireless Adapter 4 RTL8192CU Wireless Adapter 5 小米WiFi mt7601 6 5G USB WiFi RTL8821CU 7 5G USB WiFi RTL8812AU
目前使用 NetworkManager 工具来管理网络,其在命令行下对应的命令是 nmcli,要连接WiFi,相关的命令如下:
- 切换到root账户
$ su root
- 查看网络设备列表
$ nmcli dev
注意,如果列出的设备状态是 unmanaged 的,说明网络设备不受NetworkManager管理,你需要清空 /etc/network/interfaces下的网络设置,然后重启.
- 开启WiFi
$ nmcli r wifi on
- 扫描附近的 WiFi 热点
$ nmcli dev wifi
- 连接到指定的 WiFi 热点
$ nmcli dev wifi connect "SSID" password "PASSWORD" ifname wlan0
请将 SSID和 PASSWORD 替换成实际的 WiFi名称和密码。
连接成功后,下次开机,WiFi 也会自动连接。
更详细的NetworkManager使用指南可参考这篇文章: Use NetworkManager to configure network settings
如果你的USB WiFi无法正常工作, 大概率是因为文件系统里缺少了对应的USB WiFi固件。对于Debian系统, 可以在Debian-WiFi里找到并安装USB WiFi芯片的固件。而对于Ubuntu系统, 则可以通过下列命令安装所有的USB WiFi固件:
$ apt-get install linux-firmware
一般情况下, 各种WiFi芯片的固件都存放在/lib/firmware目录下。
1.8 连接以太网
默认插上网线开机,会自动连接并通过DHCP获取IP地址,如需要配置静态IP地址,请参考 NetworkManager 的相关文档: Use NetworkManager to configure network settings。
1.9 定制命令行的欢迎信息(文字LOGO)
欢迎信息主要是这个目录下的脚本来打印的:
/etc/update-motd.d/
比如要修改 FriendlyELEC 的大字LOGO,可以修改/etc/update-motd.d/10-header 这个文件,比如要将LOGO改为HELLO,可将以下行:
TERM=linux toilet -f standard -F metal $BOARD_VENDOR
改为:
TERM=linux toilet -f standard -F metal HELLO
1.10 修改时区
例如更改为Shanghai时区:
sudo rm /etc/localtime sudo ln -ls /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
1.11 选择系统默认音频设备
如果当前系统存在多个音频设备, 例如HDMI-Audio、3.5mm耳机座、I2S-Codec时, 可以通过下列操作设置系统默认使用的音频设备。
- 启动板子后,执行以下步骤安装alsa包:
$ apt-get update $ apt-get install libasound2 $ apt-get install alsa-base $ apt-get install alsa-utils
- 安装好需要的库后,查看系统当前所有的声卡设备的序列号。这里假设aplay的输出如下, 并不是真实情况, 请根据实际情况进行相对应的修改:
$ aplay -l card 0: HDMI card 1: 3.5mm codec card 2: I2S codec
上面的信息表示card 0代表HDMI-Audio,card 1代表3.5mm耳机座, card 2代表I2S-Codec,修改配置文件/etc/asound.conf如下表示选择HDMI-Audio:
pcm.!default { type hw card 0 device 0 } ctl.!default { type hw card 0 }
如果将card 0修改为card 1, 则表示选择3.5mm耳机座, 以此类推。
拷贝一首 .wav 格式的音乐到开发板上,播放音乐:
$ aplay /root/Music/test.wav
可以听见从系统默认的音频设备里输出音频。
如果您使用的开发板是H3/H5/H2+系列并且使用的是主线内核,那么更简便的方法是使用npi-config。