Archive

Posts Tagged ‘orange pi’

OpenBSD 6.2 Adds Support for Orange Pi PC 2, Firefly-RK3399

October 10th, 2017 No comments

OpenBSD has been supporting 32-bit (ARMv7) and 64-bit (ARM64) ARM targets, but the just released OpenBSD 6.2 adds support for two more ARM64 boards: Orange Pi PC 2 and Firefly-RK3399.

Those two add to the ARM64 list comprised of Raspberry Pi 3, Pine A64/A64+, and AMD Opteron A1100 based development board and SoftIron OverDrive 1000 servers.

Other platforms based on Allwinner A64 & H5, and Rockchip RK3399 could likely also be supported. If you want to try it on your board, visit OpenBSD 6.2 ARM64 page to download the files:

  • INSTALL.arm64 – Installation notes
  • SHA256 – Output of the cksum(1) program using the option -a sha256, usable for verification of the correctness of downloaded files.
  • SHA256.sig – The above file, signed with the OpenBSD signing key for the 6.2 release, usable for verification of the integrity of the above file, and thus of the downloaded files.
  • miniroot62.fs – A miniroot filesystem image to be used if you for some reason can’t or don’t want to use the ramdisk installation method.
  • *.tgz arm64 binary distribution sets
  • bsd – A stock GENERIC arm64 kernel which will be installed on your system during the install.
  • bsd.rd A compressed RAMDISK kernel; the embedded filesystem contains the installation tools. Used for simple installation from a pre-existing system.

The binary distributions sets include:

  • base62 – The OpenBSD/arm64 6.2 base binary distribution. You MUST install this distribution set. It contains the base OpenBSD utilities that are necessary for the system to run and be minimally functional.
  • comp62 – The OpenBSD/arm64 Compiler tools. All of the tools relating to C, C++ and Objective-C are supported.
  • game62 – This set includes the games and their manual pages.
  • man62-  This set includes all of the manual pages for the binaries and other software contained in the base set.
  • xbase62 – This set includes the base X distribution. This includes programs, headers and libraries.
  • xfont62 – This set includes all of the X fonts.
  • xserv62 – This set includes all of the X servers.
  • xshare62 – This set includes all text files equivalent between all architectures.

You’ll need to follow the instructions in INSTALL.arm64 to try it with a micro SD on your board. I understand it;s a two step process on supported boards

  1. Flash miniroot62.fs to your micro SD card with dd, Win32DiskImager or Etcher
  2. Connect the board to the serial console, and follow the instructions in the installer to handle binary distributions sets

Good luck.

Via Orange Pi Forums

Orange Pi Lite Based Seedi Retro Gaming Console Takes Your Old DVDs or CD-ROMs (Crowdfunding)

October 6th, 2017 4 comments

Shenzhen Xunlong’s Orange Pi family is a nice collection of low costs ARM Linux development boards that can be used in all sort of projects, just like Raspberry Pi boards, but cheaper at the cost of requiring more skills, and/or efforts to complete a project. One popular use for Orange Pi boards is retro gaming thanks to community supported images like RetrOrange Pi supporting games for Atari, Amiga, DreamCast, and other consoles.

The implementation looks good enough for startups to sell their own products based on Orange Pi  hardware and RetrOrangePi software, as we’ve already seen with RetroEngine Sigma Retro Game Console which had a very successful Indiegogo campaign with $629,368 USD raised. “Seedi Team” has now launched their own game console apparently based on Orange Pi Lite, but it’s a little different as instead of copying “ROMs” , you can simply insert your old CD-ROMs or DVDs.

Seedi game console hardware specifications:

  • SoC – Quad core ARM processor
  • System Memory – N/A
  • Storage – 32GB micro SD cards, CD/DVD reader / CD burner
  • Video Output – HDMI up to 1080p60
  • Connectivity – 802.11 b/g/n WiFi and Bluetooth
  • USB – 1x micro USB OTG port
  • Case – Horizontal or vertical orientation

The CD/DVD drive can play PSX, TurboGrafx, Neo Geo, and Sega CDs, but you can also read any other CD or DVD disks, as the drive is allegedly region-free. A separate Retrode adapter will allow you to use cartridges to play games from Sega Genesis, Game Boy, etc… For other platforms, including NES, MAME (arcade), Atari 2600, or TurboGrafx 16 you can always load the ROMs in other ways. Ports of Doom, Quake, or other DOS games are also available.

Beside the specifications above, the developers only mention it’s been developed using open source hardware and software, but based on various photo of the device and screenshot, it’s pretty clear the console is powered by Orange Pi Lite board with an Allwinner H3 processor and 512MB RAM, and runs RetrOrangePi with Kodi [Update: The list of software used is here. Not based on RetrOrangePi, but still based on Retroarch + Libretro]

The console launched on Indiegogo a few weeks ago, and raised a little over $20,000 out of its $50,000 target. A Seedi System with a vertical stand, a Bluetooth game controller, a controller charging/pairing cable, and power adapter requires a $125 pledge, and they also have other rewards  with a retro green case, or multiple controllers. The cartridge reader is not sold in the crowdfunding campaign. Shipping adds $10 to the US, $15 to the rest of the world, and delivery is scheduled for March 2018. They’ve sent early prototype to reviewers, and I included one of those video reviews below.

uCAN CAN Ethernet Converter and Logger is Based on Orange Pi Zero Board

September 19th, 2017 2 comments

The CAN bus is a serial communication protocol used in automotive and automation applications. The guys at ucandevices.pl have designed a solution around Orange Pi Zero board that allows you to log CAN bus data or act as a bridge between the CAN bus and Ethernet or WiFi. They call it “CAN Ethernet converter, CAN Logger, Linux CAN computer”. Sorry, no shorter name that I could find…

Click to Enlarge

uCAN (pronounced micro CAN) CAN Bus board specifications:

  • Main Board – Orange Pi Zero with Allwinner H2+ quad core cortex-A7 processor, 256 MB RAM
  • Network Connectivity – 10/100M Ethernet, 802.11 b/g/n WiFi
  • Can Bus – 2-pin terminal block; support for CAN version 2.0 support
  • Power Supply – DC 5V/2A via micro USB port
  • Dimension – 50 x 50 x 20 mm

The device comes pre-load with Debian distribution provided by Armbian plus various CAN tools. The getting started video below shows uCANTools web interface programmed with Node.js and running by default on the board, and explains how to use sockets instead to access the CAN data.


You can find the source code for uCANTools on Github, and the other pre-installed tools are based on can-utils package available from Debian repository.

uCAN CAN Ethernet converter is normally sold on Tindie for $50 plus shipping, but right as I was about to finish this article the price switched to $150 with the message “This seller is on vacation. Please return after Oct. 14, 2017 to purchase this awesome product!”. Oh well…

7″ LCD Display with HDMI input, Audio output Launched for Orange Pi (and Other) Boards

September 15th, 2017 9 comments

If you want a cheap and simple way to add a screen to your development board, there are some 7″ displays with HDMI inputs that costs under $30 shipped. But Shenzhen Xunlong has decided to make their own 7″ LCD display with HDMI input and audio output, and sell for $22 + shipping.

The company only provided minimal technical information about the board and display:

  • Display  – 7″ TFT LCD with 1024×600  resolution
  • Video & Audio Input – HDMI
  • Audio Output – 3.5mm audio jack
  • Power Supply – 5V via micro USB port

If we look at a closer picture of the board, we’ll see they used Lontium LT8619B, but the company’s website is down… The board also features three different connectors for displays, so they probably have other displays planned. While the company claims the display is made for  Orange Pi H3 boards, it should really work with any board that can output 1024×600 over HDMI.

Click to Enlarge

All you need to use the kit is a board, a HDMI cable (preferably less than 1.5 meters), and a USB power supply for the “transfer” board and the display. It should also be possible to connect speakers via the 3.5mm audio jack. As usual, no documentation is provided, but I would not expect too many issues as long as the hardware works.

Orange Pi 2G IoT Board Can Now Boot Linux from NAND Flash

September 4th, 2017 2 comments

Orange Pi 2G IoT is a $10 development board with a 2G cellular modem that was launched last March. The board is based on RDA Micro RDA8810PL processor designed for cheap Android phones, but Linux support was also promoted, and an RDA8810 Android SDK was released in April. It was the first time RDA8810 was used in a development board, and unsurprisingly it was, and still is, a challenge to use such board, as software support is on-going… So people who purchased the board has troubles with controlling GPIOs, or booting Linux from the SoC’s built-in NAND flash, instead reverting to booting from a micro SD card. Luckily, Orange Pi forum’s user surfero75 worked on the latter, found a solution, and posted instructions in Spanish.

He wrote those instructions leveraging the work done by Aib user, and I summarized the main steps below explaining how install and boot from NAND flash (Warning: This could potentially brick your board if something goes wrong):

  1. Get opi2g-utils tools
  2. Set the boot selection to NAND flash/ Android boot, and put the board in USB-OTG mode with the switches set as follows: 1-4 ON and 5-8 OFF
  3. Use opi2g_bin_read.py serves to extract the files from Android NAND package in case you want to restore Android?
  4. Build u-boot with OrangePiIoT2GBuildSystem utility
  5. Flash the resulting u-boot.rda file to the board:
  6. If you boot Linux from a micro SD card, it should now find the NAND flash:
  7. Edit boot.cmd file to force boot from NAND flash:
  8. Compile the boot.cmd to create boot.scr binary to copy to the root of the micro SD card:
  9. Prepare, format, and mount the NAND flash
  10. There should be an extra step to copy the bootloader and rootfs content, but this step is not detailed in the blog post. I may have missed something…

Anyway, you can also ask question on Orange Pi Forum or on his blog post, if you have question. The video below shows Orange Pi 2G IoT booting DietPi from the NAND flash.

[Update: Surfero75 has now provided an image to try it out without having to go through all instructions above]

Linux 4.13 Release – Main Changes, ARM & MIPS Architectures

September 4th, 2017 6 comments

Linus Torvalds has just announced the release of Linux 4.13 and a kidney stone…:

So last week was actually somewhat eventful, but not enough to push me to delay 4.13.

Most of the changes since rc7 are actually networking fixes, the bulk of them to various drivers. With apologies to the authors of said patches, they don’t look all that interesting (which is definitely exactly what you want just before a release). Details in the appended shortlog.

Note that the shortlog below is obviously only since rc7 – the _full_4.13 log is much too big to post and nobody sane would read it. So if you’re interested in all the rest of it, get the git tree and limit the logs to the files you are interested in if you crave details.

No, the excitement was largely in the mmu notification layer, where we had a fairly last-minute regression and some discussion about the problem. Lots of kudos to Jérôme Glisse for jumping on it, and implementing the fix.

What’s nice to see is that the regression pointed out a nasty and not very well documented (or thought out) part of the mmu notifiers, and the fix not only fixed the problem, but did so by cleaning up and documenting what the right behavior should be, and furthermore did so by getting rid of the problematic notifier and actually removing almost two hundred lines in the process.

I love seeing those kinds of fixes. Better, smaller, code.

The other excitement this week was purely personal, consisting of seven hours of pure agony due to a kidney stone. I’m all good, but it sure _felt_ a lot longer than seven hours, and I don’t even want to imagine what it is for people that have had the experience drag out for longer. Ugh.

Anyway, on to actual 4.13 issues.

While we’ve had lots of changes all over (4.13 was not particularly big, but even a “solidly average” release is not exactly small), one very _small_ change merits some extra attention, because it’s one of those very rare changes where we change behavior due to security issues, and where people may need to be aware of that behavior change when upgrading.

This time it’s not really a kernel security issue, but a generic protocol security issue.

The change in question is simply changing the default cifs behavior: instead of defaulting to SMB 1.0 (which you really should not use: just google for “stop using SMB1” or similar), the default cifs mount now defaults to a rather more modern SMB 3.0.

Now, because you shouldn’t have been using SMB1 anyway, this shouldn’t affect anybody. But guess what? It almost certainly does affect some people, because they blithely continued using SMB1 without really thinking about it.

And you certainly _can_ continue to use SMB1, but due to the default change, now you need to be *aware* of it. You may need to add an explicit “vers=1.0” to your mount options in /etc/fstab or similar if you *really* want SMB1.

But if the new default of 3.0 doesn’t work (because you still use a pterodactyl as a windshield wiper), before you go all the way back to the bad old days and use that “vers=1.0”, you might want to try “vers=2.1”. Because let’s face it, SMB1 is just bad, bad, bad.

Anyway, most people won’t notice at all. And the ones that do notice can check their current situation (just look at the output of “mount” and see if you have any cifs things there), and you really should update from the default even if you are *not* upgrading kernels.

Ok, enough about that. It was literally a two-liner change top defaults – out of the million or so lines of the full 4.13 patch changing real code.

Go get the new kernel,

Linus

Two months ago, Linux 4.12 was released with initial support for AMD Radeon RX Vega GPU, BFQ (Budget Fair Queuing) and Kyber block I/O schedulers, AnalyzeBoot tool for the kernel, “hybrid consistency model” implementation for live kernel patching, but disabled the Open Sound System, and removed AVR32 support, among many other changes.

Some interesting changes in Linux 4.13 – mostly based on LWN 4.13 Merge Window part 1 & part 2 – include:

  • Support for non-blocking buffered I/O operations added at the block level, which should also improve asynchronous I/O support when used with buffered I/O.
  • AppArmor security module’s “domain labeling” code has been merged into the mainline. It was maintained by Ubuntu out of tree previously.
  • Kernel-based TLS implementation that should deliver better performance for HTTPS, and other protocol relying on TLS.
  • CIFS/SAMBA now defaults to v3.0 instead of v1.0 due to security issues
  • File System Changes – EXT-4: support for to ~2 billion files per directory with largedir option, extended attributes up to 64KB, new deduplication feature; f2fs: supports disk quotas; overlayfs union: new “index directory” feature that makes copy-up operations work without breaking hard links.

Changes specific to ARM include:

  • Rockchip:
    • Added support for RV1108 SoC for camera applications
    • Rockchip IOMMU driver is now available on ARM64
    • PCIe – configure Rockchip MPS and reorganize + use normal register bank
    • Clock driver for Rockchip RK3128 SoC
    • Rockchip pinctrl driver now supports iomux-route switching for RK3228, RK3328 and RK3399
    • Sound driver – Support for Rockchip PDM controllers
    • Device tree
      • Added RK3399-Firefly SBC
      • Added ARM Mali GPU
      • Added cru
      • Added sdmmc, sdio, emmc nodes for Rockchip RK3328
  • Amlogic
    • Updated CEC EE clock support
    • Enabled clock controller for 32-bit Meson8
    • Device tree changes
      • Meson UARTs
      • new SPI controller driver
      • HDMI & CVBS for multiple boards
      • new pinctrl pins for SPI, HDMI CEC, PWM
      • Ethernet Link and Activity LEDs pin nodes
      • SAR ADC support for Meson8 & Meson8b
    • Defconfig changes – Meson SPICC enabled as module; IR core, decoders and Meson IR device enabled;
    • New boards & devices: NanoPi K2, Libre Computer SBC, R-Box Pro
  • Samsung
    • Clock driver updated for Samsung Exynos 5420 audio clocks, and converted code to clk_hw registration APIs
    • Pinctrl drivers split per ARMv7 and ARMv8 since there’s no need to compile everything on each of them
    • ARM DT updates:
      • Add HDMI CEC to Exynos5 SoCs + needed property for CEC on Odroid U3
      • Fix reset GPIO polarity on Rinato
      • Minor cleanups and readability improvements.
    • ARM64 DT updates:
      • Remove unneeded TE interrupt gpio property
    • Defconfig changes – Some cleanups, enabled Exynos PRNG along with user-space crypto API.
  • Qualcomm
    • Clock & pinctrl drivers for Qualcomm IPQ8074
    • Add debug UART addresses for IPQ4019
    • Improve QCOM SMSM error handling
    • Defconfig
      • Enable HWSPINLOCK & RPMSG_QCOM_SMD to get some Qualcomm boards to work out of the box/again
      • Enable IPQ4019 clock and pinctrl
    • Mailbox – New controller driver for Qualcomm’s APCS IPC
    • RPMsg – Qualcomm GLINK protocol driver and DeviceTree-based modalias support, as well as a number of smaller fixes
    • Qualcomm Device Tree Changes
      • Fix IPQ4019 i2c0 node
      •  Add GSBI7 on IPQ8064
      • Add misc APQ8060 devices
      • Fixup USB related devices on APQ8064 and MSM8974
    • Qualcomm ARM64 Updates for v4.12
      • Fix APQ8016 SBC WLAN LED
      • Add MSM8996 CPU node
      • Add MSM8992 SMEM and fixed regulator
      • Fixup MSM8916 USB support
  • Mediatek
    • CPU clks for Mediatek MT8173/MT2701/MT7623 SoCs
    • Pinctrl – Serious code size cut for MT7623
    • Mediatek “scpsys” system controller support for MT6797
    • Device tree
      • Added support for MT6797 (Helio X20) mobile SoC and evaluation board
      • Extended MT7623 support significantly
      • Added MT2701 i2c device & JPEG decoder nodes
  • Other new ARM hardware platforms and SoCs:
    • STM32 – stm32h743-disco, stm32f746-disco, and stm32f769-disco boards; Drivers for digital audio interfaces, S/PDIF receiver, digital camera interfaces, HDMI CEC, watchdog timer
    • NXP – Gateworks Ventana GW5600 SBC;  Technexion Pico i.MX7D board; i.MX5/6 image processing units & camera sensor interfaces
    • Realtek – Initial support for Realtek RTD1295 SoC and Zidoo X9S set-top-box
    • Actions Semi – Initial support for Actions Semi S900 / S500, and corresponding LeMaker Guitar & Bubblegum-96 SBCs
    • Renesas – Salvator-XS and H3ULCB automotive development systems; GR-Peach board, iWave G20D-Q7 System-on-Module plus
    • Socionext- Support for Uniphier board support for LD11-global and LD20-global
    • Broadcom – Stingray communication processor and two reference boards;
    • Marvell – Linksys WRT3200ACM router
    • Texas Instruments – BeagleBone Blue
    • Microchip / Atmel – MMU-less ARM Cortex-M7 SoCs (SAME70/V71/S70/V70)

Some of the changes specific to MIPS include:

  • Boston platform support – Document DT bindings; Add CLK driver for board clocks
  • CM – Avoid per-core locking with CM3 & higher; WARN on attempt to lock invalid VP, not BUG
  • CPS – Select CONFIG_SYS_SUPPORTS_SCHED_SMT for MIPSr6; Prevent multi-core with dcache aliasing; Handle cores not powering down more gracefully; Handle spurious VP starts more gracefully
  • DSP – Add lwx & lhx missaligned access support
  • eBPF – Add MIPS support along with many supporting change to add the required infrastructure
  • Generic arch code:
    • Misc sysmips MIPS_ATOMIC_SET fixes
    • Drop duplicate HAVE_SYSCALL_TRACEPOINTS
    • Negate error syscall return in trace
    • Correct forced syscall errors
    • Traced negative syscalls should return -ENOSYS
    • Allow samples/bpf/tracex5 to access syscall arguments for sane
      traces
    • Cleanup from old Kconfig options in defconfigs
    • Fix PREF instruction usage by memcpy for MIPS R6
    • Fix various special cases in the FPU eulation
    • Fix some special cases in MIPS16e2 support
    • Fix MIPS I ISA /proc/cpuinfo reporting
    • Sort MIPS Kconfig alphabetically
    • Fix minimum alignment requirement of IRQ stack as required by ABI / GCC
    • Fix special cases in the module loader
    • Perform post-DMA cache flushes on systems with MAARs
    • Probe the I6500 CPU
    • Cleanup cmpxchg and add support for 1 and 2 byte operations
    • Use queued read/write locks (qrwlock)
    • Use queued spinlocks (qspinlock)
    • Add CPU shared FTLB feature detection
    • Handle tlbex-tlbp race condition
    • Allow storing pgd in C0_CONTEXT for MIPSr6
    • Use current_cpu_type() in m4kc_tlbp_war()
    • Support Boston in the generic kernel
  • Generic platform:
    • yamon-dt: Pull YAMON DT shim code out of SEAD-3 board;  Support > 256MB of RAM;  Use serial* rather than uart* aliases
    • Abstract FDT fixup application
    • Set RTC_ALWAYS_BCD to 0
    • Add a MAINTAINERS entry
  • core kernel – qspinlock.c: include linux/prefetch.h
  • Add support for Loongson 3
  • Perf – Add I6500 support
  • SEAD-3 – Remove GIC timer from DT; set interrupt-parent per-device, not at root node; fix GIC interrupt specifiers
  • SMP – Skip IPI setup if we only have a single CPU
  • VDSO – Make comment match reality; improvements to time code in VDSO”
  • Various fixes:
    • compressed boot: Ignore a generated .c file
    • VDSO: Fix a register clobber list
    • DECstation: Fix an int-handler.S CPU_DADDI_WORKAROUNDS regression
    • Octeon: Fix recent cleanups that cleaned away a bit too much thus breaking the arch side of the EDAC and USB drivers.
    • uasm: Fix duplicate const in “const struct foo const bar[]” which GCC 7.1 no longer accepts.
    • Fix race on setting and getting cpu_online_mask
    • Fix preemption issue. To do so cleanly introduce macro to get the size of L3 cache line.
    • Revert include cleanup that sometimes results in build error
    • MicroMIPS uses bit 0 of the PC to indicate microMIPS mode. Make sure this bit is set for kernel entry as well.
    • Prevent configuring the kernel for both microMIPS and MT. There are no such CPUs currently and thus the combination is unsupported and results in build errors.
    • ralink: mt7620: Add missing header

You can read the full Linux 4.13 changelog – with comments only – generated using git log v4.12..v4.13 --stat for the full details, and eventually kernelnewsbies’s Linux 4.13 changelog will be updated with an extensive list of chances.

$14 Orange Pi R1 Allwinner H2+ Board Comes with Two Ethernet Ports, 256 MB RAM

August 18th, 2017 9 comments

Shenzhen Xunlong has introduced the new Orange Pi R1 board with Allwinner H2+ quad core Cortex A7 processor that’s a bit different from their other models, as it includes two 10/100M Ethernet port, and should be suitable for intelligent controllers, or simple IoT gateways.

Click to Enlarge

Orange Pi R1 board specifications:

  • SoC – Allwinner H2(+) quad core Cortex A7 processor @ 1.2 GHz with Mali-400MP2 GPU
  • System Memory – 256 DDR RAM
  • Storage – micro SD card slot, 16 MB SPI flash
  • Connectivity – 2x 10/100M Ethernet (including on via RTL8152B USB to Ethernet) + 802.11 b/g/n WiFi (Realtek RTL8189ETV) with u.FL antenna connector and external antenna
  • USB – 1x micro USB OTG port
  • Expansion headers
    • Unpopulated 26-pin “Raspberry Pi B+” header
    • 13-pin header with headphone, 2x USB 2.0, TV out, microphone and IR receiver signals
  • Debugging – 3-pin header for serial console
  • Power Supply – 5V via micro USB port
  • Dimensions – 60 x 45 mm

Since it’s based on the same Allwinner H2+ processor as on Orange Pi Zero board, the extra Ethernet port is implemented via USB, and the I/O headers looks to be the same, it should be possible to run Armbian images on the board without that many modifications. The board may not be the best solution for small router, as there are already many cheap OpenWrt compatible routers that should do the job just as well, but thanks to the expansion header, it may make a useful intelligent controller or ModBus gateway to manage relays, sensors, robots, etc…

Potential Use Case for Orange Pi R1 Boards – Source: MGate MB3170 Product Page

If you have the kind of cascaded setup above, the 16MB SPI flash could save you the use of micro SD card, with network boot either from the control PC (if it is always on), or one of the Orange Pi R1 fitted with a micro SD card.

Orange Pi R1 board is sold for $13.90 plus shipping ($17.29 in total here) on Aliexpress.

Thanks to Anton for the tip

$15 Orange Pi Zero Plus Board Released with Allwinner H5 SoC, Gigabit Ethernet, WiFi, and SPI flash

August 12th, 2017 32 comments

We had Orange Pi Zero, followed by Orange Pi Zero Plus 2, then Orange Pi Zero Plus 2 H5, but now there’s another “Zero” model that’s called Orange Pi Zero Plus, which like Orange Pi Zero Plus 2 H5 board is based on Allwinner H5 processor, but adds a faster Gigabit Ethernet port, and offers a fairly different features set compared to the first Orange Pi H5 board, albeit in the same form factor.

Click to Enlarge

Orange Pi Zero Plus specifications with highlights in bold and stricken-through showing difference with Orange Pi Plus 2 H5 model:

  • SoC – Allwinner H5 quad core Cortex A53 processor with hexa core Mali-450MP4 GPU
  • System Memory – 512 MB DDR3
  • Storage – 8GB eMMC flash, micro SD card slot + 2MB SPI flash
  • Video Output – HDMI ; AV port via 13-pin header
  • Connectivity – Gigabit Ethernet, 802.11 b/g/n WiFi (Realtek RTL8189FTV) with u.FL antenna connector and external antenna. No Bluetooth
  • USB – 1x micro USB OTG port, 1x USB 2.0 host port
  • Camera – MIPI CSI port
  • Expansion headers
    • Unpopulated 26-pin “Raspberry Pi B+” header
    • 13-pin header with headphone, 2x USB 2.0, TV out, microphone and IR receiver signals
  • Debugging – 3-pin serial console header
  • Misc – 2x LEDs for power and status
  • Power Supply – 5V via micro USB port
  • Dimensions – 48 x 45 mm
  • Weight – 26 grams

The eMMC flash is gone, but has been replaced with an SPI flash that should allow for network boot without micro SD card. HDMI output is gone, so your only video output option would be via the video composite signal on the 13-pin header. Bluetooth is gone as they replaced the Ampak module by a Realtek one, and the camera connector. All those differences means the two Orange Pi H5 boards have different uses case, with the new board is better suited to headless application where you need Gigabit Ethernet connectivity, and potentially want to save a few dollars on the board price, and remove the need for storage (if you use network boot).

The board should also be compatible with Orange Pi Zero NAS expansion board, so you’d have an inexpensive micro NAS with performance and price that rivals with FriendlyELEC NanoPi NEO 2 NAS kit, minus the enclosure. 2017 has been an exciting year for affordable networked storage so far, with various options from the two lower-end solutions aforementioned, to the better upcoming ODROID-MC1, and the higher end EspressoBin board, with some interesting work also taking place on ROCK64 board.

Software-wise, it may be worth noting that there’s no stable Armbian build so far, but there are experimental Ubuntu Xenial images for Orange Pi Zero 2 H5 board with mainline Linux kernel, which should work on the new board by just changing the DTB file. However, I did use NanoPi NEO2 with Allwinner H5 as a OpenMediaVault NAS, and it worked well enough, so I would not worry too much about software support for this use case. I’m not sure about U-boot support in the SPI flash, but hoping for some feedback in the comments section.

Orange Pi Zero Plus is sold for $14.90 plus shipping ($18.29 in total here). If you’re interested in mini NAS / home cloud system, you’ll need to add the NAS expansion board for $6.98, which in my case brings the total to $27.13 including shipping. A direct comparison with NanoPi NEO2 NAS kit is not possible, since Shenzhen Xunlong micro NAS solution does not include a case, nor heatsink, but for reference, a complete NAS kit v1.2 with NEO2 board goes for $28.98 plus shipping, or $44.98 in total in my case.