[thci] logging cleanup (#7654)

Remove excesive logging redundancy:
- `API` decorator is enough to show test script calls with arguments
- `__executeCommand` already prints all OT commands and arguments
- Command timestamp is irrelevant in most cases
- Some extra detail logging lines are left commented in case they
  are needed for some debugging

As a result test logs are much easier to follow and resulting files
are much smaller.
diff --git a/tools/harness-thci/OpenThread.py b/tools/harness-thci/OpenThread.py
index 7af1d1b..3d856e4 100644
--- a/tools/harness-thci/OpenThread.py
+++ b/tools/harness-thci/OpenThread.py
@@ -60,12 +60,11 @@
     PlatformDiagnosticPacket_Direction,
     PlatformDiagnosticPacket_Type,
 )
-
 from GRLLibs.UtilityModules.enums import DevCapb
-import commissioner
-from commissioner_impl import OTCommissioner
 
 from IThci import IThci
+import commissioner
+from commissioner_impl import OTCommissioner
 
 ZEPHYR_PREFIX = 'ot '
 """CLI prefix used for OpenThread commands in Zephyr systems"""
@@ -117,6 +116,8 @@
             raise
         finally:
             _callStackDepth -= 1
+            if _callStackDepth == 0:
+                print('\n')
 
     return wrapped_api_func
 
@@ -250,7 +251,7 @@
 
     def __sendCommand(self, cmd, expectEcho=True):
         cmd = self._cmdPrefix + cmd
-        self.log("command: %s", cmd)
+        # self.log("command: %s", cmd)
         self._cliWriteLine(cmd)
         if expectEcho:
             self.__expect(cmd, endswith=True)
@@ -287,7 +288,7 @@
                     time.sleep(0.01)
                     continue
 
-                self.log("readline: %s", line)
+                # self.log("readline: %s", line)
                 # skip empty lines
                 if line:
                     response.append(line)
@@ -317,13 +318,14 @@
             expected    str: the expected string
             times       int: number of tries
         """
-        self.log('Expecting [%s]' % (expected))
+        #self.log('Expecting [%s]' % (expected))
 
         deadline = time.time() + timeout
         while True:
             line = self.__readCliLine()
             if line is not None:
-                self.log("readline: %s", line)
+                #self.log("readline: %s", line)
+                pass
 
             if line is None:
                 if time.time() >= deadline:
@@ -334,7 +336,7 @@
 
             matched = line.endswith(expected) if endswith else line == expected
             if matched:
-                self.log('Expected [%s]' % (expected))
+                #self.log('Expected [%s]' % (expected))
                 return
 
         raise Exception('failed to find expected string[%s]' % expected)
@@ -356,7 +358,8 @@
     def log(self, fmt, *args):
         try:
             msg = fmt % args
-            print('%s - %s - %s' % (self.port, time.strftime('%b %d %H:%M:%S'), msg))
+            # print('%s - %s - %s' % (self.port, time.strftime('%b %d %H:%M:%S'), msg))
+            print('%s %s' % (self.port, msg))
         except Exception:
             pass
 
@@ -369,7 +372,6 @@
     def intialize(self, params):
         """initialize the serial port with baudrate, timeout parameters"""
         self.port = params.get('SerialPort', '')
-        self.log('%s intialize: %r', self.__class__.__name__, params)
         # params example: {'EUI': 1616240311388864514L, 'SerialBaudRate': None, 'TelnetIP': '192.168.8.181', 'SerialPort': None, 'Param7': None, 'Param6': None, 'Param5': 'ip', 'TelnetPort': '22', 'Param9': None, 'Param8': None}
 
         try:
@@ -440,7 +442,6 @@
     def __disableRouterEligible(self):
         """disable router role
         """
-        print('call __disableRouterEligible')
         cmd = 'routereligible disable'
         self.__executeCommand(cmd)
 
@@ -458,8 +459,6 @@
            True: successful to set the device mode
            False: fail to set the device mode
         """
-        print('call __setDeviceMode')
-        print(mode)
         cmd = 'mode %s' % mode
         return self.__executeCommand(cmd)[-1] == 'Done'
 
@@ -474,9 +473,7 @@
             True: successful to set the ROUTER_UPGRADE_THRESHOLD
             False: fail to set ROUTER_UPGRADE_THRESHOLD
         """
-        print('call __setRouterUpgradeThreshold')
         cmd = 'routerupgradethreshold %s' % str(iThreshold)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     def __setRouterDowngradeThreshold(self, iThreshold):
@@ -491,9 +488,7 @@
             True: successful to set the ROUTER_DOWNGRADE_THRESHOLD
             False: fail to set ROUTER_DOWNGRADE_THRESHOLD
         """
-        print('call __setRouterDowngradeThreshold')
         cmd = 'routerdowngradethreshold %s' % str(iThreshold)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     def __setRouterSelectionJitter(self, iRouterJitter):
@@ -506,9 +501,7 @@
             True: successful to set the ROUTER_SELECTION_JITTER
             False: fail to set ROUTER_SELECTION_JITTER
         """
-        print('call _setRouterSelectionJitter')
         cmd = 'routerselectionjitter %s' % str(iRouterJitter)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     def __setAddressfilterMode(self, mode):
@@ -518,7 +511,6 @@
             True: successful to set address filter mode.
             False: fail to set address filter mode.
         """
-        print('call setAddressFilterMode() ' + mode)
         cmd = 'macfilter addr ' + mode
         return self.__executeCommand(cmd)[-1] == 'Done'
 
@@ -529,7 +521,6 @@
             True: successful to start OpenThread stack and thread interface up
             False: fail to start OpenThread stack
         """
-        print('call startOpenThread')
         if self.hasActiveDatasetToCommit:
             if self.__executeCommand('dataset commit active')[0] != 'Done':
                 raise Exception('failed to commit active dataset')
@@ -573,19 +564,6 @@
         self.isPowerDown = False
         return True
 
-    def __stopOpenThread(self):
-        """stop OpenThread stack
-
-        Returns:
-            True: successful to stop OpenThread stack and thread interface down
-            False: fail to stop OpenThread stack
-        """
-        self.log('call stopOpenThread')
-        if self.__executeCommand('thread stop')[-1] == 'Done':
-            return self.__executeCommand('ifconfig down')[-1] == 'Done'
-        else:
-            return False
-
     @watched
     def __isOpenThreadRunning(self):
         """check whether or not OpenThread is running
@@ -607,8 +585,7 @@
         detached_states = ["detached", "disabled"]
         return self.__executeCommand('state')[0] not in detached_states
 
-    # rloc16 might be hex string or integer, need to return actual allocated
-    # router id
+    # rloc16 might be hex string or integer, need to return actual allocated router id
     def __convertRlocToRouterId(self, xRloc16):
         """mapping Rloc16 to router id
 
@@ -622,9 +599,6 @@
         rloc16 = None
         routerid = None
 
-        print(routerList)
-        print(xRloc16)
-
         for index in routerList:
             cmd = 'router %s' % index
             router = self.__executeCommand(cmd)
@@ -737,13 +711,11 @@
         return maskSet
 
     def __setChannelMask(self, channelMask):
-        self.log('call _setChannelMask')
         cmd = 'dataset channelmask %s' % channelMask
         self.hasActiveDatasetToCommit = True
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     def __setSecurityPolicy(self, securityPolicySecs, securityPolicyFlags):
-        print('call _setSecurityPolicy')
         cmd = 'dataset securitypolicy %s %s' % (
             str(securityPolicySecs),
             securityPolicyFlags,
@@ -761,8 +733,6 @@
             True: successful to set key switch guard time
             False: fail to set key switch guard time
         """
-        print('%s call setKeySwitchGuardTime' % self)
-        print(iKeySwitchGuardTime)
         cmd = 'keysequence guardtime %s' % str(iKeySwitchGuardTime)
         if self.__executeCommand(cmd)[-1] == 'Done':
             self.sleep(1)
@@ -772,7 +742,6 @@
 
     def __getCommissionerSessionId(self):
         """ get the commissioner session id allocated from Leader """
-        print('%s call getCommissionerSessionId' % self)
         return self.__executeCommand('commissioner sessionid')[0]
 
     # pylint: disable=no-self-use
@@ -801,8 +770,6 @@
             True: successful to set the Thread Networkname
             False: fail to set the Thread Networkname
         """
-        print('%s call setNetworkName' % self)
-        print(networkName)
         networkName = self._deviceEscapeEscapable(networkName)
         cmd = 'networkname %s' % networkName
         datasetCmd = 'dataset networkname %s' % networkName
@@ -823,8 +790,6 @@
             True: successful to set the channel
             False: fail to set the channel
         """
-        print('%s call setChannel' % self)
-        print(channel)
         cmd = 'channel %s' % channel
         datasetCmd = 'dataset channel %s' % channel
         self.hasSetChannel = True
@@ -834,7 +799,6 @@
     @API
     def getChannel(self):
         """get current channel"""
-        print('%s call getChannel' % self)
         return self.__executeCommand('channel')[0]
 
     @API
@@ -848,15 +812,12 @@
             True: successful to set the extended address
             False: fail to set the extended address
         """
-        print('%s call setMAC' % self)
-        print(xEUI)
         if not isinstance(xEUI, str):
             address64 = self.__convertLongToHex(xEUI, 16)
         else:
             address64 = xEUI
 
         cmd = 'extaddr %s' % address64
-        print(cmd)
         if self.__executeCommand(cmd)[-1] == 'Done':
             self.mac = address64
             return True
@@ -874,8 +835,6 @@
         Returns:
             specific type of MAC address
         """
-        print('%s call getMAC' % self)
-        print(bType)
         # if power down happens, return extended address assigned previously
         if self.isPowerDown:
             macAddr64 = self.mac
@@ -888,34 +847,29 @@
                 return self._deviceGetEtherMac()
             else:
                 macAddr64 = self.__executeCommand('extaddr')[0]
-        print(macAddr64)
 
         return int(macAddr64, 16)
 
     @API
     def getLL64(self):
         """get link local unicast IPv6 address"""
-        print('%s call getLL64' % self)
         return self.__executeCommand('ipaddr linklocal')[0]
 
     @API
     def getRloc16(self):
         """get rloc16 short address"""
-        print('%s call getRloc16' % self)
         rloc16 = self.__executeCommand('rloc16')[0]
         return int(rloc16, 16)
 
     @API
     def getRloc(self):
         """get router locator unicast Ipv6 address"""
-        print('%s call getRloc' % self)
         return self.__executeCommand('ipaddr rloc')[0]
 
     def __getGlobal(self):
         """get global unicast IPv6 address set
            if configuring multiple entries
         """
-        print('%s call getGlobal' % self)
         globalAddrs = []
         rlocAddr = self.getRloc()
 
@@ -930,18 +884,10 @@
 
             fullIp = ModuleHelper.GetFullIpv6Address(ip6Addr).lower()
 
-            print('address %s' % fullIp)
-
-            if fullIp.startswith('fe80'):
-                print('link local')
-                continue
-
-            if fullIp.startswith(rlocAddr[0:19]):
-                print('mesh local')
+            if fullIp.startswith('fe80') or fullIp.startswith(rlocAddr[0:19]):
                 continue
 
             globalAddrs.append(fullIp)
-            print('global')
 
         return globalAddrs
 
@@ -956,9 +902,6 @@
             True: successful to set the Thread network key
             False: fail to set the Thread network key
         """
-        print('%s call setNetworkKey' % self)
-        print(key)
-
         if not isinstance(key, str):
             networkKey = self.__convertLongToHex(key, 32)
             cmd = 'networkkey %s' % networkKey
@@ -983,8 +926,6 @@
             True: successful to add a given extended address to the denylist entry
             False: fail to add a given extended address to the denylist entry
         """
-        print('%s call addBlockedMAC' % self)
-        print(xEUI)
         if isinstance(xEUI, str):
             macAddr = xEUI
         else:
@@ -1000,7 +941,6 @@
                 self._addressfilterMode = 'denylist'
 
         cmd = 'macfilter addr add %s' % macAddr
-        print(cmd)
         ret = self.__executeCommand(cmd)[-1] == 'Done'
 
         self._addressfilterSet.add(macAddr)
@@ -1021,8 +961,6 @@
             True: successful to add a given extended address to the allowlist entry
             False: fail to add a given extended address to the allowlist entry
         """
-        print('%s call addAllowMAC' % self)
-        print(xEUI)
         if isinstance(xEUI, str):
             macAddr = xEUI
         else:
@@ -1033,7 +971,6 @@
                 self._addressfilterMode = 'allowlist'
 
         cmd = 'macfilter addr add %s' % macAddr
-        print(cmd)
         ret = self.__executeCommand(cmd)[-1] == 'Done'
 
         self._addressfilterSet.add(macAddr)
@@ -1050,8 +987,6 @@
             True: successful to clear the denylist
             False: fail to clear the denylist
         """
-        print('%s call clearBlockList' % self)
-
         # remove all entries in denylist
         print('clearing denylist entries:')
         for addr in self._addressfilterSet:
@@ -1075,8 +1010,6 @@
             True: successful to clear the allowlist
             False: fail to clear the allowlist
         """
-        print('%s call clearAllowList' % self)
-
         # remove all entries in allowlist
         print('clearing allowlist entries:')
         for addr in self._addressfilterSet:
@@ -1095,7 +1028,6 @@
     @API
     def getDeviceRole(self):
         """get current device role in Thread Network"""
-        print('%s call getDeviceRole' % self)
         return self.__executeCommand('state')[0]
 
     @API
@@ -1108,9 +1040,6 @@
         Returns:
             True: ready to set Thread Network parameter for joining desired Network
         """
-        print('%s call joinNetwork' % self)
-        print(eRoleId)
-
         self.deviceRole = eRoleId
         mode = '-'
         if ModuleHelper.LeaderDutChannelFound and not self.hasSetChannel:
@@ -1213,9 +1142,7 @@
         Returns:
             The Thread network Partition Id
         """
-        print('%s call getNetworkFragmentID' % self)
         if not self.__isOpenThreadRunning():
-            print('OpenThread is not running')
             return None
 
         leaderData = self.__executeCommand('leaderdata')
@@ -1228,7 +1155,6 @@
         Returns:
             The extended address of parent in hex format
         """
-        print('%s call getParentAddress' % self)
         eui = None
         parentInfo = self.__executeCommand('parent')
 
@@ -1237,10 +1163,6 @@
                 break
             elif 'Ext Addr' in line:
                 eui = line.split()[2]
-                print(eui)
-            # elif 'Rloc' in line:
-            #    rloc16 = line.split()[1]
-            #    print(rloc16)
             else:
                 pass
 
@@ -1249,7 +1171,6 @@
     @API
     def powerDown(self):
         """power down the Thread device"""
-        print('%s call powerDown' % self)
         self.__sendCommand('reset', expectEcho=False)
 
         if not self.IsBorderRouter:
@@ -1261,7 +1182,6 @@
     @API
     def powerUp(self):
         """power up the Thread device"""
-        print('%s call powerUp' % self)
         self.isPowerDown = False
 
         if not self.__isOpenThreadRunning():
@@ -1299,7 +1219,6 @@
             True: successful to reset and rejoin the Thread Network
             False: fail to reset and rejoin the Thread Network
         """
-        print('%s call reboot' % self)
         self.reset_and_wait_for_connection()
         self.__startOpenThread()
         return self.wait_for_attach_to_the_network(expected_role="", timeout=self.NETWORK_ATTACHMENT_TIMEOUT)
@@ -1315,7 +1234,6 @@
             True: successful to reset and rejoin Thread Network
             False: fail to reset and rejoin the Thread Network
         """
-        print('%s call resetAndRejoin' % self)
         self.powerDown()
         time.sleep(timeout)
         self.powerUp()
@@ -1331,8 +1249,6 @@
             hop_limit: hop limit
 
         """
-        print('%s call ping' % self.port)
-        print('destination: %s' % strDestination)
         cmd = 'ping %s %s 1 1 %d %d' % (strDestination, str(ilength), hop_limit, timeout)
         self.__executeCommand(cmd)
 
@@ -1345,10 +1261,7 @@
             destination: the multicast destination address of ICMPv6 echo request
             length: the size of ICMPv6 echo request payload
         """
-        print('%s call multicast_Ping' % self)
-        print('destination: %s' % destination)
         cmd = 'ping %s %s' % (destination, str(length))
-        print(cmd)
         self.__sendCommand(cmd)
         # wait echo reply
         self.sleep(1)
@@ -1364,12 +1277,9 @@
             True: successful to set the Thread Network PAN ID
             False: fail to set the Thread Network PAN ID
         """
-        print('%s call setPANID' % self)
-        print(xPAN)
         panid = ''
         if not isinstance(xPAN, str):
             panid = str(hex(xPAN))
-            print(panid)
 
         cmd = 'panid %s' % panid
         datasetCmd = 'dataset panid %s' % panid
@@ -1379,8 +1289,6 @@
     @API
     def reset(self):
         """factory reset"""
-        print('%s call reset' % self)
-
         self._deviceBeforeReset()
 
         self.__sendCommand('factoryreset', expectEcho=False)
@@ -1418,13 +1326,9 @@
             True: successful to remove the router from the Thread Network
             False: fail to remove the router from the Thread Network
         """
-        print('%s call removeRouter' % self)
-        print(xRouterId)
         routerId = self.__convertRlocToRouterId(xRouterId)
-        print(routerId)
 
         if routerId is None:
-            print('no matched xRouterId')
             return False
 
         cmd = 'releaserouterid %s' % routerId
@@ -1433,8 +1337,6 @@
     @API
     def setDefaultValues(self):
         """set default mandatory Thread Network parameter value"""
-        print('%s call setDefaultValues' % self)
-
         # initialize variables
         self.networkName = ModuleHelper.Default_NwkName
         self.networkKey = ModuleHelper.Default_NwkKey
@@ -1502,7 +1404,6 @@
     @API
     def getDeviceConncetionStatus(self):
         """check if serial port connection is ready or not"""
-        print('%s call getDeviceConnectionStatus' % self)
         return self.deviceConnected
 
     @API
@@ -1516,10 +1417,7 @@
             True: successful to set the data polling rate for sleepy end device
             False: fail to set the data polling rate for sleepy end device
         """
-        print('%s call setPollingRate' % self)
-
         iPollingRate = int(iPollingRate * 1000)
-        print(iPollingRate)
 
         if self.__sedPollPeriod != iPollingRate:
             if not iPollingRate:
@@ -1545,7 +1443,6 @@
             False: fail to set the data poll period for sleepy end device
         """
         cmd = 'pollperiod %d' % iPollPeriod
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -1565,9 +1462,6 @@
             True: successful to set the link quality
             False: fail to set the link quality
         """
-        print('%s call setLinkQuality' % self)
-        print(EUIadr)
-        print(LinkQuality)
         # process EUIadr
         euiHex = hex(EUIadr)
         euiStr = str(euiHex)
@@ -1581,7 +1475,6 @@
                 print(address64)
 
         cmd = 'macfilter rss add-lqi %s %s' % (address64, str(LinkQuality))
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -1600,10 +1493,7 @@
             True: successful to set the link quality
             False: fail to set the link quality
         """
-        print('%s call setOutBoundLinkQuality' % self)
-        print(LinkQuality)
         cmd = 'macfilter rss add-lqi * %s' % str(LinkQuality)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -1617,10 +1507,8 @@
             True: successful to remove the prefix entry from border router
             False: fail to remove the prefix entry from border router
         """
-        print('%s call removeRouterPrefix' % self)
         assert (ipaddress.IPv6Network(prefixEntry.decode()))
         cmd = 'prefix remove %s/64' % prefixEntry
-        print(cmd)
         if self.__executeCommand(cmd)[-1] == 'Done':
             # send server data ntf to leader
             return self.__executeCommand('netdata register')[-1] == 'Done'
@@ -1656,7 +1544,6 @@
             True: successful to configure the border router with a given prefix entry
             False: fail to configure the border router with a given prefix entry
         """
-        print('%s call configBorderRouter' % self)
         assert (ipaddress.IPv6Network(P_Prefix.decode()))
 
         # turn off default domain prefix if configBorderRouter is called before joining network
@@ -1699,7 +1586,6 @@
             pass
 
         cmd = 'prefix add %s/64 %s %s' % (P_Prefix, parameter, prf)
-        print(cmd)
         if self.__executeCommand(cmd)[-1] == 'Done':
             # if prefix configured before starting OpenThread stack
             # do not send out server data ntf pro-actively
@@ -1722,11 +1608,8 @@
             True: successful to set NETWORK_ID_TIMEOUT
             False: fail to set NETWORK_ID_TIMEOUT
         """
-        print('%s call setNetworkIDTimeout' % self)
-        print(iNwkIDTimeOut)
         iNwkIDTimeOut /= 1000
         cmd = 'networkidtimeout %s' % str(iNwkIDTimeOut)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -1754,8 +1637,6 @@
             True: successful to set the key sequence
             False: fail to set the key sequence
         """
-        print('%s call setKeySequenceCounter' % self)
-        print(iKeySequenceValue)
         # avoid key switch guard timer protection for reference device
         self.__setKeySwitchGuardTime(0)
 
@@ -1769,7 +1650,6 @@
     @API
     def getKeySequenceCounter(self):
         """get current Thread Network key sequence"""
-        print('%s call getKeySequenceCounter' % self)
         keySequence = self.__executeCommand('keysequence counter')[0]
         return keySequence
 
@@ -1784,13 +1664,10 @@
             True: successful to increment the key sequence with a given value
             False: fail to increment the key sequence with a given value
         """
-        print('%s call incrementKeySequenceCounter' % self)
-        print(iIncrementValue)
         # avoid key switch guard timer protection for reference device
         self.__setKeySwitchGuardTime(0)
         currentKeySeq = self.getKeySequenceCounter()
         keySequence = int(currentKeySeq, 10) + iIncrementValue
-        print(keySequence)
         return self.setKeySequenceCounter(keySequence)
 
     @API
@@ -1804,9 +1681,6 @@
         Returns:
             True: successful to set the network requirement
         """
-        print('%s call setNetworkDataRequirement' % self)
-        print(eDataRequirement)
-
         if eDataRequirement == Device_Data_Requirement.ALL_DATA:
             self.networkDataRequirement = 'n'
         return True
@@ -1827,7 +1701,6 @@
             True: successful to configure the border router with a given external route prefix
             False: fail to configure the border router with a given external route prefix
         """
-        print('%s call configExternalRouter' % self)
         assert (ipaddress.IPv6Network(P_Prefix.decode()))
         prf = ''
         stable = ''
@@ -1845,7 +1718,6 @@
             cmd = 'route add %s/64 %s %s' % (P_Prefix, stable, prf)
         else:
             cmd = 'route add %s/64 %s' % (P_Prefix, prf)
-        print(cmd)
 
         if self.__executeCommand(cmd)[-1] == 'Done':
             # send server data ntf to leader
@@ -1858,13 +1730,10 @@
         Returns:
             neighboring routers' extended address
         """
-        print('%s call getNeighbouringRouters' % self)
         routerInfo = []
         routerList = self.__executeCommand('router list')[0].split()
-        print(routerList)
 
         if 'Done' in routerList:
-            print('no neighbouring routers')
             return None
 
         for index in routerList:
@@ -1887,7 +1756,6 @@
                 else:
                     pass
 
-        print(routerInfo)
         return routerInfo
 
     @API
@@ -1899,16 +1767,11 @@
         """
         eui = None
         rloc16 = None
-
-        print('%s call getChildrenInfo' % self)
-
         childrenInfoAll = []
         childrenInfo = {'EUI': 0, 'Rloc16': 0, 'MLEID': ''}
         childrenList = self.__executeCommand('child list')[0].split()
-        print(childrenList)
 
         if 'Done' in childrenList:
-            print('no children')
             return None
 
         for index in childrenList:
@@ -1937,7 +1800,6 @@
             childrenInfoAll.append(childrenInfo['EUI'])
             # childrenInfoAll.append(childrenInfo)
 
-        print(childrenInfoAll)
         return childrenInfoAll
 
     @API
@@ -1952,8 +1814,6 @@
             False: fail to set the extended PAN ID
         """
         xpanid = ''
-        print('%s call setXpanId' % self)
-        print(xPanId)
         if not isinstance(xPanId, str):
             xpanid = self.__convertLongToHex(xPanId, 16)
             cmd = 'extpanid %s' % xpanid
@@ -1976,7 +1836,6 @@
             A list including extended address of neighboring routers, parent
             as well as children
         """
-        print('%s call getNeighbouringDevices' % self)
         neighbourList = []
 
         # get parent info
@@ -1996,7 +1855,6 @@
             for entry in routerNeighbours:
                 neighbourList.append(entry)
 
-        print(neighbourList)
         return neighbourList
 
     @API
@@ -2010,11 +1868,7 @@
             True: successful to set the Partition ID
             False: fail to set the Partition ID
         """
-        print('%s call setPartationId' % self)
-        print(partationId)
-
         cmd = 'partitionid preferred %s' % (str(hex(partationId)).rstrip('L'))
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2039,27 +1893,22 @@
         else:
             for fullIp in globalAddrs:
                 if fullIp.startswith(filterByPrefix):
-                    print('target global %s' % fullIp)
                     return fullIp
-            print('no global address matched')
             return str(globalAddrs[0])
 
     @API
     def getShortAddress(self):
         """get Rloc16 short address of Thread device"""
-        print('%s call getShortAddress' % self)
         return self.getRloc16()
 
     @API
     def getULA64(self):
         """get mesh local EID of Thread device"""
-        print('%s call getULA64' % self)
         return self.__executeCommand('ipaddr mleid')[0]
 
     @API
     def setMLPrefix(self, sMeshLocalPrefix):
         """set mesh local prefix"""
-        print('%s call setMLPrefix' % self)
         cmd = 'dataset meshlocalprefix %s' % sMeshLocalPrefix
         self.hasActiveDatasetToCommit = True
         return self.__executeCommand(cmd)[-1] == 'Done'
@@ -2067,7 +1916,6 @@
     @API
     def getML16(self):
         """get mesh local 16 unicast address (Rloc)"""
-        print('%s call getML16' % self)
         return self.getRloc()
 
     @API
@@ -2089,10 +1937,7 @@
             True: successful to set slaac address to Thread interface
             False: fail to set slaac address to Thread interface
         """
-        print('%s call forceSetSlaac' % self)
-        print(slaacAddress)
         cmd = 'ipaddr add %s' % str(slaacAddress)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2102,13 +1947,11 @@
     @API
     def enableAutoDUTObjectFlag(self):
         """set AutoDUTenable flag"""
-        print('%s call enableAutoDUTObjectFlag' % self)
         self.AutoDUTEnable = True
 
     @API
     def getChildTimeoutValue(self):
         """get child timeout"""
-        print('%s call getChildTimeoutValue' % self)
         childTimeout = self.__executeCommand('childtimeout')[0]
         return int(childTimeout)
 
@@ -2124,7 +1967,6 @@
             strDestinationAddr,
             ' '.join([str(tlv) for tlv in listTLV_ids]),
         )
-        print(cmd)
 
         return self.__sendCommand(cmd, expectEcho=False)
 
@@ -2140,7 +1982,6 @@
             strDestinationAddr,
             ' '.join([str(tlv) for tlv in listTLV_ids]),
         )
-        print(cmd)
 
         return self.__executeCommand(cmd)
 
@@ -2153,10 +1994,8 @@
         # TODO: Support the whole Native Commissioner functionality
         # Currently it only aims to trigger a Discovery Request message to pass
         # Certification test 5.8.4
-        print('%s call startNativeCommissioner' % self)
         self.__executeCommand('ifconfig up')
         cmd = 'joiner start %s' % (strPSKc)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2190,7 +2029,6 @@
         Returns:
             A boolean indicates whether this function succeed.
         """
-
         if self.externalCommissioner is not None:
             self.externalCommissioner.stop()
             return not self.externalCommissioner.isActive()
@@ -2203,13 +2041,11 @@
             True: successful to start Commissioner
             False: fail to start Commissioner
         """
-        print('%s call startCollapsedCommissioner' % self)
         if self.__startOpenThread():
             self.wait_for_attach_to_the_network(expected_role=self.deviceRole,
                                                 timeout=self.NETWORK_ATTACHMENT_TIMEOUT,
                                                 raise_assert=True)
             cmd = 'commissioner start'
-            print(cmd)
             if self.__executeCommand(cmd)[-1] == 'Done':
                 self.isActiveCommissioner = True
                 self.sleep(20)  # time for petition process
@@ -2250,7 +2086,6 @@
             str(timeout),
         )
 
-        print(cmd)
         if self.__executeCommand(cmd)[-1] == 'Done':
             if self.logThreadStatus == self.logStatus['stop']:
                 self.logThread = ThreadRunner.run(target=self.__readCommissioningLogs, args=(120,))
@@ -2273,7 +2108,6 @@
             True: successful to set provisioning Url
             False: fail to set provisioning Url
         """
-        print('%s call setProvisioningUrl' % self)
         self.provisioningUrl = strURL
         if self.deviceRole == Thread_Device_Role.Commissioner:
             cmd = 'commissioner provisioningurl %s' % (strURL)
@@ -2288,9 +2122,7 @@
             True: successful to start commissioner candidate petition process
             False: fail to start commissioner candidate petition process
         """
-        print('%s call allowCommission' % self)
         cmd = 'commissioner start'
-        print(cmd)
         if self.__executeCommand(cmd)[-1] == 'Done':
             self.isActiveCommissioner = True
             # time for petition process and at least one keep alive
@@ -2321,7 +2153,6 @@
         self.__executeCommand('ifconfig up')
         strPSKd = self.__normalizePSKd(strPSKd)
         cmd = 'joiner start %s %s' % (strPSKd, self.provisioningUrl)
-        print(cmd)
         if self.__executeCommand(cmd)[-1] == 'Done':
             maxDuration = 150  # seconds
             self.joinCommissionedStatus = self.joinStatus['ongoing']
@@ -2360,14 +2191,12 @@
 
         while not rawLogs.empty():
             rawLogEach = rawLogs.get()
-            print(rawLogEach)
             if '[THCI]' not in rawLogEach:
                 continue
 
             EncryptedPacket = PlatformDiagnosticPacket()
             infoList = rawLogEach.split('[THCI]')[1].split(']')[0].split('|')
             for eachInfo in infoList:
-                print(eachInfo)
                 info = eachInfo.split('=')
                 infoType = info[0].strip()
                 infoValue = info[1].strip()
@@ -2426,7 +2255,6 @@
             True: successful to send MGMT_ED_SCAN message.
             False: fail to send MGMT_ED_SCAN message
         """
-        print('%s call MGMT_ED_SCAN' % self)
         channelMask = '0x' + self.__convertLongToHex(self.__convertChannelMask(listChannelMask))
         cmd = 'commissioner energy %s %s %s %s %s' % (
             channelMask,
@@ -2435,7 +2263,6 @@
             xScanDuration,
             sAddr,
         )
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2449,7 +2276,6 @@
             True: successful to send MGMT_PANID_QUERY message.
             False: fail to send MGMT_PANID_QUERY message.
         """
-        print('%s call MGMT_PANID_QUERY' % self)
         panid = ''
         channelMask = '0x' + self.__convertLongToHex(self.__convertChannelMask(listChannelMask))
 
@@ -2457,7 +2283,6 @@
             panid = str(hex(xPanId))
 
         cmd = 'commissioner panid %s %s %s' % (panid, channelMask, sAddr)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2468,7 +2293,6 @@
             True: successful to send MGMT_ANNOUNCE_BEGIN message.
             False: fail to send MGMT_ANNOUNCE_BEGIN message.
         """
-        print('%s call MGMT_ANNOUNCE_BEGIN' % self)
         channelMask = '0x' + self.__convertLongToHex(self.__convertChannelMask(listChannelMask))
         cmd = 'commissioner announce %s %s %s %s' % (
             channelMask,
@@ -2476,7 +2300,6 @@
             xPeriod,
             sAddr,
         )
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2487,7 +2310,6 @@
             True: successful to send MGMT_ACTIVE_GET
             False: fail to send MGMT_ACTIVE_GET
         """
-        print('%s call MGMT_ACTIVE_GET' % self)
         cmd = 'dataset mgmtgetcommand active'
 
         if Addr != '':
@@ -2499,8 +2321,6 @@
             cmd += ' -x '
             cmd += tlvs
 
-        print(cmd)
-
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2530,7 +2350,6 @@
             True: successful to send MGMT_ACTIVE_SET
             False: fail to send MGMT_ACTIVE_SET
         """
-        print('%s call MGMT_ACTIVE_SET' % self)
         cmd = 'dataset mgmtsetcommand active'
 
         if listActiveTimestamp is not None:
@@ -2664,8 +2483,6 @@
         if BogusTLV is not None:
             cmd += '8202aa55'
 
-        print(cmd)
-
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2676,7 +2493,6 @@
             True: successful to send MGMT_PENDING_GET
             False: fail to send MGMT_PENDING_GET
         """
-        print('%s call MGMT_PENDING_GET' % self)
         cmd = 'dataset mgmtgetcommand pending'
 
         if Addr != '':
@@ -2688,8 +2504,6 @@
             cmd += ' -x '
             cmd += tlvs
 
-        print(cmd)
-
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2712,7 +2526,6 @@
             True: successful to send MGMT_PENDING_SET
             False: fail to send MGMT_PENDING_SET
         """
-        print('%s call MGMT_PENDING_SET' % self)
         cmd = 'dataset mgmtsetcommand pending'
 
         if listPendingTimestamp is not None:
@@ -2760,8 +2573,6 @@
 
             cmd += sessionid
 
-        print(cmd)
-
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2772,7 +2583,6 @@
             True: successful to send MGMT_COMM_GET
             False: fail to send MGMT_COMM_GET
         """
-        print('%s call MGMT_COMM_GET' % self)
         cmd = 'commissioner mgmtget'
 
         if len(TLVs) != 0:
@@ -2780,8 +2590,6 @@
             cmd += ' -x '
             cmd += tlvs
 
-        print(cmd)
-
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2800,7 +2608,6 @@
             True: successful to send MGMT_COMM_SET
             False: fail to send MGMT_COMM_SET
         """
-        print('%s call MGMT_COMM_SET' % self)
         cmd = 'commissioner mgmtset'
 
         if xCommissionerSessionID is not None:
@@ -2827,31 +2634,29 @@
             cmd += ' -x '
             cmd += '000300' + '%04x' % xChannelTlv
 
-        print(cmd)
-
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def setActiveDataset(self, listActiveDataset=()):
-        print('%s call setActiveDataset' % self)
+        # Unused by the scripts
+        pass
 
     @API
     def setCommisionerMode(self):
-        print('%s call setCommissionerMode' % self)
+        # Unused by the scripts
+        pass
 
     @API
     def setPSKc(self, strPSKc):
-        print('%s call setPSKc' % self)
         cmd = 'dataset pskc %s' % strPSKc
         self.hasActiveDatasetToCommit = True
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def setActiveTimestamp(self, xActiveTimestamp):
-        print('%s call setActiveTimestamp' % self)
         self.activetimestamp = xActiveTimestamp
-        cmd = 'dataset activetimestamp %s' % str(xActiveTimestamp)
         self.hasActiveDatasetToCommit = True
+        cmd = 'dataset activetimestamp %s' % str(xActiveTimestamp)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2865,9 +2670,7 @@
             True: successful to set Joiner UDP Port
             False: fail to set Joiner UDP Port
         """
-        print('%s call setUdpJoinerPort' % self)
         cmd = 'joinerport %d' % portNumber
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -2878,16 +2681,12 @@
             True: successful to stop commissioner
             False: fail to stop commissioner
         """
-        print('%s call commissionerUnregister' % self)
         cmd = 'commissioner stop'
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def sendBeacons(self, sAddr, xCommissionerSessionId, listChannelMask, xPanId):
-        print('%s call sendBeacons' % self)
         self.__sendCommand('scan', expectEcho=False)
-        return True
 
     @API
     def updateRouterStatus(self):
@@ -2896,7 +2695,6 @@
 
     @API
     def __updateRouterStatus(self):
-        print('%s call updateRouterStatus' % self)
         cmd = 'state'
         while True:
             state = self.__executeCommand(cmd)[0]
@@ -2912,20 +2710,16 @@
 
     @API
     def setRouterThresholdValues(self, upgradeThreshold, downgradeThreshold):
-        print('%s call setRouterThresholdValues' % self)
         self.__setRouterUpgradeThreshold(upgradeThreshold)
         self.__setRouterDowngradeThreshold(downgradeThreshold)
 
     @API
     def setMinDelayTimer(self, iSeconds):
-        print('%s call setMinDelayTimer' % self)
         cmd = 'delaytimermin %s' % iSeconds
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def ValidateDeviceFirmware(self):
-        print('%s call ValidateDeviceFirmware' % self)
         return 'OPENTHREAD' in self.UIStatusMsg
 
     @API
@@ -2992,16 +2786,12 @@
     @API
     def setCSLtout(self, tout=30):
         self.ssedTimeout = tout
-        self.log('call setCSLtout')
         cmd = 'csl timeout %u' % self.ssedTimeout
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def setCSLchannel(self, ch=11):
-        self.log('call setCSLchannel')
         cmd = 'csl channel %u' % ch
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -3014,9 +2804,7 @@
         period is converted from unit ms to ten symbols (160us per 10 symbols).
 
         """
-        self.log('call setCSLperiod')
         cmd = 'csl period %u' % (period * 6.25)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @staticmethod
@@ -3073,14 +2861,11 @@
 
     @API
     def LinkMetricsSingleReq(self, dst_addr, metrics):
-        self.log('call LinkMetricsSingleReq')
         cmd = 'linkmetrics query %s single %s' % (dst_addr, self.getMetricsFlagsFromHexStr(metrics))
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def LinkMetricsMgmtReq(self, dst_addr, type_, flags, metrics, series_id):
-        self.log('call LinkMetricsMgmtReq')
         cmd = 'linkmetrics mgmt %s ' % dst_addr
         if type_ == 'FWD':
             cmd += 'forward %d %s' % (series_id, self.getForwardSeriesFlagsFromHexOrStr(flags))
@@ -3092,27 +2877,21 @@
                 cmd += ' register %s' % (self.getMetricsFlagsFromHexStr(metrics))
             else:
                 cmd += ' clear'
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def LinkMetricsGetReport(self, dst_addr, series_id):
-        self.log('call LinkMetricsGetReport')
         cmd = 'linkmetrics query %s forward %d' % (dst_addr, series_id)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     # TODO: Series Id is not in this API.
     @API
     def LinkMetricsSendProbe(self, dst_addr, ack=True, size=0):
-        self.log('call LinkMetricsSendProbe')
         cmd = 'linkmetrics probe %s %d' % (dst_addr, size)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def setTxPower(self, level):
-        self.log('call setTxPower')
         cmd = 'txpower '
         if level == 'HIGH':
             cmd += '127'
@@ -3122,28 +2901,23 @@
             cmd += '-128'
         else:
             print('wrong Tx Power level')
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def sendUdp(self, destination, port, payload='hello'):
-        self.log('call sendUdp')
         assert payload is not None, 'payload should not be none'
         cmd = 'udp send %s %d %s' % (destination, port, payload)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def send_udp(self, interface, destination, port, payload='12ABcd'):
         ''' payload hexstring
         '''
-        self.log('call send_udp')
         assert payload is not None, 'payload should not be none'
         assert interface == 0, "non-BR must send UDP to Thread interface"
         self.__udpOpen()
         time.sleep(0.5)
         cmd = 'udp send %s %s -x %s' % (destination, port, payload)
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     def __udpOpen(self):
@@ -3161,21 +2935,16 @@
 
     @API
     def sendMACcmd(self, enh=False):
-        self.log('call sendMACcmd')
         cmd = 'mac send datarequest'
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def sendMACdata(self, enh=False):
-        self.log('call sendMACdata')
         cmd = 'mac send emptydata'
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
     def setCSLsuspension(self, suspend):
-        self.log('call setCSLsuspension')
         if suspend:
             self.__setPollPeriod(240 * 1000)
         else:
@@ -3184,7 +2953,6 @@
     @API
     def set_max_addrs_per_child(self, num):
         cmd = 'childip max %d' % int(num)
-        print(cmd)
         self.__executeCommand(cmd)
 
     @API
@@ -3220,11 +2988,9 @@
 
     def __getMlIid(self):
         """get the Mesh Local IID."""
-        print('%s call __getMlIid' % self.port)
         # getULA64() would return the full string representation
         mleid = ModuleHelper.GetFullIpv6Address(self.getULA64()).lower()
         mliid = mleid[-19:].replace(':', '')
-        print('mliid: %s' % mliid)
         return mliid
 
     def __setMlIid(self, sMlIid):
@@ -3249,8 +3015,6 @@
 
     @API
     def stopListeningToAddr(self, sAddr):
-        print('%s call stopListeningToAddr' % self.port)
-
         cmd = 'ipmaddr del ' + sAddr
         try:
             self.__executeCommand(cmd)
@@ -3316,7 +3080,6 @@
     @API
     def setParentPrio(self, prio):
         cmd = 'parentpriority %u' % prio
-        print(cmd)
         return self.__executeCommand(cmd)[-1] == 'Done'
 
     @API
@@ -3385,10 +3148,6 @@
 
 class OpenThread(OpenThreadTHCI, IThci):
 
-    # Used for reference firmware version control for Test Harness.
-    # This variable will be updated to match the OpenThread reference firmware
-    # officially released.
-
     def _connect(self):
         print('My port is %s' % self)
         self.__lines = []
diff --git a/tools/harness-thci/OpenThread_BR.py b/tools/harness-thci/OpenThread_BR.py
index 26c6b25..b8566fe 100644
--- a/tools/harness-thci/OpenThread_BR.py
+++ b/tools/harness-thci/OpenThread_BR.py
@@ -392,7 +392,6 @@
             raise AssertionError('Invalid interface set to send UDP: {} '
                                  'Available interface options: 0 - Thread; 1 - Ethernet'.format(interface))
         cmd = '/home/pi/reference-device/send_udp.py %s %s %s %s' % (ifname, dst, port, payload)
-        print(cmd)
         self.bash(cmd)
 
     @API
@@ -401,12 +400,10 @@
         dst = 'ff02::1'
 
         cmd = '/home/pi/reference-device/send_mld_query.py %s %s' % (ifname, dst)
-        print(cmd)
         self.bash(cmd)
 
     @API
     def ip_neighbors_flush(self):
-        print('%s call clear_cache' % self.port)
         # clear neigh cache on linux
         cmd1 = 'sudo ip -6 neigh flush nud all nud failed nud noarp dev eth0'
         cmd2 = 'sudo ip -6 neigh list nud all dev eth0 ' \
@@ -417,7 +414,6 @@
 
     @API
     def ip_neighbors_add(self, addr, lladdr, nud='noarp'):
-        print('%s ip_neighbors_add' % self.port)
         cmd1 = 'sudo ip -6 neigh delete %s dev eth0' % addr
         cmd2 = 'sudo ip -6 neigh add %s dev eth0 lladdr %s nud %s' % (addr, lladdr, nud)
         cmd = '%s ; %s' % (cmd1, cmd2)
@@ -425,7 +421,6 @@
 
     @API
     def get_eth_ll(self):
-        print('%s get_eth_ll' % self.port)
         cmd = "ip -6 addr list dev eth0 | grep 'inet6 fe80' | awk '{print $2}'"
         ret = self.bash(cmd)[0].split('/')[0]
         return ret
@@ -468,8 +463,6 @@
             destination: the multicast destination address of ICMPv6 echo request
             length: the size of ICMPv6 echo request payload
         """
-        print('%s call multicast_Ping' % self.port)
-        print('destination: %s' % destination)
         hop_limit = 5
 
         if self.IsHost or self.IsBackboneRouter:
@@ -639,8 +632,6 @@
 
     @API
     def mdns_query(self, dst='ff02::fb', service='_meshcop._udp.local', addrs_blacklist=[]):
-        print('mdns_query %s %s %s' % (dst, service, addrs_blacklist))
-
         # For BBR-TC-03 or DH test cases (empty arguments) just send a query
         if dst == 'ff02::fb' and not addrs_blacklist:
             self.bash('dig -p 5353 @%s %s ptr' % (dst, service), sudo=False)
@@ -675,7 +666,6 @@
     # Override forceSetSlaac
     @API
     def forceSetSlaac(self, slaacAddress):
-        print('forceSetSlaac %s' % slaacAddress)
         self.bash('ip -6 addr add %s/64 dev wpan0' % slaacAddress)
 
     # Override stopListeningToAddr