# Banana Pi



## Phishfry (Oct 3, 2015)

I was just downloading the newest BBB-FreeBSD -CURRENT and noticed a newcomer to the ARMv6 image file builds. A Banana Pi version.
There are some very interesting FreeBSD choices these days.

Thanks to everyone involved in bringing new platforms to FreeBSD.

I cannot find a Wiki yet so use at your own risk!

Anyone with details please post what is working.


----------



## pin117 (Oct 6, 2015)

Hi,

I just bought today a new Banana Pi R1 and installed the (new?) FreeBSD-11.0-CURRENT-arm-armv6-BANANAPI-20151001-r288459.img.xz on the SD-Card to test it.

The Pi started booting without error untill I get something like a Screen. I cant actualy see what it is because the Screen is glitched like its a wrong resolution:







Boot info shows me _HDMI connected: Setting up a 1920x1080 hdmi console_ before this screen.

I checked different HDMI Wires, different Monitors (old and brand new) and even Alt+F1 etc. doesnt work.

Any Idea how to fix that?
I would love to use FreeBSD on it!


----------



## Phishfry (Oct 9, 2015)

Have you tried the TTL/serial console? Most of the support on these embedded boards seems to be geared to a work platform. Beaglebone just got HDMI added and it has been around a while.

Is this the router board version you have? Too bad they used Realtek chipset and not Atheros wireless.. Does the RT8192CU onboard support AP/Master mode?
http://www.banana-pi.com/eacp_view.asp?id=64ATA
I see the board has issues with SATA drive power.

On my Beaglebone with TTL/Serial port -I see all the bootup messages of the board but the HDMI screen does not kick in until halfway thru -I have noticed. It only provides 640x480 video.
I have x11/xorg running with x11-wm/openbox and am battling a browser.


----------



## pin117 (Oct 9, 2015)

Yes, actually I am thinking right now that the screen should not crash like on the picture, but should be just black. Since I switched to OpenWRT meanwhile for testing, there it is just black after bootstrip. I was wondering because on the RaspberryPi the screen is usually supported since it have HDMI - so the Banana Pi R1 do (yes, the router version is what I use).

However, I noticed another bigger problem with OpenWRT: The network speed is pretty slow. So, I will try to give FreeBSD another chance in the hope that the speed will be much better. Or its just the Pi who is to weak... :/

Any suggestion for a board with 2 Ethernets (10/100/1000) and WLAN without networkspeed problems when I do FW, VPN and couple other security features running?

PS: Oh, today was a new release of FreeBSD-11.0-CURRENT-arm-armv6-BANANAPI-20151008-r289044.img.xz
Lets test it


----------



## Phishfry (Oct 9, 2015)

The broadcom network chip was the number two complaint for this board. It is not truly gigabit ethernet from what I read.

Since we are looking at same platform needs I will post this.
If you want to stick with ARM then these look nice.
http://www.gateworks.com/product

Trouble is they are not supported by FreeBSD and I can't get a price from them. Seems like they don't want to do business with end users.


----------



## Phishfry (Oct 10, 2015)

What size HDMI screen size are seeing on your Rasp Pi ??


----------



## loos (Oct 14, 2015)

Yeah, the Banana Pi support is quite recent and you should expect some rough edges.

That being said, it is quite stable for me (despite the missing drivers and the ethernet that still need some work for better performance).

The wiki page for Allwinner SoCs is here: https://wiki.freebsd.org/FreeBSD/arm/Allwinner


----------



## loos (Oct 14, 2015)

Only the console is supported ATM.

The framebuffer can be in an inconsistent state since we are not initialising the video controller (I think it can be in a semi-working state since (I guess) it is supported by u-boot).

The switch on BPi R1 isn't supported, but I'm planing to work on this soon.


----------



## Phishfry (Oct 15, 2015)

Don't want to stray to far off topic but I got my Beaglebone an run0 RaLink usb stick working under Arm. 2T2R MIMO and 5ghz too.

net-mgmt/wifimgr working on the arm desktop.

I also have an Sierra MC7700 LTE MiniPCIe module on a USB adapter working with cu. I need to rig antennas but it looks good with PPP working.

Also iI was wrong about my HDMI screen size. It is 1024x768.


----------



## Fulda (Feb 25, 2016)

Hello,

I'm playing with FreeBSD on Banana PI M1. I have found some problem with last snapshots available at
ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/arm/armv6/ISO-IMAGES/11.0/
I have connected sata disk with ufs filesystem.
When I boot from sdcard, then mount sata into /mnt and start copy of system from sdcard to sata, for example:
`cd /mnt
tar cf - /usr | tar xvf -`
I will get kernel panic within few seconds. It says, that page to be inserted is already inserted.
Does anyone else have same experience??


BTW: here is my setup - I was created hardware serial VT100 with VGA output and PS2 keyboard input:


----------



## tobik@ (Feb 25, 2016)

You're not alone. See https://lists.freebsd.org/pipermail/freebsd-arm/2016-February/013229.html.


----------



## Fulda (Feb 26, 2016)

Hello Tobik,

Thank you for info.

I did some research and I found, that it does not matter you are using SATA disk or not. Only the fact that disk is attached (and not mounted and here is no one UFS/FAT partition) then you are in trouble. Interesting is, that it does not matter what are you doing with files you are reading from sd card (tar to /dev/null have same result)
Interesting is also set of errors I'm getting when I'm trying to halt system without sata disk.

(last image, without any modification)
---------------------------------------------
SATA disk attached, but not used:
---------------------------------------------

```
root@a20:~ # uname -a

FreeBSD a20 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r295683: Wed Feb 17 05:22:46 UTC 2016  root@releng2.nyi.freebsd.org:/usr/obj/arm.armv6/usr/src/sys/A20  arm
root@a20:~ # tar cf - /usr | wc

tar: Removing leading '/' from member names
panic: vm_page_insert_after: page already inserted
cpuid = 0
KDB: enter: panic
[ thread pid 679 tid 100084 ]
Stopped at  $d.7:  ldrb  r15, [r15, r15, ror r15]!
db>

---------------------------------------------
root@a20:~ # tar cf /dev/null /usr

tar: Removing leading '/' from member names
panic: vm_page_insert_after: page already inserted
cpuid = 0
KDB: enter: panic
[ thread pid 644 tid 100067 ]
Stopped at  $d.7:  ldrb  r15, [r15, r15, ror r15]!
db>
```

---------------------------------------------
NO SATA disk attached:
---------------------------------------------

```
root@a20:~ # uname -a

FreeBSD a20 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r295683: Wed Feb 17 05:22:46 UTC 2016  root@releng2.nyi.freebsd.org:/usr/obj/arm.armv6/usr/src/sys/A20  arm
root@a20:~ # tar cf - /usr | wc

tar: Removing leading '/' from member names
5994501 28169833 716206080
root@a20:~ #
root@a20:~ # halt

Feb 17 05:37:21 a20 halt: halted by root

Feb 17 05:37:21 a20 syslogd: exiting on signal 15

Waiting (max 60 seconds) for system process `vnlru' to stop...done
Waiting (max 60 seconds) for system process `bufdaemon' to stop...done
Waiting (max 60 seconds) for system process `syncer' to stop...
Syncing disks, vnodes remaining...2 1 0 0 done
All buffers synced.
lock order reversal:
1st 0xc45b3db4 ufs (ufs) @ /usr/src/sys/kern/vfs_mount.c:1222
2nd 0xc432cc94 syncer (syncer) @ /usr/src/sys/kern/vfs_subr.c:2617
stack backtrace:
lock order reversal:
1st 0xc45b3b74 ufs (ufs) @ /usr/src/sys/kern/vfs_mount.c:1222
2nd 0xc45b35d4 devfs (devfs) @ /usr/src/sys/fs/msdosfs/msdosfs_vfsops.c:994
stack backtrace:
Uptime: 3m12s

The operating system has halted.
Please press any key to reboot.
```


----------



## Dan MacDonald (Mar 10, 2016)

I've got the latest FBSD 11 test image booting OK on my BPi but only via UART console - I get a garbled display out of the HDMI port like pin117.

I notice that both the FBSD allwinner wiki and dmesg claim my SATA drive is detected OK so is there a guide anywhere on how I create a ZFS pool on my SATA drive and then transfer my root fs onto it and set that as the default boot device? I realise uboot can only boot off the SD card.

This may sound simple enough to experienced FreeBSD users but when I tried doing the same under NetBSD 7 (albeit transferring / to a NetBSD FFS partition) I had to patch the kernel to force uboot to boot root off the SATA drive instead of the SD card. Hopefully it will be a simpler process under FBSD!

I want to use my BPi with PCBSD's LifePreserver, if anyone is wondering.


----------



## Dan MacDonald (Mar 10, 2016)

I have installed u-boot-bananapi and checked out its contents as well as looked in the boot (/boot/msdos) partition but neither contain an example boot.cmd file that I could use to modify and generate a custom uboot config with, like in this example for Linux on the BPi:

http://linux-sunxi.org/Mainline_U-Boot#Boot

I would like to see (a link to) instructions on how to create a custom uboot config (eg to boot root on a ZFS SATA HD) added to the allwinner instructions at https://wiki.freebsd.org/FreeBSD/arm/Allwinner


----------



## Dan MacDonald (Mar 10, 2016)

Maybe I've been getting excited over nothing thinking I'd be able to use ZFS on the BPi? Someone told me in #freebsd that the ARM port has ZFS support and I had high hopes seeing as the zfs and zpool commands are present within the BPi install image but alas:


```
# service zfs start
kldload: can't load zfs: No such file or directory
/etc/rc.d/zfs: WARNING: Unable to load kernel module zfs
```


----------



## Oko (Mar 11, 2016)

Dan MacDonald said:


> I want to use my BPi with PCBSD's LifePreserver, if anyone is wondering.


Can you give me the phone number of the person who is selling you the stuff you smoke? I want to buy some


----------



## Phishfry (Mar 11, 2016)

I have to agree with you. I did notice Nas4Free's ARM version supports ZFS on similar hardware.
Starting ZFS support from 9.3.0.2.1353-20150306. (both Raspberry Pi and ODROID-C1)
http://forums.nas4free.org/viewtopic.php?f=17&t=8441S


----------



## Dan MacDonald (Mar 11, 2016)

Oko said:


> Can you give me the phone number of the person who is selling you the stuff you smoke? I want to buy some



Is my desired use case really that unrealistic? I know I can't install PCBSD on the BPi but I should be able to build and use LifePreserver on anything running ZFS according to its handbook. It seems like an entirely realistic endeavour to me.

Phishfry:

Thanks for pointing that out! In that case it sounds like if I built FBSD myself with crochet I could prob enable ZFS but I'd much rather see it enabled by default in the official images.

Its a shame NAS4Free don't support the BPi as it would make a much better NAS than the Odroid, RPi or the other devices they support thanks to SATA and gige support. I get 140MB/s off my BPi HD under Linux.


----------



## ronaldlees (Mar 11, 2016)

Dan MacDonald said:


> Is my desired use case really that unrealistic? I know I can't install PCBSD on the BPi but I should be able to build and use LifePreserver on anything running ZFS according to its handbook. It seems like an entirely realistic endeavour to me.
> 
> Phishfry:
> 
> ...



You may want to check the NAS4Free forum.  A few days ago, someone was posting screenshots of (IIRC) a bananaPi running NAS4Free.


----------



## Dan MacDonald (Mar 11, 2016)

Hi ronaldlees!

I think I've found and replied to the thread on the NAS4Free forum you are prob referring to here. The user in question seems to have got FBSD 11 running on his BPi and not NAS4Free. He has made no mention of supposedly getting ZFS working on his BPi but if it is working on the RPi and Odroid machines it should also work on the BPi.

http://forums.nas4free.org/viewtopic.php?f=17&t=8441&start=30

From comments I read by the NAS4Free dev in the same thread it sounds like I may be in for over a week of building to rebuild not only the kernel but all of world and the ports! Seems like overkill to me just for an extra kernel module!


----------



## Phishfry (Jul 24, 2016)

Looks like there is a NAS4Free build now here:
https://sourceforge.net/projects/nas4free-bananapi/files/NAS4Free-Beta/second/


----------



## alexey123 (Jul 4, 2017)

New Nas4free build here https://sourceforge.net/projects/nas4free-bananapi/files/NAS4Free-Beta/revision 4333/

I tried attach zfs - it work. Very slow, but work


----------



## spellegrino (Nov 3, 2018)

Hey folks,

What is the progress regarding ZFS on ARM builds of the latest ARM FreeBSD? I would like root ZFS on the SD card and to control iSCSI devices with a HAST ZFS configuration using the Banana Pi (see models below) as a NAS controller. Thoughts/comments in relation to this? Further more, what is the future planned support for the following Banana Pi's (with more than 4 gigabit ethernet (are they true gigabit ethernet too.?.. what is the WAN port for 5th ethernet?)....

Banana Pi BPI-R2
MT7623N, Quad-code ARM
2GB RAM, Wireless b/g/n
4 GbE LAN 1 GbE WAN
Mini PCI-e &SATA

- and -

Banana Pi BPI-R64
MediaTek MT7622,Cortex-A53
1G DDR3 &8G eMMC
MTK7615 4x4ac WiFi
5 Ethernet ports

Thanks. Regards,

-Stacey Pellegrino


----------



## Phishfry (Nov 3, 2018)

Neither of those BananaPi's are supported. We only support the M1 with images. Using crochet the BPi M3 is supported.
Really don't think the BPI R2 is supported at all though.
https://github.com/freebsd/crochet/tree/master/board

I think you might want to consider the MACCHIATObin when it is done. (it's not done yet).
https://lists.freebsd.org/pipermail/freebsd-arm/2018-October/019000.html


----------



## Phishfry (Nov 3, 2018)

spellegrino said:


> control iSCSI devices with a HAST ZFS configuration using the Banana Pi


I truly think you have picked the wrong device class for HAST.
FreeBSD considers ARM to be a Tier 2 platform. That would be the last thing I chose for a "Highly Available" platform.
Problems include lack of an update method and the fact that most ARM board use USB for the ethernet interfaces and gigabit ethernet on ARM means 600Megabit, even on Linux.
Some of the newer boards include a PCIe bus and that is positive.


spellegrino said:


> what is the future planned support for the following Banana Pi's (with more than 4 gigabit ethernet (are they true gigabit ethernet too.?.. what is the WAN port for 5th ethernet


This is the question you need to research. These boards do not have 4 or 5 true interfaces.
They have one interface and use a 'switch chip' to interface the other 3 or 4 interfaces. Beacuse there is no fabric to support 4 more ethernet devices the speeds are poor. The fabric to the switch chip on the Netgate board offers a 2.5 gigabit link so calling those interfaces gigabit would be a stretch.
https://www.netgate.com/solutions/pfsense/sg-3100.html

If small is what you want then I would suggest using a pair of PCEngines APU2 with the 4GB ram option. Problem there is only one SATA3 interface. But then again you say NAS Controller and I don't know what you mean there.
Perhaps controlling some JBOD cabinets or Dell MD1220 disk arrays. Better answer with more details.


----------



## spellegrino (Jan 18, 2019)

Hi Phishfry,

I am now thinking of using the following based upon your advice https://www.pcengines.ch/apu4c4.htm (it also has a 64-bit CPU which is ideal for ZFS, although I do not think it has ECC memory, which is desirable for ZFS too).

I am thinking of connecting it to the following enclosure... https://www.ebuyer.com/700786-synol...MIl4ztqZ733wIV77_tCh2uzghAEAQYAiABEgIf2fD_BwE

What are your thoughts and comments in relation to this proposal? Thanks.

Regards,

-STacey Pellegrino


----------



## Phishfry (Jan 18, 2019)

Well the problem is that the APU series only has 1 SATA port. So you would have to add some miniPCIe adapters for SATA.
That would not get you to 12 drives though. Most MiniPCIe SATA adapters only have two ports, so that is 5 drives.
These are driven through some oddball controller, not an LSI SAS controller that is preferred by me.
MiniPCIe only offers x1 PCIe lane so there is not much bandwidth to mess with.

I really know of no ideal baby NAS board.


----------



## alexey123 (Feb 2, 2019)

I build Xigmanas for BananaPi-M1 





						nas4free-bananaPI -  Browse /Xigmanas at SourceForge.net
					

This is  nas4free server for banana-PI board




					sourceforge.net


----------

