This provides some support files for building APM on normal desktop systems. This makes it possible to use debugging tools (such as gdb and valgrind) on the APM code The code can then run on the PC instead of on the Arduino board and simulate the behaviour of the real system by integrating it with X-Plane of FlightGear to build a Software-In-the-Loop (SIL) simulator. It will use TCP sockets to communicate between the several software components (ArduPilot, GCS and Flight simulator). All the ArduPilot serial ports that get initialised map to separate TCP ports, which means you can separately test the telemetry port and the main serial port. It also makes using a debugger easier, as the debugger can use stdin/stdout. So the new usage is: 1) build with "make -f ../libraries/Desktop/Makefile.desktop hil" 2) start in a terminal like this: /tmp/ArduPlane.build/ArduPlane.elf it will say something like this: Serial port 0 on TCP port 5760 Waiting for connection .... 3) start a GCS, pointing it at localhost:5760. For the current mavproxy, you would use: mavproxy.py --master=tcp:localhost:5760 MichaelO has also added support in the GCS mission planner for TCP. You will see a TCP option in the drop down for the serial port, then choose port 5760.