• 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: TTL To CAN How to Use Product ROS2 ESP32 P4 Development Board WIFI6 3.4 inch LCD Round Display 3.4inch TouchScreen 800×800 Dual Microphones ESP32 S3 2.1 inch Round LCD Development Board 480x480 TouchScreen Display LVGL HMI With QMI8658C 6-Axis Sensor Raspberry Pi Mipi Raspberry Pi 5 PCIE to MiniPCIe For wireless network WIFI Card USB Bluetooth EyeLink-RC-S1 Industrial Edition 5.5 inch Touchscreen Camera R1M Card Recording Flight Controller FPV Drone ground station image transmission remote ESP32 C6 Development Board with 1.32inch AMOLED Display QSPI Interface WiFi 6 Audio Acquisition Deepseek user guide ESP32-S3 LCD Driver Board RGB/SPI N8R8 For 2.1/2.8/4inch Captive TouchScreen Display Round Metal Case UART Serial TTL To RS232 B Built-In Protection Circuits Rail-mount Raspberry Pi 4 USB Audio Raspberry Pi USB Global Shutter Camera 1MP OV9281 120fps Black/White 120fps also For Jeston RDK Xiaozhi AI video tutorial Raspberry Pi 5 PCIe to M.2 Multi Function Adapter Board Supports Dual 4K HDMI Output Code LCC-14 Raspberry Pi Pico HDMI Multi Protection