Skip to content
English
  • There are no suggestions because the search field is empty.

GPX-Pro upgrade procedure

 GPX-32 Pro / GPX-8 Pro — Firmware & SLSWebControls Upgrade Procedure (CLI + FTP) 

Applies to: GPX Pro 32 and GPX Pro 8 (Lantronix XPort‑Pro / Evolution OS platform) Purpose: Load a new firmware release onto the XPort‑Pro and replace the on‑device SLSWebControls WebGUI so it matches the new firmware, preserving the GPX configuration. Method: CLI over Telnet / SSH for device operations + WinSCP over FTP in active mode for file transfer. Web Manager is not used in this procedure. 


1. What's being replaced

Each GPX Pro is built on a Lantronix XPort‑Pro running Evolution OS. Three things live on the module's filesystem:

  • Firmware — the operational code, an Evolution .romz image. The filenames differ per model:
    • GPX‑8 Pro: gpx8_xport_pro.romz
    • GPX‑32 Pro: gpx32_xport_pro.romz
    Uploading the .romz by FTP is itself the trigger — the unit writes it and reboots automatically.
  • SLSWebControls (WebGUI) — the GPX web application, served from a folder named http in the root of the filesystem. The package is a full web tree — the folders app, config, content, controllers, directives, fonts, scripts, services, views, plus root files such as index.html, manifest, and favicon.ico. Its entire contents go into /http.
  • GPX configuration — held in .json file(s) in the root of the filesystem (e.g. automation.json, GPX-channels.json, gpx.json, mqtt.json, ntp.json, PING-channels.json, schedules.json, scripts.json, smtp.json, SNMP-channels.json, users.json). A format erases these, so they are backed up first and restored after the firmware update.

Version‑match rule: always pair the SLSWebControls set with the firmware release it was built for. Mismatched web files against firmware is the most common cause of a broken GPX web UI after an upgrade.

What format keeps vs. loses: the format operation preserves the XPort‑Pro configuration settings (IP address, FTP state, serial/tunnel config — these live in the module's permanent memory) but destroys all files on the filesystem, which includes /http and the root .json GPX config. That's why only the .json files need backing up and restoring — the IP address is unaffected.


2. Prerequisites

  • [ ] Correct firmware image for the model (gpx8_xport_pro.romz or gpx32_xport_pro.romz).
  • [ ] The matching SLSWebControls package for that release (unzipped, ready to upload).
  • [ ] GPX IP address and admin credentials (factory default admin / PASS, or your configured values).
  • [ ] CLI access over Telnet or SSH to the GPX.
  • [ ] WinSCP installed. Avoid the Windows ftp.exe command‑line client — it does not support active mode, which this device needs.
  • [ ] A wired connection on the same subnet.

3. Order of operations

Enable FTP (if needed) → back up .json config → format the filesystem → upload the new firmware (auto‑reboot) → create /http, upload the new WebGUI, and restore the .json config → reload via CLI → verify → disable FTP.

Firmware is loaded before the WebGUI: the firmware upload reboots (and can reorganize) the filesystem, so the web files and config are loaded afterward, where nothing overwrites them.


4. Phase 0 — Enable the FTP server if needed (CLI)

The GPX ships with FTP disabled in some builds. Open a Telnet or SSH session to the GPX (telnet <gpx-ip> lands at the > prompt), then enable it:

enable configure ftp state enable write exit exit 

write commits the change to permanent memory so FTP stays enabled through the reboots in this procedure. (It's turned back off in the final phase.)


5. Phase 1 — Back up the GPX configuration (WinSCP)
  1. Open WinSCP → New Site:
    • File protocol: FTP · Encryption: No encryption
    • Host name: <gpx-ip> · User name: admin · Password: your password
    • Advanced → Connection → FTP → turn Passive mode OFF (use active mode).
    • Set the transfer mode to Binary (Options → Preferences → Transfer, or the toolbar) to avoid any newline translation on the embedded filesystem.
  2. Connect. In the root of the filesystem, download every .json file to a safe folder on your workstation. Grab them all — the exact set varies by unit (see the examples in §1). Leave the http folder alone for now.

6. Phase 2 — Format the filesystem (CLI)

In the CLI:

enable filesystem format 

format prints a warning and asks two questions — answer them as shown:

This command will destroy all files on the filesystem but preserve the configuration settings. Are you sure you want to format the filesystem (yes/no)? yes Do you want to back out (yes/no)? no Formatting... 

Do not power‑cycle during the format. When the filesystem prompt returns, exit back out:

exit exit 

(You'll create the http folder in Phase 4, after the firmware reboot.)


7. Phase 3 — Upload the firmware (WinSCP)
  1. Reconnect WinSCP (FTP, active mode, Binary transfer — mandatory for the .romz).
  2. Upload the model‑correct image to the root of the filesystem:
    • GPX‑8 Pro → gpx8_xport_pro.romz
    • GPX‑32 Pro → gpx32_xport_pro.romz
  3. On completion the GPX writes the image and reboots automatically — the FTP session will drop. Do not power off, reset, or interrupt the unit while it is writing. Allow a few minutes before reconnecting.

8. Phase 4 — Create /http, upload the WebGUI, and restore the config (CLI + WinSCP)

Once the unit is back up after the firmware reboot:

4a — Create the web root (CLI). (format preserves the config, so FTP should still be enabled; if it isn't, re‑run Phase 0 first.)

enable filesystem mkdir http exit exit 

(The folder name is lowercase http.)

4b — Upload the WebGUI (WinSCP). Reconnect (FTP, active, Binary), enter /http, and upload the entire contents of the unzipped SLSWebControls package — all top‑level folders (app, config, content, controllers, directives, fonts, scripts, services, views) and all root files (index.html, manifest, favicon.ico, etc.). WinSCP transfers folders recursively.

  • Upload the contents into /http (i.e. /http/index.html, /http/app/…) — not a nested /http/SLSWebControls/ folder.

4c — Restore the config (WinSCP). Upload the saved .json file(s) back into the filesystem root (the root — not /http).

Verify the layout in WinSCP or the CLI (filesystemls): the root holds the .json files plus the http directory, and /http holds the web tree.


9. Phase 5 — Reload the GPX (CLI)

Restored .json config is applied on the next boot, so reboot from the CLI:

enable reload 

The GPX restarts with the new firmware, the new SLSWebControls, and the restored configuration.


10. Phase 6 — Verify
  1. Reachable: reconnect to the GPX over Telnet/SSH.
  2. Firmware version: CLI → enabledeviceshow — confirm the new release.
  3. Web UI: browse to the GPX, hard‑refresh (clear cache), and confirm the SLSWebControls pages load and behave consistently with the new firmware.
  4. Config: confirm the GPX settings match the restored .json (IP, channels, users, schedules, etc.).

11. Phase 7 — Disable the FTP server (CLI)

Once everything is verified and operational, turn FTP back off:

enable configure ftp state disable write exit exit 

write makes the disabled state permanent.


12. Recovery notes
  • Web UI blank or partial: re‑create /http and re‑upload the matching SLSWebControls (Phase 4); verify all folders transferred (ls / show tree).
  • .json config wrong or missing: re‑upload the saved .json to the filesystem root (Phase 4c) and reload (Phase 5).
  • FTP won't connect: confirm the WinSCP session is in active mode and that FTP is enabled on the device (Phase 0). The Windows ftp.exe client will not work here.

Quick‑reference sequence
# Phase Where Key commands / action
0 Enable FTP (if needed) CLI enableconfigureftpstate enablewrite
1 Back up config WinSCP (FTP active, binary) download all root *.json
2 Format CLI enablefilesystemformat (yes, then no)
3 Upload firmware WinSCP put gpx8_xport_pro.romz or gpx32_xport_pro.romz to root (auto‑reboots)
4 WebGUI + config CLI + WinSCP mkdir http → put package contents into /http → put saved *.json to root
5 Reload CLI enablereload
6 Verify CLI / browser firmware version + web UI + config
7 Disable FTP CLI enableconfigureftpstate disablewrite

Reminders: WinSCP FTP in active mode; binary transfer for every upload; format asks two prompts (yes, then no); firmware before WebGUI; never interrupt power during a format or firmware write; use the model‑correct .romz.