Comprehensive troubleshooting guide for FrameworX solutions, covering common issues, diagnostics, and recovery procedures.
Parent Page: Getting Started (Reference)
Overview
This guide helps diagnose and resolve common issues in FrameworX 10.1. Problems are organized by category with symptoms, likely causes, and step-by-step solutions. Use the diagnostic tools and procedures described here to quickly identify and fix issues in your solution.
Quick Diagnostics Checklist
Initial Verification
- Services running (TWebServices, TServer)
- Network connectivity verified
- Firewall ports open (10108, 3101, solution-specific)
- License validated (including Runtime Clients)
- Guest user permissions configured
- Database connection established
- Client access working
Diagnostic Flow
1. Identify symptoms
2. Check logs (Event Viewer, TraceLogs)
3. Run diagnostics (/SaveLog:3)
4. Apply solution
5. Verify fix
6. Document resolution
Startup Problems
Runtime Won't Start
Symptoms:
- Service fails to start
- Error message on startup
- Runtime crashes immediately
- No response from server
Diagnostics:
cmd
# Check service status
sc query "FrameworX Runtime"
# Review Windows Event Log
eventvwr.msc
# Check startup log
type "C:\Users\Public\Documents\FrameworX\TraceLogs\*.log"
Common Causes and Solutions:
Cause | Solution |
---|---|
Database connection failure | Verify connection string, check SQL Server is running |
Port already in use | Change port or stop conflicting application |
Missing license | Install valid license file |
Corrupted solution | Restore from backup or repair database |
Insufficient permissions | Run as administrator or check service account |
Missing dependencies | Install .NET Framework and VC++ redistributables |
Detailed Resolution Steps:
- Check Database Connection
- Test connection string in Designer
- Verify SQL Server TCP/IP is enabled
- Check firewall rules for port 1433
- Test with SQL Management Studio
- Resolve Port Conflicts
cmd
netstat -ano | findstr :3101 tasklist | findstr [PID]
- Verify License
- Check Runtime → License tab
- Ensure license is active
- Verify expiration date
Designer Won't Open
Symptoms:
- Designer crashes on launch
- Blank screen or frozen interface
- Error loading solution
- Missing menus or toolbars
Resolution Matrix:
Error Message | Cause | Fix |
---|---|---|
"License not found" | No development license | Install development or combined license |
"Solution is locked" | Another user editing | Check lock owner, force unlock if needed |
"Out of memory" | Large solution | Increase memory, close other applications |
"Failed to load module" | Corrupted installation | Repair or reinstall FrameworX |
Connection Issues
Device Communication Failures
Symptoms:
- Tags showing bad quality
- No data from devices
- Intermittent communication
- High error counts
Diagnostic Steps:
- Check Device Status
- Designer → Devices → Runtime Status
- Review error counts and last response time
- Test Communication
cmd
ping [device-ip] telnet [device-ip] [port]
- Review Configuration
- Verify IP address and port
- Check device addressing
- Confirm protocol settings
Common Issues by Protocol:
Protocol | Common Issue | Solution |
---|---|---|
Modbus TCP | Wrong unit ID | Verify slave address (often 1 or 255) |
EtherNet/IP | Wrong slot | Check processor slot number |
OPC UA | Certificate error | Accept server certificate |
MQTT | Authentication | Verify username/password |
BACnet | Wrong device ID | Scan network for devices |
Web Client Connection Checklist
1. Verify Server Process
cmd
# Check if TServer.exe is running
tasklist | findstr TServer
# Verify port (default 3101)
netstat -aon | findstr :3101
2. Check Guest User Permissions
Navigate to Security → Permissions:
- Verify GUEST user has "CLIENT START" or unrestricted access
- Guest user should be in GUEST group by default
3. Verify License
Runtime → License tab:
- Check "Runtime Web Clients" ≥ 1
- Verify license is active
4. Test Local Connection First
http://localhost:3101/html5
http://127.0.0.1:3101/smartclient
5. Network Diagnostics
cmd
# Test connectivity
ping server-ip
# Test port
telnet server-ip 3101
# Trace route
tracert server-ip
# Check firewall
netsh advfirewall firewall show rule name=all | findstr 3101
Smart Client Issues
Microsoft Blocks Download
Symptom: "Not a verified Microsoft application" warning
Solution:
- Windows Settings → Apps & features
- Under "Choose where to get apps"
- Change from "Microsoft Store only" to "Anywhere"
FIPS Compliance Error
Solution:
- Run
gpedit.msc
as Administrator - Computer Configuration → Windows Settings → Security Settings → Local Policies → Security Options
- Set "System Cryptography: Use FIPS compliant algorithms" to Disabled
For Windows 10 Home (no gpedit.msc):
batch
@echo off
pushd "%~dp0"
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Package~3*.mum >>List.txt
for /f %%i in ('findstr /i . List.txt 2^>nul') do dism /online /norestart /add-package:"C:\Windows\servicing\Packages\%%i"
pause
Performance Issues
High CPU Usage
Symptoms:
- CPU constantly above 80%
- System sluggish
- Client updates slow
- Delays in processing
Performance Analysis:
powershell
# Monitor process
Get-Process FrameworX* | Select Name, CPU, @{n='RAM(MB)';e={$_.WS/1MB}}
# Check thread count
Get-Process TServer | Select Threads, Handles
Common Causes:
Component | Cause | Solution |
---|---|---|
Scripts | Infinite loops | Review script logic, add delays |
Devices | Too fast polling | Increase scan intervals |
Expressions | Complex calculations | Simplify or use scripts |
Database | Inefficient queries | Optimize SQL, add indexes |
Graphics | Heavy animations | Reduce animation complexity |
Memory Leaks
Symptoms:
- Memory usage growing continuously
- Out of memory errors
- Performance degradation over time
Common Memory Issues:
Source | Problem | Fix |
---|---|---|
Scripts | Objects not disposed | Implement using/Dispose patterns |
Arrays | Growing without limit | Clear or limit array size |
Events | Handlers not removed | Unsubscribe from events |
Cache | No expiration | Implement cache timeout |
Logs | Unlimited growth | Set max log size |
Performance Baselines
Metric | Good | Warning | Critical |
---|---|---|---|
CPU Usage | <50% | 50-80% | >80% |
Memory Usage | <60% | 60-85% | >85% |
Disk Queue | <2 | 2-5 | >5 |
Network Usage | <50% | 50-80% | >80% |
Response Time | <100ms | 100-500ms | >500ms |
Data Issues
Tags Not Updating
Diagnostic Flow:
Check Device Communication
↓ OK
Check Point Mapping
↓ OK
Check Tag Configuration
↓ OK
Check Security Permissions
↓ OK
Check Runtime Status
Tag Diagnostics:
- Use Property Watch to monitor value, quality, timestamp
- Enable Tag Trace: Designer → Tools → Diagnostics → Tag Trace
Historian Data Gaps
Issue | Check | Solution |
---|---|---|
No data stored | Collection enabled? | Enable historian for tags |
Gaps in data | Buffer overflow? | Increase buffer size |
Wrong values | Compression settings? | Adjust deadband |
Slow queries | Missing indexes? | Optimize database |
Storage full | Retention policy? | Archive old data |
Alarm Issues
Alarm Flooding
Identify Chattering Alarms:
sql
SELECT Tag, COUNT(*) as Count
FROM AlarmHistory
WHERE Timestamp > DATEADD(hour, -1, GETDATE())
GROUP BY Tag
ORDER BY Count DESC
Remediation:
- Add deadband to analog alarms
- Increase delay timers
- Implement alarm shelving
- Filter nuisance alarms
Notification Issues
Email Troubleshooting:
- Test SMTP: Designer → Alarms → Notification → Test Email
- Verify:
- SMTP server address
- Port (25, 587, 465)
- Authentication credentials
- TLS/SSL settings
- From address validity
Error Code Reference
Runtime Errors (FX-1xxx)
Code | Message | Cause | Solution |
---|---|---|---|
FX-1001 | Database connection failed | Can't reach database | Check connection string |
FX-1002 | License expired | Time-limited license | Renew license |
FX-1003 | Port already in use | Port conflict | Change port or stop application |
FX-1004 | Insufficient memory | Out of RAM | Increase memory |
FX-1005 | Module load failed | Missing dependency | Reinstall |
Communication Errors (FX-2xxx)
Code | Message | Cause | Solution |
---|---|---|---|
FX-2001 | Device timeout | No response | Check network and device |
FX-2002 | Invalid response | Protocol mismatch | Verify protocol settings |
FX-2003 | Connection refused | Device rejecting | Check device config |
FX-2004 | Authentication failed | Wrong credentials | Verify username/password |
FX-2005 | Certificate error | Invalid cert | Update certificates |
Database Errors (FX-3xxx)
Code | Message | Cause | Solution |
---|---|---|---|
FX-3001 | Table not found | Missing table | Run database update |
FX-3002 | Constraint violation | Duplicate key | Check duplicates |
FX-3003 | Deadlock detected | Contention | Retry operation |
FX-3004 | Timeout expired | Slow query | Optimize or increase timeout |
FX-3005 | Disk full | No space | Free disk space |
Diagnostic Tools
Built-in Diagnostics
Runtime Information Monitor
- Access: Solution Center → Tools → Runtime Info
- Shows: Module status, memory, threads, connections
Communication Trace
- Access: Designer → Tools → Communication Trace
- Shows: Protocol messages, timing, errors
Log Analyzer
- Access: Solution Center → Tools → Log Analyzer
- Features: Filter by severity, search, export
Enable Verbose Logging
cmd
TStartup.exe /Solution:"Solution.tproj"
/SaveLog:3
/AutoRunDiagnostics:30
/LogDeviceWriteStartup
External Tools
powershell
# Check service status
Get-Service -Name "FrameworX*"
# Monitor process
Get-Process FrameworX* | Select CPU, WS, Handles
# Check network connections
Get-NetTCPConnection -LocalPort 3101
# Review event logs
Get-EventLog -LogName Application -Source FrameworX -Newest 50
Recovery Procedures
Database Recovery
Backup Restoration:
sql
RESTORE DATABASE FrameworX
FROM DISK = 'C:\Backup\FrameworX.bak'
WITH REPLACE
Database Repair:
sql
-- Check integrity
DBCC CHECKDB('FrameworX')
-- Repair minor issues
DBCC CHECKDB('FrameworX', REPAIR_REBUILD)
Solution Recovery
- Try opening in Designer read-only mode
- Export configuration to XML
- Create new solution
- Import XML configuration
- Test thoroughly
Emergency Recovery Mode
cmd
# Start in safe mode
FrameworX.exe /safe
# Reset to defaults
FrameworX.exe /reset
# Skip module loading
FrameworX.exe /nomodules
Preventive Maintenance
Daily Checks
- Review error logs
- Check device status
- Monitor performance
- Verify backups
Weekly Tasks
- Archive logs
- Review alarm statistics
- Check disk space
- Test redundancy
Monthly Maintenance
- Update software
- Optimize databases
- Review security logs
- Performance analysis
Getting Help
Before Contacting Support
- Document the issue (exact errors, steps to reproduce)
- Gather diagnostics (logs, system specs)
- Try standard remedies
Support Resources
- Documentation: docs.frameworkx.com
- Knowledge Base: Search error codes
- Community Forum: Share with other users
- Technical Support: Include diagnostic package
Child Pages
- SSL Configuration (Reference) - HTTPS/SSL setup and certificates
- Network Troubleshooting (Reference) - Port and firewall issues
- Performance Optimization (Reference) - Tuning and bottlenecks
- Error Code Reference (Reference) - Complete error code database
Children Display | ||||||
---|---|---|---|---|---|---|
|
MASTER (Reference)
...existing sections...
Troubleshooting and Diagnostics (Reference)
→ System Troubleshooting Guide
→ Connectivity Verification
→ Service Verification
→ Common Issues
→ Diagnostics Tools
→ Performance Tuning