• sales

    +86-0755-88291180

Banana pi Getting Started with M2 Ultra & Berry


BPI-M2U

  Banana Pi BPI-M2 Ultra is a quad-core mini single board computer built with Allwinner R40 SoC. It features 2GB of RAM and 8GB eMMC. It also has onboard WiFi and BT. On the ports side, the BPI-M2 Ultra has 2 USB A 2.0 ports, 1 USB OTG port, 1 HDMI port, 1 audio jack, a DC power port, and last but not least, a SATA port.. 
  • Read more about : Banana Pi BPI-M2U

Key Features

  • Quad Core ARM Cortex A7 CPU R40
  • 2GB DDR3 SDRAM
  • 8 GB eMMC storage
  • WiFi (AP6212) & Bluetooth onboard
  • SATA Interface

BPI-M2 Berry

  Banana Pi BPI-M2 Berry is a quad-core mini single board computer built with Allwinner V40 SoC. It features 1GB of RAM . It also has onboard WiFi and BT. On the ports side, the BPI-M2 Ultra has 4 USB A 2.0 ports, 1 USB OTG port, 1 HDMI port, 1 audio jack, a DC power port, and last but not least, a SATA port..
  • Read more about : Banana Pi BPI-M2 Berry

Key Features

  • Quad Core ARM Cortex A7 CPU V40.
  • 1GB DDR3 SDRAM.
  • WiFi (AP6212) & Bluetooth onboard.
  • SATA Interface

Development

Let's get start to develop on BPI-M2U, 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 M2U

 1.You could download latest image from our forum
 * Here is an example image link: http://forum.banana-pi.org/t/banana-pi-bpi-m2u-berry-new-image-release-raspbian-jessie-8-0-2018-5-24/5812
 
 2.Install bpi-tools on your system. If you can't access this URL or any other problems, please go to https://github.com/BPI-SINOVOIP/bpi-tools and install this tools manually.
 * apt-get install pv
 * curl -sL https://raw.githubusercontent.com/BPI-SINOVOIP/bpi-tools/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 M2U, and press power button setup M2U

Load your first image on M2U EMMC

 * Run your M2U with TF card
 * Copy "xxx-sd-emmc-xxx.img.zip / xxx-sd-emmc-xxx.img" to your USB disk
 * Plug your USB disk in M2U
 * After M2U 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 M2U, take TF card out, power on M2U

Advanced Development

How to build uboot & kernel

Install tools

Clone code

SATA

1. Mount SATA on M2U


  • 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 M2U 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 M2U and PC(with Ubuntu system)
  • Execute "adb devices" to see if PC has recognised M2U OTG
  • If yes, we could execute "adb shell" to connect M2U by adb now

LCD 5" & LCD 7"

  • Execute "bpi-bootsel", you'll see a list of boot files
  • Find "BPI_M2U_LCD7.img.gz"
  • Then execute "bpi-bootsel /usr/lib/u-boot/bananapi/bpi-m2u/BPI_M2U_LCD7.img.gz"

Touch screen

GMAC

Use iperf3 to test gmac

1. On PC Terminal:

  • Execute "iperf3 -s"

2. On M2U 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 M2U

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 -iwlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
  • dhclient wlan0

2. Use UI interface to setup WiFi Client

Clear boot

Camara function

We use HDF5640 camara.


Guvcview

  • Use your UI interface to operate camara
  • Applications -> Sound & Video -> guvcview

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 M2U

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


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


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

File System

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

Install Qt5.7 & Qtcreator

1.Prepare a 32Gb TF card

2.Use GParted to resize root point '/' as 32Gb

3.apt-get install libxcb*

4.download qt5.7

5.make & make install

6.apt-get install qtcreator

7.Config qtcreator

TAG: RS422 to CAN SP3232EEN Raspberry Pi 5 DSI User Guide Magnetic Encoder Servo Motor 45KG.CM 24V 360° RS485 High Precision And Large Torque ESP32 S3 R8 MP3 Board 2.8inch LCD TouchScreen Display Speaker/SD-Card/Battery/QMI8658-6-Axis-Sensor Xiaozhi-AI-video-tutorial-2 Luckfox Pico Camera MIS5001 5MP wide-angle lenses‌ For RV1106/Pro/MAX/Ultra (Not For RV1103 Pico) BPI TTL UART To CAN Mini PoE-M.2-HAT+B User Guide SpotPear ESP32-S3 Smart 86 Box Development Board with 4 inch 480x480 Display Touch Screen For AI and DeepSeek Raspberry Pi 5 Camera Raspberry Pi 5 IR Camera ESP32 S3 BPI Raspberry Pi 5/4B easy Adapter Micro HDMI to HDMI 4K All Ports To Pi's USB Side Arduino MLX90640 X1301 Raspberry Pi 5 HDMI to CSI-2 Shield 1080P@60fps & Audio & Video Also For 4B/3B Raspberry Pi 5 Night Camera