Software updates are great because they keep installations secure and add new functionality. Moving from one Debian version to the next, however, is sometimes a bit painful for projects that modify system configuration files. My VPN-Wifi-Pi project that uses a Raspberry Pi as a Wifi Access Point and an OpenVPN tunnel to a VPN server for secure Wifi access in hotels and other places is unfortunately no exception.
Trouble For Raspberry Pi 1 and 2s with External Wifi
In the past, moving from one Kernel version to the next in Debian/Raspbian Jessie suddenly broke the Wifi access point functionality for external USB Wifi dongles. It hasn’t been restored ever since. For Raspberry Pi 1 and 2 devices there are now two options, both with serious drawbacks: Use an old Debian Jessie image and never make a kernel update again or use the new Rasbpian Stretch image that comes with a Wifi Access Point driver (hostapd) that sort of works with external USB Wifi. Unfortunately, the hostapd provided in Raspbian Stretch is not very stable when used with external dongles.
Hardware Upgrade to a Raspberry Pi 3
The only good solution I have at the moment is to use the latest script I have put together with a Raspberry Pi 3 that has a built-in Wifi adapter with a chipset that is fully compatible with the hostapd driver. On this hardware, things work smoothly especially if the Ethernet port is used for backhaul connectivity. Wifi backhauling also works but throughput is not very good. Also I noticed that there seems to be a race condition during boot and sometimes the access point configuration of the hardware is modified by the Wifi backhaul link coming up. A reboot fixes the issue. Not ideal but I gave up trying after a few hours to get the Wifi-Wifi configuration to work reliably as its not my main use-case, I prefer Ethernet backhaul and Wifi-Access point for local access.
For more details and the code head over to my GitLab
Github repository for the project. Pull requests for improved Wifi-Wifi functionality and other features are always welcome!