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.
More Infomation: Banana Pi BPI-M3 |
Octa-core 1.8GHz Powerful CPU
2 GB LPDDR3 memory
8 GB eMMC storage
WiFi & Bluetooth onboard
Download PhoenixCard: https://pan.baidu.com/s/1-fjvPqtG_zewVzqnXf1AHw?pwd=eid9
Put your TF card into a TF-USB adapter, and then plug adapter in your Windows PC usb interface.
Prepare your image, and download image burning tools PhoenixCard.exe.
Use "PhoenixCard.exe" to burn android image to TF card.
Select the image in the image path option
Select set as card startup, then click on burn image
Burning ended,
Put your TF card into a TF-USB adapter, and then plug adapter in your Windows PC usb interface.
Prepare your image, and download image burning tools PhoenixCard.exe.
Use "PhoenixCard.exe" to burn android image to TF card.
Select the image in the image path option
Select mass production card,then click on burn image
Burning ended.
After the image is burned, insert the SD card into the board and power on to start.After startup, the image will be automatically burned to the EMMC.
You can also judge by light. When the light changes from constant on to off, it indicates that the combustion is complete.
After the burning is completed, the power will be cut off, and the SD card will be removed. Power on again to start from EMMC.
Prepare a PC which runs ubuntu
Install Docker-ce on your PC,https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce (Install Docker Environment)
After install Docker, pull docker image,execute
docker pull sinovoip/bpi-build:ubuntu12.04
Then you pulled image,create a port to login docker image, execute
docker run --privileged -d -p 2222:22 -v /media:/media sinovoip/bpi-build:ubuntu12.04
login in docker image
ssh -p 2222 [email protected] #default passwd is root
Git clone M3 bsp code,execute
git clone https://github.com/BPI-SINOVOIP/BPI-M3-bsp.git
Build M3 bsp code,execute
./build.sh
After built, open a new terminal, you could copy the compile files out of docker image by executing
docker cp <your container id>:<your project path> <your pc path>
Prepare 8G/above TF card, USB-Serial interface
Using your USB-Serial Connect debug console on M2P
Login user/password: pi/bananapi or root/bananapi.
Windows PC
Install Image with Balena Etcher.
Balena Etcher is an opensource GUI flash tool by Balena, Flash OS images to SDcard or USB drive.
Click on "Flash from file" to select image.
Click on "Select target" to select USB device.
Click on "Flash!" Start burning.
Linux PC
There are two methods for you to choose from.
Install Image with dd command on Linux, umount SDcard device /dev/sdX partition if mounted automatically. Actually bpi-copy is the same as this dd command.
$ sudo apt-get install pv unzip
$ sudo unzip -p xxx-bpi-m3-xxx.img.zip | pv | dd of=/dev/sdX bs=10M status=noxfer
Install image with bpi-tools on Linux, plug SDcard to Linux PC and run
$ sudo apt-get install pv unzip
$ sudo bpi-copy xxx-bpi-m3-xxx.img.zip /dev/sdX
Copy "xxx-sd-emmc-xxx.img.zip / xxx-sd-emmc-xxx.img" to your USB disk
Plug your USB disk in M3
Execute(If it is automatically mounted, skip this step)
mont /dev/sda1 /mnt
There are two methods to burn images to eMMC.
Using bpi-copy for burning.
bpi-copy xxx-sd-emmc-xxx.img.zip / xxx-sd-emmc-xxx.img
Using the dd command for burning.
sudo dd if=/mnt/sda1/xxx-sd-emmc-xxx.img of=/dev/mmcblk0
Then power off M3, take TF card out, power on M3 with EMMC
For example, update your image to support new emmc5.1
bpi-tools
bpi-update -c bpi-m3.conf
file *.tgz
bpi-bootsel
bpi-bootsel /usr/lib/u-boot/bananapi/bpi-m3/BPI_M3_720P.img.gz
reboot
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
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
You could try armbian to install docker, here is the image: https://dl.armbian.com/bananapim3/Debian_stretch_dev.7z (Here Thanks for the armbian community)
Download this image to your ubuntu PC (I am using ubuntu PC), then decompress it
7z x Debian_stretch_xxx.img
bpi-copy Debian_stretch_xxx.img /dev/sd< drive letter >
Username: root, password: 1234
Here are steps to install docker:
vim /etc/apt/sources.list
add this source:“deb http://http.debian.net/debian jessie-backports main”
apt-get update
apt-get install docker.io
To have a test, if docker has installed in your image.
sudo docker run --rm hello-world
Mount SATA on M3
fdisk -l
mount /dev/sdx /mnt/xxx
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
mount /dev/sdx /mnt/xxx
After you success to insert SATA, we could input following commands to test SATA interface:
Test read speed
time dd if=/dev/xxx of=/dev/null bs=1M count=1000
Test write speed
time dd if=/dev/zero of=/dev/sdx bs=1M count=1000
On M3 console:
Execute
./adbd.sh
ps -ax | grep adbd
to see if adbd is set up
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
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
Use iperf3 to test gmac
On PC Terminal:
iperf3 -s
On M3 console:
TCP test
iperf3 -c serverIP
UDP test
iperf3 -u -c serverIP
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:
You have two ways to setup WiFi Client
Use commands to setup WiFi client
ip link set wlan0 up
iw dev wlan0 scan | grep SSID
vim /etc/wpa_supplicant/wpa_supplicant.conf
network={
ssid="ssid"
psk="password"
priority=1
}
wpa_supplicant -iwlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
dhclient wlan0
Use UI interface to setup WiFi Client
git clone https://github.com/BPI-SINOVOIP/BPI-files/tree/master/SD/100MB
bpi-bootsel BPI-cleanboot-8k.img.gz /dev/sdX
We use HDF5640camara and HDF8865.
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 picture taking function
./test_ov5640_image_mode.sh
Test video recording function
./cameratest.sh
Ov8865
/test_ov8865.sh
Install Bpi-tools
curl -sL https://github.com/BPI-SINOVOIP/bpi-tools/raw/master/bpi-tools | sudo -E bash -
Update Bpi-tools
bpi-tools
Install RPi.GPIO
git clone https://github.com/BPI-SINOVOIP/RPi.GPIO"
cd RPi.GPIO
sudo apt-get update
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
./bpi_test_g40.py
We also have built-in test command in "/usr/local/bin"
How to Update WiringPi
Execute
bpi-update -c pkglist.conf
Execute
bpi-update -c bpi-pkg-bpi-wiringpi.conf
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