Difference between revisions of "Getting Started with M3"
JackZengWiki (talk | contribs) (→Load your first image on M3) |
JackZengWiki (talk | contribs) (→Load your first image on M3) |
||
| Line 47: | Line 47: | ||
4.After step 3, then you can insert your TF card into M3, and press power button setup M3 | 4.After step 3, then you can insert your TF card into M3, and press power button setup M3 | ||
| + | [[Image:M3_Android.png]] | ||
===Load your first image on M3 EMMC=== | ===Load your first image on M3 EMMC=== | ||
Revision as of 00:38, 1 June 2018
Contents
- 1 Introduction
- 2 Development For Android
- 3 Development For Linux
Introduction
BPI-M3
Banana Pi M3 is a super charged single board computer with an Octa-core processor and 2GB of RAM. Along side the elite processing unit, it features Gigabit Ethernet, 2 USB, SATA, WiFi, Bluetooth, and HDMI connection. It can run on a variety of operating systems including Android, Lubuntu, Ubuntu, Debian, and Raspbian.
- Read more about : Banana Pi BPI-M3
Key Features
- Octa-core 1.8GHz Powerful CPU
- 2 GB LPDDR3 memory
- 8 GB eMMC storage
- WiFi & Bluetooth onboard
Development For Android
Prepare to develop
* Prepare 8G/above TF card, USB-Serial interface, PC with Windows System * Using your USB-Serial Connect debug console on M3
Load your first image on M3
1.You could download latest image from our forum. 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.![]()
Development For Linux
Let's get start to develop on BPI-M3, 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 M3
Load your first image on M3
1.You could download latest image from our forum * Here is the example link: http://forum.banana-pi.org/t/banana-pi-bpi-m3-new-image-release-raspbian-jessie-8-0-2018-5-28-v1-1/5847 2.Install bpi-tools on your system * 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 M3, and press power button setup M3 File:M3 Android.png
Load your first image on M3 EMMC
* Run your M3 with TF card * Copy "xxx-sd-emmc-xxx.img.zip / xxx-sd-emmc-xxx.img" to your USB disk * Plug your USB disk in M3 * After M3 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 M3, take TF card out, power on M3
How to buld M3 Bsp code
* Prepare a PC which runs ubuntu * Install Docker-ce on your PC,https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce * After install Docker, execute "docker pull sinovoip/bpi-build:ubuntu12.04", to pull image * Then you pulled image, execute "docker run --privileged -d -p 2222:22 -v /media:/media sinovoip/bpi-build:ubuntu12.04" * "ssh -p 2222 root@127.0.0.1 #default passwd is root" * Execute "git clone https://github.com/BPI-SINOVOIP/BPI-M3-bsp.git" on your ubuntu terminal * Execute "./build.sh" to build M3 bsp code * After built, open a new terminal, execute "docker cp xxxxx(your container id):xxxxx(your project path) xxxxx(your pc path)"![]()
Make your own image
Make one raspbian image
- Prepare a SD card which have installed Raspbian system
- Boot your SD card with M3, after M3 finish starting, copy your files and config your Raspbian, then poweroff M3
- Plug your SD card in Linux PC, "cd /media", then "ln -s <your account> pi"
- Execute "bpi-migrate -c bpi-m3.conf -c raspbian-jessie-from-sd.conf -d /dev/sdx"
- Then you could get your own image now
Advanced Development
SATA
1. Mount SATA on M3
- After insert sata interface, execute "fdisk -l"
- Then "mount /dev/sdx /mnt/xxx"
2. If you meet some errors when you mount SATA, try these following commands:
- "fdisk /dev/sdx" to create new partition , set your partition numbers and size, after created partitions, input "wq" to save and quit.
- "mkfs.ext2 /dev/sdx" to format the SATA
- "mount /dev/sdx /mnt/xxx"
3. After you success to insert SATA, we could input following commands to test SATA interface:
- "time dd if=/dev/xxx of=/dev/null bs=1M count=1000" to test read speed
- "time dd if=/dev/zero of=/dev/sdx bs=1M count=1000" to test write speed
OTG
1. On M3 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 M3 and PC(with Ubuntu system)
- Execute "adb devices" to see if PC has recognised M3 OTG
- If yes, we could execute "adb shell" to connect M3 by adb now
LCD 5" & LCD 7"
- Execute "bpi-bootsel", you'll see a list of boot files
- Find "BPI_M3_LCD7.img.gz"
- Then execute "bpi-bootsel /usr/lib/u-boot/bananapi/bpi-M3/BPI_M3_LCD7.img.gz"
Touch screen
GMAC
Use iperf3 to test gmac
1. On PC Terminal:
- Execute "iperf3 -s"
2. On M3 console:
- TCP test: "iperf3 -c serverIP"
- UDP test: "iperf3 -u -c serverIP"
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 M3
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(The left one) camara and HDF8865(The right one).
Guvcview
- Use your UI interface to operate camara
- Applications -> Sound & Video -> guvcview
Shell
Ov5640
- 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
Ov8865
- "/test_ov8865.sh"
IR function
- Execute "getevent"
- Use your IR device to send information to M3
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"
File System
- read only system change to read & write mode: "mount -o remount,rw /"












