Difference between revisions of "Template:H5SoftwareFeature-FriendlyCore"

From FriendlyELEC WiKi
Jump to: navigation, search
(updated by API)
 
(updated by API)
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
::{| class="wikitable"
 
::{| class="wikitable"
 
|-
 
|-
|软件||说明|| 支持该特性的开发板型号
+
| style="background: PaleTurquoise; color: black" colspan="2"| '''FriendlyCore System'''       
 
|-
 
|-
|主线开源Uboot + Linux || 基于Uboot-2017.11 + Linux-4.14定制,适配FriendlyElec发布的全志H5开发板,参考[[Mainline_U-boot_and_Linux]]。 <br> https://github.com/friendlyarm/u-boot <br> https://github.com/friendlyarm/linux || NEO2/NEO-Core2/NEO-Plus2/K1-Plus
+
|Cross-Compiler
 +
|style="width: 90%;"|
 +
*gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu <br>
 +
*it applies to 64-bit Armv8 Cortex-A, little-endian architechture. FriendlyElec uses it for its H5 based boards.
 
|-
 
|-
|全志原厂Uboot + Linux  ||  基于全志原厂Lichee BSP Uboot-2014.07 + Linux-3.10定制,适配FriendlyElec发布的全志H5开发板 <br> https://github.com/friendlyarm/h5_lichee || NEO2
+
|rowspan="1"| U-boot-2017.11
|-
+
|
|FriendlyCore系统  ||  基于UbuntuCore-16.04定制的系统,包含Qt4.8、常用的软件包、网络配置工具NetworkManager、FriendlyElec移植的开源软件、硬件相关文件等,参考[[FriendlyCore_(based_on_ubuntu-core_with_Qt) | FriendlyCore]]|| NEO2/NEO-Core2/NEO-Plus2/K1-Plus
+
*It can recognize a FriendlyElec's H5 based board and load its dtb file accordingly.
 +
*It optimizes memory settings.
 +
*It supports voltage regulation IC sy8106a and applies only to NanoPi K1 Plus/NanoPi NEO Core2.
 +
*It supports MAC generation from H5's CPU ID.<!--this avoids conflicts of MAC address within a local area network-->
 +
*It supports system booting from either SD card or eMMC and can automatically load the kernel from the booting device.
 
|-
 
|-
|eflasher系统 || 基于UbuntuCore-16.04定制的系统,负责将系统烧写到eMMC中,支持图形界面操作和命令行操作2种模式,仅支持带eMMC的板子,参考[[EFlasher]] || NEO-Core2/NEO-Plus2/K1-Plus
+
|rowspan="1"| Linux-4.14
 +
|
 +
*It supports LED. You can access it via "/sys/class/leds".
 +
*It supports GPIO. You can access it via "/sys/class/gpio/".
 +
*It supports UART0/1/2/3. You can access it via "/dev/ttySX".
 +
{{#switch: {{{1}}}
 +
  | NanoPi-K1-Plus|NanoPi-NEO-Core2 =
 +
*It supports I2C0/1/2. You can access it via "/dev/i2c-X".
 +
| NanoPi-NEO2|NanoPi-NEO-Plus2 =
 +
*It supports I2C0. You can access it via "/dev/i2c-X".
 +
}}
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus|NanoPi-NEO-Core2 =
 +
*It supports SPI0/1. You can access it via "/dev/spidevX.X". The SPI1 and UART3 pins are multiplexed.
 +
| NanoPi-NEO2|NanoPi-NEO2-Plus2 =
 +
*It supports SPI0. You can access it via "/dev/spidevX.X".
 +
}}
 +
*It supports PWM0. You can access it via "/sys/class/pwm/". The UART0 pin is multiplexed.
 +
*It supports I2S0. It works together with PCM5102A codec. The I2C1 pin is multiplexed.
 +
*It supports Watchdog. You can access it via "/dev/watchX".
 +
*It can read a CPU ID. You can access it via "/sys/bus/nvmem/devices/sunxi-sid0/nvmem".
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus =
 +
*It supports IR Receiver
 +
| #default =
 +
*It supports IR Receiver. You need to connect an IR receiver to the board.
 +
}}
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus =
 +
*It supports WiFi RTL8189.
 +
*It supports HDMI audio output.
 +
}}
 +
*It supports dynamic CPU voltage regulation.
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus|NanoPi-NEO-Core2|NanoPi-NEO2 =
 +
*It supports Micro USB OTG.
 +
}}
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus|NanoPi-NEO-Core2|NanoPi-NEO2 =
 +
*It supports USB Host1/2/3.
 +
| NanoPi-NEO-Plus2 =
 +
*It supports USB Host0/1/2/3.
 +
}}
 +
*It supports TF Card.
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus|NanoPi-NEO-Core2|NanoPi-NEO-Plus2 =
 +
*It supports eMMC.
 +
}}
 +
*It supports 1000M Ethernet.
 +
*It supports H5's internal Codec and supports voice playing and recording.
 +
{{#switch: {{{1}}}
 +
| NanoPi-K1-Plus =
 +
*It supports DVP Camera(CAM500B).
 +
}}
 +
*It supports USB Camera(CAM202).
 +
*It supports popular USB WiFi Adapters.
 +
*It supports popular USB Ethernet Adapters.
 +
*It supports popular USB Serial Converters.
 +
*It supports popular USB Sound Cards.
 +
{{#switch: {{{1}}}
 +
| NanoPi-NEO2|NanoPi-NEO-Core2|NanoPi-NEO-Plus2 =
 +
*It supports FriendlyElec's NanoHat PCM5102A.
 +
}}
 +
{{#switch: {{{1}}}
 +
| NanoPi-NEO-Core2 =
 +
*It supports SPI Flash MX25L12835F.
 +
}}
 
|-
 
|-
|Debian-NAS系统  || 基于DebianCore-jessie定制的系统,包含了NAS开源软件openmediavault 3.0.76 || NEO2/NEO-Core2/NEO-Plus2
+
|rowspan="1"| File System
 +
|
 +
*Based on UbuntuCore-16.04, it has original UbuntuCore features.
 +
*It has popular utilties:VIM/Nano/SSHserver and etc.
 +
*It has Qt-Embedded-4.8 and suitable for rapid product prototyping which needs a GUI.
 +
*It has a network management utility "NetworkManager" which can automatically detect and connect to a network. For more details refer to:[[Use_NetworkManager_to_configure_network_settings | NetworkManager]]。
 +
*It has a commandline utility "npi-config" which can be used to set a user password, language, timezone, Hostname, SSH enable/disable, auto-login, hardware interface and etc. For more details refer to [[Npi-config]]。
 +
*It uses overlayfs.
 +
*It expands the file system on the first system boot.<!-- by default the file system set on an SD card has only 4G available. After the file system is expanded the whole SD card's space will be available.-->
 +
*It supports file system auto-repair on system boot.<!-- Files that were damaged will be automatically repaired on system reboot.-->
 +
*It supports 512MB's swap.
 +
*It supports WiringNP which functions like Arduino's API and can be used to access NanoPi boards' gpio/i2c/spi and etc. For more details refer to:[[WiringNP:_NanoPi_NEO/NEO2/Air_GPIO_Programming_with_C | WiringNP]]。
 +
*It supports FriendlyElec's BakeBit which is a set of sensor modules including hardware components(such as NanoHat Hub extension board) and software (such as BakeBit). For more details refer to [[BakeBit_Starter_Kit_with_NanoPi_NEO/NEO2/NEO_Air|BakeBit ]].
 +
*It supports RPi.GPIO which can be used to access NanoPi boards' gpio with Python. For more details refer to [[RPi.GPIO_:_NanoPi_NEO/NEO2/Air_GPIO_Programming_with_Python | RPi.GPIO]].
 
|-
 
|-
|Ubuntu-oled系统  || 基于FriendlyCore系统定制,默认使能了NanoHatOLED屏 || NEO2/NEO-Core2/NEO-Plus2
 
|-
 
|Ubuntu-tft系统  || 基于FriendlyCore系统定制,默认使能了Matrix-2.8 tft屏 || NEO2/NEO-Core2/NEO-Plus2/K1-Plus
 
|-
 
|WiringNP || 基于WiringPi定制的C语言函数库,提供了类似Arduino编程的API,支持访问GPIO/I2C/SPI/UART/PWM等,参考[[WiringNP:_NanoPi_NEO/NEO2/Air_GPIO_Programming_with_C | WiringNP]] <br> https://github.com/friendlyarm/WiringNP || NEO2/NEO-Core2/NEO-Plus2/K1-Plus
 
|-
 
|RPi.GPIO || 在开源软件RPi.GPIO上适配FrienlyElec的开发板,支持通过Python来操作GPIO,参考[[RPi.GPIO_:_NanoPi_NEO/NEO2/Air_GPIO_Programming_with_Python | RPi.GPIO]] || NEO2
 
|-
 
|npi-config || shell语言编写的命令行脚本工具,支持各种繁琐的软硬件配置,参考[[npi-config]] <br> https://github.com/friendlyarm/npi-config || NEO2/NEO-Core2/NEO-Plus2/K1-Plus
 
|-
 
|BakeBit || BakeBit是一套传感器连接的解决方案,包括硬件(NanoHat Hub扩展板)和软件(BakeBit),参考[[BakeBit_Starter_Kit_with_NanoPi_NEO/NEO2/NEO_Air|BakeBit ]] <br> https://github.com/friendlyarm/BakeBit || NEO2
 
|-
 
|NanoHatOLED || 一个使用BakeBit来控制NanoHatOLED配件的Python示例程序 <br> https://github.com/friendlyarm/NanoHatOLED || NEO2/NEO-Core2/NEO-Plus2
 
|-
 
|rtl8189ES_linux || WiFi芯片rtl8189的Linux驱动,配合Linux-4.14使用 <br> https://github.com/friendlyarm/rtl8189ES_linux || K1-Plus
 
 
|}
 
|}

Latest revision as of 06:16, 21 October 2019

FriendlyCore System
Cross-Compiler
  • gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu
  • it applies to 64-bit Armv8 Cortex-A, little-endian architechture. FriendlyElec uses it for its H5 based boards.
U-boot-2017.11
  • It can recognize a FriendlyElec's H5 based board and load its dtb file accordingly.
  • It optimizes memory settings.
  • It supports voltage regulation IC sy8106a and applies only to NanoPi K1 Plus/NanoPi NEO Core2.
  • It supports MAC generation from H5's CPU ID.
  • It supports system booting from either SD card or eMMC and can automatically load the kernel from the booting device.
Linux-4.14
  • It supports LED. You can access it via "/sys/class/leds".
  • It supports GPIO. You can access it via "/sys/class/gpio/".
  • It supports UART0/1/2/3. You can access it via "/dev/ttySX".


  • It supports PWM0. You can access it via "/sys/class/pwm/". The UART0 pin is multiplexed.
  • It supports I2S0. It works together with PCM5102A codec. The I2C1 pin is multiplexed.
  • It supports Watchdog. You can access it via "/dev/watchX".
  • It can read a CPU ID. You can access it via "/sys/bus/nvmem/devices/sunxi-sid0/nvmem".
  • It supports IR Receiver. You need to connect an IR receiver to the board.
  • It supports dynamic CPU voltage regulation.


  • It supports TF Card.
  • It supports 1000M Ethernet.
  • It supports H5's internal Codec and supports voice playing and recording.
  • It supports USB Camera(CAM202).
  • It supports popular USB WiFi Adapters.
  • It supports popular USB Ethernet Adapters.
  • It supports popular USB Serial Converters.
  • It supports popular USB Sound Cards.


File System
  • Based on UbuntuCore-16.04, it has original UbuntuCore features.
  • It has popular utilties:VIM/Nano/SSHserver and etc.
  • It has Qt-Embedded-4.8 and suitable for rapid product prototyping which needs a GUI.
  • It has a network management utility "NetworkManager" which can automatically detect and connect to a network. For more details refer to: NetworkManager
  • It has a commandline utility "npi-config" which can be used to set a user password, language, timezone, Hostname, SSH enable/disable, auto-login, hardware interface and etc. For more details refer to Npi-config
  • It uses overlayfs.
  • It expands the file system on the first system boot.
  • It supports file system auto-repair on system boot.
  • It supports 512MB's swap.
  • It supports WiringNP which functions like Arduino's API and can be used to access NanoPi boards' gpio/i2c/spi and etc. For more details refer to: WiringNP
  • It supports FriendlyElec's BakeBit which is a set of sensor modules including hardware components(such as NanoHat Hub extension board) and software (such as BakeBit). For more details refer to BakeBit .
  • It supports RPi.GPIO which can be used to access NanoPi boards' gpio with Python. For more details refer to RPi.GPIO.