I figured it out! After getting some comments, I have decided to got with Option B.
Firstly for both options, you will need to:
- Using the Arduino IDE
- Under the "Sketch" tab; click "Export compiled Binary", then click "Show Sketch Folder" (This is where your .bin file is)
Option A - Using an application
- Download the ESPEasyFlasher code from below.
- You will probably have to open this with Visual Studio and compile it yourself.
- Make sure your .bin file and esptool.exe are included in your bin/release folder or wherever you want to have the "FlashESP8266.exe" program permanently.
- Run the "FlashESP8266.exe" program; select your com port, select your bin file, select the upload rate, then click flash.
So you just have to make sure that your user has;
- Python installed
- Provide them a copy of the "FlashESP8266.exe"
- Provide them a copy of the "esptool.exe"
I don't know if this will work the exact same for an ESP32 as I believe they have two .bin files...
Resources:
https://nerdiy.de/en/howto-esp8266-mit-dem-esptool-bin-dateien-unter-windows-flashen/
https://github.com/BattloXX/ESPEasyFlasher
Option B - Using OTA Update
3.You will need to first implement OTA Updates as @StarCat has pointed out
in the comments.
4.Navigate to the URL you implemented.
5.Choose the File System, select your .bin file.
6.Click Update FileSytem
7.Should take a couple seconds or so and should be updated!
I can confirm this works when your ESP8266 is set to host a Soft Access Point.
Koudos to @StarCat.
Resources:
https://arduino-esp8266.readthedocs.io/en/latest/ota_updates/readme.html#web-browser