- KKTerm-style UI: Activity Rail, Connection Sidebar, Tabbed Workspace - Serial Port connection (System.IO.Ports) - SSH connection (SSH.NET, password/key/keyboard-interactive) - Local Shell via Windows ConPTY (PowerShell/Bash/Cmd) - VT100/ANSI terminal rendering (owner-drawn, double-buffered) - TTL script engine: send, sendln, wait, pause, timeout, if/while, messagebox - Group execution: waitall, sendlnall, sendlngroup (Barrier sync) - Run All / Run Group toolbar buttons - SFTP file browser sidebar (SSH.NET SftpClient) - PDU control via SNMP (pduconnect/pductrl commands) - Settings: Terminal prefs, Shell config, PDU monitoring - About page with changelog - AppSettings persisted to %LocalAppData%\ETTerms\ - Dark theme throughout (KKTerm purple accent)
3.4 KiB
ETTerms — Troubleshooting Runbooks
Serial Port Issues
COM port is busy / cannot open
Symptom: "Access to the port 'COMx' is denied" or "The port is already in use."
Cause: Another application (or another ETTerms tab) already has the port open.
Fix:
- Check if another terminal (PuTTY, TeraTerm, Device Manager) has the port open — close it.
- In ETTerms, only one session per COM port is allowed. Close the existing tab first.
- If the port is stuck, unplug/replug the USB-Serial adapter.
COM port not showing in Quick Connect
Symptom: The port exists in Device Manager but ETTerms doesn't list it.
Fix:
- Close and reopen the Quick Connect dialog (it scans on open).
- Check Device Manager → Ports (COM & LPT) for the actual COM number.
- Some USB adapters need drivers (FTDI, CH340, CP2102).
SSH Issues
Host key fingerprint changed
Symptom: "Host key mismatch" warning when connecting.
Cause: The remote server was reinstalled or its SSH keys were regenerated.
Fix:
- Verify with the server admin that the key change is legitimate.
- Delete the old fingerprint from
%LocalAppData%\ETTerms\known_hosts.json. - Reconnect — ETTerms will prompt to trust the new key.
SSH connection timeout
Symptom: Connection hangs for 30+ seconds then fails.
Fix:
- Verify the host is reachable:
ping <host>from cmd. - Check if SSH port (default 22) is open:
Test-NetConnection <host> -Port 22in PowerShell. - Firewall / VPN may be blocking. Try from a different network.
Script (TTL) Issues
Script hangs on wait
Symptom: Script shows "wait 'xxx'" indefinitely.
Cause: The expected keyword never appears in the output stream.
Fix:
- Press ■ Stop to cancel the script.
- Check that the wait keyword matches exactly (case-sensitive, including spaces).
- Use
timeout = 10at the top of your script to auto-fail after 10 seconds instead of waiting forever. - Use
flushrecvbeforewaitif there might be stale data in the buffer.
Script error: "'waitall' can only be used in Group execution mode"
Symptom: Script stops immediately with this error.
Cause: You used waitall, sendlnall, or sendlngroup commands but ran the script via ▶ Script (per-tab) or ▶ Run All instead of ▶ Group.
Fix:
- Right-click the session tabs → assign them to a Group (1/2/3).
- Use the ▶ Group1/2/3 buttons in the toolbar to run the script.
PDU Issues
pduconnect fails
Symptom: [pduconnect] failed to connect to <ip>
Fix:
- Ping the PDU IP from your machine.
- Verify the PDU is an iPoMan II/III model (SNMP v1, community "private").
- Check that SNMP port 161/UDP is not blocked by firewall.
pductrl returns FAILED
Symptom: [pductrl] device X port Y ON → FAILED
Fix:
- Ensure you called
pduconnectfirst for that device number. - Verify the port number is valid (1–12).
- Check PDU web interface to confirm port is not locked.
General
Settings not persisting
Fix: Settings are saved to %LocalAppData%\ETTerms\settings.json. Check that the folder is writable. If the file is corrupted, delete it and restart ETTerms (defaults will be recreated).
Window position not remembered
Fix: Window position saves on close. If ETTerms is killed (Task Manager), position won't be saved. Close normally via the X button.