Sinovoip Banana Pi M2

Banana Pi M2 is A31s based development board produced by Sinovoip.

Despite its name the M2 is incompatible to Banana Pi/M1/M1+/Pro due to a different SoC - requiring different boot loaders and drivers.

= Identification = The board reads "BPI-M2" next to a large "BPI" logo and has the same dimensions and mounting hole positions as other Banana models (to which the M2 is incompatible due to different SoC/GPU). DRAM and A31s SoC are on the upper PCB side therefore differentiation is easy by looking at the SoC's 'A31s' labelling and the four USB ports.

= Sunxi support =

Current status
The Banana Pi M2 is only partially supported.

The manufacturer provides some Android images that can only be burned using PhoenixCard on Windows and some Linux images that are broken more or less. The Linux images based on older Allwinner 3.3.0 kernel are broken regarding Gbit Ethernet initialisation, the ones that are based on release candidates of kernel 4.0.0 lack correct hardware initialisation in the device tree files so Wi-Fi isn't working.

Sinovoip cloned some github ressources where all the relevant stuff for the M2 (fex/dts files) is still missing at the time of this writing. Several months later they provide cloned linux kernel and U-Boot repos and hide the only two files of interest in there: dts and defconfig files -- see below.

Manufacturer images

 * Various prebuilt images are provided via the bananapi.com website, the ones based on Linux all broken one way or the other.

Manual build
No support in the community maintained sunxi-3.4 kernel is planned. In the meantime the manufacturer provides an Android SDK (Allwinner kernel 3.3, U-Boot 2011.09-rc1) on baidu.com.

Please skip to the next Mainline U-Boot/Mainline kernel sections.

Mainline U-Boot
Use the Sinovoip_BPI_M2_defconfig (supported since v2016.01) build target. Sinovoip's official U-Boot distribution seems unmaintained now, but when using their version, the target is BananaPi_M2.

Mainline kernel
Don't use SinoVoip's broken sun6i-a31s-bananapi-m2.dtb device-tree file but the kernel source's sun6i-a31s-sinovoip-bpi-m2.dtb to be used with mainline kernel.

= Tips, Tricks, Caveats =

Powering the board
It's recommended to use the 4/1.7mm jack to power the board to avoid voltage drops often seen with Micro USB. When providing power using the USB OTG port the 2 USB ports next to Ethernet won't work. Any PSU advertised for Cubieboards or Orange Pis should work.

Power on button
Handle with care since it might break easily (3 times touched and already bent and almost broken)

Expansion Ports
The Banana Pi M2 exposes a 3 pin UART header, a 40 pin header with 2.54 mm pitch connectors that that mimics the Raspberry Pi A+/B+/2 models

= Adding a serial port =



The UART header is next to the status LEDs and the Ethernet port. Just attach some leads according to our UART howto.

= Pictures =

= Also known as =

= Variants =

BPi-M2+

 * In March 2016 SinoVoip published Banana Pi M2+. This board is based on a different SoC (Allwinner H3), and uses a form factor of 65mm x 65mm - so expect it to be incompatible with the M2 in most aspects.
 * In Jun 2017 Sinovoip published the specs for Banana Pi BPI-M2M aka Banana Pi M2 Magic, which is based on Allwinner A33. The board also comes with an integrated amplifier for a 4ohm/2.5W speaker.

= See also =


 * Manufacturer's forum
 * Github repository
 * PCB Dimensions
 * fex used for SinoVoip's kernel 3.3 based images
 * Schematics V1.0 (obvisouly for a different PCB revision, eg. RTL8188EUS/USB Wi-Fi and not AP6181/SDIO as in reality)
 * Current Schematics
 * LeMaker Banana Pi
 * LeMaker Banana Pro