Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

A Library for turning a raspberry pi into a Server/Access Point

Project Description

## Raspberry Pi as an AccessPoint (AP) and Server
**Nobu** is a minimum library to use the Raspberry Pi as an AccessPoint and a Web Server. It's important to note that depending on the Wireless Network card you maybe using (Realtek for example) the appropriate `hostapd` will need to be downloaded. For example the Raspbian hostapd doesn't work
on some Realtek chips (Realtek-RTL8188 for ex), as a result I've used the driver from Realtek.

import nobu
n = nobu.Nobu("ssid", "passwd_must_>_8_chars")

There are three components to create a Linux Accesspoint: hostapd (host access point daemon), interfaces configuration, dhcpd (dynamic host configuration protocol)

The hostapd mainly broadcasts the RPi as an Access Point. in its configuration file is where you set up the connection details (SSID/Password etc.,)
Bear in mind that this process and guide uses a Realtek WiFi chip, which REQUIRES its own Driver. So the hostapd that comes default with Raspbian WILL NOT WORK!
I've included the correct default hostapd but it can be found online as well.
`sudo service hostapd start`
`sudo hostapd /etc/hostapd/hostapd.conf `

# Interfaces (/etc/network/interfaces)
This is where all the networking interfaces configuration go: ethernet (eth01), wireless (wlan0 for ex)
This is where you set up the static IP Address for the RPi which other devices will use when the send data to the Pi using sockets
`sudo ifconfig wlan0`
`sudo ifdown wlan0`
`sudo ifup wlan0`

# dhcpd
Since the Pi is acting as a server it needs to communicate with the clients connected. To do so it needs to assign each client an IP address. Dynamic Host Configuration Protocol allows `hosts` that connect to be dynanimically configured for communication with the server (by receiving IP addresses).
Neeed to also edit `/etc/default/isc-dhcp-server` and set INTERFACES="wlan0" letting know the dhcp server will assign IP addresses to clients connecting on to the access point.
`sudo dhcpd -cf /etc/dhcp/dhcpd.conf`
`sudo service isc-dhcp-server status`

# References
For more advanced setup like having the Pi connect with ethernet for an AP that can forward requests check out Adafruit
Monitor the logs as the AP connection/handshake takes place: `tail -f /var/log/syslog`

Release History

This version
History Node


History Node


History Node


History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(3.8 kB) Copy SHA256 Hash SHA256
Source None Mar 21, 2016

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting