diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_AP.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_AP.pnl
index 7c24ac33635202ad7b8194209604517277770fb2..c5d8af1f201dfca29c19641ec23039ed18b3c7b4 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_AP.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_AP.pnl
@@ -1,7 +1,7 @@
 V 10
 1
 LANG:1 10 Subrack_AP
-PANEL,360 230 184 193 N "_3DFace" 2
+PANEL,306 149 184 193 N "_3DFace" 2
 "$APNr"
 "$datapoint"
 "main()
@@ -13,7 +13,8 @@ PANEL,360 230 184 193 N "_3DFace" 2
   {
     dpConnect(\"ControlGUIAP\", $datapoint + \"_Board0_AP\"+ $APNr +\".temperature:_online.._value\",
                               $datapoint + \"_Board0_AP\"+ $APNr +\".status:_online.._value\",
-                              $datapoint + \"_Board0_AP\"+ $APNr +\".status:_online.._invalid\");
+                              $datapoint + \"_Board0_AP\"+ $APNr +\".status:_online.._invalid\",
+                              $datapoint + \"_Board0_AP\"+ $APNr +\".functionality:_online.._value\");
     setValue(\"output_packetsReceived\", \"editable\", FALSE);
     dpConnect(\"showVersion\", $datapoint + \"_Board0_AP\"+ $APNr +\".version:_online.._value\",
                              $datapoint + \"_Board0_AP\"+ $APNr +\".version:_online.._invalid\");
@@ -37,7 +38,8 @@ PANEL,360 230 184 193 N "_3DFace" 2
 /////////////////////////////////////////////////////////////////////
 ControlGUIAP(string dp1, float temperature,
              string dp2, int status,
-             string dp3, bool invalid)
+             string dp3, bool invalid,
+             string dp4, bool functionality)
 {
   if(!invalid)
   {
@@ -46,12 +48,12 @@ ControlGUIAP(string dp1, float temperature,
     setValue(\"txt_temperature\", \"visible\", TRUE);
   
     // 2. Calculate the Backcolor of the AP
-    if (status == 0)
+    if (status >= 0)
     {
       setValue(\"rect_AP\", \"backCol\", \"Lofar_device_active\");
       setValue(\"btn_details\", \"backCol\", \"Lofar_device_active\");
     }
-    else if (status == 1)
+    else if (status < 0)
 	  {
       setValue(\"rect_AP\", \"backCol\", \"Red\");
       setValue(\"btn_details\", \"backCol\", \"Red\");
@@ -61,6 +63,16 @@ ControlGUIAP(string dp1, float temperature,
       setValue(\"rect_AP\", \"backCol\", \"Red\");
       setValue(\"btn_details\", \"backCol\", \"Red\");
     }
+    if(functionality)
+    {
+      setValue(\"rect_AP\", \"foreCol\", \"_WindowText\");
+    	setValue(\"rect_AP\", \"border\", \"[solid,oneColor,JoinMiter,CapNotLast,1]\");
+    }
+    else
+    {
+      setValue(\"rect_AP\", \"foreCol\", \"Red\");
+    	setValue(\"rect_AP\", \"border\", \"[solid,oneColor,JoinMiter,CapNotLast,3]\");
+    }
   }
   else
   {
diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna.pnl
index 86d2501a898f2a537ec0bdf65cc0c2102114c126..75b281492b1e4afe6d0ee2ccf5e842723c6d70c5 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna.pnl
@@ -1,11 +1,15 @@
 V 10
 1
 LANG:1 8 (NoName)
-PANEL,287 170 107 164 N "_3DFace" 3
+PANEL,306 149 107 164 N "_3DFace" 3
 "$APNr"
 "$RCUNr"
 "$datapoint"
-EEE E E 1 -1 -1 0  28 79
+"main()
+{
+
+}" 0
+EE E E 1 -1 -1 0  28 79
 "" 0 1
 EE 2
 "CBRef""1"
@@ -50,7 +54,8 @@ dyn_errClass err;
 
   dpConnect(\"EP_setBackColorCB\", 
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA_Maintenance.status:_online.._value\",
-            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.status:_online.._value\");
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.status:_online.._value\",
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.functionality:_online.._value\");
   err = getLastError();
   if (dynlen(err) > 0)
     setValue(\"\", \"color\", \"_dpdoesnotexist\");
@@ -64,16 +69,27 @@ dyn_errClass err;
 
 
 EP_setBackColorCB(string dpSource1, unsigned LFA_main,
-									string dpSource2, unsigned LFA_stat)
+									string dpSource2, int LFA_stat,
+									string dpSource3, bool functionality)
 {
 	setValue(\"icon_maintenance_LFA\", \"visible\", (LFA_main == 1));
 	//Set background color of rectangle [RCU]
   if (LFA_main == 1)
   	setValue(\"Ellipse_LFA\", \"backCol\", \"Lofar_maintenance\");
-  else if (LFA_stat==1)
+  else if (LFA_stat<0)
       setValue(\"Ellipse_LFA\", \"backCol\", \"Red\");
   else
     setValue(\"Ellipse_LFA\", \"backCol\", \"Lofar_device_active\");
+  if(functionality)
+  {
+    setValue(\"Ellipse_LFA\", \"foreCol\", \"_WindowText\");
+  	setValue(\"Ellipse_LFA\", \"border\", \"[solid,oneColor,JoinMiter,CapNotLast,1]\");
+  }
+  else
+  {
+    setValue(\"Ellipse_LFA\", \"foreCol\", \"Red\");
+  	setValue(\"Ellipse_LFA\", \"border\", \"[solid,oneColor,JoinMiter,CapNotLast,3]\");
+  }
 }
 // SimpleCtrlScriptEnd {EP_setBackColor}
 " 0
@@ -112,7 +128,8 @@ dyn_errClass err;
 
   dpConnect(\"EP_setBackColorCB\", 
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA_Maintenance.status:_online.._value\",
-            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.status:_online.._value\");
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.status:_online.._value\",
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.functionality:_online.._value\");
   err = getLastError();
   if (dynlen(err) > 0)
     setValue(\"\", \"color\", \"_dpdoesnotexist\");
@@ -122,7 +139,8 @@ dyn_errClass err;
 
 
 EP_setBackColorCB(string dpSource1, unsigned HFA_main,
-									string dpSource2, unsigned HFA_stat)
+									string dpSource2, int HFA_stat,
+									string dpSource3, bool functionality)
 {
 	setValue(\"icon_maintenance_HFA\", \"visible\", (HFA_main == 1));
 	//Set background color of rectangle [RCU]
@@ -132,6 +150,16 @@ EP_setBackColorCB(string dpSource1, unsigned HFA_main,
       setValue(\"rect_HFA\", \"backCol\", \"Red\");
   else
     setValue(\"rect_HFA\", \"backCol\", \"Lofar_device_active\");
+  if(functionality)
+  {
+    setValue(\"rect_HFA\", \"foreCol\", \"_WindowText\");
+  	setValue(\"rect_HFA\", \"border\", \"[solid,oneColor,JoinMiter,CapNotLast,1]\");
+  }
+  else
+  {
+    setValue(\"rect_HFA\", \"foreCol\", \"Red\");
+  	setValue(\"rect_HFA\", \"border\", \"[solid,oneColor,JoinMiter,CapNotLast,3]\");
+  }
 }
 " 0
  E 0 1 1 0 1 E U  1 E 47 10 92 55
diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_HFA.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_HFA.pnl
index f78c9d53154293630a97a9335f0e2bc6b61422e0..71fbdf902ad90c34e302f3751d7e330afaa28a81 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_HFA.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_HFA.pnl
@@ -1,7 +1,7 @@
 V 10
 1
 LANG:1 8 (NoName)
-PANEL,360 230 95 138 N "_3DFace" 3
+PANEL,306 149 95 138 N "_3DFace" 3
 "$APNr"
 "$RCUNr"
 "$datapoint"
@@ -19,7 +19,8 @@ PANEL,360 230 95 138 N "_3DFace" 3
     dpConnect(\"setBackGroundColorAEM\", 
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA_Maintenance.status:_online.._value\",
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.status:_online.._value\",
-            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.status:_online.._invalid\");
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.status:_online.._invalid\",
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_HFA.functionality:_online.._value\");
   }
   else
   {
diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_LFA.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_LFA.pnl
index 8c0f849f0f3823134a252a402cb81e99e35a2765..85b963400b139a9fd3c17186e2b2730b43a261b0 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_LFA.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Antenna_LFA.pnl
@@ -1,7 +1,7 @@
 V 10
 1
 LANG:1 8 (NoName)
-PANEL,360 230 70 164 N "_3DFace" 3
+PANEL,306 149 70 164 N "_3DFace" 3
 "$APNr"
 "$RCUNr"
 "$datapoint"
@@ -19,7 +19,8 @@ PANEL,360 230 70 164 N "_3DFace" 3
     dpConnect(\"setBackGroundColorAEM\", 
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA_Maintenance.status:_online.._value\",
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.status:_online.._value\",
-            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.status:_online.._invalid\");
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.status:_online.._invalid\",
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_LFA.functionality:_online.._value\");
   }
   else
   {
diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_BP.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_BP.pnl
index b5223a7b5baa5956e934bbb2869436841fa4a687..6fcfb1580ba85d50388f0aace5910b86859139e2 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_BP.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_BP.pnl
@@ -1,7 +1,7 @@
 V 10
 1
 LANG:1 8 (NoName)
-PANEL,360 230 328 89 N "_3DFace" 1
+PANEL,306 149 328 89 N "_3DFace" 1
 "$datapoint"
 "main()
 {
@@ -14,7 +14,8 @@ PANEL,360 230 328 89 N "_3DFace" 1
   {
     dpConnect(\"setBackGroundColorAEM\", $datapoint + \"_Board0_Maintenance.status:_online.._value\",
 					                             $datapoint + \"_Board0_BP.status:_online.._value\",
-					                             $datapoint + \"_Board0_BP.status:_online.._invalid\");
+					                             $datapoint + \"_Board0_BP.status:_online.._invalid\",
+					                             $datapoint + \"_Board0_BP.functionality:_online.._value\");
     dpConnect(\"showVersion\", $datapoint + \"_Board0_BP.version:_online.._value\",
                              $datapoint + \"_Board0_BP.version:_online.._invalid\");
     dpConnect(\"navViewShowTemp\", $datapoint + \"_Board0_BP.version:_online.._value\",
diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Board.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Board.pnl
index 842b3b6a9dbc4b7114c8a6eb101bcfcbd82f75f5..71118317bf6f320a4617d7508315850fbc24422a 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Board.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_Board.pnl
@@ -1,7 +1,7 @@
 V 10
 1
 LANG:1 8 (NoName)
-PANEL,360 230 417 182 N "_3DFace" 1
+PANEL,306 149 417 182 N "_3DFace" 1
 "$datapoint"
 "main()
 {
@@ -11,9 +11,8 @@ PANEL,360 230 417 182 N "_3DFace" 1
   if(dpAccessable($datapoint + \"_Board0.version:_online.._value\") &&
      dpAccessable($datapoint + \"_Board0_Maintenance.status:_online.._value\"))
   {
-//    dpConnect(\"setBackGroundColorAEM\", $datapoint + \"_Board0_Maintenance.status:_online.._value\",
-//					                             $datapoint + \"_Board0_BP.status:_online.._value\",
-//					                             $datapoint + \"_Board0_BP.status:_online.._invalid\");
+    dpConnect(\"setBackGroundBorderColor\", $datapoint + \"_Board0_BP.functionality:_online.._value\");
+    
     dpConnect(\"showVersion\", $datapoint + \"_Board0.version:_online.._value\",
                              $datapoint + \"_Board0.version:_online.._invalid\");
   }
diff --git a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_RCU.pnl b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_RCU.pnl
index 1327e7446d5240d1fd89beab4e14f6c0735430cb..ce83874156ab544cc4ee63813fcfaf21b10370b6 100644
--- a/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_RCU.pnl
+++ b/MAC/Navigator/panels/objects/nav_usr/STS/STS_Subrack_RCU.pnl
@@ -1,7 +1,7 @@
 V 10
 1
 LANG:1 11 Subrack_RCU
-PANEL,2 108 139 149 N "_3DFace" 4
+PANEL,306 149 139 149 N "_3DFace" 4
 "$APNr"
 "$RCUNr"
 "$datapoint"
@@ -21,7 +21,8 @@ PANEL,2 108 139 149 N "_3DFace" 4
     dpConnect(\"setBackGroundColorAEM\", 
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\"_Maintenance.status:_online.._value\",
             $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\".status:_online.._value\",
-            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\".status:_online.._invalid\");
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\".status:_online.._invalid\",
+            $datapoint + \"_Board0_AP\"+ $APNr +\"_RCU\"+ $RCUNr +\".functionality:_online.._value\");
   }
   else
   {
@@ -40,7 +41,11 @@ E E E 1 -1 -1 0  20 140
 "" 0 1
 EE 2
 "CBRef""1"
-"EClose"E
+"EClose""main()
+{
+  DebugN(\"By By\");
+}" 0
+
 ""
 DISPLAY_LAYER, 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
 LAYER, 0 
diff --git a/MAC/Navigator/scripts/libs/nav_usr/STS/STS-functions.ctl b/MAC/Navigator/scripts/libs/nav_usr/STS/STS-functions.ctl
index 0bb39cd66160b762275c85f45c8c611d899f47b3..80eef8b0b3d643a60db388cd0339711c359ba60b 100644
--- a/MAC/Navigator/scripts/libs/nav_usr/STS/STS-functions.ctl
+++ b/MAC/Navigator/scripts/libs/nav_usr/STS/STS-functions.ctl
@@ -125,8 +125,9 @@ void stsSubRackHandleContextMenu()
 //        3. invalid flag
 ///////////////////////////////////////////////////////////////////////////////////
 setBackGroundColorAEM(string dp1, unsigned maintenance,
-                      string dp2, unsigned status,
-                      string dp3, bool invalid)
+                      string dp2, int status,
+                      string dp3, bool invalid,
+                      string dp4, bool functionality)
 {
   
   if(!invalid) // Datapoint has a valid state.
@@ -137,11 +138,11 @@ setBackGroundColorAEM(string dp1, unsigned maintenance,
     {
       setValue("backGround", "backCol", "Lofar_maintenance");
     }
-    else if (status==1)    //object is in error status
+    else if (status<0)    //object is in error status
     {
       setValue("backGround", "backCol", "Red");
     }
-    else if (status==0)  //object has a correct status
+    else if (status>=0)  //object has a correct status
     {
       setValue("backGround", "backCol", "Lofar_device_active");
     }
@@ -149,6 +150,16 @@ setBackGroundColorAEM(string dp1, unsigned maintenance,
     {
       setValue("backGround", "backCol", "Red");
     }
+    if(functionality)
+    {
+      setValue("backGround", "foreCol", "_WindowText");
+	  setValue("backGround", "border", "[solid,oneColor,JoinMiter,CapNotLast,1]");
+    }
+    else
+    {
+      setValue("backGround", "foreCol", "Red");
+      setValue("backGround", "border", "[solid,oneColor,JoinMiter,CapNotLast,3]");
+    }
   }
   else
   {
@@ -156,6 +167,28 @@ setBackGroundColorAEM(string dp1, unsigned maintenance,
   }
 }
 
+//////////////////////////////////////////////////////////////////////////////////
+// Function: setBackGroundBorderColor
+//           Sets the background border color 
+//           of the object
+//
+// Input: 1. functionality status
+///////////////////////////////////////////////////////////////////////////////////
+setBackGroundBorderColor(string dp1, bool functionality)
+{
+  
+  if(functionality)
+  {
+    setValue("backGround", "foreCol", "_WindowText");
+	setValue("backGround", "border", "[solid,oneColor,JoinMiter,CapNotLast,1]");
+   }
+  else
+  {
+    setValue("backGround", "foreCol", "Red");
+	setValue("backGround", "border", "[solid,oneColor,JoinMiter,CapNotLast,3]");
+  }
+}
+
 ///////////////////////////////////////////////////////////////////////////
 // Function: showVersion   
 //           Displays the version of the PIC object in txt_version
@@ -226,7 +259,7 @@ void RCUContextMenu()
   dpGet($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +".status:_original.._value", status);
   dpGet($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_Maintenance.status:_original.._value", maintenance);
 
-  BuildContextMenu(status, maintenance, Answer);
+  BuildContextMenu(status, maintenance, true, true, Answer);
 
     // Compute the chosen option
     switch (Answer)
@@ -235,7 +268,7 @@ void RCUContextMenu()
         dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +".status:_original.._value", 0);
         break;
     case 3:
-        dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +".status:_original.._value", 1);
+        dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +".status:_original.._value", -3);
         break;
     case 10:    
         dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_Maintenance.status:_original.._value", 0);
@@ -261,13 +294,15 @@ void RCUContextMenu()
 //
 // Input : 1. object status
 //         2. maintenance status
+//		   3. show status options
+//         4. show maintenance options
 // Output: 1. contextment
 /////////////////////////////////////////////////////////////////////
-void BuildContextMenu(int status, int maintenance, int &Answer)
+void BuildContextMenu(int status, int maintenance, bool showStatus, bool showMaintenance, int &Answer)
 {
   string txt_status, txt_maintenance;
   //Define the content of the contextmenu
-  if (status==1)
+  if (status<0)
     txt_status = "PUSH_BUTTON, Set status to -> OK, 2, 1";
   else
     txt_status = "PUSH_BUTTON, Set status to -> Error, 3, 1";
@@ -278,15 +313,15 @@ void BuildContextMenu(int status, int maintenance, int &Answer)
     txt_maintenance = "PUSH_BUTTON, Turn on maintenance, 11, 1";
   
   // Display the contextmenu
-  if  ((status==-1) && (maintenance!=-1))
+  if  (!showStatus && showMaintenance)
   {
     popupMenu(makeDynString(txt_maintenance), Answer);
   }
-  else if  ((status!=-1) && (maintenance==-1))
+  else if  (showStatus && !showMaintenance)
   {
     popupMenu(makeDynString(txt_status), Answer);
   }
-  else // ((status!=-1) && (maintenance!=-1))
+  else // (showStatus && showMaintenance)
   {
     popupMenu(makeDynString(txt_maintenance, "SEPARATOR", txt_status), Answer);
   }
@@ -311,7 +346,7 @@ void AntennaContextMenu(string antenna)
   {
     dpGet($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + ".status:_original.._value", status);
     dpGet($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + "_Maintenance.status:_original.._value", maintenance);
-    BuildContextMenu(status, maintenance, Answer);
+    BuildContextMenu(status, maintenance, true, true, Answer);
     // Compute the chosen option
     switch (Answer)
     {
@@ -319,7 +354,7 @@ void AntennaContextMenu(string antenna)
         dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + ".status:_original.._value", 0);
         break;
       case 3:
-        dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + ".status:_original.._value", 1);
+        dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + ".status:_original.._value", -3);
         break;
       case 10:
         dpSetWait($datapoint + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + "_Maintenance.status:_original.._value", 0);
@@ -357,7 +392,7 @@ void APContextMenu()
   if(dpAccessable($datapoint + "_Board0_AP"+ $APNr + ".status:_original.._value"))
   {
     dpGet($datapoint + "_Board0_AP"+ $APNr + ".status:_original.._value", status);
-    BuildContextMenu(status, -1, Answer);
+    BuildContextMenu(status, 0, true, false, Answer);
 
     // Compute the chosen option
     switch (Answer)
@@ -366,7 +401,7 @@ void APContextMenu()
         dpSetWait($datapoint + "_Board0_AP"+ $APNr +".status:_original.._value", 0);
         break;
     case 3:
-        dpSetWait($datapoint + "_Board0_AP"+ $APNr +".status:_original.._value", 1);
+        dpSetWait($datapoint + "_Board0_AP"+ $APNr +".status:_original.._value", -3);
         break;
     default:
       break;
@@ -396,7 +431,7 @@ void BPContextMenu()
   {
     dpGet($datapoint + "_Board0_BP.status:_original.._value", status);
     dpGet($datapoint + "_Board0_Maintenance.status:_original.._value", maintenance);
-    BuildContextMenu(status, maintenance, Answer);
+    BuildContextMenu(status, maintenance, true, true, Answer);
 
     // Compute the chosen option
     switch (Answer)
@@ -405,7 +440,7 @@ void BPContextMenu()
       dpSetWait($datapoint + "_Board0_BP.status:_original.._value", 0);
       break;
     case 3:
-      dpSetWait($datapoint + "_Board0_BP.status:_original.._value", 1);
+      dpSetWait($datapoint + "_Board0_BP.status:_original.._value", -3);
       break;
     case 10:    
       dpSetWait($datapoint + "_Board0_Maintenance.status:_original.._value", 0);
@@ -459,7 +494,7 @@ void AntennaContextMenuMain(string antenna)
   {
     dpGet($datapoint + "_Rack"+ $RackNr + "_SubRack" +$SubrackNr + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + ".status:_original.._value", status);
     dpGet($datapoint + "_Rack"+ $RackNr + "_SubRack" +$SubrackNr + "_Board0_AP"+ $APNr +"_RCU"+ $RCUNr +"_" + antenna + "_Maintenance.status:_original.._value", maintenance);
-    BuildContextMenu(status, maintenance, Answer);
+    BuildContextMenu(status, maintenance, true, true, Answer);
   
     // Compute the chosen option
     switch (Answer)