Skip to main content

Moxa UC-8100A-ME-T-LX Setup

This details steps to set up a Moxa UC-8100A-ME-T-LX for MQTT Transmission for reliable and consistent communications.

Firmware Updates

To check the firmware of the Moxa, run the following commands via SSH (login is moxa/moxa):

kversion -a

If the device has the Custom-QTC firmware loaded, it most likely has ThingWorks installed which allows configuration through LAN 2 on IP 192.168.4.127. LAN1 is configured as the WAN port and by default is a static IP at 192.168.3.127. Any network or serial port configuration done via SSH is overwritten by the Web interface on every reboot. Only Ignition installation needs done via the SSH interface.

Upgrade the firmware using the following commands if using the non-custom firmware image:

sudo apt update
sudo apt install -y uc8100a-me-base-system
sudo reboot
Software Updates

Upgrade the other software on the unit after it reboots with these commands:

sudo apt update
sudo apt upgrade -y
Network Configuration

If using a model without ThingWorks, configuration of network ports is done via the command line (SSH).

To change the network configuration, run the following command:

sudo nano /etc/network/interfaces

By default the portion of the configuration for the network ports will be as follows:

iface eth0 inet static
        address 192.168.3.127
        network 192.168.3.0
        netmask 255.255.255.0
        broadcast 192.168.3.255
iface eth1 inet static
        address 192.168.4.127
        network 192.168.4.0
        netmask 255.255.255.0
        broadcast 192.168.4.255

To set up the top ethernet port for DHCP, modify the file as follows:

iface eth0 inet dhcp
#        address 192.168.3.127
#        network 192.168.3.0
#        netmask 255.255.255.0
#        broadcast 192.168.3.255
iface eth1 inet static
        address 192.168.4.127
        network 192.168.4.0
        netmask 255.255.255.0
        broadcast 192.168.4.255

If you need to renew a DHCP address, run the following command:

sudo dhclient eth0

The "eth0" restricts it to only doing this on interface "eth0"

To do a thorough release and renew, run these 2 commands instead:

sudo dhclient -r eth0
sudo dhclient eth0
Serial Port Communications

For checking the serial port configuration, run the following commands to view serial ports 1 and 2 current modes:

sudo mx-uart-ctl -p 0
sudo mx-uart-ctl -p 1

For setting up the serial port configuration, run the following commands to set the ports up for RS-485 2-Wire:

sudo mx-uart-ctl -p 0 -m 1
sudo mx-uart-ctl -p 1 -m 1

For other modes, see the following table:

Mode # Operation Mode
(blank) Display Current Mode
0 RS-232
1 RS-485 2-Wire (Half Duplex)
2 RS-422/RS-485 4-Wire (Full Duplex)

To get the configured port modes to set themselves at boot, edit the /etc/rc.local file:

sudo nano /etc/rc.local

Now, add the following lines just before the "exit 0" line:

# Set the serial ports to RS-485 2-Wire
sudo mx-uart-ctl -p 0 -m 1
sudo mx-uart-ctl -p 1 -m 1
Time Synchronization

On the Moxa's it seems they have a bug that doesn't allow the NTP service to keep correct time on the unit.

If you run the following command and it doesn't show the service is running and gives a warning or error, it's most likely broken:

sudo service systemd-timesyncd status

This can be fixed by removing executable permissions on the /usr/sbin/ntpd file with the following command:

sudo chmod -x /usr/sbin/ntpd

Then you need to either reboot or start the time synchronization service with the following command:

sudo service systemd-timesyncd start

To set the timezone to Central time, run the following commands:

sudo rm /etc/localtime
sudo ln -s /usr/share/zoneinfo/US/Central /etc/localtime