diff --git a/source/BrickIO.m b/source/BrickIO.m
index a4c00c212d61a3ca3792a126ae411fb2fcf89f96..af73a92243c9009c44690716ed7bfc10e9bfa95b 100644
--- a/source/BrickIO.m
+++ b/source/BrickIO.m
@@ -12,7 +12,7 @@
 % - The write function should be given a uint8 datatype as a parameter
 
 classdef BrickIO
-    properties (Abstract)
+    properties (Abstract, Access = 'protected')
         % connection handle
         handle
     end
diff --git a/source/btBrickIO.m b/source/btBrickIO.m
index 25c28bc346ef7284abf5ccca6cde769c63de2eb4..78969672397e4b7eb4d2f9eea23faaeb0fdd9272 100644
--- a/source/btBrickIO.m
+++ b/source/btBrickIO.m
@@ -26,16 +26,18 @@
 
 classdef btBrickIO < BrickIO
     properties
-        % connection handle
-        handle
         % debug input
         debug = 0;
         % bluetooth serial port
         serialPort = '/dev/rfcomm0'
     end
     
+    properties (Access = 'protected')
+        % connection handle
+        handle
+    end 
+    
     methods
-        
         function brickIO = btBrickIO(debug,serialPort)
             %btBrickIO.btBrickIO Create a btBrickIO object
             %
diff --git a/source/usbBrickIO.m b/source/usbBrickIO.m
index 0d3825e52c279b98d99905154e7d5e797cc04477..a3079e37da5ad15cf7289aa208114b3cfc9a88c0 100644
--- a/source/usbBrickIO.m
+++ b/source/usbBrickIO.m
@@ -18,8 +18,6 @@
 
 classdef usbBrickIO < BrickIO
     properties
-        % connection handle
-        handle
         % debug input
         debug = 0;
         % vendor ID (EV3 = 0x0694)
@@ -32,6 +30,11 @@ classdef usbBrickIO < BrickIO
         nWriteBuffer = 1024;
     end
     
+    properties (Access = 'protected')
+        % connection handle
+        handle
+    end 
+    
     methods
         function brickIO = usbBrickIO(varargin)
             %usbBrickIO.usbBrickIO Create a usbBrickIO object
diff --git a/source/wfBrickIO.m b/source/wfBrickIO.m
index e469c9b1931152e35f7befc18099d120ecdee0d5..b234c566e96d57a98539f5b2182997912d2f317d 100644
--- a/source/wfBrickIO.m
+++ b/source/wfBrickIO.m
@@ -24,8 +24,6 @@
 
 classdef wfBrickIO < BrickIO
     properties
-        % connection handle
-        handle
         % debug input
         debug = 0;
         % socket input strem
@@ -40,6 +38,11 @@ classdef wfBrickIO < BrickIO
         serialNum = '0016533dbaf5';
     end
     
+    properties (Access = 'protected')
+        % connection handle
+        handle
+    end 
+    
     methods
         
         function brickIO = wfBrickIO(debug,addr,port,serialNum)