This is a small tutorial that will guide you on how to compile and run the FTT-SE for the first time. After unpacking the source to a desired destination, run "make" from the project root. This compiles the ftt-se modules and a small application example. Under ./libs you will find the ftt-se library modules - "ftt-master.linux.a" and "ftt-slave.linux.a" With these ".a" and the headers located in ./includes you can compile an application on top of FTT-SE. An application example is located at src/apps/demo-simple. Just run: cd src/apps/demo-simple/ftt-se.L26 make This compiles the application. You'll find "ftt_master_run.linux" and "ftt_slave_run.linux" as the application executable files. Command line: ./ftt_master_run.linux ./ftt_slave_run.linux This application example uses 4 PCs with a dedicated Ethernet network card each, connected to a dedicated COTS switch. One Master node and 3 Slaves. The application must run as root (or sudo) in order to gain some privileges over the network card. You should also be aware that FTT-SE must run on a dedicated network. You cannot mix it with for instance a TCP/IP or UDP/IP stack. For this reason, remember to remove any IP configuration from the interface to reduce foreign interference. - ifname specifies the Linux network interface name - EC specifies the size of the Elementary cycle in milliseconds - app_no is the application number on the slave. The Master node runs alone in one node and the application runs on the other three nodes: 1,2 and 3. The slave nodes all use the same executable. It's the app_no parameters that distinguishes the nodes. So, the first to run is the master: sudo ./ftt_master_run.linux eth0 10 #running with EC's= 10ms on eth0 then in another PC: sudo ./ftt_master_run.linux eth0 1 #running on eth0 app_no=1 app_no=1 , what it does is registering a communication channel with some properties. This is an outside node that registers the communication that will occur in between 2 and 3. then in another PC: sudo ./ftt_master_run.linux eth0 2 #running on eth0 app_no=2 app_no=2 , what it does is registering node 2 as sender for the a communication channel. It then waits for the fully-created comm channel and only then it starts sending stuff. finally in another PC: sudo ./ftt_master_run.linux eth0 3 #running on eth0 app_no=3 app_no=3 , what it does is registering node 3 as receiver of the communication channel. It then waits for the fully-created comm channel and only then it starts receiving stuff. The channel is fully-created when nodes 1 2 and 3 are put to run. They can start on any random order.