Difference between revisions of "Getting Started with M2 Zero"
JackZengWiki (talk | contribs) (Created page with "=Introduction= ==BPI-M2U== Banana Pi M2 Zero is an ultra compact single board computer measures only 60mm*30mm. It uses quad-core Cortex A7 allwinner H2+ processor, with 5...") |
JackZengWiki (talk | contribs) (→Introduction) |
||
Line 11: | Line 11: | ||
* WiFi (AP6212) & Bluetooth onboard. | * WiFi (AP6212) & Bluetooth onboard. | ||
* Mini HDMI. | * Mini HDMI. | ||
+ | |||
+ | =Development= | ||
+ | Let's get start to develop on BPI-M2P, see amazing things happen. | ||
+ | ==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=== | ||
+ | |||
+ | ===How to create a 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 | ||
+ | |||
+ | ===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 -B -dd -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]] | ||
+ | |||
+ | * 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]] | ||
+ | |||
+ | ===WringPi=== | ||
+ | * GitHub: https://github.com/BPI-SINOVOIP/BPI-WiringPi2.git | ||
+ | * We also have built-in test command in /usr/local/bin | ||
+ | |||
+ | ====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== |
Revision as of 18:36, 22 May 2018
Contents
Introduction
BPI-M2U
Banana Pi M2 Zero is an ultra compact single board computer measures only 60mm*30mm. It uses quad-core Cortex A7 allwinner H2+ processor, with 512MB RAM memory. It's ideal for light-weight systems with some space-limited applications. Like other members of Banana Pi, it supports both linux and android operating system.
- Read more about : Banana Pi BPI-ZERO
Key Features
- Quad Core ARM Cortex A7 CPU H2+
- 512MB SDRAM.
- WiFi (AP6212) & Bluetooth onboard.
- Mini HDMI.
Development
Let's get start to develop on BPI-M2P, see amazing things happen.
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
How to create a 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
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
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:
WiFi on M2P
Driver code:
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 -B -dd -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.
Guvcview
- Use your UI interface to operate camara
- Applications -> Sound & Video -> guvcview
- 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
WringPi
- GitHub: https://github.com/BPI-SINOVOIP/BPI-WiringPi2.git
- We also have built-in test command in /usr/local/bin
RGB 1602 LCD
- Execute "/usr/local/bin/bpi_test_lcd1602.sh"
0.96 Inch OLED Display
- Execute "/usr/local/bin/bpi_test_52pi.sh"
8x8 RGB LED Martix
- Firstly you need a GPIO Extend Board for 8x8 LED Martix
- Execute "/usr/local/bin/bpi_test_gpio40.sh"