Getting Started with M3

From Banana Pi Wiki
Revision as of 01:07, 25 May 2018 by JackZengWiki (talk | contribs) (Camara function)
Jump to: navigation, search

Introduction

BPI-M3

Overview: BPI-M3 respbian linux
  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. 

Key Features

  • Octa-core 1.8GHz Powerful CPU
  • 2 GB LPDDR3 memory
  • 8 GB eMMC storage
  • WiFi & Bluetooth onboard

Development

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
 
 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

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

Advanced Development

SATA

1. Mount SATA on M3

 M3 Sata.png
  • After insert sata interface, execute "fdisk -l"
 File:M3 Sata fdisk l.png
  • 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
 Sata test.png

OTG

1. On M3 console:

  • Execute "./adbd.sh", then execute "ps -ax | grep adbd" to see if adbd is set up
 M2P ADBD.png

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
 M2P ADBD Shell.png

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"
 M3 bootsel lcd7.png

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"

M3 Gmac test.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:

M3 bluetooth.png

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

Camara function

We use HDF5640(The left one) camara and HDF8865(The right one).

Ov5640 camara.png Ov8865 camara.png

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 M3

WringPi

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

WringPi LED Martix Extend Board.png

  • Execute "/usr/local/bin/bpi_test_gpio40.sh"

File System

  • read only system change to read & write mode: "mount -o remount,rw /"

FAQ