diff --git a/hp4155/Custom_SMU/interface.py b/hp4155/Custom_SMU/lib/interface.py
similarity index 95%
rename from hp4155/Custom_SMU/interface.py
rename to hp4155/Custom_SMU/lib/interface.py
index 22a0dc88250c2b4f19ee9eb883575c82e8e51525..9d61854e100b8ffca403d2e96ee0239d35a7c577 100644
--- a/hp4155/Custom_SMU/interface.py
+++ b/hp4155/Custom_SMU/lib/interface.py
@@ -38,7 +38,7 @@ def page_1():
     
 
     #Fifth column function
-    options_function= ['VAR1','VAR2','VARD','CONS']
+    options_function= ['VAR1','VAR2','VARD','CONS','SYNC','NSYNC']
     first_page[0,4]= widgets.Label('FUNC',layout=Layout(height='auto', width='auto'))
     first_page[1,4]= widgets.Dropdown(layout=Layout(height='auto', width='auto'),options = options_function,value ='CONS') #smu1
     first_page[2,4]= widgets.Dropdown(layout=Layout(height='auto', width='auto'),options = options_function,value ='VAR2') #smu2
@@ -74,9 +74,8 @@ def page_3():
     third_page = GridspecLayout(24,5)
 
     # First Line
-    third_page[0,0]=widgets.Dropdown(options = ['SWEEP','SAMPLING',"STRESS"], value = 'SWEEP',description ="MEASUREMENT MODE",layout=Layout(height='auto', width='auto'),style = {'description_width': 'initial'}) 
+    third_page[0,0]=widgets.Dropdown(options = ['SWEEP','SAMPLING','STRESS'], value = 'SWEEP',description ="MEASUREMENT MODE",layout=Layout(height='auto', width='auto'),style = {'description_width': 'initial'}) 
     third_page[0,1] = widgets.Dropdown(options = ['SHORt','MEDium','LONG'], value = 'MEDium',description ="INTEGRATION TIME",layout=Layout(height='auto', width='auto'),style = {'description_width': 'initial'})
-    third_page[0,2] = widgets.FloatText(0, description = "STRESS DURATION",layout=Layout(height='auto', width='auto'),style = {'description_width': 'initial'})
 
     # Second Line
     third_page[2,:] = widgets.Label("SWEEP SETUP",layout=Layout(height='auto', width='auto'))
@@ -119,11 +118,11 @@ def page_3():
     third_page[9,0] = widgets.Checkbox(False,description = 'HYSTERISIS',style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
 
     ## Sampling Parameters
-    third_page[11,:] = widgets.Label("SAMPLING PARAMETERS")    
+    third_page[11,:] = widgets.Label("SAMPLING OR STRESS PARAMETERS")    
     third_page[12,0] = widgets.Dropdown(options=["LINear","L10","L25","L50","THINnedout"], value = 'LINear',description = 'MODE',style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
     third_page[13,0] = widgets.FloatText(1e-3,description = "INITIAL INTERVAL", style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
     third_page[14,0] = widgets.IntText(1001,description = "NO. OF SAMPLES", style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
-    third_page[15,0] = widgets.FloatText(0,description = "TOTAL SAMP. TIME", style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
+    third_page[15,0] = widgets.FloatText(0,description = "DURATION", style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
     third_page[16,0] = widgets.FloatText(0,description = "HOLD TIME", style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
     third_page[17,0] = widgets.Checkbox(True,description = "FILTER", style = {'description_width': 'initial'},layout=Layout(height='auto', width='auto'))
 
diff --git a/hp4155/Custom_SMU/main.py b/hp4155/Custom_SMU/main.py
index 2ba8d86f8f9c190e030e2a62e5007ddd8c43d6a5..4b573a8d0141b901352e3b1db074074b4790d0cb 100644
--- a/hp4155/Custom_SMU/main.py
+++ b/hp4155/Custom_SMU/main.py
@@ -1,4 +1,9 @@
+import sys
+sys.path.insert(0, './lib')
+sys.path.insert(0, '..') #append parent directory
+
 from interface import *
+import hp4155a
 
 first_page = page_1()
 second_page = page_2()
@@ -19,6 +24,7 @@ output = widgets.Output()
 
 display(start,output)
 
+#device = hp4155a.HP4155a('GPIB0::17::INSTR')
 
 def on_start_clicked(b):
     with output:
@@ -55,9 +61,9 @@ def on_start_clicked(b):
         pulse = create_dict(period=third_page[4,3].value,width = third_page[5,3].value,base = third_page[6,3].value)
 
 
-        #sampling parameters
-        sampling_parameters= create_dict(mode=third_page[12,0].value,interval=third_page[13,0].value,hold=third_page[16,0].value,points=third_page[14,0].value,filter=third_page[17,0].value)
-        total_samp_time = third_page[13,0].value
+        #sampling and stress parameters
+        parameters= create_dict(mode=third_page[12,0].value,interval=third_page[13,0].value,hold=third_page[16,0].value,points=third_page[14,0].value,filter=third_page[17,0].value)
+        duration = third_page[13,0].value
 
         # Constant Smus
         cons_smus = []
@@ -79,11 +85,10 @@ def on_start_clicked(b):
         for i in range(8):
             variables.append(create_dict(name =  fifth_page[6+i,0].value,unit =fifth_page[6+i,1].value))
 
-        # Check if the plotted variables are in the save list (later)
-        
-        
 
 
+
+        
 start.on_click(on_start_clicked)
 
 
diff --git a/hp4155/Custom_SMU/test_interface.ipynb b/hp4155/Custom_SMU/test_interface.ipynb
index 363fc22fc4b5b712e558d77645a6f0f11294a1af..47fea4f288005e85ed3161f646a91c577d87129c 100644
--- a/hp4155/Custom_SMU/test_interface.ipynb
+++ b/hp4155/Custom_SMU/test_interface.ipynb
@@ -9,7 +9,7 @@
     {
      "data": {
       "application/vnd.jupyter.widget-view+json": {
-       "model_id": "97ee283d07e7478bb4b0ff9f9a7bdf58",
+       "model_id": "ab0613b08d1c4593b10d5aee82e41db8",
        "version_major": 2,
        "version_minor": 0
       },
@@ -23,7 +23,7 @@
     {
      "data": {
       "application/vnd.jupyter.widget-view+json": {
-       "model_id": "9082af459043410e9791775d28575cac",
+       "model_id": "c41a8e0c74774f05b933bdc9129731c8",
        "version_major": 2,
        "version_minor": 0
       },
@@ -37,7 +37,7 @@
     {
      "data": {
       "application/vnd.jupyter.widget-view+json": {
-       "model_id": "2b9417b7271b4102822c42e9d7f58e0b",
+       "model_id": "a9e398217285490e9b1659327a45a076",
        "version_major": 2,
        "version_minor": 0
       },
diff --git a/hp4155/hp4155a.py b/hp4155/hp4155a.py
index 854256c527ba72d25feb234d54360736024beb66..d21d94c0211aefbc604af792657cb5cac0a59b9c 100644
--- a/hp4155/hp4155a.py
+++ b/hp4155/hp4155a.py
@@ -27,7 +27,19 @@ class HP4155a(object):
         
         command = f":PAGE:STR:SET:CONS:SMU{number}:COMP {smu['comp']}"
         self.inst.write(command)
-    
+
+    def smu_stress_disable(self,number:int):
+        command = f":PAGE:STR:SMU{number}:DIS"
+        self.inst.write(command)
+
+    def stress_filter(self,status:int):
+        command = f":PAGE:STR:SET:FILT {status}"
+        self.inst.write(command)
+
+    def stress_hold_time(self,time:float):
+        command = f":PAGE:STR:SET:HTIM {time}"
+        self.inst.write(command)
+
     #set the stess time in seconds
     def stress_time(self,time:float):
         command = f":PAGE:STR:SET:DUR {time}"
@@ -58,7 +70,17 @@ class HP4155a(object):
     def clear_error_stack(self):
         code,_ = self.error()
         while code != 0:
-            code,_ = self.error() 
+            code,_ = self.error()
+
+    def list_all_errors(self):
+        counter = 0
+        error_code, error_message = self.error()
+        message = f"{error_code},{error_message}"+"\n"
+        while error_code!=0:
+            counter = counter + 1
+            error_code, error_message = self.error()
+            message = message + f"{error_code},{error_message}"+"\n"
+        return counter, message
 
     def operation_completed(self):
         text = self.inst.query('*OPC?')