WiFi Access Point Bridge with Raspberry Pi 3 – ETH to WLAN

A Raspberry Pi WiFi Extender is a cheap and power efficient way of increasing the total range of your WiFi Network. In my case I needed to extend a WiFi coverage within the same LAN (bridge mode from Ethernet to WiFi).

I have found a working shortcut 😎 to create an access point following a GitHub project so I didn’t need to follow instructions from raspberrypi.org page – Using the Raspberry Pi as an access point to share an internet connection (bridge).

 

So let’s start to create an access point with an Internet connection sharing from you RaspBerry Pi 3. All you need to do is to follow these two steps:

1. Clone and compile the create_ap tool:

git clone https://github.com/oblique/create_ap
cd create_ap
sudo make install
create_ap --help

❓ You need the following basic tools: sudo apt-get install git make

2. Run the command that creates access point that bridge internet from the ethernet cable to WiFi:

sudo create_ap -m bridge wlan0 eth0 MyAccessPointSSID MyPassPhrase

By using your existing access point SSID name and WPA passphrase, the WiFi network will be extended and clients will automatically connects to your new WiFi access point on Raspberry Pi 3 Model B.
❓ If you get an error, that WiFi is already in use, just close it by:sudo ifconfig wlan0 down

To auto-start WiFi access point at system start: sudo systemctl enable create_ap and modify the configuration file /etc/create_ap.conf
Do not forget to disable WiFi client auto-start by modifying /etc/network/interfaces

/etc/network/interfaces

 

Check the WiFi status with commands: iw wlan0 info or iwconfig

iw iwconfig WLAN status
iw iwconfig WLAN status

 

The configuration file for the create_ap service used in my working scenario:

pi@raspi:~ $ cat /etc/create_ap.conf
CHANNEL=6
GATEWAY=192.168.12.1
WPA_VERSION=2
ETC_HOSTS=0
DHCP_DNS=gateway
NO_DNS=0
NO_DNSMASQ=0
HIDDEN=0
MAC_FILTER=0
MAC_FILTER_ACCEPT=/etc/hostapd/hostapd.accept
ISOLATE_CLIENTS=0
SHARE_METHOD=bridge
IEEE80211N=0
IEEE80211AC=0
HT_CAPAB=[HT40+]
VHT_CAPAB=
DRIVER=nl80211
NO_VIRT=1
COUNTRY=SK
FREQ_BAND=2.4
NEW_MACADDR=
DAEMONIZE=0
NO_HAVEGED=0
WIFI_IFACE=wlan0
INTERNET_IFACE=eth0
SSID=MYSSID_CHAGE_IT
PASSPHRASE=MYPASSPHRASE_CHAGE_IT
USE_PSK=0

 

The version of Rasbian used for the working access point: $ lsb_release -a is: Raspbian GNU/Linux 8.0 (jessie)

On version Stretch Lite I need to install:  sudo apt-get install git hostapd haveged

By reading interesting source describing WiFi power tuning, I have decreased ( 😯 yes, decreased… ) the power by playing with the command iwconfig <device> txpower <txpower in dBm>.

Check the temperature of your Raspberry PI: watch /opt/vc/bin/vcgencmd measure_temp Mine is temp=49.4'C which is well under 80C, so the overheating should not be any problem (even without heatsinks).

Next chapters describes various scenarios of WiFi modes.

 


Related Posts

Apache+PHP on Cubieboard with Lubuntu

I executed the following steps to install apache with PHP on my cubieboard2 with lubuntu. Lets start with installation that will take about 25MB: sudo apt-get install apache2 sudo apt-get install php5 sudo /etc/init.d/apache2 restart[…]

Continue reading ...

Ubuntu – data stored in RAM filesystem – TMPFS

In my Cubieboard2 I use Lubuntu. Since I have connected barometer and arduino to my cubieboard, I read data from that devices and store it to cubieboard2 filesystem. Since NAND memory is not quite suitable for such[…]

Continue reading ...

Lubuntu ssh: Read from socket failed – solved

SSH to my fresh lubuntu on cubieboard2 was not working. I tried it also from the lubuntu itself with the error: $ ssh localhostRead from socket failed: Connection reset by peer I went through many[…]

Continue reading ...