Bpim 2
Bpim 2
Bpim 2
Table of Contents
About BPI-M2+ (M2 plus) 0
BPI-M2+ hardware 1
BPI-M2+ hardware interface 1.1
BPI-M2+ hardware spec 1.2
BPI-M2+ Pin define 1.3
BPI-M2+ SD card slot 1.4
BPI-M2+ GigE LAN 1.5
BPI-M2+ eMMC flash 1.6
BPI-M2+ WIFI interface 1.7
BPI-M2+ wifi antenna slot 1.8
BPI-M2+ bluetooth interface 1.9
BPI-M2+ IR interface 1.10
BPI-M2+ HDMI interfact 1.11
BPI-M2+ USB interface 1.12
BPI-M2+ OTG interface 1.13
BPI-M2+ CSI camera interface 1.14
BPI-M2+ Power interface 1.15
BPI-M2+ schematic diagram 1.16
BPI-M2+ DXF and 3D design 1.17
BPI-M2+ software 2
BPI-M2+ Quick Start 2.1
Android software 2.2
How to burn android image to eMMC 2.2.1
Linux software 2.3
How to burn Linux image to eMMC 2.3.1
Linux for Kernel 3.4 image 2.3.2
how to use BPI-M3 image on BPI-M2+ , use bpi-bootsel 2.3.2.1
mainline Linux 2.3.3
uboot 2.3.3.1
mainline kernel 2.3.3.2
2
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Armbian 2.4
BPI-M2+ WiringPi 2.5
BPI-M2+ source code on github 3
Reference documents 4
H3 Linux-sunxi wiki 4.1
H3 Manual build howto 4.2
BPI-M2+ linux-sunxi wiki 4.3
Banana pi wikipedia wiki 4.4
BPI-M2+ online video 4.5
Allwinner GPL_Violations 4.6
Linux mainlining effort 4.7
BPI-M2+ quality guarantee 5
BPI-M2+ BT4.0 Lab test 5.1
BPI-M2+ WIFI Lab test 5.2
BPI-M2+ CE,FCC RoHS Certification 5.3
3
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Banana Pi BPI-M2+ series run Android,Debian linux,Ubuntu linux, Raspberry Pi image and
others image. Banana PI PBI-M2 hardware: 1Ghz ARM7 quad-core processor, 1GB DDR3
SDRAM, 8G eMMC flash on board,and SDIO wifi module on board.
Banana PI BPI-M2+ with Gigabit ethernet port, It can run with Android 4.4 smoothly. it can
easily run with the game it support 1080P high definition video output and 4K support, the
GPIO compatible with Raspberry Pi B+ and can support raspbian Image
Note:
Banana Pi BPI-M2+ not support sata port, so you need use USB for hardisk
Banana pi BPI-M2+ not support LCD interface.
For cost down version ,we may remove 8G eMMC and on board wifi module. so ,everyone
can free DIY on this board.
forum: http//www.banana-pi.org
forum: http://www.bananapi.com
product: http://www.banana-pi.com
BPI-M2+ hardware 6
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Onboard
10/100/1000M Ethernet RJ45
Network
Onboard
SDIO AP6212(option AP6181、AP6335)
WIFI
A CSI input connector Camera:1 Supports 8-bit YUV422 CMOS sensor
Video interface,2 Supports CCIR656 protocol for NTSC and PAL,3 Supports
Input SM pixel camera sensor ,4 Supports video capture solution up to
1080p@30fps
Audio
HDMI
Output
Power
DC input can supply power, but USB OTG input don’t supply power
Source
USB 2.0
two USB 2.0 HOST, one USB 2.0 OTG
Ports
Buttons Power Button, Recovery Button, Uboot Button
Low-level
40 Pins Header,compatible with Raspberry Pi B+
peripherals
uart
GPIO(1x3) UART, ground
pin
Supported
Android, Ubuntu, Debian, Rasberry Pi Image
OS
Product
65mm × 65mm
size
Weight 48g
Banana Pi BPI-M2+ has a 40-pin GPIO header that matches that of the Model B+ Raspberry
Pi. Following is the Banana Pi GPIO Pinout:
CON2-P02 VCC-5V
CON2-P20 GND
CON2-P21 SPI0-MISO PC1
CON2-P25 GND
CON2-P26 PC7 PC7
CON2-P34 GND
CON2-P35 PA10-EINT10 PA10-EINT10
CON2-P36 PL4-S-EINT4 PL4-S-EINT4
CON2-P37 PA17-EINT17 PA17-EINT17 SPDIF-OUT
The CSI Camera Connector is a 24-pin FPC connector which can connect external camera
module with proper signal pin mappings. The pin definitions of the CSI interface are shown
as below. This is marked on the Banana Pi board as “CSI″.
CN3-P01 NC
CN3-P02 GND
CN3-P03 CSI0-SDA PE13
CN3-P04 CSI0-AVDD
CN3-P05 CSI0-SCK PE12
CN3-P06 CSI0-Reset PE14
CN3-P07 CSI0-VSYNC PE3
CN3-P23 GND
CN3-P24 CSI0-DOVDD
UART specification:
The jumper CON3 is the UART interface. For developers of Banana Pi, this is an easy way
to get the UART console output to check the system status and log message.
So, you can burn your image to eMMC flash and boot from eMMC flash.
Note:
the first boot is from microSD card. if you want to boot from eMMC flash ,please remove
microSD card from BPI-M2+ microSD card slots.
http://wiki.friendlyarm.com/wiki/images/5/57/AP6212_V1.1_09022014.pdf
BPI-M2+ IR interface
BPI-M2+ support IR interface on board. you can use it as remote control.
1,install lirc
# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS="--uinput"
#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD=false
3,test lirc
BPI-M2+ IR interface 22
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
BPI-M2+ keycode:
IR Address: 4040
https://www.youtube.com/watch?v=HhW_G85Byio&feature=youtu.be
BPI-M2+ IR interface 23
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
https://bananapi.gitbooks.io/bpi-accessories/content/irremotecontrol.html
BPI-M2+ IR interface 24
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
But If the display monitor doesn't have HDMI interface,only VGA or DVI port. We should use
HDMI-to-VGA or HDMI-to-DVI cable to connect the BPI-M3 to the display monitor.
Note: if the HDMI-to-VGA/DVI cable is a bad quality cable,it will go wrong on the monitor
display. please choose a good quality cable for BPI-M3
two USB connect to H3 chip ,not use USB hub function ,so is support 480M speed for each
port.
BPI-M2+ OTG port also can power BPI-M2+, just use 5V/2A micro USB interface adapter.
note: for BPI-M2+ , camera is not same as BPI-M2,BPI-M1.... , it support OV5640 module,
not need extend board. you just can direct use OV5640 modue on CSI interface.
BPI-M2+ OTG port also can power BPI-M2+, just use 5V/2A micro USB interface adapter.
https://drive.google.com/file/d/0B4PAo2nW2KfnWElwRWhwZFhCdWc/view?usp=sharing
3D design front:
3D design back:
https://drive.google.com/file/d/0B4PAo2nW2KfnaDRVLUpvV3hIVUk/view?usp=sharing
https://drive.google.com/file/d/0B4PAo2nW2KfnVV8zaDhYazRvOU0/view?usp=sharing
BPI-M2+ software
BPI-M2+ software 35
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
First time to enjoy your Banana Pi, you need at least the accessories in the table below.
Mobile Hard
You can choose to connect a mobile hard disk to USB port to
7 disk
store more files.
(Optional)
Please visit our webmaster: www.banana-pi.org to download image, banana pi all image can
be download form this web.
In order to enjoy your Banana Pi BPI-M3, you will need to install an Operating System (OS)
onto an SD card or eMMC Flash. Instructions below will teach you how to write an OS image
to your SD card or eMMC Flash under Windows and Linux.
1.Insert your SD card into your computer. The size of SD should be larger than the OS
image size, generally 8GB or greater.
*Unzip the download file and run the setup.exe to install the tool on your machine.
*In the "Options" menu, set "FORMAT TYPE" option to QUICK, "FORMAT SIZE
ADJUSTMENT" option to "ON".
*Check that the SD card you inserted matches the one selected by the Tool.
*Run mkfs –t vfat /dev/sdx command to format the entire SD card as FAT. (x should be
replaced according to your SD card node)
Android image
5.1 You need to use Phoenix Card to make the SD card. Download the Phoenix Card from
https://drive.google.com/open?
id=0BzoTh3Vdt47ffi1ld0RuWXhUVzdYdjFjaHEtMlNQWVFTRmIxcC1OQnczSTV6OGRZWG
plNU0
5.2 Run PhoenixCard.exe, Press “Disk Check” and select disk of SD Card.
Linux image:
*Download a tool that can wirte image to SD card, such as Win32 Diskimager from:
http://sourceforge.net/projects/win32diskimager/files/Archive/
*Run dd if=[imagename] of=/dev/sdx command to write image file to SD card. Wait patiently
to successfully complete writing.
According to the set up diagram below, you can easily set up your Banana Pi.
1. Insert the written-image SD card that to the SD card spot on the left side edge of the
underside of the board.
2. 2.On the bottom "edge" in the middle of the board is the HDMI Type A (Full sized)
port.Just connect any HDMI cable from the board to your TV or HDMI Monitor.
3. Plug a USB keyboard and mouse into the USB slots located on the right edge.
4. Just under the USB ports on the right edge is the Ethernet connector for anyone who
wants to plug the Banana Pi into a wired network.
5. 5.Finally, at the very left of the bottom edge is the USB power connector. Plug in a
regulated power supply that is rated at 5V ±5% / 2000mA (or 2A). Any number bigger
than 700 mA will also work. Avoid using the smaller chargers used for small GSM
phones, as these are often unregulated, even if they claim "5V 1A", they may do "5V"
and may do "1A", but not at the same time!
If all goes well, the Banana Pi will boot in a few minutes. The screen will display the OS GUI.
You can use the GUI to shut down the Banana Pi safely.
This will shut down the PI safely, (just use the power key to turn off might damage the SD-
cards file system).After that you can press the power key for 5 seconds to turn it off.
Android software
1. Android 4.4
2. HDMI 4K & 1080P & 720P(default) supported
3. GMAC supported
4. WIFI 802.11 b/g/n supported
5. Bluetooth 4.0 supported
6. IR supported
7. Camera ov5640 supported
8. USB Camera supported
9. adb root supported
10. adb tcp supported
11. preinstall Kodi V16 APP
Google Drive:
https://drive.google.com/file/d/0B_YnvHgh2rwjaTdEdENEYnE2UXc/view
Baidu Cloud:
http://pan.baidu.com/s/1kUC9eGv
Android software 42
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
MD5: 10e277ca15d74bcfe7ff710a2f29fbf4
kodi support:
Android software 43
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
video play:
Realese note:
1. Android 4.4
2. HDMI 4K & 1080P & 720P(default) supported
3. GMAC supported
4. WIFI 802.11 b/g/n supported
Android software 44
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Google Drive:
https://drive.google.com/file/d/0B_YnvHgh2rwjaTdEdENEYnE2UXc/view
Baidu Cloud:
http://pan.baidu.com/s/1kUC9eGv
MD5: 10e277ca15d74bcfe7ff710a2f29fbf4
https://www.youtube.com/watch?v=X61rDTGeFXY
Android software 45
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Android image for m2+ ,working ethernet,wifi,bt,but only botom usb,very fast on emmc
download link:
https://mega.nz/#!lE0SiQpQ!SYbiTpFrcXlnvI4Wa_oJzCfUmKcdD2XftFdO-Agoth8
Android software 46
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
2,if your PC is windows OS, please download PhoenixSuit.zip tooling to burn if your PC is
Linux OS, please download Linux 32bit or Linux 64bit tooling
1,install PhonenixSuit.
2,running PhonenixSuit. chick "one key to burn" choose your android image file.
3,press on BPI-M2+ uboot key. and plug in micro USB data line.
6,if all is ok , try to boot from eMMC , if not success ,just need try again.
sudo ./LiveSuit.run
sudo ./LiveSuit.run
4,install drivers:
save & reboot or just reboot udev server, so you can run LiveSuit.sh as a general
user,reboot udev commond :
sudo service udev restart
10, when all is OK ,just rebbot BPI-M2+, and boot android image from eMMC flash.
Linux software
http://www.armbian.com/banana-pi-m2-plus/
getting start:
http://www.armbian.com/documentation/
https://github.com/igorpecovnik/lib
Linux software 50
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Google Drive:
https://drive.google.com/file/d/0B_YnvHgh2rwjMDd5N0dtNTVGYTA/view?usp=sharing
MD5: 4f60a9a32bac18c3f06918b0aee3b874
issue:
Google Drive:
https://drive.google.com/file/d/0B_YnvHgh2rwjUHhRMl8zLWIwaDA/view?usp=sharing
MD5: 31a8e24abc76c2ba21a02ce399315b25
discuss on forum:
http://forum.banana-pi.org/t/bpi-m2-ubuntu-mate-16-04-xenial-mpv-1080p-bpi-m2p-preview-
2016-05-05/1610
5. support WIFI
6. support bpi-bootsel cmd can switch to (bpi-m3 & bpi-m2 & bpi-m2p)
7. support uEnv.txt to fatload script.bin & uImage
8. support uEnv.txt to set video 1080P & 720P & 480P ...
9. support BT
10. support ov5640 camera
11. fix rootmydevice issue
Google Drive:
https://drive.google.com/file/d/0B_YnvHgh2rwjM1dBNnYtaWUyOVU/view?usp=sharing
MD5: 25353a3d7c2fba11cb34b03b27f75ccf
discuss on forum:
http://forum.banana-pi.org/t/bpi-m2-ubuntu-15-10-gpu-vpu-camera-bt-bpi-m2p-beta-v1-0-
2016-05-05/1606
BPI-M2+ Debian-8-jessie-lite-bpi-m2p_beta
V1.0 2016-5-5
2016-05-05-debian-8-jessie-lite-bpi-m2p_beta-sd-emmc.img.zip
Google Drive:
https://drive.google.com/file/d/0B_YnvHgh2rwjQ1g5SG03bG9YYzg/view?usp=sharing
MD5: 09bc4970b824e1c938b1b0b53604633e
discuss on forum:
http://forum.banana-pi.org/t/bpi-m2-debian-8-jessie-lite-bpi-m2p-beta-v1-0-2016-5-5/1607
issue:
Google Drive
https://drive.google.com/file/d/0B_YnvHgh2rwjQWxMSUlmMnR6Rjg/view?usp=sharing5
MD5: fd7f873e732e512f2646a57a593e2a24
BPI-M2+ board:
log on BPI-M3:
ii linux-bananapi-bpi-m3-kernel3 1.2.6
armhf Banaan Pi BPI-M3: linux kernel 3.4 image & modules
ii linux-firmware-bananapi-bpi-wifi 1.0
armhf Banaan Pi: linux kernel firmware for wifi ap6181 & ap6212
root@bananapi:/# bpi-bootsel
usage: bpi-bootsel v1.0.1
bpi-bootsel IMGFILE
bpi images:
/usr/lib/u-boot/bananapi/bpi-m2/BPI_M2_USB_LCD7.img.gz
/usr/lib/u-boot/bananapi/bpi-m2/BPI_M2_720P.img.gz
/usr/lib/u-boot/bananapi/bpi-m2/BPI_M2_USB_1080P.img.gz
/usr/lib/u-boot/bananapi/bpi-m2/BPI_M2_1080P.img.gz
/usr/lib/u-boot/bananapi/bpi-m2/BPI_M2_USB_720P.img.gz
/usr/lib/u-boot/bananapi/bpi-m2/BPI_M2_LCD7.img.gz
/usr/lib/u-boot/bananapi/bpi-m2p/BPI_M2P_720P.img.gz
/usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_USB_720P.img.gz
/usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_LCD7.img.gz
/usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_720P.img.gz
/usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_1080P.img.gz
/usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_USB_LCD7.img.gz
/usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_USB_1080P.img.gz
root@bananapi:/# bpi-bootsel /usr/lib/u-boot/bananapi/bpi-m2p/BPI_M2P_720P.img.gz
Warning: Try to write /usr/lib/u-boot/bananapi/bpi-m2p/BPI_M2P_720P.img.gz to BO
OTDISK /dev/mmcblk0
OK!! You can reboot the system now!!
root@bananapi:/# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 7156088 5833956 958612 86% /
devtmpfs 767752 0 767752 0% /dev
tmpfs 1030072 676 1029396 1% /dev/shm
tmpfs 1030072 11404 1018668 2% /run
tmpfs 5120 4 5116 1% /run/lock
tmpfs 1030072 0 1030072 0% /sys/fs/cgroup
/dev/mmcblk0p1 261868 67512 194356 26% /boot
tmpfs 206016 36 205980 1% /run/user/1000
/dev/mmcblk1p2 7156088 5064340 1728228 75% /media/pi/BPI-ROOT
/dev/mmcblk1p1 261868 29556 232312 12% /media/pi/BPI-BOOT
tmpfs 206016 0 206016 0% /run/user/0
root@bananapi:/# ls -l /boot/bananapi/
bpi-m2p/ sun7i-a20-bananapi-m1-plus.dtb
bpi-m3/ sun7i-a20-bananapi-r1.dtb
sun6i-a31s-bananapi-m2.dtb uboot/
sun6i-a31s-sinovoip-bpi-m2.dtb uImage
sun7i-a20-bananapi.dtb
root@bananapi:/# rm -rf /boot/bananapi/bpi-m2p/
root@bananapi:/# ls -l /boot/bananapi/
bpi-m3/ sun7i-a20-bananapi-m1-plus.dtb
sun6i-a31s-bananapi-m2.dtb sun7i-a20-bananapi-r1.dtb
sun6i-a31s-sinovoip-bpi-m2.dtb uboot/
sun7i-a20-bananapi.dtb uImage
root@bananapi:/# mkdir -p /boot/bananapi/bpi-m2p
root@bananapi:/# cp -a /usr/lib/u-boot/bananapi/bpi-m2p/linux /boot/bananapi/bpi
-m2p
cp: failed to preserve ownership for ��‘/boot/bananapi/bpi-m2p/linux/script.bin
�’: Operation not permitted
cp: failed to preserve ownership for ��‘/boot/bananapi/bpi-m2p/linux/uEnv.txt ’
: Operation not permitted
cp: failed to preserve ownership for ��‘/boot/bananapi/bpi-m2p/linux��’: Operati
video demo:
https://www.youtube.com/watch?v=aF_WZFDxGs4
mainline Linux
Many open source development help us to use mainline linux on BPI-M2+.
if someone want to help use ,please contact us ,we will send free sample to you.
mainline Linux 61
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
Mainline uboot
start with Sinovoip_BPI_M2_plus_defconfig (tested with 2016.03 and sun8i-h3-bananapi-
m2plus.dts from below).
mainline Linux 62
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
mainline Linux 63
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
http://www.armbian.com/download/
getting start:
http://www.armbian.com/documentation/
https://github.com/igorpecovnik/lib
Armbian 64
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
BPI-M2+ WiringPi
install BPI-M2+ WiringPi:
2,Installation:
cd BPI-WiringPi
chmod +x ./build
sudo ./build
gpio readall
BPI-M2+ WiringPi 65
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
#include <wiringPi.h>
int main(void)
{
wiringPiSetup() ;
pinMode (0, OUTPUT) ;
for(;;)
{
digitalWrite(0, HIGH) ; delay (500) ;
digitalWrite(0, LOW) ; delay (500) ;
}
}
runing it:
sudo ./blink
BPI have many extend board support WiringPi. so you can free DIY by youself:
https://bananapi.gitbooks.io/bpi-accessories/content/
BPI-M2+ WiringPi 66
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
https://github.com/BPI-SINOVOIP/BPI-M2P-bsp
Reference documents 68
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
H3 Linux-sunxi wiki
about allwinner H3 chip,please reference this link:
http://linux-sunxi.org/H3
https://en.wikipedia.org/wiki/Allwinner_Technology
H3 Linux-sunxi wiki 69
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
This page describes the process to combine Allwinners binary boot0, an SDK U-Boot, an
SDK linux kernel and other bits together to create a useful SD-card from scratch, the basis
for further hacking.
This page is only suited for H3 based devices, please look under See also for other manual
build howtos.
We of course do not build a whole distribution, we only build U-Boot, the kernel and a
handful of tools, and then use an existing rootfs to get a useful system. Depending on the
rootfs size, you might want to use a 2GB or larger SD Card. SD-card partitioning and
formatting will be taken care of later.
Link:
http://linux-sunxi.org/H3_Manual_build_howto
https://en.wikipedia.org/wiki/Banana_Pi
https://www.youtube.com/watch?time_continue=8&v=Bxbj0zA_0vI
https://www.youtube.com/watch?v=FoH4TaepMMY
https://www.youtube.com/watch?v=HhW_G85Byio
https://www.youtube.com/watch?v=sZAbhTNWB94
https://www.youtube.com/watch?v=uTJp78d1TFU
https://www.youtube.com/watch?v=q2vtjxJ4N30
https://www.youtube.com/watch?v=vPlbE5znU_8
https://www.youtube.com/watch?v=hteLkEo2id0
Allwinner GPL_Violations
Allwinner has repeatedly violated the GPL (and by proxy so have most hardware
manufacturers and resellers using or selling products based on Allwinner chipsets). Either by
not providing (Linux/Android) kernel or u-boot source at all, or by delivering trees with pre-
built binaries and no matching source code. They even blatantly use LGPL licensed code in
their userspace libraries for media decoding.
Over time, Allwinner has only increased the binary blobs present in their kernel trees,
showing clearly that - even though Allwinner in the meantime joined Linaro - it is not
progressing. Quite the opposite actually, and one has to worry about what value Linaro
membership really has if a member is allowed to behave like this. Allwinner also joined the
Linux Foundation as of June 2015, while compliance issues clearly remain.
http://linux-sunxi.org/GPL_Violations
Allwinner GPL_Violations 74
BPI-M2+(BPI-M2 Plus)H3 quad cord single board computer
It is very important to note that this is intended as a rough set of minimal goals - it is not
meant to collide with the huge effort of rewriting major drivers!
http://linux-sunxi.org/Linux_mainlining_effort