diff --git a/libraries/onos.robot b/libraries/onos.robot
index f1884ef..ff6a680 100755
--- a/libraries/onos.robot
+++ b/libraries/onos.robot
@@ -26,23 +26,33 @@
 
 *** Variables ***
 @{connection_list}
+${alias}    ONOS_SSH
 
 *** Keywords ***
 
 Open ONOS SSH Connection
     [Documentation]    Establishes an ssh connection to ONOS contoller
     [Arguments]    ${host}    ${port}    ${user}=karaf    ${pass}=karaf
-    ${conn_id}=    SSHLibrary.Open Connection    ${host}    port=${port}    timeout=300s    alias=ONOS_SSH
-    SSHLibrary.Login    ${user}    ${pass}
+    ${conn_id}=    SSHLibrary.Open Connection    ${host}    port=${port}    timeout=5s    alias=${alias}
+    SSHLibrary.Login    username=${user}    password=${pass}    keep_alive_interval=30s
+    # set excepted prompt and terminal width to suppress unwanted line feeds
+    SSHLibrary.Set Client Configuration    prompt=REGEXP:k.*a.*r.*a.*f.*@.*r.*o.*o.*t.* .*>.*    width=400
     ${conn_list_entry}=    Create Dictionary    conn_id=${conn_id}    user=${user}    pass=${pass}
+    ...    host=${host}    port=${port}    alias=${alias}
     Append To List    ${connection_list}    ${conn_list_entry}
     ${conn_list_id}=    Get Index From List    ${connection_list}    ${conn_list_entry}
     Set Global Variable    ${connection_list}
+    # get connection settings, has no functional reason, only for info
+    ${connection_info}=    SSHLibrary.Get Connection
+    # disable highlighting to suppress control sequences
+    ${Written}=    Write    setopt disable-highlighter
+    ${output}=    Read Until Prompt    strip_prompt=True
     [Return]    ${conn_list_id}
 
 Execute ONOS CLI Command use single connection
     [Documentation]    Execute ONOS CLI Command use an Open Connection
     ...                In case no connection is open a connection will be opened
+    ...                Using Write and Read instead of Execute Command to keep connection alive.
     [Arguments]    ${host}    ${port}    ${cmd}
     ${connection_list_id}=    Get Conn List Id    ${host}    ${port}
     ${connection_list_id}=    Run Keyword If    "${connection_list_id}"=="${EMPTY}"
@@ -50,16 +60,19 @@
                               ...    ELSE    Set Variable    ${connection_list_id}
     ${connection_entry}=    Get From List   ${connection_list}    ${connection_list_id}
     SSHLibrary.Switch Connection   ${connection_entry.conn_id}
-    ${PassOrFail}    @{result_values}    Run Keyword And Ignore Error    SSHLibrary.Execute Command    ${cmd}
-    ...    return_rc=True    return_stderr=True    return_stdout=True
+    ${connection_info}=    SSHLibrary.Get Connection
+    ${PassOrFail}    ${Written}=    Run Keyword And Ignore Error    Write    ${cmd}
     Run Keyword If    '${PassOrFail}'=='FAIL'    Reconnect ONOS SSH Connection    ${connection_list_id}
-    @{result_values}=    Run Keyword If    '${PassOrFail}'=='FAIL'
-    ...    SSHLibrary.Execute Command    ${cmd}    return_rc=True    return_stderr=True    return_stdout=True
-    ...    ELSE    Set Variable    @{result_values}
-    ${output}    Set Variable    @{result_values}[0]
-    Log    Command output: ${output}
-    Should Be Empty    @{result_values}[1]
-    Should Be Equal As Integers    @{result_values}[2]    0
+    ${Written}=    Run Keyword If    '${PassOrFail}'=='FAIL'    Write    ${cmd}    ELSE    Set Variable   ${Written}
+    Log    pass_write: ${Written}
+    ${output}=    Read Until Prompt    strip_prompt=True
+    Log    Result_values: ${output}
+    # we do not use strip of escape sequences integrated in ssh lib, we do it by ourself to have it under control
+    ${output}=    Remove String Using Regexp    ${output}    \\x1b[>=]{0,1}(?:\\[[0-?]*(?:[hlm])[~]{0,1})*
+    # remove the endless spaces and two carrige returns at the end of output
+    ${output}=    Remove String Using Regexp    ${output}    \\s*\\r \\r
+    # now we have the plain output text
+    Log    Stripped Result_values: ${output}
     [Return]    ${output}
 
 Get Conn List Id
@@ -85,14 +98,25 @@
     ${user}=    Get From Dictionary    ${connection_entry}    user
     ${pass}=    Get From Dictionary    ${connection_entry}    pass
     ${oldconndata}=    Get Connection    ${connection_entry.conn_id}
-    SSHLibrary.Switch Connection   ${connection_entry.conn_id}
-    Run Keyword And Ignore Error    SSHLibrary.Close Connection
-    ${conn_id}=    SSHLibrary.Open Connection    ${oldconndata.host}    port=${oldconndata.port}
-    ...    timeout=300s    alias=ONOS_SSH
-    SSHLibrary.Login    ${user}    ${pass}
+    ${match}=    Set Variable If
+    ...    "${oldconndata.host}"=="${connection_entry.host}" and "${oldconndata.port}"=="${connection_entry.port}"
+    ...    True    False
+    Run Keyword If    ${match}    SSHLibrary.Switch Connection   ${connection_entry.conn_id}
+    Run Keyword If    ${match}    Run Keyword And Ignore Error    SSHLibrary.Close Connection
+    ${conn_id}=    SSHLibrary.Open Connection    ${connection_entry.host}    port=${connection_entry.port}
+    ...    timeout=5s    alias=${alias}
+    SSHLibrary.Login    username=${user}    password=${pass}    keep_alive_interval=30s
+    # set excepted prompt and terminal width to suppress unwanted line feeds
+    SSHLibrary.Set Client Configuration    prompt=REGEXP:k.*a.*r.*a.*f.*@.*r.*o.*o.*t.* .*>.*    width=400
     ${conn_list_entry}=    Create Dictionary    conn_id=${conn_id}    user=${user}    pass=${pass}
+    ...    host=${connection_entry.host}    port=${connection_entry.port}    alias=${alias}
     Set List Value    ${connection_list}    ${connection_list_id}    ${conn_list_entry}
     Set Global Variable    ${connection_list}
+    # get connection settings, has no functional reason, only for info
+    ${connection_info}=    SSHLibrary.Get Connection
+    # disable highlighting to suppress control sequences
+    ${Written}=    Write    setopt disable-highlighter
+    ${output}=    Read Until Prompt    strip_prompt=True
 
 Close ONOS SSH Connection
     [Documentation]    Close an SSH Connection
diff --git a/requirements.txt b/requirements.txt
index 2efbb55..1d3b19b 100755
--- a/requirements.txt
+++ b/requirements.txt
@@ -5,7 +5,7 @@
 robotframework-kafkalibrary==0.0.3
 robotframework-lint==1.0
 robotframework-requests==0.7.0
-robotframework-sshlibrary==3.4.0
+robotframework-sshlibrary==3.8.0
 yamllint==1.23.0
 # replace when we can use upstream (needs python 3.6)
 git+https://github.com/zdw/robotframework-importresource@b81b87aabaee0594e966687b41e3674b866f28ee
