diff --git a/quad/scripts/test_uart_comm.py b/quad/scripts/test_uart_comm.py
index bd4f36c0c9748300850eaf495dc4efdf3a7d3926..c02b017aaf3079ac1222ea71e67b9c8d2c2ac220 100755
--- a/quad/scripts/test_uart_comm.py
+++ b/quad/scripts/test_uart_comm.py
@@ -5,11 +5,10 @@ import time
 
 import serial
 
-def create_msg(main_type, subtype, msg_id, data):
+def create_msg(msg_type, msg_id, data):
     msg = bytes()
     msg += b'\xBE'
-    msg += main_type.to_bytes(1, 'little')
-    msg += subtype.to_bytes(1, 'little')
+    msg += msg_type.to_bytes(2, 'little')
     msg += msg_id.to_bytes(2, 'little')
     msg += len(data).to_bytes(2, 'little')
     msg += data
@@ -22,7 +21,7 @@ def create_msg(main_type, subtype, msg_id, data):
 
 def create_test_packet(size=8):
     data = bytes((i % 256 for i in range(size)))
-    return create_msg(0, 1, 0, data)
+    return create_msg(1, 0, data)
 
 def read_packet(ser):
     header = ser.read(7)
@@ -33,7 +32,7 @@ def read_packet(ser):
 
 def query_received(ser):
     # Send request
-    query_msg = create_msg(0, 2, 0, b'')
+    query_msg = create_msg(2, 0, b'')
     ser.write(query_msg)
     ser.flush()
     
@@ -46,7 +45,7 @@ def query_received(ser):
 if __name__ == '__main__':
     with serial.Serial('/dev/ttyUSB0', 921600, timeout=5) as ser:
         ser.reset_input_buffer()
-        ser.write(create_test_packet(8))
+        ser.write(create_test_packet(240))
         ser.flush()
         print(query_received(ser))
 
diff --git a/quad/scripts/test_zybo_uart.py b/quad/scripts/test_zybo_uart.py
index 0ccd93c66f47df11e9ad87651e1299ca56f8453c..4b0bfb86775e5c19f99fccc5069208aa304a040c 100755
--- a/quad/scripts/test_zybo_uart.py
+++ b/quad/scripts/test_zybo_uart.py
@@ -5,10 +5,11 @@ import time
 
 import serial
 
-if __name__ == '__main__':
+def do_test():
     with serial.Serial('/dev/ttyUSB0', 921600, timeout=5) as ser:
         ser.reset_input_buffer()
-        send_bytes = b'sdflouirgaorifa;eofija;ogijasfhluiasflawieufzxcvwe'
+        send_bytes = bytes(i % 256 for i in range(128))
+        #send_bytes = b'sdjjjjjjjjjj9ssssssssssssnnnnnnnnnflouirgaorifa;eofija;ogijasfhluiasflawieufzxcvwe'
         ser.write(send_bytes)
         print("Sending {} bytes".format(len(send_bytes)))
         time.sleep(1)
@@ -21,4 +22,8 @@ if __name__ == '__main__':
         else:
             print(recv_bytes);
             print("Test Failed.")
-
+if __name__ == '__main__':
+    for i in range(1):
+        print("Test ", i)
+        do_test()
+        time.sleep(1)
diff --git a/quad/src/quad_app/communication.c b/quad/src/quad_app/communication.c
index 619257cb062e480d32146abaeecceba3021cc1cc..c0d37659e29c0b8145b00e15f9a3302e2ef343ae 100644
--- a/quad/src/quad_app/communication.c
+++ b/quad/src/quad_app/communication.c
@@ -83,11 +83,12 @@ int process_packet(modular_structs_t *structs) {
   meta.msg_type = packet[2] << 8 | packet[1];
   meta.msg_id = packet[4] << 8 | packet[3];
   meta.data_len = packet[6] << 8 | packet[5];
-  unsigned char packet_checksum = packet[7+meta.data_len];
 
   // Call appropriate function for packet
-  (* (MessageTypes[meta.msg_type].functionPtr))(structs,&meta,&packet[PACKET_HEADER_SIZE], meta.data_len);
-
+  command_cb* func_ptr = MessageTypes[meta.msg_type].functionPtr;
+  if (meta.msg_type < MAX_TYPE_ID && func_ptr) {
+	  (* func_ptr)(structs,&meta,&packet[PACKET_HEADER_SIZE], meta.data_len);
+  }
   // Done processing packets, reset state
   bytes_recv = 0;
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/.cproject b/quad/xsdk_workspace/modular_quad_pid/.cproject
index 05c03615ec7129db44a41ecc02a444864fd121e8..f17eeafddf9cc8821dcdd8ee953460b8a2f47b55 100644
--- a/quad/xsdk_workspace/modular_quad_pid/.cproject
+++ b/quad/xsdk_workspace/modular_quad_pid/.cproject
@@ -27,15 +27,15 @@
 							<tool id="xilinx.gnu.arm.c.toolchain.compiler.debug.177835003" name="ARM gcc compiler" superClass="xilinx.gnu.arm.c.toolchain.compiler.debug">
 								<option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.1900496019" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" value="gnu.c.optimization.level.none" valueType="enumerated"/>
 								<option id="xilinx.gnu.compiler.option.debugging.level.1207856754" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
-								<option id="xilinx.gnu.compiler.inferred.swplatform.includes.2123463819" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath">
-									<listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/>
-								</option>
+								<option id="xilinx.gnu.compiler.inferred.swplatform.includes.2123463819" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"/>
 								<option id="xilinx.gnu.compiler.symbols.defined.1696008720" name="Defined symbols (-D)" superClass="xilinx.gnu.compiler.symbols.defined"/>
 								<option id="xilinx.gnu.compiler.dircategory.includes.1211006365" name="Include Paths" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath">
 									<listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/>
 									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/computation_graph}&quot;"/>
 									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/quad_app}&quot;"/>
 									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/queue}&quot;"/>
+									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/commands}&quot;"/>
+									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/graph_blocks}&quot;"/>
 								</option>
 								<inputType id="xilinx.gnu.arm.c.compiler.input.909725989" name="C source files" superClass="xilinx.gnu.arm.c.compiler.input"/>
 							</tool>
@@ -108,7 +108,7 @@
 							<tool id="xilinx.gnu.arm.c.toolchain.compiler.release.85270120" name="ARM gcc compiler" superClass="xilinx.gnu.arm.c.toolchain.compiler.release">
 								<option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.515686013" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/>
 								<option id="xilinx.gnu.compiler.option.debugging.level.1121150517" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
-								<option id="xilinx.gnu.compiler.inferred.swplatform.includes.687694973" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"/>
+								<option id="xilinx.gnu.compiler.inferred.swplatform.includes.687694973" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes"/>
 								<option id="xilinx.gnu.compiler.symbols.defined.1562495938" name="Defined symbols (-D)" superClass="xilinx.gnu.compiler.symbols.defined" valueType="definedSymbols">
 									<listOptionValue builtIn="false" value="NDEBUG=1"/>
 								</option>
@@ -118,6 +118,7 @@
 									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/quad_app}&quot;"/>
 									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/queue}&quot;"/>
 									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/commands}&quot;"/>
+									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/modular_quad_pid/ext/graph_blocks}&quot;"/>
 								</option>
 								<inputType id="xilinx.gnu.arm.c.compiler.input.846429887" name="C source files" superClass="xilinx.gnu.arm.c.compiler.input"/>
 							</tool>
diff --git a/quad/xsdk_workspace/modular_quad_pid/.project b/quad/xsdk_workspace/modular_quad_pid/.project
index e7182be132855e2605c7959795094709746b4d04..734130fb55d695ee28de0b41cc6b8f0f4bccd05e 100644
--- a/quad/xsdk_workspace/modular_quad_pid/.project
+++ b/quad/xsdk_workspace/modular_quad_pid/.project
@@ -35,6 +35,11 @@
 			<type>2</type>
 			<locationURI>QUAD_LOC/src/computation_graph</locationURI>
 		</link>
+		<link>
+			<name>ext/graph_blocks</name>
+			<type>2</type>
+			<location>/local/ucart/MicroCART_17-18/quad/src/graph_blocks</location>
+		</link>
 		<link>
 			<name>ext/quad_app</name>
 			<type>2</type>
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/commands/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/commands/subdir.mk
new file mode 100644
index 0000000000000000000000000000000000000000..f7ba0a3012665b52d4f33945aeb8058b155fa295
--- /dev/null
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/commands/subdir.mk
@@ -0,0 +1,24 @@
+################################################################################
+# Automatically-generated file. Do not edit!
+################################################################################
+
+# Add inputs and outputs from these tool invocations to the build variables 
+C_SRCS += \
+/local/ucart/MicroCART_17-18/quad/src/commands/commands.c 
+
+OBJS += \
+./ext/commands/commands.o 
+
+C_DEPS += \
+./ext/commands/commands.d 
+
+
+# Each subdirectory must supply rules for building sources it contributes
+ext/commands/commands.o: /local/ucart/MicroCART_17-18/quad/src/commands/commands.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/computation_graph/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/computation_graph/subdir.mk
index 5ca516e5ff888247e3f9eb3163662686f2e09f4f..6e59c9cee0577a04e7ea23b17ff244588d9e762d 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/computation_graph/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/computation_graph/subdir.mk
@@ -4,80 +4,20 @@
 
 # Add inputs and outputs from these tool invocations to the build variables 
 C_SRCS += \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/computation_graph.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_accumulator.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_add.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_constant.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_gain.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_mult.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_pow.c 
+/local/ucart/MicroCART_17-18/quad/src/computation_graph/computation_graph.c 
 
 OBJS += \
-./ext/computation_graph/computation_graph.o \
-./ext/computation_graph/node_accumulator.o \
-./ext/computation_graph/node_add.o \
-./ext/computation_graph/node_constant.o \
-./ext/computation_graph/node_gain.o \
-./ext/computation_graph/node_mult.o \
-./ext/computation_graph/node_pow.o 
+./ext/computation_graph/computation_graph.o 
 
 C_DEPS += \
-./ext/computation_graph/computation_graph.d \
-./ext/computation_graph/node_accumulator.d \
-./ext/computation_graph/node_add.d \
-./ext/computation_graph/node_constant.d \
-./ext/computation_graph/node_gain.d \
-./ext/computation_graph/node_mult.d \
-./ext/computation_graph/node_pow.d 
+./ext/computation_graph/computation_graph.d 
 
 
 # Each subdirectory must supply rules for building sources it contributes
 ext/computation_graph/computation_graph.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/computation_graph.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_accumulator.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_accumulator.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_add.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_add.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_constant.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_constant.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_gain.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_gain.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_mult.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_mult.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_pow.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_pow.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/graph_blocks/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/graph_blocks/subdir.mk
new file mode 100644
index 0000000000000000000000000000000000000000..2bb4dfce904ba88353ba7f556474171b44d79857
--- /dev/null
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/graph_blocks/subdir.mk
@@ -0,0 +1,114 @@
+################################################################################
+# Automatically-generated file. Do not edit!
+################################################################################
+
+# Add inputs and outputs from these tool invocations to the build variables 
+C_SRCS += \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/graph_blocks.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_accumulator.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_add.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_bounds.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_constant.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_gain.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mixer.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mult.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pid.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pow.c 
+
+OBJS += \
+./ext/graph_blocks/graph_blocks.o \
+./ext/graph_blocks/node_accumulator.o \
+./ext/graph_blocks/node_add.o \
+./ext/graph_blocks/node_bounds.o \
+./ext/graph_blocks/node_constant.o \
+./ext/graph_blocks/node_gain.o \
+./ext/graph_blocks/node_mixer.o \
+./ext/graph_blocks/node_mult.o \
+./ext/graph_blocks/node_pid.o \
+./ext/graph_blocks/node_pow.o 
+
+C_DEPS += \
+./ext/graph_blocks/graph_blocks.d \
+./ext/graph_blocks/node_accumulator.d \
+./ext/graph_blocks/node_add.d \
+./ext/graph_blocks/node_bounds.d \
+./ext/graph_blocks/node_constant.d \
+./ext/graph_blocks/node_gain.d \
+./ext/graph_blocks/node_mixer.d \
+./ext/graph_blocks/node_mult.d \
+./ext/graph_blocks/node_pid.d \
+./ext/graph_blocks/node_pow.d 
+
+
+# Each subdirectory must supply rules for building sources it contributes
+ext/graph_blocks/graph_blocks.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/graph_blocks.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_accumulator.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_accumulator.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_add.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_add.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_bounds.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_bounds.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_constant.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_constant.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_gain.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_gain.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_mixer.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mixer.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_mult.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mult.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_pid.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pid.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_pow.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pow.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/quad_app/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/quad_app/subdir.mk
index aa98b08cd518adce7126a0d547300de93bc0dae8..c3cc8861eb96ad0f808c5de24c00d27b8d74a657 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/quad_app/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/quad_app/subdir.mk
@@ -7,7 +7,6 @@ C_SRCS += \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/PID.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/actuator_command_processing.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/callbacks.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/commands.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/communication.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/control_algorithm.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/controllers.c \
@@ -17,9 +16,6 @@ C_SRCS += \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/log_data.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/mio7_led.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/new_log_data.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/node_bounds.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/node_mixer.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/node_pid.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/packet_processing.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/quad_app.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/send_actuator_commands.c \
@@ -34,7 +30,6 @@ OBJS += \
 ./ext/quad_app/PID.o \
 ./ext/quad_app/actuator_command_processing.o \
 ./ext/quad_app/callbacks.o \
-./ext/quad_app/commands.o \
 ./ext/quad_app/communication.o \
 ./ext/quad_app/control_algorithm.o \
 ./ext/quad_app/controllers.o \
@@ -44,9 +39,6 @@ OBJS += \
 ./ext/quad_app/log_data.o \
 ./ext/quad_app/mio7_led.o \
 ./ext/quad_app/new_log_data.o \
-./ext/quad_app/node_bounds.o \
-./ext/quad_app/node_mixer.o \
-./ext/quad_app/node_pid.o \
 ./ext/quad_app/packet_processing.o \
 ./ext/quad_app/quad_app.o \
 ./ext/quad_app/send_actuator_commands.o \
@@ -61,7 +53,6 @@ C_DEPS += \
 ./ext/quad_app/PID.d \
 ./ext/quad_app/actuator_command_processing.d \
 ./ext/quad_app/callbacks.d \
-./ext/quad_app/commands.d \
 ./ext/quad_app/communication.d \
 ./ext/quad_app/control_algorithm.d \
 ./ext/quad_app/controllers.d \
@@ -71,9 +62,6 @@ C_DEPS += \
 ./ext/quad_app/log_data.d \
 ./ext/quad_app/mio7_led.d \
 ./ext/quad_app/new_log_data.d \
-./ext/quad_app/node_bounds.d \
-./ext/quad_app/node_mixer.d \
-./ext/quad_app/node_pid.d \
 ./ext/quad_app/packet_processing.d \
 ./ext/quad_app/quad_app.d \
 ./ext/quad_app/send_actuator_commands.d \
@@ -89,175 +77,147 @@ C_DEPS += \
 ext/quad_app/PID.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/PID.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/actuator_command_processing.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/actuator_command_processing.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/callbacks.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/callbacks.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/commands.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/commands.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/communication.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/communication.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/control_algorithm.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/control_algorithm.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/controllers.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/controllers.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/conversion.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/conversion.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/iic_utils.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/iic_utils.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/initialize_components.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/initialize_components.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/log_data.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/log_data.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/mio7_led.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/mio7_led.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/new_log_data.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/new_log_data.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/node_bounds.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/node_bounds.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/node_mixer.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/node_mixer.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/node_pid.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/node_pid.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/packet_processing.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/packet_processing.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/quad_app.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/quad_app.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/send_actuator_commands.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/send_actuator_commands.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/sensor.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/sensor.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/sensor_processing.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/sensor_processing.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/timer.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/timer.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/update_gui.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/update_gui.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/user_input.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/user_input.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/util.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/util.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/queue/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/queue/subdir.mk
index 62a2b5e38e4227b13d52b1f71a3d59ca2c1154a7..8141db2ad3d477fa611ab8cb815bf102a059e2e3 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Debug/ext/queue/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/ext/queue/subdir.mk
@@ -17,7 +17,7 @@ C_DEPS += \
 ext/queue/queue.o: /local/ucart/MicroCART_17-18/quad/src/queue/queue.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/makefile b/quad/xsdk_workspace/modular_quad_pid/Debug/makefile
index 1541d5523584e2da44d62a4297e85fb6d6182adf..928243ba307f1025a6d169fd83c3abad121074c9 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Debug/makefile
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/makefile
@@ -11,7 +11,9 @@ RM := rm -rf
 -include src/subdir.mk
 -include ext/queue/subdir.mk
 -include ext/quad_app/subdir.mk
+-include ext/graph_blocks/subdir.mk
 -include ext/computation_graph/subdir.mk
+-include ext/commands/subdir.mk
 -include subdir.mk
 -include objects.mk
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/sources.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/sources.mk
index 2ab3ec257c3d1145b8c6781b871c0e3a9e1f6f8d..9b76509427183193e779ddad577b92f06904d6a9 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Debug/sources.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/sources.mk
@@ -19,5 +19,7 @@ SUBDIRS := \
 src \
 ext/queue \
 ext/quad_app \
+ext/graph_blocks \
 ext/computation_graph \
+ext/commands \
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Debug/src/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Debug/src/subdir.mk
index ad5162ebfedbaea78a20e0ab74d85dd782ccb6dc..342be9a4df75c540826513b7781d20f55cec7e6e 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Debug/src/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Debug/src/subdir.mk
@@ -53,7 +53,7 @@ C_DEPS += \
 src/%.o: ../src/%.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -c -fmessage-length=0 -I../../system_bsp/ps7_cortexa9_0/include -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -Wall -O0 -g3 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/ext/commands/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Release/ext/commands/subdir.mk
index 9312d268a581c045387d6d68343633fad393d4a9..8cdbd185e5ccf1c0be99a0d8fa96060a34e2b513 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/ext/commands/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/ext/commands/subdir.mk
@@ -17,7 +17,7 @@ C_DEPS += \
 ext/commands/commands.o: /local/ucart/MicroCART_17-18/quad/src/commands/commands.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/ext/computation_graph/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Release/ext/computation_graph/subdir.mk
index 6dce6b3f533b61f3a1a0797e31047e15e08f9814..b7232693ee94ab6bc1248c568cabec7ff1c42604 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/ext/computation_graph/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/ext/computation_graph/subdir.mk
@@ -4,80 +4,20 @@
 
 # Add inputs and outputs from these tool invocations to the build variables 
 C_SRCS += \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/computation_graph.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_accumulator.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_add.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_constant.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_gain.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_mult.c \
-/local/ucart/MicroCART_17-18/quad/src/computation_graph/node_pow.c 
+/local/ucart/MicroCART_17-18/quad/src/computation_graph/computation_graph.c 
 
 OBJS += \
-./ext/computation_graph/computation_graph.o \
-./ext/computation_graph/node_accumulator.o \
-./ext/computation_graph/node_add.o \
-./ext/computation_graph/node_constant.o \
-./ext/computation_graph/node_gain.o \
-./ext/computation_graph/node_mult.o \
-./ext/computation_graph/node_pow.o 
+./ext/computation_graph/computation_graph.o 
 
 C_DEPS += \
-./ext/computation_graph/computation_graph.d \
-./ext/computation_graph/node_accumulator.d \
-./ext/computation_graph/node_add.d \
-./ext/computation_graph/node_constant.d \
-./ext/computation_graph/node_gain.d \
-./ext/computation_graph/node_mult.d \
-./ext/computation_graph/node_pow.d 
+./ext/computation_graph/computation_graph.d 
 
 
 # Each subdirectory must supply rules for building sources it contributes
 ext/computation_graph/computation_graph.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/computation_graph.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_accumulator.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_accumulator.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_add.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_add.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_constant.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_constant.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_gain.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_gain.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_mult.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_mult.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/computation_graph/node_pow.o: /local/ucart/MicroCART_17-18/quad/src/computation_graph/node_pow.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/ext/graph_blocks/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Release/ext/graph_blocks/subdir.mk
new file mode 100644
index 0000000000000000000000000000000000000000..eb92d2e47df69bfc075f7f9f5e9eecc8d7a9f365
--- /dev/null
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/ext/graph_blocks/subdir.mk
@@ -0,0 +1,114 @@
+################################################################################
+# Automatically-generated file. Do not edit!
+################################################################################
+
+# Add inputs and outputs from these tool invocations to the build variables 
+C_SRCS += \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/graph_blocks.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_accumulator.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_add.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_bounds.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_constant.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_gain.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mixer.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mult.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pid.c \
+/local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pow.c 
+
+OBJS += \
+./ext/graph_blocks/graph_blocks.o \
+./ext/graph_blocks/node_accumulator.o \
+./ext/graph_blocks/node_add.o \
+./ext/graph_blocks/node_bounds.o \
+./ext/graph_blocks/node_constant.o \
+./ext/graph_blocks/node_gain.o \
+./ext/graph_blocks/node_mixer.o \
+./ext/graph_blocks/node_mult.o \
+./ext/graph_blocks/node_pid.o \
+./ext/graph_blocks/node_pow.o 
+
+C_DEPS += \
+./ext/graph_blocks/graph_blocks.d \
+./ext/graph_blocks/node_accumulator.d \
+./ext/graph_blocks/node_add.d \
+./ext/graph_blocks/node_bounds.d \
+./ext/graph_blocks/node_constant.d \
+./ext/graph_blocks/node_gain.d \
+./ext/graph_blocks/node_mixer.d \
+./ext/graph_blocks/node_mult.d \
+./ext/graph_blocks/node_pid.d \
+./ext/graph_blocks/node_pow.d 
+
+
+# Each subdirectory must supply rules for building sources it contributes
+ext/graph_blocks/graph_blocks.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/graph_blocks.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_accumulator.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_accumulator.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_add.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_add.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_bounds.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_bounds.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_constant.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_constant.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_gain.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_gain.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_mixer.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mixer.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_mult.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_mult.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_pid.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pid.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+ext/graph_blocks/node_pow.o: /local/ucart/MicroCART_17-18/quad/src/graph_blocks/node_pow.c
+	@echo 'Building file: $<'
+	@echo 'Invoking: ARM gcc compiler'
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	@echo 'Finished building: $<'
+	@echo ' '
+
+
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/ext/quad_app/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Release/ext/quad_app/subdir.mk
index 49e9e68601913023ef671e6a92544b449bd1cb8d..d549e80dffda190f971af055c1a0540a81b5d411 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/ext/quad_app/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/ext/quad_app/subdir.mk
@@ -16,9 +16,6 @@ C_SRCS += \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/log_data.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/mio7_led.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/new_log_data.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/node_bounds.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/node_mixer.c \
-/local/ucart/MicroCART_17-18/quad/src/quad_app/node_pid.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/packet_processing.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/quad_app.c \
 /local/ucart/MicroCART_17-18/quad/src/quad_app/send_actuator_commands.c \
@@ -42,9 +39,6 @@ OBJS += \
 ./ext/quad_app/log_data.o \
 ./ext/quad_app/mio7_led.o \
 ./ext/quad_app/new_log_data.o \
-./ext/quad_app/node_bounds.o \
-./ext/quad_app/node_mixer.o \
-./ext/quad_app/node_pid.o \
 ./ext/quad_app/packet_processing.o \
 ./ext/quad_app/quad_app.o \
 ./ext/quad_app/send_actuator_commands.o \
@@ -68,9 +62,6 @@ C_DEPS += \
 ./ext/quad_app/log_data.d \
 ./ext/quad_app/mio7_led.d \
 ./ext/quad_app/new_log_data.d \
-./ext/quad_app/node_bounds.d \
-./ext/quad_app/node_mixer.d \
-./ext/quad_app/node_pid.d \
 ./ext/quad_app/packet_processing.d \
 ./ext/quad_app/quad_app.d \
 ./ext/quad_app/send_actuator_commands.d \
@@ -86,168 +77,147 @@ C_DEPS += \
 ext/quad_app/PID.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/PID.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/actuator_command_processing.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/actuator_command_processing.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/callbacks.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/callbacks.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/communication.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/communication.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/control_algorithm.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/control_algorithm.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/controllers.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/controllers.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/conversion.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/conversion.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/iic_utils.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/iic_utils.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/initialize_components.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/initialize_components.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/log_data.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/log_data.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/mio7_led.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/mio7_led.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/new_log_data.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/new_log_data.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/node_bounds.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/node_bounds.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/node_mixer.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/node_mixer.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-ext/quad_app/node_pid.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/node_pid.c
-	@echo 'Building file: $<'
-	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/packet_processing.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/packet_processing.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/quad_app.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/quad_app.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/send_actuator_commands.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/send_actuator_commands.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/sensor.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/sensor.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/sensor_processing.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/sensor_processing.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/timer.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/timer.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/update_gui.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/update_gui.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/user_input.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/user_input.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
 ext/quad_app/util.o: /local/ucart/MicroCART_17-18/quad/src/quad_app/util.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/ext/queue/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Release/ext/queue/subdir.mk
index 1db0d33ebe7dfaff15c3066fedf02ba4672c6320..a595cf53e1bd98da9251d9166acf07f43e6f6651 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/ext/queue/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/ext/queue/subdir.mk
@@ -17,7 +17,7 @@ C_DEPS += \
 ext/queue/queue.o: /local/ucart/MicroCART_17-18/quad/src/queue/queue.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/makefile b/quad/xsdk_workspace/modular_quad_pid/Release/makefile
index 58cede132248bbb0e22fcd13434f60059e201748..928243ba307f1025a6d169fd83c3abad121074c9 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/makefile
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/makefile
@@ -11,6 +11,7 @@ RM := rm -rf
 -include src/subdir.mk
 -include ext/queue/subdir.mk
 -include ext/quad_app/subdir.mk
+-include ext/graph_blocks/subdir.mk
 -include ext/computation_graph/subdir.mk
 -include ext/commands/subdir.mk
 -include subdir.mk
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/sources.mk b/quad/xsdk_workspace/modular_quad_pid/Release/sources.mk
index ecb64bdb4bf690ba72af5a96d30c9ad061382945..9b76509427183193e779ddad577b92f06904d6a9 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/sources.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/sources.mk
@@ -19,6 +19,7 @@ SUBDIRS := \
 src \
 ext/queue \
 ext/quad_app \
+ext/graph_blocks \
 ext/computation_graph \
 ext/commands \
 
diff --git a/quad/xsdk_workspace/modular_quad_pid/Release/src/subdir.mk b/quad/xsdk_workspace/modular_quad_pid/Release/src/subdir.mk
index 4b28de568c73d030492ff8b52b3fad138be18540..d73a8e4edf8f1be1d1cb7bbc2866698e8091f6d0 100644
--- a/quad/xsdk_workspace/modular_quad_pid/Release/src/subdir.mk
+++ b/quad/xsdk_workspace/modular_quad_pid/Release/src/subdir.mk
@@ -53,7 +53,7 @@ C_DEPS += \
 src/%.o: ../src/%.c
 	@echo 'Building file: $<'
 	@echo 'Invoking: ARM gcc compiler'
-	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
+	arm-xilinx-eabi-gcc -DNDEBUG=1 -Wall -O2 -I../../system_bsp/ps7_cortexa9_0/include -I"/local/ucart/MicroCART_17-18/quad/src/computation_graph" -I"/local/ucart/MicroCART_17-18/quad/src/quad_app" -I"/local/ucart/MicroCART_17-18/quad/src/queue" -I"/local/ucart/MicroCART_17-18/quad/src/commands" -I"/local/ucart/MicroCART_17-18/quad/src/graph_blocks" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o "$@" "$<"
 	@echo 'Finished building: $<'
 	@echo ' '