Firstly, my apologies for using any incorrect terminology.
What I have:
A Raspberry Pi Zero W running Buster with a connected e-paper display, currently using a USB 2 Ethernet adapter to get it set up.
What I am trying to achieve
I'm trying to set up a Wifi Access Point (Hot spot?) on the Pi, so that one device (smartphone) can connect to the wifi served by the Raspberry Pi (via credentials passed using a QR code displayed on the ePaper display). Then, once the device has connected, allow the device to acceess a page hosted on the Pi. Literally all I need is some guidance to help me get started with step 3 below.
What I DO NOT need/want
There will be no need to have an internet connection when the Hot Spot (AP) is active.
When the Pi detects that the current internet connection (on WiFi) has disconnected from the internet, It will:
- Get a list of available WiFi hotspots in range - Completed
- Disable the current wpa_supplicant configuration - should be easy enough to do
- Enable the Hotspot (with random credentials) - Not sure where to start with this one
- Draw a QR code to allow ONE device to connect to the hotspot. - This should be easy enough to do
- Wait for a device to connect - This should also be easy enough to do
- Display a new QR code to allow the smart device to load up the web page displaying the WiFi hotspots gathered in step 1 above. - This should also be easy enough to do
- Allow the user to select the new network, and then enter the passphrase for the new network on their device. - This should also be easy enough to accomplish
- Disable the Hot Spot and connect to the new network with the credentials provided in the step above - Should also be easy enough to do
What I've found so far
I've found instructions on setting up hotspots to allow devices to connect to Raspberry Pis and then route the traffic through to the internet on a different interface (connect to wifi and then use the eth0 to connect to the net) using IP Tables.
Also the use of dnsmasq
What I'm trying to avoid
What I do not want is a bloated system running too many services that are not required. And so I'm reluctant to start installing services/apps that will not be needed. The Pi Zero W is not a beast of a PC, so, I'm trying to keep it lightweight.
I've had a look at this link, But it has link rot and does not give any insight into what I am trying to achieve.
I think that this one goes a little overboard by setting up a WiFi Direct with many available clients and requiring the installation of nmap (remember, I'm trying to keep unnessesary installations to a minimum)
I've had a look at a few other resources, but all of them seem intenet on setting up a gateway to allow the Pi to act as an internet hotspot, to allow someone to connect to it wirelessly and then access the internet via the Pi's ethernet. (Internet -> eth0 -> Pi -> wlan0 -> wireless device).