I am working on a build for the Arduino GIGA R1 WiFi with the GIGA Display Shield that requires internet access via WiFi. Once I have it working, I plan to build several and share them across the US, to sites I won't be going to. The trouble is WiFi. The end users won't be able to recompile the code, and I won't be able to add their WiFi credentials for them before I send them.
I was thinking of building an interface where they could enter the SSID & password on the touchscreen, but I am having trouble with understanding how to build an onscreen keyboard. I wanted to ask if anyone else had already tackled these issues (keyboard or WiFi) with the GIGA & Display Shield. Any advice would be appreciated.
An onscreen keyboard is one solution. Other things to consider are using either Bluetooth or a serial port to push the WiFi credentials into the Giga. You could even put the Giga into WiFi AP mode and use a web browser to set the main WiFi credentials.
Thank you for your reply! I just saw this response. I like the idea of a WiFi AP mode, but I don't even know where to start on that. Do you know if there are any examples to get me started?
I haven't done this specifically on a GIGA. (I've used the serial port to push WiFi credential in)
But the general flow of things is the same as what many SmartPlugs and other screenless IoT devices do.
- Have a way to force your device into Setup mode. eg a Long press of a pushbutton
- Start up the GIGA WiFi in AP mode and make the SSID unique yet easily recognizable
- Create a simple HTML form asking for SSID and Password and serve it from the GIGA
- Have the user go to the WiFi settings page of their phone or PC to join that network
- Have the user open their browser and fill out the form
- Write the WiFi credentials to nonvolatile storage
- Shut down the GIGA WiFi AP
- Join the user's WiFi network using the credentials obtained in Steps 6 and 7.