Difference between revisions of "Template:FriendlyCoreGeneral/zh"
(updated by API) |
(updated by API) |
||
(147 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
==FriendlyCore的使用== | ==FriendlyCore的使用== | ||
− | === | + | {{#switch: {{{1}}} |
− | + | | NanoPC-T4 = | |
− | + | {{FriendlyCoreRK3399Introduce/zh}} | |
− | + | | NanoPi-M4 = | |
− | + | {{FriendlyCoreRK3399Introduce/zh}} | |
− | + | | NanoPi-M4V2 = | |
− | + | {{FriendlyCoreRK3399Introduce/zh}} | |
− | + | | NanoPi-M4B = | |
− | + | {{FriendlyCoreRK3399Introduce/zh}} | |
− | + | | NanoPi-NEO4 = | |
− | + | {{FriendlyCoreRK3399Introduce/zh}} | |
+ | | 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 = | ||
+ | {{FriendlyCoreGeneralIntroduce/zh}} | ||
+ | }} | ||
===运行FriendlyCore=== | ===运行FriendlyCore=== | ||
− | * | + | {{#switch: {{{1}}} |
− | * | + | | SOM-4418 = |
+ | | #default = | ||
+ | * 对于有HDMI接口的板子,如果要在电视上进行操作,您需要连接USB鼠标和键盘。 | ||
+ | * 如果您需要进行内核开发,最好选购一个串口配件,连接了串口,则可以通过串口终端对开发板进行操作。 | ||
+ | }} | ||
+ | {{#switch: {{{1}}} | ||
+ | | NanoPC-T4 = | ||
+ | | NanoPi-M4 = | ||
+ | | NanoPi-M4V2 = | ||
+ | | NanoPi-M4B = | ||
+ | | NanoPi-NEO4 = | ||
+ | | SOM-RK3399 = | ||
+ | | NanoPi-NEO2 = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-NEO2.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-NEO.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO-Plus2 = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-NEO-Plus2.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO-Core = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-NEO-Core.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-M1 = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-M1.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-M1-Plus = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-NanoPi-M1-Plus.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-A64 = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-A64.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO-Air = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | [[File:PSU-ONECOM-AIR.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-R1 = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,请注意串口模块的DC口和NanoPi R1的MicroUSB口都需要供电:<br /> | ||
+ | [[File:PSU-ONECOM-R1.jpg|frameless|500px]]<br> | ||
+ | | 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 = | ||
+ | <!-- Duox not support ONECOM --> | ||
+ | | SOM-4418 = | ||
+ | | #default = | ||
+ | 使用串口模块能有效地提升开发效率,以下是串口模块的连接方法:<br> | ||
+ | 接上串口后,您可以选择从串口模块的DC口或者从MicroUSB口 (如果有) 进行供电:<br /> | ||
+ | 以NanoPi-M1为例:<br>[[File:PSU-ONECOM-M1.jpg|frameless|400px]]<br> | ||
+ | }} | ||
+ | {{#switch: {{{1}}} | ||
+ | | SOM-RK3399 = | ||
+ | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:somrk3399usb2serialport.jpg|frameless|500px]]<br> | ||
+ | | NanoPC-T4 = | ||
+ | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:T4usb2serialport.jpg|frameless|500px]]<br> | ||
+ | | 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> | ||
+ | | NanoPi-NEO4 = | ||
+ | {{{1}}}需要使用USB转串口模块,连接方法如下图所示:<br>[[File:neo4usb2serialport.jpg|frameless|500px]]<br> | ||
+ | | NanoPi-NEO2 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<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 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:USB2UART-NEO-Core.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-M1 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:USB2UART-M1.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-M1-Plus = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:USB2UART-M1-Plus.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-Duo = | ||
+ | 使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:USB2UART-Duo.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-Duo2 = | ||
+ | 使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:USB2UART-Duo2.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO-Plus2 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | [[File:USB2UART-NEO-Plus2.jpg|frameless|400px]]<br> | ||
+ | | NanoPi-NEO = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<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 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<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 = | ||
+ | 也可以使用USB转串口模块调试,请注意需要使用5V/2A电源给开发板MicroUSB供电:<br> | ||
+ | 以NanoPi-NEO2为例:<br>[[File:USB2UART-NEO2.jpg|frameless|400px]]<br> | ||
+ | }} | ||
* FriendlyCore默认帐户: | * FriendlyCore默认帐户: | ||
普通用户: | 普通用户: | ||
Line 30: | Line 193: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | <!-- | ||
===使用npi-config配置系统=== | ===使用npi-config配置系统=== | ||
npi-config是一个命令行下的系统配置工具,可以对系统进行一些初始化的配置,可配置的项目包括:用户密码、系统语言、时区、Hostname、SSH开关、自动登录选项等,在命令行执行以下命令即可进入: | npi-config是一个命令行下的系统配置工具,可以对系统进行一些初始化的配置,可配置的项目包括:用户密码、系统语言、时区、Hostname、SSH开关、自动登录选项等,在命令行执行以下命令即可进入: | ||
Line 37: | 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}}} | ||
+ | | NanoPC-T4 = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-M4 = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-M4V2 = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-M4B = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-NEO4 = | ||
+ | {{FriendlyCoreRK3399QtDev/zh}} | ||
+ | | NanoPi-R2S | ||
+ | | NanoPi-R2C-Plus | ||
+ | | NanoPi-R2S-Plus | ||
+ | | NanoPi-R2C = | ||
+ | {{FriendlyCoreRK3328QtDev/zh}} | ||
+ | | #default = | ||
+ | ===开发Qt应用=== | ||
+ | 请参考 [[How to Build and Install Qt Application for FriendlyELEC Boards/zh]]<br> | ||
+ | }} | ||
+ | ===开机自动运行Qt示例程序=== | ||
+ | 使用npi-config工具进行开启: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo npi-config | ||
+ | </syntaxhighlight> | ||
+ | 进入Boot Options -> Autologin -> Qt/Embedded,选择Enable然后重启即可。 | ||
===扩展TF卡文件系统=== | ===扩展TF卡文件系统=== | ||
第一次启动FriendlyCore系统时,系统会自动扩展文件系统分区,请耐心等待,TF卡/eMMC的容量越大,需要等待的时间越长,进入系统后执行下列命令查看文件系统分区大小: | 第一次启动FriendlyCore系统时,系统会自动扩展文件系统分区,请耐心等待,TF卡/eMMC的容量越大,需要等待的时间越长,进入系统后执行下列命令查看文件系统分区大小: | ||
Line 44: | 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 /> | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | hcitool scan | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | <br /> | |
− | + | 搜索到设备时,结果举例如下:<br /> | |
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | Scanning ... | |
+ | 2C:8A:72:1D:46:02 HTC6525LVW | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | 这表示搜索到一台名为HTC6525LVW的手机,我们记下手机名称前面的MAC地址,然后用sdptool命令查看该手机支持的蓝牙服务:<br /> | |
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | sdptool browser 2C:8A:72:1D:46:02 | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | 注:上述命令中的MAC地址请替换成手机实际的蓝牙MAC地址<br /> | |
− | + | 这个命令会详细列出手机蓝牙所支持的协议,我们需要关心的是一个名为 OBEX Object Push 的文件传输服务,以HTC6525LVW手机为例,其显示结果如下所示:<br /> | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | 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 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | 从上面的信息可以看到,这个手机的OBEX Object Push服务的所用的频道是12, 我们需要将它传递给obexftp命令,最后发起文件传输请求的命令如下: | |
− | + | <syntaxhighlight lang="bash"> | |
+ | obexftp --nopath --noconn --uuid none --bluetooth -b 2C:8A:72:1D:46:02 -B 12 -put example.jpg | ||
+ | </syntaxhighlight> | ||
+ | 注:上述命令中的MAC地址、频道和文件名请替换成实际的<br /><br /> | ||
+ | 执行上述命令后,请留意手机屏幕,正常情况下手机会弹出配对和接收文件的提示,确定后就开始文件传輪了。<br /> | ||
<br /> | <br /> | ||
− | + | 蓝牙常见问题:<br /> | |
− | + | 1) 开发板上找不到蓝牙设备, 可尝试用以下命令开启蓝牙:<br /> | |
− | + | <syntaxhighlight lang="bash"> | |
− | + | rfkill unblock 0 | |
− | + | </syntaxhighlight> | |
− | + | 2) 提示找不到相关命令,可尝试用以下命令安装相关软件:<br /> | |
− | + | <syntaxhighlight lang="bash"> | |
− | + | apt-get install bluetooth bluez obexftp openobex-apps python-gobject ussp-push | |
− | + | </syntaxhighlight> | |
− | |- | + | }} |
− | + | ===连接WiFi=== | |
− | |- | + | {{Linux-WiFi/zh}} |
− | + | <!--带WiFi和BT的APXX芯片的板子--> | |
− | + | {{#switch: {{{1}}} | |
− | + | | NanoPi-M1-Plus | |
− | |- | + | | NanoPi-NEO-Air |
− | | | + | | NanoPi-NEO-Plus2 |
− | |} | + | | NanoPi-Duo2 = |
+ | {{Allwinner-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | NanoPC-T2 = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | SOM-4418 = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | NanoPC-T3 = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | NanoPC-T3-Plus = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | NanoPi2 = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | NanoPi_K2 = | ||
+ | {{S5Pxx18-APmode/zh}} | ||
+ | {{Linux-Bluetooth/zh}} | ||
+ | | NanoPi_M3 = | ||
+ | {{S5Pxx18-APmode/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}}} | ||
+ | | NanoPC-T4 | NanoPi-M4 | NanoPi-NEO4 = | ||
+ | ===访问GPIO/I2C/串口等硬件资源=== | ||
+ | 请参考下面的文档: | ||
+ | *[[WiringPi for RK3399/zh|WiringPi for RK3399]] | ||
+ | *[[WiringPi-Python for RK3399/zh|WiringPi-Python for RK3399]] | ||
+ | | NanoPi-Duo | NanoPi-M1-Plus | NanoPi-M1 | NanoPi-NEO-Air | NanoPi-NEO-Core | NanoPi-NEO-Core2 | NanoPi-NEO-Plus2 | NanoPi-NEO | NanoPi-Duo2 | NanoPi-NEO2 | NanoPi-K1-Plus = | ||
+ | ===访问GPIO/I2C/串口等硬件资源=== | ||
+ | 请参考下面的文档: | ||
+ | *[[WiringNP: NanoPi NEO/NEO2/Air GPIO Programming with C/zh]] | ||
+ | *[[RPi.GPIO : NanoPi NEO/NEO2/Air GPIO Programming with Python/zh]] | ||
+ | | #default = | ||
+ | }} | ||
− | === | + | ===定制命令行的欢迎信息(文字LOGO)=== |
− | + | 欢迎信息主要是这个目录下的脚本来打印的: | |
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | /etc/update-motd.d/ | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | 比如要修改 FriendlyELEC 的大字LOGO,可以修改/etc/update-motd.d/10-header 这个文件,比如要将LOGO改为HELLO,可将以下行: | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | TERM=linux toilet -f standard -F metal $BOARD_VENDOR | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | 改为: | |
− | + | ||
− | + | ||
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | TERM=linux toilet -f standard -F metal HELLO | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ===修改时区=== | |
− | + | 例如更改为Shanghai时区: | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | === | + | |
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | sudo | + | sudo rm /etc/localtime |
+ | sudo ln -ls /usr/share/zoneinfo/Asia/Shanghai /etc/localtime | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | {{#switch: {{{1}}} | |
+ | | NanoPC-T4 = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M4 = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M4V2 = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-M4B = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | NanoPi-NEO4 = | ||
+ | {{RK3399SelectALSAAudioDevice/zh}} | ||
+ | | 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 --> | ||
+ | | #default = | ||
+ | {{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。