|
|
Line 1: |
Line 1: |
− | [[en:Getting_Started_with_M2P]]
| |
− | =介绍=
| |
| | | |
− | [[File:M2p_ubunu.jpg|thumb|Overview: BPI-M2+ Ubuntu linux]]
| |
− | [[File:M2p_debian.jpg|thumb|Overview:BPI-M2+ Debian linux]]
| |
− | [[File:Rasbian.jpg|thumb|Overview:BPI-M2+ Rasbian linux]]
| |
− |
| |
− | 香蕉派M2+是一种微型的开发板, 在超便携的形状特性中提供了巨大的计算性能. M2+只有65mm*65mm的大小, 搭配Allwinner H系列芯片, 它具有不同的版本,但共享相同的接口.
| |
− |
| |
− |
| |
− | *关于更多 : [[Banana Pi BPI-M2+]]
| |
− | *烧录镜像 : [[Quick Start Banana pi SBC]]
| |
− |
| |
− | ==BPI-M2+ H3==
| |
− | ===Key Features===
| |
− | * Quad-core 1.2GHz Cortex-A7 H3
| |
− | * 1GB DDR3
| |
− | * 8GB eMMC onboard
| |
− | * WiFi and BlueTooth onboard
| |
− | * 10/100/1000Mbps Ethernet Port
| |
− |
| |
− | =Development For Android=
| |
− | ===Load your first image on M2P===
| |
− | 1.You could download latest image from our forum.
| |
− | Ex: http://forum.banana-pi.org/t/bananapi-bpi-m2p-h3-new-image-android7-0-release-2018-6-30/6147
| |
− |
| |
− | 2.Put your TF card into a TF-USB adapter, and then plug adapter in your Windows PC usb interface.
| |
− |
| |
− | 3.Prepare your image, and download image burning tools PhoenixCard.exe.
| |
− |
| |
− | 4.Use "PhoenixCard.exe" to burn android image to TF card.
| |
− |
| |
− | * Here is the example of M3
| |
− |
| |
− | [[Image:M3_Android_Burning.png]]
| |
− |
| |
− | ===Load your image on M2P EMMC===
| |
− | 1.The only different with sd card burning is the image burning mode item choice
| |
− |
| |
− | * Here is the example of M3
| |
− |
| |
− | [[Image:M3_Android_Emmc_Burning.png]]
| |
− |
| |
− | 2.After succeed to burn image to SD, then plug SD card in your M2P
| |
− |
| |
− | 3.Press power button, device will copy image to EMMC automatically
| |
− |
| |
− | * Download PhoenixCard: https://pan.baidu.com/s/18Fo_JhYY02gmxtFw2Ps3rQ
| |
− |
| |
− | =Development For Linux=
| |
− | ==Basic Development==
| |
− | ===Prepare to develop===
| |
− | * Prepare 8G/above TF card, USB-Serial interface, PC with Ubuntu System
| |
− | * Using your USB-Serial Connect debug console on M2P
| |
− |
| |
− | ===Load your first image on M2P===
| |
− | 1.You could download latest image from our forum
| |
− | * Here is the example forum thread link: http://forum.banana-pi.org/t/banana-pi-bpi-m2p-new-image-release-ubuntu-16-04-v1-1/5719
| |
− |
| |
− | 2.Install bpi-tools on your Ubuntu
| |
− | * apt-get install pv
| |
− | * curl -sL https://github.com/BPI-SINOVOIP/bpi-tools/raw/master/bpi-tools | sudo -E bash
| |
− |
| |
− | 3.After you download the image, insert your TF card into your Ubuntu
| |
− | * Execute "bpi-copy xxx.img /dev/sdx" to install image on your TF card.
| |
− |
| |
− | 4.After step 3, then you can insert your TF card into M2P, and press power button setup M2P.
| |
− |
| |
− | ===Load your first image on M2P EMMC===
| |
− | * Run your M2P with TF card
| |
− | * Copy "xxx-sd-emmc-xxx.img.zip / xxx-sd-emmc-xxx.img" to your USB disk
| |
− | * Plug your USB disk in M2P
| |
− | * After M2P recognise USB disk, execute "bpi-copy xxx-sd-emmc-xxx.img.zip / xxx-sd-emmc-xxx.img" to install image on EMMC
| |
− | * Then power off M2P, take TF card out, power on M2P with EMMC
| |
− |
| |
− | ==Advanced Development==
| |
− |
| |
− | ===How to build uboot & kernel===
| |
− | ====Install tools====
| |
− | * apt-get udpate
| |
− | * apt-get install gcc-arm-linux-gnueabihf u-boot-tools
| |
− | * apt-get install pv
| |
− | * curl -sL https://github.com/BPI-SINOVOIP/bpi-tools/raw/master/bpi-tools | sudo -E bash
| |
− | ====Clone code====
| |
− | * git clone: https://github.com/BPI-SINOVOIP/BPI-M2P-bsp.git
| |
− | * ./build.sh
| |
− |
| |
− | ===How to create an image ===
| |
− | * Prepare a SD card which have installed system(Ubuntu/Raspbian/..)
| |
− | * Boot your SD card with M2P, after M2P finish starting, copy your files and config your system, then poweroff M2P. [If you don't want to config your system, you can skip this step]
| |
− | * Plug your SD card in PC(which is running Linux), "cd /media", then "ln -s <your account> pi"
| |
− | * Execute "bpi-migrate -c bpi-m2p.conf -c ubuntu-mate-from-sd.conf -d /dev/sdx"
| |
− | * Then you could get your own image now
| |
− |
| |
− | ===GPIO Control===
| |
− | * To access a GPIO pin you first need to export it with
| |
− | echo XX > /sys/class/gpio/export
| |
− | * with XX being the number of the desired pin. To obtain the correct number you have to calculate it from the pin name (like PH18)
| |
− | (position of letter in alphabet - 1) * 32 + pin number
| |
− | for PH18 this would be ( 8 - 1) * 32 + 18 = 224 + 18 = 242 (since 'h' is the 8th letter)
| |
− | * echo "out/in" > /sys/class/gpio/gpio*NUMBER*/direction
| |
− | * echo "0/1" > /sys/class/gpio/gpio*NUMBER*/value
| |
− |
| |
− | ===OTG===
| |
− | 1. On M2P console:
| |
− | * Execute "./adbd.sh", then execute "ps -ax | grep adbd" to see if adbd is set up
| |
− |
| |
− | 2. On PC terminal:
| |
− | * If adbd was succeed to set up, insert OTG-USB interface to M2P and PC(with Ubuntu system)
| |
− | * Execute "adb devices" to see if PC has recognised M2P OTG
| |
− | * If yes, we could execute "adb shell" to connect M2P by adb now
| |
− |
| |
− | ===GMAC===
| |
− | * Use iperf3 to test gmac
| |
− |
| |
− | [[Image:M2P_GMAC.png]]
| |
− |
| |
− | ===Bluetooth===
| |
− | * Use bluetoothctl tool to operate BT
| |
− | * Execute "bluetoothctl"
| |
− | * If you don't know how to use bluetoothctl, type "help", you will see more commands
| |
− | * Execute these commands:
| |
− | [[Image:M2P_BT_bluetoothctl.png]]
| |
− |
| |
− | [[Image:M2P_BT.png]]
| |
− |
| |
− | ===WiFi on M2P===
| |
− |
| |
− | Driver code:
| |
− |
| |
− | *https://github.com/BPI-SINOVOIP/BPI_WiFi_Firmware
| |
− |
| |
− | ====WiFi Client====
| |
− | '''You have two ways to setup WiFi Client'''
| |
− |
| |
− | 1. Use commands to setup WiFi client
| |
− | * ip link set wlan0 up
| |
− | * iw dev wlan0 scan | grep SSID
| |
− | * vim /etc/wpasupplicant/wpa_supplicant.conf
| |
− | * network={ ssid="ssid" psk="password" priority=1 }
| |
− | * wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
| |
− | * dhclient wlan0
| |
− |
| |
− | 2. Use UI interface to setup WiFi Client
| |
− |
| |
− | ===Clear boot===
| |
− | * git clone https://github.com/BPI-SINOVOIP/BPI-files/tree/master/SD/100MB
| |
− | * bpi-bootsel BPI-cleanboot-8k.img.gz /dev/sdX
| |
− |
| |
− | ===Camara function===
| |
− | We use HDF5640 camara.
| |
− |
| |
− | [[Image:ov5640_camara.png]]
| |
− | ====Guvcview====
| |
− | * Use your UI interface to operate camara
| |
− | * Applications -> Sound & Video -> guvcview
| |
− | [[Image:guvcview_ov5640.png]]
| |
− | ====Shell====
| |
− | * We also have built-in command in /usr/local/bin to test camara
| |
− | * "./test_ov5640_image_mode.sh" to test picture taking function
| |
− | * "./cameratest.sh" to test video recording function
| |
− |
| |
− | ===IR function===
| |
− | * Execute "getevent"
| |
− | * Use your IR device to send information to M2P
| |
− | [[Image:IR_getevent.png]]
| |
− |
| |
− | ===BPI-Tools===
| |
− | ====Install Bpi-tools====
| |
− | * Execute "curl -sL https://github.com/BPI-SINOVOIP/bpi-tools/raw/master/bpi-tools | sudo -E bash - "
| |
− |
| |
− | ====Update Bpi-tools====
| |
− | * Execute "bpi-tools"
| |
− | [[Image: Bpi-tools.png]]
| |
− |
| |
− | ===RPi.GPIO===
| |
− | ====Install RPi.GPIO====
| |
− | * Execute "git clone https://github.com/BPI-SINOVOIP/RPi.GPIO"
| |
− | * after clone the repo, cd RPi.GPIO
| |
− | * Execute "sudo apt-get update"
| |
− | * Execute "sudo apt-get install python-dev python3-dev"
| |
− | * Execute "sudo python setup.py install" or "sudo python3 setup.py install" to install the module
| |
− |
| |
− | ====Using RPi.GPIO====
| |
− | * cd /usr/local/bin
| |
− | * Execute "./bpi_test_g40.py" to test RPi.GPIO
| |
− |
| |
− | [[Image: RPi_GPIO.png]]
| |
− |
| |
− | ===WiringPi===
| |
− | * GitHub: https://github.com/BPI-SINOVOIP/BPI-WiringPi2.git
| |
− | * We also have built-in test command in "/usr/local/bin"
| |
− |
| |
− | ====How to Update WiringPi====
| |
− | * Execute "bpi-update -c pkglist.conf"
| |
− | [[Image: Update_Pkglist.png]]
| |
− |
| |
− | * Execute "bpi-update -c bpi-pkg-bpi-wiringpi.conf"
| |
− | [[Image: Update_WringPi.png]]
| |
− |
| |
− | ====RGB 1602 LCD====
| |
− | * Execute "/usr/local/bin/bpi_test_lcd1602.sh"
| |
− | [[Image: WringPi_1602_LCD.png]]
| |
− |
| |
− | ====0.96 Inch OLED Display====
| |
− | * Execute "/usr/local/bin/bpi_test_52pi.sh"
| |
− | [[Image: WringPi_0.96_OLED.png]]
| |
− |
| |
− | ====8x8 RGB LED Martix====
| |
− | * Firstly you need a GPIO Extend Board for 8x8 LED Martix
| |
− | [[Image: WringPi_LED_Martix_Extend_Board.png]]
| |
− |
| |
− | * Execute "/usr/local/bin/bpi_test_gpio40.sh"
| |
− | [[Image: WringPi_LED_Martix.png]]
| |
− |
| |
− | ==FAQ==
| |
− |
| |
− | =Reference Link=
| |
− |
| |
− | http://www.banana-pi.org/m2plus.html
| |
− |
| |
− | http://forum.banana-pi.org/
| |