Banana Pi BPI-R1 Router Overview
Banana Pi BPI-R1 Router Overview
1
BPI-R1 WiringPi 1.3.9
2
About banana pi BPI-R1
the BPI-R1 is the dual core Android 4.4 product which more better than Linux product. It can run with Android 4.4 smoothly
and with 5 Gigabit ethernet port, SATA [Link] support Linux OS, and Openwrt os.
it can easily run with the game and support 1080P high definition video output.
[Link]
[Link]
forum: [Link]
forum: [Link]
product: [Link]
3
BPI-R1 hardware
First Chapter
GitBook allows you to organize your book into chapters, each chapter is stored in a separate file like this one.
4
BPI-R1 hardware interface
Front:
Back:
5
BPI-R1 hardware interface
Front:
Back:
6
BPI-R1 hardware interface
7
BPI-R1 hardware spec
8
BPI-R1 GPIO Pin define
We can check R1 PIN definition in this thread, including CON1, CON2, CON3, J12 and J13.
J13 contains the default serial port UART0 (UART0-RX,UART0-TX). UATR0 is configured to be used for console
input/output. Whilst this is useful if you want to login using the serial port. So it is the most common used PIN.
J12 also contains serial port. CON3 contains CAN bus, SPI bus, PWM, serial port and etc. It can be configured to be used
for kinds of peripherals.
Pictures and tables below show the specific layout and definition of PIN.
9
BPI-R1 GPIO Pin define
the CSI Camera Connector is a 40-pin FPC connector which can connect external camera module with proper signal pin
mappings. The pin definitions of the CSI interface are shown as below.
CON1-P01 LINEINL
CON1-P02 LINEINR
CON1-P37 HPL
CON1-P36 HPR
CON1-P07 FMINL
CON1-P09 FMINR
CON1-P04 ADC_X1
CON1-P06 ADC_X2
CON1-P08 ADC_Y1
CON1-P10 ADC_Y2
CON1-P13 LRADC0
CON1-P15 LRADC1
CON1-P33 RESET#
10
BPI-R1 GPIO Pin define
CON1-P38 IPSOUT
CON1-P40 IPSOUT
CON1-P05 GND
CON1-P11 GND
CON1-P39 GND
CON1-P03 VCC-CSI
The LVDS Connector is a 40-pin FPC connector which can connect external LCD panel (LVDS) and touch screen (I2C)
module as well. The pin definitions of this connector are shown as below.
11
BPI-R1 GPIO Pin define
CON2-P01 IPSOUT
CON2-P03 IPSOUT
CON2-P05 GND
CON2-P24 GND
CON2-P07 VCC-3V3
BPI-R1 has a 26-pin GPIO header that matches that of the Model Raspberry Pi. Following is the Banana Pi GPIO Pinout:
12
BPI-R1 GPIO Pin define
CON3-P01 VCC-3V3
CON3-P17 VCC-3V3
CON3-P02 VCC-5V
CON3-P04 VCC-5V
CON3-P09 GND
CON3-P25 GND
CON3-P06 GND
CON3-P14 GND
CON3-P20 GND
J12-P01 VCC-5V
J12-P02 VCC-3V3
J12-P07 GND
J12-P08 GND
13
BPI-R1 GPIO Pin define
14
BPI-R1 SD card slot
15
BPI-R1 CAN Bus
This is a tutorial for using CAN BUS on bananapi with bananian 15-01
Build kernel:
cd linux-bananapi
make menuconfig
Then rename modules and firmware provide by Bananian, and replace by the new one.
mv /lib/modules /lib/[Link]
mv /lib/firmware /lib/[Link]
mv /root/linux-bananapi/output/lib/modules /lib/modules
mv /root/linux-bananapi/output/lib/firmware /lib/firmware
16
BPI-R1 CAN Bus
cd /lib/modules/3.4.104/
ln -s /root/linux-bananapi build
cd ~
insmod [Link]
cp [Link] /lib/modules/3.4.104/kernel/net/can/
depmod -A -v
modprobe -v can4linux
echo "" >> /etc/modules ; echo "can4linux" >> /etc/modules
reboot
ex:
Connect CAN transceiver and CAN bus, and check with for example:
python [Link]
That's all
With this method, kernel version is "Linux bananapi 3.4.104" instead of "Linux bananapi 3.4.104+", because i was unable to
find same sources than Bananian 15-01 , but CAN bus work !
17
BPI-R1 WIFI interface
18
BPI-R1 wifi antenna slot
so,it need 2 extend antenna line, you can use 3DB/5DB extend antenna line.
19
BPI-R1 MIC
BPI-R1 MIC
thank [Link] do this test:
i write about this, because i found very few sources and had to tumble a lot around to get it working. This is a quick walk
through to give you a hint where to start. I asume for simplicity that you stay always in /root directory as root user. If
something fails, look if the files are written and paths are right. It is adressed for more advanced users who know what they
are basically doing.
This is done with bananian 15.08 on Kernel 3.4. Other kernels < 4.4 do not work. It is a headless server with no HDMI
pluged in.
A. Basic Setup
Configure [Link]
# nano /etc/[Link]
pcm.!default {
type hw
card 0 # for headphone, turn 1 to 0
device 0
}
ctl.!default {
type hw
card 0 # for headphone, turn 1 to 0
}
# alsamixer
Press F5. Your channels should be setup like the attached file at the bottom of this post, or compare it to amixer
output:
# amixer
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined
Playback channels: Mono
Limits: Playback 0 - 63
Mono: Playback 45 [71%]
Simple mixer control 'Master Capture Mute',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'LineL',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'LineR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Linein Pre-AMP',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
20
BPI-R1 MIC
Mono: 7 [100%]
Simple mixer control 'Mic Input Mux',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 15
Mono: 15 [100%]
Simple mixer control 'Mic Power',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Mic1 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Mic1 gain',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 3 [100%]
Simple mixer control 'Mic2 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Mic2 gain',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 0 [0%]
Simple mixer control 'MicL',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 1 [33%]
Simple mixer control 'MicR',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 3 [100%]
Simple mixer control 'Playback',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cvolume-joined
Capture channels: Mono
Limits: Capture 0 - 7
Mono: Capture 7 [100%]
Simple mixer control 'ADC Input Mux',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 7 [100%]
Simple mixer control 'Fm output',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 7 [100%]
Simple mixer control 'FmL',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'FmR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
21
BPI-R1 MIC
This step is critical. One false muted channel and you are out of the game.
Test recording.
# arecord -L
Should make kind of Sound. Stop it with ctr-c and check the file.
Install SoX
# apt-get install sox libsox-fmt-all Sox gives you tools like: sox, rec and play. I would suggest you install it on the
client pc too.
# rec -c 2 -C 64 test.mp3
-c 2 two channels
Banana:
# rec -c 2 -C 64 -t mp3 - | netcat -l -p 9000
22
BPI-R1 MIC
Client:
Works? Great! Live listening is important to play around and test the mic.
# nano /etc/[Link]
Restart service
# rec -c 2 -C 64 /test.mp3
C. Advanced Recording
Recording:
Encoding:
-t raw -r 48000 -c 1 -b 16 -e signed-integer - tell sox what kind of strean comes from stdin
Note that it is switched to mono from here with -c 1 and the mp3 bitrate is cut in half. Live listening to the strean does not
work anymore, i asume it is because of the non regulare output from pipeing and processing in a second step.
Reduce noise
The mic input is pretty bad, lot of white noise. Sox can deal with it.
23
BPI-R1 MIC
# rec -t raw - remix - noisered raw-profile 0.2 | sox -t raw -r 48000 -c 1 -b 16 -e signed-integer - -t mp3 -c 1
-C 32 test.mp3
D. Record 24/7
My goal of this....
Create a script:
# nano /root/[Link]
#!/bin/bash
DATE=`date "+%Y.%m.%d"`
log "Recording $DATE.mp3"
rec -q -t raw - remix - noisered /root/raw-profile 0.2 | \
sox -v 2.0 -t raw -r 48000 -c 1 -b 16 -e signed-integer - \
-t mp3 -r 22050 -c 1 -C -9.2 /root/$DATE.mp3
log "Done $DATE.mp3"
Recording:
-q less output
Fileszie ~100mb per day. If you want smaller files, a 8000 sanple rate gives you a gsm grade quality.
Make it executable
24
BPI-R1 MIC
# chmod +x [Link]
Edit crontab:
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin
0 0 * * * /root/[Link] >> /root/re [Link]
25
BPI-R1 Audio
BPI-R1 Audio
Banana pi BPI-R1 support two audio device HDMI and headphone
pcm.!default {
type hw
card 0 //If you want to set HDMI as output ,turn 0 to 1.
device 0
}
ctl.!default {
type hw
card 0 //If you want to set HDMI as output ,turn 0 to 1.
}
The sound "sound left,sound right,sound left" will output from headphone.
sudo alsamixer
26
BPI-R1 IR interface
BPI-R1 IR interface
BPI-M1 support IR interface on board. you can use it as remote control.
1,install lirc
nano /etc/lirc/[Link]
# /etc/lirc/[Link]
#
# Arguments which will be used when launching lircd
LIRCD_ARGS="--uinput"
#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD=false
3,test lirc
service lirc start
evtest
27
BPI-R1 IR interface
28
BPI-R1 USB interface
29
BPI-R1 OTG interface
Note:
30
BPI-R1 SATA interface
31
BPI-R1 HDMI interfact
But If the display monitor doesn't have HDMI interface,only VGA or DVI port. We should use HDMI-to-VGA or HDMI-to-DVI
cable to connect the BPI-R1 to the display monitor.
Note: if the HDMI-to-VGA/DVI cable is a bad quality cable,it will go wrong on the monitor display. please choose a good
quality cable for BPI-R1
32
BPI-R1 Camera interface
[Link]
33
BPI-R1 RGB DSI interface
The display Connector is a 40-pin FPC connector which can connect external LCD panel (RGB DSI) and touch screen
(I2C) module as well. The pin definitions of this connector are shown as below. This is marked on the Banana Pi board as
“DSI”.
[Link]
note:the touch panel accessories support RGB interface and MIPI interface ,when you use BPI-R1, please choose
RGB interface.
34
BPI-R1 5 GbE Ethernet ports
This might raise serious security risks since while the device boots or when it is in bricked state or booted without SD card
or when VLAN configuration hasn't been setup correctly or a simple bug exists in the b53 driver then the BCM53125 always
acts as a primitive layer 2 switch forwarding Ethernet frames between all external Ethernet ports (not differentiating
between the so called WAN port and the 4 LAN ports). This is nothing one would expect from a device advertised as
routerboard.
If one tries to use the BPI-R1 as a (NAT) router without a separate firewall between WAN and the BPI-R1 then it depends
largely on the ISP's infrastructure whether this is not that good or an absolute no-go from a security point of view since all
sorts of attacks against devices behind the so called LAN ports can be triggered from behind the WAN port. In case you're
not sure what that means you should simply treat the WAN port as another LAN port and use a separate USB to Ethernet
adapter to be connected to WAN. Only in this mode the BPI-R1 might reliably work as a router.
35
BPI-R1 3.7V lithium battery interface
[Link]
36
BPI-R1 DC Power interface
37
BPI-R1 schematic diagram
[Link]
38
BPI-R1 3D and DXF file
[Link]
39
BPI-R1 CE,FCC RoHS Certification
We put quality first, users can mass produce their products using our boards directly, we've been dedicating to providing the
most cost performance products.
BPI-R1 CE Certification
40
BPI-R1 CE,FCC RoHS Certification
41
BPI-R1 CE,FCC RoHS Certification
42
BPI-R1 Software
BPI-R1 Software
BPI-R1 support linux ,android and openwrt system
43
BPI-R1 quick start
First time to enjoy your Banana Pi, you need at least the accessories in the table below.
SD card is optional. If need to boot form SD card, Minimum size 8GB, class 10 (the class
1 MicroSD card indicates how fast the card is). We recommend using branded SD cards as they are
more reliable.
avHDMI(Full
HDMI to HDMI lead (for HD TVs and monitors with HDMI input).OR HDMI to DVI lead
2 sized) to HDMI
(for monitors with DVI input).
/ DVI lead
Any standard USB keyboard and mouse should work. keyboards or mice that take a lot
Keyboard and
3 of power from the USB ports, however, may need a powered USB hub. This may include
mouse
some wireless devices.
Networking is optional, although it makes updating and getting new software for your
4 Ethernet cable
Banana Pi much easier.
Micro USB A good quality, USB Power supply that can provide at least 5V/2A is [Link] also
5
power adapter can power the board, but it is not recommended.
Audio lead
6 You can choose a 3.5mm jack audio led to connect to audio port to get stereo audio.
(Optional)
Mobile Hard
7 You can choose to connect a mobile hard disk to USB port to store more files.
disk (Optional)
44
BPI-R1 quick start
Please visit our webmaster: [Link] to download image, banana pi all image can be download form this web.
In order to enjoy your Banana Pi BPI-M3, you will need to install an Operating System (OS) onto an SD card. Instructions
below will teach you how to write an OS image to your SD card under Windows os and Linux os.
[Link] your SD card into your computer. The size of SD should be larger than the OS image size, generally 8GB or
greater.
*Unzip the download file and run the [Link] to install the tool on your machine.
*In the "Options" menu, set "FORMAT TYPE" option to QUICK, "FORMAT SIZE ADJUSTMENT" option to "ON".
45
BPI-R1 quick start
*Check that the SD card you inserted matches the one selected by the Tool.
*Run mkfs –t vfat /dev/sdx command to format the entire SD card as FAT. (x should be replaced according to your SD card
node)
Android image
5.1 You need to use Phoenix Card to make the SD card. Download the Phoenix Card from [Link]
id=0BzoTh3Vdt47ffi1ld0RuWXhUVzdYdjFjaHEtMlNQWVFTRmIxcC1OQnczSTV6OGRZWGplNU0
5.2 Run [Link], Press “Disk Check” and select disk of SD Card.
46
BPI-R1 quick start
47
BPI-R1 quick start
Linux image:
*Download a tool that can wirte image to SD card, such as Win32 Diskimager from:
[Link]
*Run dd if=[imagename] of=/dev/sdx command to write image file to SD card. Wait patiently to successfully complete
writing.
According to the set up diagram below, you can easily set up your Banana Pi.
1. Insert the written-image SD card that to the SD card spot on the left side edge of the underside of the board.
48
BPI-R1 quick start
2. [Link] the bottom "edge" in the middle of the board is the HDMI Type A (Full sized) [Link] connect any HDMI cable
from the board to your TV or HDMI Monitor.
3. Plug a USB keyboard and mouse into the USB slots located on the right edge.
4. Just under the USB ports on the right edge is the Ethernet connector for anyone who wants to plug the Banana Pi into
a wired network.
5. [Link], at the very left of the bottom edge is the USB power connector. Plug in a regulated power supply that is rated
at 5V ±5% / 2000mA (or 2A). Any number bigger than 700 mA will also work. Avoid using the smaller chargers used for
small GSM phones, as these are often unregulated, even if they claim "5V 1A", they may do "5V" and may do "1A", but
not at the same time!
If all goes well, the Banana Pi will boot in a few minutes. The screen will display the OS GUI.
You can use the GUI to shut down the Banana Pi safely.
This will shut down the PI safely, (just use the power key to turn off might damage the SD-cards file system).After that you
can press the power key for 5 seconds to turn it off.
49
BPI-R1 android software
[Link]
50
BPI-R1 Linux software
[Link]
51
Linux kernel 3.4 BSP image
Google Drive:
[Link]
MD5: 155f072da499a7c523b7394f77dd9def
discuss on forum:
52
Linux kernel 3.4 BSP image
[Link]
2016-07-21/2052
53
Linux kernel 3.4 BSP image
MD5: 37d6599eac4daced375fba8fa58dc1d5
discuss on forum:
[Link]
Google Drive:
54
Linux kernel 3.4 BSP image
[Link]
MD5: 1951f3abc0a54675d9bbbac387760e4e
discuss on forum:
[Link]
Google Drive:
[Link]
55
Linux kernel 3.4 BSP image
MD5: 156b09907586ea9e86481bda73f4254f
discuss on forum:
[Link]
56
Linux kernel 3.4 BSP image
Google Drive:
[Link]
MD5: 302063f7417079390da79334258dd538
discuss on forum:
[Link]
MD5: b900b9ba3b0f664a2cfae1fa1146b2fa
57
Linux kernel 3.4 BSP image
discuss on forum:
[Link]
BPI-R1:Ubuntu-mate-16.04-Xenial-preview-bpi-r1-sd-
emmc 2016-06-04
file name:[Link]
[Link]
MD5: 33fa262a99ebbdbe1b357395bc7be43b
discuss on forum:
[Link]
58
Linux kernel 3.4 BSP image
59
Linux kernel 3.4 BSP image
As you may have discovered the common configuration method in raspberry pi (such as alteration of /boot/[Link]) does
not work on BPI, neither does the modification of [Link] and [Link] especially for some display with converter(HDMI-
>VGA or HDMI ->IDVI) or some old display devices.
Today,we are introducing a new solution to modify the resolution of HDMI, no other risks if you do it according to this
document step by step:
3,compile sunxi-tools
cd sunxi-tools
make
4,backup [Link]
sudo cp /boot/bananapi/[Link] /boot/bananapi/[Link]
cp /boot/bananapi/[Link] ./
nano [Link]
60
Linux kernel 3.4 BSP image
[disp_init]
disp_init_enable = 1
disp_mode = 0
screen0_output_type = 3
screen0_output_mode = 5
screen1_output_type = 2
screen1_output_mode = 11
fb0_framebuffer_num = 2
fb0_format = 10
fb0_pixel_sequence = 0
fb0_scaler_mode_enable = 1
fb1_framebuffer_num = 2
fb1_format = 10
fb1_pixel_sequence = 0
fb1_scaler_mode_enable = 0
lcd0_backlight = 197
lcd1_backlight = 197
lcd0_bright = 50
lcd0_contrast = 50
lcd0_saturation = 57
lcd0_hue = 50
lcd1_bright = 50
lcd1_contrast = 50
lcd1_saturation = 57
lcd1_hue = 50
0 480i
1 576i
2 480p
3 576p
4 720p 50Hz
5 720p 60Hz
6 1080i 50 Hz
7 1080i 60 Hz
8 1080p 24 Hz
9 1080p 50 Hz
10 1080p 60 Hz
11 PAL
12 PAL SVIDEO
14 NTSC
15 NTSC SVIDEO
17 PAL_M
18 PAL_M SVIDEO
20 PAL_NC
21 PAL_NC SVIDEO
23 1080p 24 Hz 3D
24 720p 50 Hz 3D
25 720p 60 Hz 3D
26 1360x768 60 Hz
27 1280x1024 60 Hz
sudo reboot
61
Linux kernel 3.4 BSP image
62
Linux mainline kernel image
DATADIR=data
SHAREDDIR=shared
#mount -t aufs -o br:${DATADIR}:${SHAREDDIR}:/squashfs none /aufs
cd data ; mkdir .ro .work .aufs
mount -o loop ../images/[Link] .ro
mount -t overlay -o lowerdir=../shared:.ro,upperdir=[Link],workdir=.work overlay .aufs
63
Linux mainline kernel image
Google Drive:
[Link]
MD5: f6952fc265ba26c953eb929d23d1ac95
discuss on forum:
[Link]
64
BPI-R1 OpenWRT
BPI-R1 OpenWRT
BPI-R1_OpenWrt_V4.0
MD5: CB597EE79A6E27630AD7F903D23C4A7B
Image download:
[Link]
[Link]
[Link]
65
Officeal OpenWRT
Officeal OpenWRT
WIKI for Officeal OpenWRT
[Link]
image download
[Link]
Allwinner Sun4i/5i/6i/7i/9i (sunxi) Various vendors are offering development boards / single-board computer based on the
Allwinner SoCs. These are running various flavors of the A1x, A20, A31, and soon H3 SoCs, with different buildouts. The
mach is called "sunxi".
[Link]
66
Lamobo Openwrt image
Q&A
1. For a new user, we recommend to use the ready configured firmware. please download it from forum download
page: [Link]
2. BPI-R1 accepts TF-card. Make sure your TF-card is bigger than 512MB. Using below command to generate a
bootable TD-card: $ sudo dd if=[Link] of=/dev/sdX bs=1MB
1. The original firmware is built directly from source code. It almost does not install software, except OpenWrt base
software. Please download it from:[Link]/elorg_common/Lamobo-R1/2015-...[Link].
2. Prepare a TTL thread for to connent OpenWrt bash terminal.
3. Connect to OpenWrt terminal throught TTL thread, modify OpenWrt packages source. All Of OpenWrt packages is
released on:
67
Lamobo Openwrt image
config switch_vlan
option device ‘eth0′
option ports ’0 1 2 4 8t’
option vlan ’1′
config switch_vlan
option device ‘eth0′
option vlan ’2′
option ports ’3 8t’
$ /etc/init.d/uhttpd start
$ /etc/init.d/uhttpd enable
[Link]
Wiki link:
[Link]
68
How to build OpenWRT image from github
apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache gettext libssl-dev xsltproc unz
ip subversion file
cd BPI-OpenWRT
./scripts/feeds update -a
./scripts/feeds install -a
Target System default is BananaPi,its the only choice on that matte.,Please change the device selection under Target
Profile. The OpenWrt image supports M1, M1+ and R1.
LuCI—> 1. Collections ---> <*> luci add Luci support ,it mean web GUI support,it is defaultes
LuCI—>2. Modules ---> <*> luci-i18n-chinese add chinese also you can choose others.
69
How to build OpenWRT image from github
6 Make ,you can add V=s to see more message ,also add -j4 to use quad core to work .
make
when compile finish bin/sunxi/ dir have a image,file name:[Link],i compile is BPI-
R1,so name is :[Link],
7, use USB Image Tool([Link] burn image to sd,insert BPI and booting it.
8 running :
70
How to build OpenWRT image from github
71
How to build OpenWRT image from github
72
How to build OpenWRT image from github
73
How to build OpenWRT image from github
74
Asterisk on BPI-R1
Asterisk on BPI-R1
Asterisk for Banana Pi-R1 (FreePBX Image included)
After doing the FreePBX Asterisk Image for Banana Pi, I was asked by SINOVOIP (Banana Pi Manufacturer) to do an
Asterisk Image for their router board, i.e. the Banana Pi R1. SINOVOIP has been very kind to send me a complimentary
BPi-R1 for testing and developing.
It took me some time to get this done, but the image is finally ready. This image differs from my earlier Banana Pi Asterisk
image in that, the earlier image was created by simply replacing the rootfs of a Raspbian based BPi Image, with RasPBX
Image’s rootfs. However, this time I have actually been able to compile Asterisk on the latest Bananian Image for R1. This
means that you can now have a powerful, complete and rather flexible Asterisk 11 (upgradable to 12!) desktop system with
FreePBX, running on the BPi-R1. Further, Bananian offers lightening fast boot and load times with remarkable
performance. (You can compare the speed with my earlier RasPBX based Image to see for yourself.)
The image comes preloaded with Asterisk 11, along with most of the standard FreePBX modules. Upgrading to Asterisk 12
should be pretty easy.
Credentials:
Login: root
Password: root
FreePBX Password: pi
Note:
I have tested this image (before and after upgrading to Asterisk 12) successfully with a BPi-R1 for SIP (using Android
devices running Zoiper), along with video calling. Please be aware that 2 extensions (made during testing) already exist in
the image and can be removed (I somehow forgot to delete them :wink:). Also note that video calling is disabled by default
and needs to be enabled from the pbx settings.
75
BPI-R1 OpenBSD
#BPI-R1 OpenBSD
[Link]
76
Armbian Linux
Armbian Linux
Armbian Linux have official support BPI-M1,BPI-M1+
[Link]
[Link]
IP routing (slides)
[Link]
[Link]
[Link]
77
Bananian Linux
SHA1: 99fdb18175c32b4c7d57ce970acb3837a17a439c
SHA256: 8123d538c365553a0225f00746650044e72c8444b6b7b43d64ecb1eef517ae9f
Release notes:
[Kernel] provide Linux 4.4.x packages
[Userland] package bananian-update as a .deb file
[General] Kernel Update Script and other stuff as an apt repository
[Kernel] enable audio on Linux 4.x
[Hardware] Fixed: bananian-hardware does not work on Linux 4.x
[Userland] Introduce "bananian-settings"
[Kernel] Update Kernel 3.4.x to 3.4.111
[Kernel] Division by zero in kernel. (3.4.90+)
[Hardware] update FAQ, pmutemp and soctemp related to Kernel 4.x
[General] Update U-Boot
[Kernel] Removing 4.2 kernel packages result in unbootable system
[Userland] rsyslog spams logs with "rsyslogd-2007: action ..."
[Kernel] HDMI output turns off on inactivity
[Kernel] Support for 8 channels hdmi
[Link]
the team of the Bananian Linux project is pleased to announce the release of Bananian Linux 16.04 for Banana Pi (and
family). This update improves mainline Linux kernel support (4.4.x) along with a lot of bugfixes and minor improvements.
We are supporting the Banana Pi, Banana Pi M1+, BPI-R1 and some other A20 boards with just one single image. The
Banana Pi M2 requires a separate image which also has been updated. See [Link] for more
information.
Existing Bananian installations can easily be upgraded without losing any data or settings.
For a list of all changes see the Bananian 16.04 changelog: [Link]
Users of Bananian 14.09 or later can upgrade their existing installation using 'bananian-update'. Users of Bananian 14.08,
see: [Link]
78
Bananian Linux
About Bananian
Bananian Linux is a pre-installed Debian 8 image optimized for Banana Pi. It uses the official Debian Jessie armhf
repositories with a kernel and bootmanager (u-boot), customized for Banana Pi.
It supports the Banana Pi (M1, M1+), Banana Pro, BPI-R1 and some other A20 boards with just one single image. A
separate image for the Banana Pi M2 is also available.
The main focus is to provide a lightweight headless platform for home servers, small webservers, cloud hosting, Linux
based wifi access points, router, NAS systems, monitoring devices, etc.
Bananian Linux is a pre-installed Debian 8 image optimized for Banana Pi. It uses the official Debian Jessie armhf
repositories with a kernel and bootmanager (u-boot), customized for Banana Pi.
We support the Banana Pi (M1, M1+), Banana Pro and BPI-R1 with just one single image.
The main focus is to provide a lightweight headless platform for home servers, small webservers, ownCloud hosting, Linux
based wifi access points, router, NAS systems, monitoring devices, etc.
[Link]
79
BPI-R1 WiringPi
BPI-R1 WiringPi
install BPI-R1 WiringPi:
2,Installation:
cd BPI-WiringPi
chmod +x ./build
sudo ./build
gpio -v
gpio readall
80
BPI-R1 WiringPi
#include <wiringPi.h>
int main(void)
{
wiringPiSetup() ;
pinMode (0, OUTPUT) ;
for(;;)
{
digitalWrite(0, HIGH) ; delay (500) ;
digitalWrite(0, LOW) ; delay (500) ;
}
}
runing it:
sudo ./blink
BPI have many extend board support WiringPi. so you can free DIY by youself:
[Link]
81
WiringPi python
WiringPi python
With all the hard work being done by the BPI team, BPI Github now officially releases BPI-WiringPi2-Python.
We've customized WiringPi for BPI products with the latest WiringPi2-Python version, V1.1.1
Source on github:
[Link]
Discuss on forum:
[Link]
github/276
82
Pi4J Project
Pi4J Project
Java API for accessing GPIO, PWM, I2C, SPI, UART
The Pi4J Project now includes support for BPI-M1 and BPI-M1+,also can use it on BPI-R1.
This support has just been added and only cursory tests performed, so lets call it experimental for now, but I welcome you
guys to try it out and let me know if you run into any trouble. You must use the Pi4J v1.1-SNAPSHOT builds until v1.1 gets
released. You can manually download the JARs in ZIP or the installable .DEB package from this page:
[Link]
Support includes Java programatic access and control of GPIO inputs/outputs, PWM, I2C, SPI, and UART (serial).
There is no documentation yet specifically for the Banana platforms, but apart from a few subtle differences in configuring a
platform and pin/bus addressing, its basically the same. Perhaps better than documentation ... there are a number of
examples (sample code) included in the build and available in the GitHub repo specific to each Banana platform:
BananaPi Examples:
[Link]
[Link]
Other notes: You don't have to install and compile WiringPi/WiringBP seperately! The Pi4J core JAR includes all the native
libraries it needs to communicate with the hardware embeded in the JAR.
83
Reference documents
Reference documents
Thank many user writer document for banana pi BPI-R1
84
linux-sunxi wiki
linux-sunxi wiki
Be aware that the board manufacturer is neither cooperative nor supplies necessary hardware details for the board.
[Link]
85
Manual for HW setup and basic router functionalities
I have started to write a 'manual' about the hardware setup of a BPi-R1 (Router). In the threads of the Forum, the
information is scattered and it takes so much time for each to get along. So I thought such a document would help to
become not only faster, but to get a better result as well. My know how is getting better, but many things are missing.
[Link]
Cheers Tido
86
NetBSD\/evbarm on Allwinner Technology SoCs
[Link]
87
David Bentham \/ openwrt-bpi-r1-prebuilt
VM build system - [Link] if you wish to spin up your own version from scratch!
[Link]
[Link]
github:
[Link]
88
Linux mainlining effort
It is very important to note that this is intended as a rough set of minimal goals - it is not meant to collide with the huge effort
of rewriting major drivers!
[Link]
89
Allwinner chip documents
[Link]
90
All banana pi product
banana pi BPI-M1+(BPI-M1+ plus) allwinner A20 dual core single board computer
banana pi BPI-M2 Ultra allwinner R40 quad core single board computer
Banana pi BPI-M3 allwinner A83T (R58 H8) octa-core single board computer
91
BPI 4.0 customized Server
Our factory:Sinovoip In order to meet the companys development needs, and further production capacity and product
quality. Sources Communication shareholders decided to invest in new plant to build their own, the new factory site is
located in manholes and covers an area of more than 10000 square meters,equipped with full range of production
equipment and high quality technical management personnel . We have complete SMT production lines, plug-ins
production line, assembly line, production line testing.
Customize Pi
If you want to tailor your Banana pi to your specific use or to minimize the cost for mass production purpose, you are
coming the right place. We provide the customization service of banana pi such as remove/add headers or
connectors,change component layout,add/remove components,change interfaces etc.
92
BPI 4.0 customized Server
93