## Installing FluidNC on your ESP32

_Please note: These instructions apply to the case where you have
downloaded a release bundle from
https://github.com/bdring/FluidNC/releases - a zip file named
fluidnc-vN.N.N-win64.zip .  They do not apply to installing from a
source tree.  This HOWTO file is present in the source tree so that it
can be packed into a release bundle by automated release scripting,
but it does not tell you how to install from source.  For that, visit
https://github.com/bdring/FluidNC/wiki/FluidNC-Compiling#use-vs-code--platformio-to-compile
_

* Unpack this FluidNC release Zip file.

* Plug your ESP32 into a USB port, then double-click on one of
the following (or, in a CMD window, CD to the directory that
contains the file you are reading and type the batch file
name as below).

To just run FluidTerm (either chi):  fluidterm.bat

ESP32:
To install the WiFi version:       install-wifi.bat
To install the Bluetooth version:  install-bt.bat
To replace the local filesystem:   install-fs.bat
To erase everything on the ESP32:  erase.bat

ESP32S3:
To install the WiFi version:       install-wifi_s3.bat
To replace the local filesystem:   install-fs_s3.bat
To erase everything on the ESP32:  erase_s3.bat

### Erasing the ESP32

If your ESP32 already has other software on it, installing FluidNC
on top of that other software might not work right.  You can get
rid of that other software with:

    erase.bat
or
    erase_s3.bat

Then you can install FluidNC with install-* commands mentioned above.

### Local Filesystem Considerations

Replacing the local filesystem is only useful for the wifi
version, since its default contents are only needed for
running the WebUI user interface over WiFi.

The disadvantage of replacing the local filesystem is that
it will overwrite any files that you might already have
there, such as FluidNC config files, WebUI preferences
and macros.  The advantage is that you will get the latest
version of the index.html.gz file that contains the WebUI
code.  Another way to get a new index.html.gz is to upload
it via WebUI from wifi/index.html.gz herein.

A good approach is to use install-fs only on your first
FluidNC installation, or to start from a clean slate.

### Running FluidTerm

FluidTerm is a simple serial terminal emulator program with a few
features specific to FluidNC - it can upload files and reset the ESP32.

The FluidNC install scripts run FluidTerm automatically at the end,
but if you want to run it separately, you can type

  fluidterm.bat

### Alternatives to FluidTerm

Most GCode sender programs have some way to send commands directly to
FluidNC, but it can sometimes be helpful to bypass the complexity of
a sender and use a more direct path.  FluidTerm is one such direct
path, but there are others, typically called "serial terminals".

For Windows, there are many such programs, such as "PuTTY" and
"TeraTerm Pro".  None are preinstalled by default, but you can
download one from the internet.  Setting one up requires that
you know which COM port is for the ESP32, the baud rate (115200),
and some other settings - no hardware or software flow control,
accept linefeed as end-of-line on input, etc.  FluidTerm tried
to make it easy for you by using all the correct defaults.
