Fairino offers an offline simulator (SIMmachine) for programming and testing without a physical robot. It supports joint control, motion simulation, I/O, and even Modbus communication. Here's a comprehensive guide to getting it running.
VMware (recommended by Fairino and the community)
Download: manual.fairino.support — SIMmachine
Requirements: VMware Workstation (Windows) or VMware Player (free)
Setup steps:
- Download and extract the SIMmachine VM image
- Open it in VMware Workstation
- Start the VM — it boots into the Fairino controller environment
- Find the VM's IP address using the included Windows utility script (often
192.168.30.128, but it's DHCP-assigned so yours may differ) - Open your browser and navigate to
http://[VM_IP]:8055 - Login with
admin/123
Pro tip: You can update the simulator firmware just like a real robot. Upload the firmware tar.gz through the WebApp. Tested: 3.8.x → 3.9.0 works. This lets you test on the exact firmware version you'll use in production.
Docker (works, but more effort)
Docker images exist but multiple users report difficulty getting them working on the first try.
Common issues and fixes:
- Robot controls don't respond (joints won't move): Check firewall settings — the position feedback uses port 9998. Add firewall exception or disable Windows Defender Firewall.
- "Not connected" indicator in WebApp: The lightning bolt icon shows a bar. Close everything and restart the container.
- Cannot load in browser: Add firewall exception for
192.168.56.2
Simulator limitations (both Docker and VMware)
- Cannot change robot model (FR5 → FR10 etc.) without accessing System → Custom Info, which requires a maintenance password. The simulator defaults to FR5.
- Some LUA functions behave differently: e.g.
PointTableUpdateLua()works on a real robot but may fail in the simulator. - Play/Stop/Pause buttons may not work in some versions (3.9.2, 3.9.3 reported). Fix: Create a waypoint named "Home" first — some versions fail silently if no points exist.
- Collision detection not simulated
- Real-time cycle times not simulated — moves complete faster than on real hardware
- No camera/vision simulation
Alternative: Offline programming with control box only
You can use a physical control box without the robot arm for offline programming:
- Connect your laptop to the control box via Ethernet
- Write and test LUA programs (motion commands won't execute but logic, I/O, and communication work)
- This is especially useful for testing PLC communication, Modbus registers, and program flow
One community member asked about this specifically because they wanted to program off-site instead of being at the robot location full-time.
Online simulator (limited)
Fairino had an online web-based simulator accessible via browser, but access requires credentials and is limited to a few servers running at a time. It's intended as a "first touch" experience. For serious development, install your own VMware or Docker instance.
Python SDK with simulator
You can connect the Python SDK to the simulator. Use the VM's IP address instead of the robot's physical IP. Make sure to use Python 3.12.0 and the SDK version that matches your simulator firmware.