A full Pi would probably be overkill, except maybe for the need to provide some kind of user interface and credential input and storage. A Pico could do all the necessary checking, but the normal model does not have non-volatile storage to storage user inputted data in. You can get SD card modules for them which would solve that, so start with it acting as a WiFi access point, so users can connect to it, access the web server it runs to provide WiFi credentials for the local network, store them and then reconnect to that.
I built a similar tool for my wife to determine connectivity problems and solutions when I am not around, based on an ESP32 with an integrated WiFi and OLED display. It does rely on knowing having the local network details (WiFi credentials and nearby IP addresses) compiled into it.
The functionality follows these steps:
I built a similar tool for my wife to determine connectivity problems and solutions when I am not around, based on an ESP32 with an integrated WiFi and OLED display. It does rely on knowing having the local network details (WiFi credentials and nearby IP addresses) compiled into it.
The functionality follows these steps:
- Scan for visible WiFi networks and display them. If your own network is not on the list then that is an obvious problem area. This list is displayed separately from the results of the below checks.
- Use the stored credentials to connect to the authorised WiFi. If it cannot connect then report that and say the problem lies with the WiFi router.
- Ping a distant ip address. I use 8.8.8.8 but others are available. If this can be pinged then report that connectivity is good, so jump past the following tests. (Note that this still allows DNS problems to exist, but my device does not check for them, yet.)
- Otherwise, check intermediate stages. Check the WiFi router can be pinged. If not report that the problem lies with the WiFi router.
- I have the ISP router acting as a passthrough device, so ping that. If that is not reached, report the modem box as the problem.
- Ping a nearby router in the ISP network. If that cannot be reached, report the problem lies with the ISP.
- If it gets this far then there is a more distant problem, so report the problem lies 'out-of-range' of local technical support (i.e. me)
- Disconnect from the WiFi, wait 30 seconds, then start again
Statistics: Posted by IanS — Sun Aug 04, 2024 8:35 pm