Difference between revisions of "Banana Pi BPI-M1+"
(→Armbian image) |
|||
Line 2: | Line 2: | ||
=Introduction= | =Introduction= | ||
− | [[File:Banana_pi_BPI-M1+_1.jpg|thumb| | + | [[File:Banana_pi_BPI-M1+_1.jpg|thumb|[[Banana Pi BPI-M1+]] with Allwinner A20 chip]] |
[[File:Banana_pi_BPI-M1+_2.jpg|thumb|Overview]] | [[File:Banana_pi_BPI-M1+_2.jpg|thumb|Overview]] | ||
[[File:BPI-M1+_3d.jpg|thumb|BPI-M1+ 3D]] | [[File:BPI-M1+_3d.jpg|thumb|BPI-M1+ 3D]] |
Revision as of 17:29, 22 August 2023
Introduction
Banana Pi BPI-M1+ upgrade is an open-source single-board computer that adds more connectivity to the classic board. It features the same high performance AllWinner A20 dual-core SoC at 1GHz, 1GB of DDR3 SDRAM, Gigabit Ethernet, SATA, USB, and HDMI connections found in classic BPI-M1+ ; but the Banana Pi M1+ features onboard WiFi g/b/n. The board supports all classic projects and even more because of the onboard WIFi chip. Like its sibling, it can run operating systems including Android, Lubuntu, Ubuntu, Debian, and Raspbian.
The Banana Pi M1+ is our upgraded M1 board. We feel like the onboard WiFi adds a lot more features to the board and makes it more convient for users to set up their linx desktop or router projects. Banana Pi is an open platform device, it is for anyone who wants to play and build with developer technology instead of simply using consumer technology. Backed by our community, starting a project and building servers is fun and rewarding. With a Banana Pi, we want you to explore and experience the world of DIY projects and portable computing. We welcome all companies, DIYers, and tech loving people within our community! Together, we can make a difference, we can discover our passions, inspire others, and build a practical project.
Key Features
- Allwinner A20 Dual-core 1.0GHz CPU
- Mali-400 MP2 with Open GL ES 2.0/1.1.
- 1 GB DDR3 memory.
- Wifi support onboard
- 1x SATA interface.
- 1x Gigabit LAN
- 1x USB otg and 2x USB 2.0
- 1X MIC
- AV out
- HDMI out
- IR
- CSI camera interface
- DSI display interface
- 40 PIN gpio
- 3.7V lithium battery interface
Get startting
- How to burn image : Quick Start Banana pi SBC
- How to development : Getting Started with M1P
Hardware
Hardware interface
Hardware spec
Banana Pi BPI-M1+ | |||
CPU | A20 ARM Cortex -A7 Dual-Core | ||
GPU | ARM Mali400MP2Complies with OpenGL ES 2.0/1.1 | ||
Memory | 1GB DDR3 | ||
Network | 10/100/1000 Ethernet | ||
wifi&BT | Wifi support onboard | ||
Video Input | A CSI input connector allows for the connection of a designed camera module | ||
Video Outputs | HDMI, CVBS, LVDS/RGB | ||
Audio Outputs | 3.5mm jack and HDMI | ||
Power Source | 5V/2A via Micro USB (DC in only) and / or Micro USB OTG | ||
USB 2.0 ports | 2(direct from Allwinner A20 chip) | ||
GPIO | GPIO, UART, I2C BUS, SPI BUS, WITH TWO CHIP SELECTS, CAN bus, ADC, PWM, +3.3V, +5V, GND | ||
LED | Power Key & 8P8C | ||
Storage | SATA 2.0 | ||
OS | Android 4.4, Android 4.2, Raspbian, Lubuntu, Open Suse, Debian |
GPIO PIN define
Banana Pi BPI-M1+ has a 40-pin GPIO header . Following is the Banana Pi GPIO Pinout:
40 PIN GPIO of Banana pi BPI-M1+ | |||
GPIO Pin Name | Default Function | Function2:GPIO | |
CON3-P01 | VCC-3V3 | ||
CON3-P02 | VCC-DC | ||
CON3-P03 | TWI2-SDA | PB21 | |
CON3-P04 | VCC-DC | ||
CON3-P05 | TWI2-SCK | PB20 | |
CON3-P06 | GND | ||
CON3-P07 | PWM1 | PI3 | |
CON3-P08 | UART3\_TX | PH0 | |
CON3-P09 | GND | ||
CON3-P10 | UART3\_RX | PH1 | |
CON3-P11 | UART2\_RX | PI19 | |
CON3-P12 | PH2 | PH2 | |
CON3-P13 | UART2\_TX | PI18 | |
CON3-P14 | GND | ||
CON3-P15 | UART2\_CTS | PI17 | |
CON3-P16 | CAN\_TX | PH20 | |
CON3-P17 | VCC-3V3 | ||
CON3-P18 | CAN\_RX | PH21 | |
CON3-P19 | SPI0\_MOSI | PI12 | |
CON3-P20 | GND | ||
CON3-P21 | SPI0\_MISO | PI13 | |
CON3-P22 | UART2\_RTS | PI16 | |
CON3-P23 | SPI0\_CLK | PI11 | |
CON3-P24 | SPI0\_CS0 | PI10 | |
CON3-P25 | GND | ||
CON3-P26 | SPI0\_CS1 | PI14 | |
CON3-P27 | TWI3-SDA | PI1 | |
CON3-P28 | TWI3-SCK | PI0 | |
CON3-P29 | I2S\_MCLK | PB5 | |
CON3-P30 | GND | ||
CON3-P31 | I2S\_BCLK | PB6 | |
CON3-P32 | I2S\_DI | PB12 | |
CON3-P33 | I2S\_LRCK | PB7 | |
CON3-P34 | GND | ||
CON3-P35 | I2S\_DO0 | PB8 | |
CON3-P36 | UART7\_RX | PI21 | |
CON3-P37 | IR0\_TX | PB3 | |
CON3-P38 | UART7\_TX | PI20 | |
CON3-P39 | GND | ||
CON3-P40 | SPDIF\_DO | PB13 |
CSI Camera Connector specification:
The CSI Camera Connector is a 40-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 “CON1″.
CSI PIN of Banana pi BPI-M1+ | |||
CSI Pin Name | Default Function Pin name | Function2:GPIO | |
CON1 P01 | LINEINL | ||
CON1 P02 | LINEINR | ||
CON1 P03 | VCC-CSI | ||
CON1 P04 | ADC\_X1 | ||
CON1 P05 | GND | ||
CON1 P06 | ADC\_X2 | ||
CON1 P07 | FMINL | ||
CON1 P08 | ADC\_Y1 | ||
CON1 P09 | FMINR | ||
CON1 P10 | ADC\_Y2 | ||
CON1 P11 | GND | ||
CON1 P12 | CSI-FLASH | PH17 | |
CON1 P13 | LRADC0 | ||
CON1 P14 | TWI1-SDA | PB19 | |
CON1 P15 | LRADC1 | ||
CON1 P16 | TWI1-SCK | PB18 | |
CON1 P17 | CSI-D0 | PE4 | |
CON1 P18 | CSI0-STBY-EN | PH19 | |
CON1 P19 | CSI0-D1 | PE5 | |
CON1 P20 | CSI-PCLK | PE0 | |
CON1 P21 | CSI-D2 | PE6 | |
CON1 P22 | CSI0-PWR-EN | PH16 | |
CON1 P23 | CSI-D3 | PE7 | |
CON1 P24 | CSI0-MCLK | PE1 | |
CON1 P25 | CSI-D4 | PE8 | |
CON1 P26 | CSI0-RESET\# | PH14 | |
CON1 P27 | CSI-D5 | PE9 | |
CON1 P28 | CSI-VSYNC | PE3 | |
CON1 P29 | CSI-D6 | PE10 | |
CON1 P30 | CSI-HSYNC | PE2 | |
CON1 P31 | CSI-D7 | PE11 | |
CON1 P32 | CSI1-STBY-EN | PH18 | |
CON1 P33 | AP-RESET\# | ||
CON1 P34 | CSI1-RESET\# | PH13 | |
CON1 P35 | CSI-IO0 | PH11 | |
CON1 P36 | HPR | ||
CON1 P37 | HPL | ||
CON1 P38 | IPSOUT | ||
CON1 P39 | GND | ||
CON1 P40 | IPSOUT |
LVDS \(LCD display interface\)
The LVDS Connector is a 40-pin FPC connector which can connect external LCD panel \(LVDS\) and touch screen \(I2C\) module as well.The pin definitions of this connector are shown as below. This is marked on the Banana Pi board as “CON2″.
LVDS PIN of Banana pi BPI-M1+ | |||
LVDS Pin | Default Function | Function2 | Function3:GPIO |
CON2 P01 | IPSOUT\(5V output\) | ||
CON2 P02 | TWI3-SDA | PI1 | |
CON2 P03 | IPSOUT\(5V output\) | ||
CON2 P04 | TWI3-SCK | PI0 | |
CON2 P05 | GND | ||
CON2 P06 | LCD0-IO0 | PH7 | |
CON2 P07 | LCDIO-03 | PH12 | |
CON2 P08 | LCD0-IO1 | PH8 | |
CON2 P09 | LCD0-D0 | LVDS0-VP0 | PD0 |
CON2 P10 | PWM0 | PB2 | |
CON2 P11 | LCD0-D1 | LVDS0-VN0 | PD1 |
CON2 P12 | LCD0-IO2 | ||
CON2 P13 | LCD0-D2 | LVDS0-VP1 | PD2 |
CON2 P14 | LCD0-DE | PD25 | |
CON2 P15 | LCD0-D3 | LVDS0-VN1 | PD3 |
CON2 P16 | LCD0-VSYNC | PD27 | |
CON2 P17 | LCD0-D4 | LVDS0-VP2 | PD4 |
CON2 P18 | LCD0-HSYNC | PD26 | |
CON2 P19 | LCD0-D5 | LVDS0-VN2 | PD5 |
CON2 P20 | LCD0-CS | ||
CON2 P21 | LCD0-D6 | LVDS0-VPC | PD6 |
CON2 P22 | LCD0-CLK | PD24 | |
CON2 P23 | LCD0-D7 | LVDS0-VNC | PD7 |
CON2 P24 | GND | ||
CON2 P25 | LCD0-D8 | LVDS0-VP3 | PD8 |
CON2 P26 | LCD0-D23 | PD23 | |
CON2 P27 | LCD0-D9 | LVDS0-VN3 | PD9 |
CON2 P28 | LCD0-D22 | PD22 | |
CON2 P29 | LCD0-D10 | PD10 | |
CON2 P30 | LCD0-D21 | PD21 | |
CON2 P31 | LCD0-D11 | PD11 | |
CON2 P32 | LCD0-D20 | PD20 | |
CON2 P33 | LCD0-D12 | PD12 | |
CON2 P34 | LCD0-D19 | PD19 | |
CON2 P35 | LCD0-D13 | PD13 | |
CON2 P36 | LCD0-D18 | PD18 | |
CON2 P37 | LCD0-D14 | PD14 | |
CON2 P38 | LCD0-D17 | PD17 | |
CON2 P39 | LCD0-D15 | PD15 | |
CON2 P40 | LCD0-D16 | PD16 |
UART specification:
The jumper J11header CON4 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.
UART debug PIN of Banana pi BPI-M1+ | |||
Pin Name | Default Function | GPIO | |
CON4 P03 | UART0-TXD | PB22 | |
CON4 P02 | UART0-RXD | PB23 | |
CON4 P01 | GND |
Software
Development
Basic Development
Resources
Source code
- Linux kernel 3.4 Source code : https://github.com/BPI-SINOVOIP/BPI-M1-bsp
- Android 4.4 source code
- Android 4.2.2 source code
Documents
- Because of the Google security update some of the old links will not work if the images you want to use cannot be downloaded from the new link bpi-image Files
- All banana pi docement(SCH file,DXF file,and doc)
- schematic diagram: google drive
- BPI-M1+ DXF file download link : google drive
- BPI-M1+ 3D design file download link :google drive
- CE FCC RoHS : BPI-M1 CE,FCC,RoHS
- Arch linux wiki for BPI-M1:https://wiki.archlinux.org/index.php/Banana_Pi
- Nas for BPI-M1/BPI-M1+ : https://www.hackster.io/jeffbaocai/bananapi-pro-nas-0815dc?ref=platform&ref_id=8064_popular___&offset=3
- NetBSD/evbarm on Allwinner SoCs : https://wiki.netbsd.org/ports/evbarm/allwinner/#index1h1
- Gentoo for banana pi : https://wiki.gentoo.org/wiki/Banana_Pi_the_Gentoo_Way
- openSUSE for banana pi : https://en.opensuse.org/HCL:BananaPi
- How to booting from SSD using Lubuntu / Raspbian :https://bananapi.gitbooks.io/bpi-m1/content/en/howtobootingfromssdusinglubunturaspbian.html
- Building the cluster on BPI : https://www.hackster.io/Penguinfly/banana-pi-cluster-47d566
- Allwinner documents:
- allwinner chip online datasheet and documents: http://dl.linux-sunxi.org/
Image Release
Android 4.4
- 2018-07-28 update android 4.4 LCD version image
- Features Map:http://wiki.banana-pi.org/M1_Image_Map
- Baidu Drive:https://pan.baidu.com/s/1DfSIiMvW_I-kFjTZMtcVsA
- Google Drive: https://drive.google.com/open?id=1qcH9baIhOphsDdlH_yBADuBiZsvrSKnt
- Forum pthtread :http://forum.banana-pi.org/t/bananapi-m1-m1p-r1-new-image-release-20180728/6357
Armbian image
- Armbian_23.02.0-trunk_Bananapim1plus_jammy_edge_6.1.11_xfce_desktop.img.xz,This release is for banana pi M1 Plus board, which is based on Armbian operation system.
jammy edge version with 6.1.11 kernel.
- 2022-12-06 Armbian_22.11.0-trunk_Bananapi BPI-M1+ bullseye_edge_6.0.9.img.xz
- Google Drive:https://drive.google.com/file/d/1AMEfQIygT8949sfkX6HIjap7WKpQox4i/view?usp=share_link
- Baidu Cloud:https://pan.baidu.com/s/1ePzBiwN0wEd8j3muk1HOlA?pwd=8888 (pincode: 8888)
- Discuss on forum: https://forum.banana-pi.org/t/bananapi-bpi-m1-new-image-release-armbian-bullseye/14447/2
- Armbian Xenial and Armbian Jessie
- Image lownload link :https://www.armbian.com/banana-pi-plus/
Ubuntu linux
- 2022-09-07 Armbian_22.11.0-trunk_Bananapim1plus_jammy_edge_5.19.6_xfce_desktop.img
- Google Drive:https://drive.google.com/file/d/1hlPkFx-NhGoCxYlHCqe4q9LwuQ0GosQL/view?usp=sharing
- Baidu Cloud:https://pan.baidu.com/s/1SOeRKjVmTqTb6rMD71SfAw?pwd=wbnt (pincode: wbnt)
- Banana Pi new image: Ubuntu 16.04 with Allwinner BSP, use MPV play 1080P video,Allwinner BSP kernel 3.4 , BPI-M2 Ultra/Berry use kernel 3.10
Debian Linux
- 2022-09-07 Armbian_22.11.0-trunk_Bananapim1plus_bullseye_edge_5.19.6_xfce_desktop
- Google Drive:https://drive.google.com/file/d/1XpumxbOR74FSLayoICh4ZN4G3uZ_o0Fo/view?usp=sharing
- Baidu Cloud:https://pan.baidu.com/s/1JtqdKE4AsAwCc6i_Wys_VA?pwd=6kgc (pincode: 6kgc)
- 2019-9-18 update. Debian 10 buster mate desktop with grub support (boot-2019.07 + kernel 5.1.1)
OpenWRT
Officeal OpenWRT
- BPI-M1/BPI-M1+/BPI-R1 use A20 chip,so easy to run openwrt
- wiki : https://wiki.openwrt.org/toh/lamobo/r1
- openwrt support for allwinner :https://wiki.openwrt.org/doc/hardware/soc/soc.allwinner.sunxi?s[]=banana&s[]=pi
- image download : https://downloads.openwrt.org/chaos_calmer/15.05/sunxi/generic/uboot-sunxi-Lamobo_R1/
- opwrt for Allwinner Soc : https://wiki.openwrt.org/doc/hardware/soc/soc.allwinner.sunxi?s[]=banana&s[]=pi
BPI BSP for OpenWRT
- How to build OpenWRT image from github : https://bananapi.gitbooks.io/bpi-m1/content/en/howtobuildopenwrtimagefromgithub.html
FreeBSD
FreeBSD on Allwinner (sunxi) systems for banana pi
Banana pi as the official partner of Allwinner , must banana pi product use Allwinner chip design . such as A20/A31S/H3/H2+/A64/A83T , and FreeBSD have support many Allwinner . so easy to use on banana pi board.
- Allwinner A20 (sun7i), a dual-core Cortex-A7 BPI-M1/BPI-M1+/BPI-R1
- Allwinner A31 and A31s (sun6i), a quad-core Cortex-A7 BPI-M2
- Allwinner A64 (sun50i), a quad-core Cortex-A53 BPI-M64
- Allwinner A83T (sun8i), an octa-core Cortex-A7 BPI-M3
- Allwinner H3 (sun8i), a quad-core Cortex-A7 BPI-M2+/BPI-M2+ EDU/
https://wiki.freebsd.org/FreeBSD/arm/Allwinner
OpenSuse
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/opensuse.html
OpenMediaVault
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/openmediavault.html
Arch Linux
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/arch_linux.html
Gentoo Linux
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/gentoolinux.html
RaspBSD
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/raspbsdonbpi-m1.html
CentOS
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/centos7linuxforbpi.html
DietPi
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/dietpi.html
FreeBSD/NetBSD
- inmage and how to : https://bananapi.gitbooks.io/bpi-m1/content/en/freebsdnetbsd.html
Lakka TV
- Banana Pi M2+ with H3 chip
- Banana Pi M3 with A83T chip
- BPI-M1 and BPI-M1+ use A20 chip
- more about this : https://bananapi.gitbooks.io/bpi-m3/content/en/lakkatv.html
http://mirror.lakka.tv/nightly/
Simplenas
- simplenas image : https://simplenas.com/download/other/banana-pi-m1