BananaPro FreDuino配置文档

Banana Pro之FreDuino配置过程

本次配置所使用的开发板为banana pro, A20处理器,无线模块为ap6210,在配置之前,banana pro自带的wifi天线必不可少。

1. 准备工作:系统配置

如果banana pro的系统没有问题,可跳过此步骤。

(1) banana pro 刷机系统下载地址:

http://www.lemaker.org/cn/product-bananapro-resource.html

(2) 刷机过程参考如下链接:

http://www.lemaker.org/cn/product-bananapro-guide.html

(3) 由于我不需要使用图形化界面,所以可以选择关闭图形化界面,以提高系统的速度。

sudo nano /etc/X11/default-display-manager

在文件末尾添加单词 false 即可,或者可以使用如下指令效果相同:

sudo echo false >> /etc/X11/default-display-manager

2. FreDuino编译环境配置

(1) Python 2.7安装

由于Lubuntu系统已经安装好了Python 2.7,所以这里无需再安装。

(2) Python-pip安装

sudo apt-get install python-pip

(3) platformio安装

sudo pip install platformio

其实到这里,FreDuino所以来的工具环境已安装完成,但是,由于在FreDuino使用过程中可能
无网络,platformio运行所需要的工具包无法安装,所以最好借助现在的网络环境,通过一个测试的小例子
对所依赖的工具包进行安装。

mkdir test 
cd test
platformio init -b megaatmega2560
cd src
nano 1.ino
cd ..
platformio run -t upload

这样简单测试之后,platformio编译所需要的额依赖包就全安装好了,在后面的FreDuino实际
运行的过程中便不会报错了,执行platformio语句时,一定要在工程目录(如test)的根目录下执行。

3. Wifi热点的配置

(1) 以文本编辑模式进入Linux内核加载设备模块

sudo nano /etc/modules

在其中添加 ap6210 op_mode=2 ,然后Ctrl+X保存并退出。
(2) 下载hostapd

gitclone git://w1.fi/srv/git/hostap.git

(3) 安装所需的库

sudo apt-get install libnl-dev
sudo apt-get install openssl
sudo apt-get install libssl-dev

(4) 安装hostapd

cd hostap/hostapd
cp defconfig .config
make
sudo cp hostapd /usr/local/bin

(5) 配置hostapd

sudo mkdir –p /etc/hostapd
sudo nano /etc/hostapd/hostapd.conf

可参考如下代码进行配置hostapd,比如热点名称密码等内容

interface=wlan0 #hostapd使用的接入点为wlan0
driver=nl80211 #无线驱动接口设置为nl80211
ssid=ap6210_ap_test #无线路由器名称(可自行设置)
channel=6 #选取无线频道6(建议选择1通道,6通道,11通道)
hw_mode=g #设置工作模式为IEEE 802.11g
macaddr_acl=0 #指定mac过滤规则,0表示除非在禁止列表否则允许
auth_algs=1 #采用开放系统认证(Open SystemAuthentication, OSA)
ignore_broadcast_ssid=0 #设置WIFI可被其他用户搜索到
wpa=2 #启用WPA2
wpa_passphrase=12345678 #无线路由器密码(可自行设置)
wpa_key_mgmt=WPA-PSK #设置客户端可以验证的密钥管理算法为WPA-PSK
wpa_pairwise=TKIP #如果启用了WPA2,需要采用rsn_pairwise的设定
rsn_pairwise=CCMP #或指定wpa_pairwise,另外wpa_pairwise和
#rsn_pairwise都可以设置成TKIP、CCMP或者两者都有

hostapd的接入点wlan后面的数字如果不确定的话可以输入指令ifconfig来查看

(6) 配置网卡

sudo nano /etc/network/interfaces

对配置文件可参考如下内容修改:

auto lo #使用localhost
iface lo inet loopback #将lo接口设置为一个本地回环(loopback)地址
iface eth0 inet dhcp #若有网卡eth0,则用dhcp获取IP地址
allow-hotplug wlan0 #wlan设备可以热插拔

以上四行我们未作改动,网卡配置文件中下面原来的三行被我们用#注释掉了,我们添加下面三行:

iface wlan0 inet static #若有WLAN网卡,则使用静态IP地址
address192.168.100.1 #无线网卡IP地址设为192.168.100.1
netmask255.255.255.0 #无线网卡子网掩码设为255.255.255.0

我们给WLAN网卡配置了静态IP地址为192.168.100.1;无线网卡子网掩码设为255.255.255.0。

(7) 安装配置DHCP

sudo apt-get install udhcpd
sudo nano /etc/ udhcpd.conf

start是dhcp自动分配IP地址的起始地址,end是dhcp自动分配IP地址的结束地址,这里默认情况下是从192.168.0.20到192.168.0.254,也可以改成别的范围,不过起始与结束地址必须在同一网段内,这里的起始地址与结束地址同属于192.168这个网段。另外将dhcp的接口由eth0改为wlan0。

其他内容修改如下:

opt router 192.168.0.1 #为客户端设定默认网关
opt wins 192.168.0.1 #设定windows互联网名服务器IP地址
option dns 192.168.0.1 #设置域名系统服务器IP地址为192.168.0.1

要与之前设定的IP地址分配范围在同一网段内。

(8) 重启

sudo reboot
sudo udhcpd /etc/udhcpd.conf
sudo hostapd -B /etc/hostapd/hostapd.conf

dhcp和hostapd的启动,稍后需要添加到开机自启中

4. 开机启动项配置

(1) 创建开机执行脚本freduino.sh,并放置在FreDuino文件夹中

#!/bin/sh
udhcpd /etc/udhcpd.conf
hostapd -B /etc/hostapd/hostapd.conf
cd test
platformio init -b megaatmega2560
cd ..
python arduino_web_server.py

(2) 修改freduino.sh权限

sudo chmod +x freduino.sh

(3) 将bananapi权限提升至管理员权限,否则开机执行脚本时DHCP和hostapd无法启动

sudo nano /etc/passwd

修改用户ID :x:1000:1000: 为 :x:0:1000:

(4) 编辑开机自启文件 /etc/rc.local

sudo nano /etc/rc.local

可参考如下:

cd /home/bananapi/FreDuino
su bananapi -c ./freduino.sh

至此,基于banana pro的FreDuino的运行环境已经配置完成,重启然后通过你的移动设备连接至我们第三步
配置的wifi,在浏览器中输入对应的IP和8080端口号即可使用FreDuino。

你可能感兴趣的:(BananaPro FreDuino配置文档)