====== Raspberry Pi Troubleshooting and ErgoTech Support Checks ====== This page covers common problems with a Raspberry Pi which runs MIX or TransSECS. ===== SSH says “Connection refused” ===== Example: ssh: connect to host ... Connection refused SSH may not have been enabled when Raspberry Pi OS was installed. Enable SSH through Raspberry Pi Imager when writing the card, or from a local keyboard and monitor with: sudo raspi-config Choose **Interface Options -> SSH -> Yes**. ===== mix.local cannot be found ===== Try the Pi’s IP address instead: ssh mix@192.168.1.50 If several Pis use the same hostname on the same network, give each one a unique hostname. ===== sudo says it cannot resolve the host ===== Example: sudo: unable to resolve host mix: Temporary failure in name resolution Check: hostname cat /etc/hosts The local hostname configuration in ''%%/etc/hosts%%'' must agree with the Pi’s hostname. ===== SSH or Linux commands have become very slow ===== First check disk usage: df -h / Then check the system logs: ls -lh /var/log ls -lh /var/log/syslog* ls -lh /var/log/daemon.log* A nearly full SD card can make SSH and ''%%sudo%%'' extremely slow. If ''%%syslog%%'' or ''%%daemon.log%%'' is very large, verify the 20 MB logrotate settings in the base-setup article and verify which MIX or TransSECS console output is being written to its dedicated console log. ===== TransSECS shows a prelicense message but no number ===== If the startup message ends with ''%%prelicense code:%%'' but does not show a number, contact ErgoTech. The deployment may need to be rebuilt for the Raspberry Pi. ===== License which previously worked is rejected ===== An ErgoTech license is associated with the individual system. Changing the hostname, IP address, or network configuration does not change the license. If a license which previously worked is rejected, contact ErgoTech and include the current pre-license information. Each Raspberry Pi created from a master SD-card image requires its own ErgoTech license. ===== Wrong Java version ===== Check: java -version If it shows Java 17 or 21 instead of Java 8: sudo update-alternatives --config java Select the Java 8 installation under ''%%/opt/java%%''. ===== MIX web page does not open ===== Check whether MIX is running: systemctl status mix Press **q** to leave the status screen. If MIX is running, check the configured port: grep mix.port /home/mix/mixruntime/mix.properties Also inspect the console log: tail -n 50 /home/mix/mixruntime/logs/runmix-console.log ===== TransSECS serial equipment does not connect ===== Check which serial devices Linux can see: ls /dev/ttyUSB* /dev/ttyAMA* 2>/dev/null For SECS-I or other serial devices, also verify which ''%%run.sh%%'' includes ''%%/usr/lib/jni%%'' in ''%%LD_LIBRARY_PATH%%''. ===== Chromium says the profile appears to be in use ===== This normally follows an unclean shutdown or power loss on a MIX kiosk system. Verify which the kiosk-specific ''%%rc.local%%'' cleanup from the kiosk article is installed, then reboot. Do not delete Chromium lock files while Chromium is actively running. ===== The clock is wrong after a power interruption ===== For a Pi 3 or Pi 4, check: timedatectl These Pis do not have a battery-backed real-time clock. ''%%fake-hwclock%%'' provides an approximate time until a network time source or another clock-setting method corrects it. On MIX, open the setup page and use **Get Pre-License Key**, which also updates the Pi’s system time. For a Pi 5, verify the RTC battery is installed and ''%%timedatectl%%'' shows an RTC time. ===== A service is failed or keeps restarting ===== For MIX: systemctl status mix tail -n 50 /home/mix/mixruntime/logs/runmix-console.log For TransSECS: systemctl status transsecs tail -n 50 /home/mix/secs/logs/transsecs-console.log The last lines of the console log usually contain the most useful error information. ===== Information to send ErgoTech ===== When contacting ErgoTech support, include the output of: uname -m head -2 /etc/os-release java -version df -h / For MIX: systemctl status mix tail -n 50 /home/mix/mixruntime/logs/runmix-console.log For TransSECS Deployments: systemctl status transsecs tail -n 50 /home/mix/secs/logs/transsecs-console.log If the problem appears related to disk space or system logging, also include: ls -lh /var/log/syslog* ls -lh /var/log/daemon.log* sudo cat /var/lib/logrotate/status