TUC Config Manager
==================

The TUC Config Manager is a tool for finding, configuring
and updating metraTec TCP/IP to UART Converters (TUCs) including
products that contain TUC modules.
This README deals only with the tool's runtime dependencies
and possible platform-dependant problems using it.
For a full documentation on the TUC Config Manager's
functionality, please refer to the document
"User Guide for metraTec TCP/IP to UART Converter (TUC)".

Runtime Requirements
====================

The TUC Config Manager is a cross-platform program
utilizing the Java Runtime Environment.
It requires a Java 11 compatible JRE.

Nevertheless TUC discovery and updating currently only
works reliably on the following operating systems:

 * Windows XP or later
 * Linux (Kernel 3.0 or later, any processor architecture)
 * Mac OS X (10.8 or later, 64 bit). See special note for OS X users.

Running the TUC Config Manager
==============================

Executing the config manager is easy.
You do not have to install the program to any particular
location. You can extract the download archive and start
immediately!

 * On Windows, you can double-click the TUCConfigManager.exe
 * On Linux/Unix,  you can execute the program from the console
   by typing:
   ./bin/TUCConfigManager
   This should generally be done with `root`-user privileges
   in order to access all of the config manager's functionality.
   E.g. execute:
   sudo ./bin/TUCConfigManager

Troubleshooting TUC Discovery and Updating Issues
=================================================

If the TUC Config Manager does not find any devices
or lists wrong IPs for the devices, please make sure
that you meet the following criteria:

 * You are in the same physical subnetwork as
   the TUC you want to manage. This means there must
   not be any router between your PC and the TUC,
   as the router may not forward broadcast messages correctly.
   Depending on the network, it may still be possible
   to use the TUC Config Manager when routers are involved
   but this is untested and unsupported by the TUC Config Manager.
   The TUC Config Manager should still find TUCs with
   "wrong" IP addresses (i.e. TUCs in a different
   logical subnetwork than your PC but in the same physical
   subnetwork). This is a supported feature.
   If in doubt, try to establish an ad-hoc ethernet connection
   between your PC and the TUC - you must configure your PCs
   ethernet interface statically for this to work.
 * Make sure that there is no NAT (Network Address Translation)
   performed between you and the TUC.
 * Your firewall does not filter broadcast messages, or
   UDP packets from and to ports 9, 67, 68, 69, 41000 and 42000.
 * Your firewall allows incoming connections to your PC
   or uses stateful firewalling. I.e. the Config Manager
   should work on Windows (which uses stateful firewalls)
   even when not allowing exceptions or not granting network
   permissions to the TUC Config Manager process.
   If in doubt, try to disable your firewall temporarily.

If the config manager finds a TUC but you get a warning
about missing privileges (probably on Unix/Linux) when trying
to update it, make sure:

 * Your user has the appropriate capabilities to open
   privileged UDP ports; or
 * You have run the Config Manager as the `root` user.

If you are still unable to discover TUC devices or
update them, please contact metraTec support.

Handling Failed Updates
=======================

In case a TUC update fails (or hangs), you can try to restart
the TUC Config Manager.
In case the TUC is no longer shown in the list of devices,
you should try to restart (power cycle) it.
If it still does not show up, this means your TUC-module
or TUC-based device is too old to recover from failed
firmware upgrades. In this case you should consult metraTec
support.
If it is a newer TUC edition, it might show up as
"TUC Bootloader". In this case, it is possible to retry
the firmware update procedure just like for ordinary
devices (follow the on-screen instructions).

Special Note for MAC OS X Users
===============================
Please make sure to only enable the interface where the TUC
Device is located (usually ethernet) and disable all the other
interfaces (e.g. WiFi). Communication to the TUC device
is unreliable when multiple interfaces are turned on.