diff --git a/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/af3.h b/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/af3.h
index 87b44f3f7bff3e1ec5b9468b09b6b339462d7ba2..674d3e451058cb583676685a8cd5866e497454e9 100644
--- a/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/af3.h
+++ b/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/af3.h
@@ -89,7 +89,7 @@ void af3_cc_send_double(char* signal, GEN_TYPE_double value, uint64_t timestamp)
 /** listener for received messages**/
 void af3_cc_listen(void (*listener_handler) (receive_message_t));
 /** Receive a message from control center. */
-void af3_cc_receive(void *listener_handler);
+void* af3_cc_receive(void *listener_handler);
 /** Deactivates the control center connection. */
 void af3_cc_deactivate();
 
diff --git a/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/control_center_downstream.h b/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/control_center_downstream.h
index 18e5c96ca4b620af0c73ca4195a608b0c32f15de..ee8c4640eae940797b5de423836ae72732bdac3a 100644
--- a/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/control_center_downstream.h
+++ b/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/control_center_downstream.h
@@ -27,7 +27,8 @@ typedef struct receive_message_t{
 
 /**
  * \brief Initialize the downstream communication for control center.
- * Currently just initializes a mutex.
+ * Currently just initializes a mutex and starts a thread listening for incoming
+ * messages.
  */
 void af3_cc_donwstream_init(void);
 
diff --git a/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/protocol_control_center.h b/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/protocol_control_center.h
index 768f86e8b02a36ecb651dc39a1ffb47928b75554..e8c1963cb1a3ef7023b398f16f3b0aedf914ba70 100644
--- a/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/protocol_control_center.h
+++ b/org.fortiss.af3.platform.raspberry/code-gen-hal/inc/af3pihal/protocol_control_center.h
@@ -27,6 +27,9 @@ void protocol_control_center_create(protocol_control_center_configuration_t* con
 /** Writes len bytes of the given text to the control center. */
 void protocol_control_center_write(char* text, size_t len);
 
+/** Reads at maximum len bytes from control center to the given buffer. */
+void protocol_control_center_receive(char* text, size_t len);
+
 /** Terminates the connection to the control center. */
 void protocol_control_center_terminate();
 
diff --git a/org.fortiss.af3.platform.raspberry/code-gen-hal/lib/libaf3pihal.a b/org.fortiss.af3.platform.raspberry/code-gen-hal/lib/libaf3pihal.a
index 2f838f910d33bb23ea49c461fa4102093071518f..f14044c5119e7d3d6b714604e2d1f9966283d63e 100644
Binary files a/org.fortiss.af3.platform.raspberry/code-gen-hal/lib/libaf3pihal.a and b/org.fortiss.af3.platform.raspberry/code-gen-hal/lib/libaf3pihal.a differ