diff --git a/library/IPA_Emulation.ttcn b/library/IPA_Emulation.ttcn
index 146c421..e9894d1 100644
--- a/library/IPA_Emulation.ttcn
+++ b/library/IPA_Emulation.ttcn
@@ -9,10 +9,10 @@
 
 import from MGCP_Types all;
 
-/*
 modulepar {
+	/* Use Osmocom extended IPA mux header */
+	boolean mp_ipa_mgcp_uses_osmo_ext := true;
 }
-*/
 
 type enumerated IpaMode {
 	IPA_MODE_CLIENT,
@@ -203,6 +203,14 @@
 	}
 }
 
+private function f_mgcp_to_ud(octetstring payload) runs on IPA_Emulation_CT return ASP_IPA_Unitdata {
+	if (mp_ipa_mgcp_uses_osmo_ext) {
+		return valueof(t_ASP_IPA_UD(IPAC_PROTO_MGCP_OLD, payload));
+	} else {
+		return valueof(t_ASP_IPA_UD(IPAC_PROTO_OSMO, payload, IPAC_PROTO_EXT_MGCP));
+	}
+}
+
 private function ScanEvents() runs on IPA_Emulation_CT {
 	var IPA_RecvFrom ipa_rx;
 	var ASP_IPA_Unitdata ipa_ud;
@@ -265,13 +273,13 @@
 
 		/* Received MGCP -> down into IPA */
 		[] IPA_MGCP_PORT.receive(MgcpCommand:?) -> value mgcp_cmd {
-			payload := char2oct(enc_MgcpResponse(mgcp_rsp));
-			ipa_ud := valueof(t_ASP_IPA_UD(IPAC_PROTO_OSMO, payload, IPAC_PROTO_EXT_MGCP));
+			payload := char2oct(enc_MgcpCommand(mgcp_cmd));
+			ipa_ud := f_mgcp_to_ud(payload);
 			IPA_PORT.send(f_from_asp(g_ipa_conn_id, ipa_ud));
 		}
 		[] IPA_MGCP_PORT.receive(MgcpResponse:?) -> value mgcp_rsp {
 			payload := char2oct(enc_MgcpResponse(mgcp_rsp));
-			ipa_ud := valueof(t_ASP_IPA_UD(IPAC_PROTO_OSMO, payload, IPAC_PROTO_EXT_MGCP));
+			ipa_ud := f_mgcp_to_ud(payload);
 			IPA_PORT.send(f_from_asp(g_ipa_conn_id, ipa_ud));
 		}
 
