diff --git a/conda-recipe/meta.yaml b/conda-recipe/meta.yaml
index c8b74aec70761b9811e64b8b55abda57c7e6165c..76ebe8304c8756f9ae5646997c244c63523460d0 100644
--- a/conda-recipe/meta.yaml
+++ b/conda-recipe/meta.yaml
@@ -1,6 +1,6 @@
 package:
   name: nexus-passoft
-  version: "2023.4.2.0"
+  version: "2023.4.3.0"
 
 source:
   path: ../
diff --git a/nexus/ChannelSelectDialog.py b/nexus/ChannelSelectDialog.py
index f568dc0501b7cf7b9a1a3da4f18bd0f0ecbbed2f..8aa57c3ed2ee1d30fbfb5d7a00179d60c4600899 100644
--- a/nexus/ChannelSelectDialog.py
+++ b/nexus/ChannelSelectDialog.py
@@ -10,8 +10,9 @@ import sys
 import os
 
 from PySide6.QtCore import Qt
-from PySide6.QtWidgets import QApplication, QTableWidgetItem
+from PySide6.QtGui import QFontMetrics
 from PySide6.QtUiTools import loadUiType
+from PySide6.QtWidgets import QApplication, QTableWidgetItem
 
 from .obspyImproved import utc_to_str
 
@@ -53,8 +54,8 @@ class ChannelSelectDialog(*load_ui('ChannelSelectDialog.ui')):
         order = self.tableWidget.horizontalHeader().sortIndicatorOrder()
         descending = False if order == Qt.AscendingOrder else True
         self.chan_map = {ind: v for ind, (_, v) in enumerate(sorted(self.chan_map.items(),
-                                                             key=lambda item: getattr(item[1], row_map[column]),
-                                                             reverse=descending))}
+                                                                    key=lambda item: getattr(item[1], row_map[column]),
+                                                                    reverse=descending))}
 
     def setupUi(self):
         super().setupUi(self)
@@ -71,7 +72,18 @@ class ChannelSelectDialog(*load_ui('ChannelSelectDialog.ui')):
                      utc_to_str(chan.start_date),
                      utc_to_str(chan.end_date),
                      )):
-                self.tableWidget.setItem(row, col, QTableWidgetItem(value))
+                item = QTableWidgetItem()
+                item.setText(value)
+                # shorten start/end time
+                if col == 3 or col == 4:
+                    # full time as tooltip
+                    item.setToolTip(value)
+                    # rounded time in table
+                    value = QFontMetrics(self.tableWidget.font()).elidedText(value,
+                                                                             Qt.ElideRight,
+                                                                             100)
+                    item.setText(value)
+                self.tableWidget.setItem(row, col, item)
             self.chan_map[row] = chan
         assert True
         self.tableWidget.resizeColumnsToContents()
diff --git a/nexus/__init__.py b/nexus/__init__.py
index 4688dc0c14281571bff686d769ba7665c573c085..b5481e17a23e07909aafffb8c22f704eaf565a3d 100644
--- a/nexus/__init__.py
+++ b/nexus/__init__.py
@@ -4,4 +4,4 @@
 
 __author__ = """IRIS PASSCAL"""
 __email__ = 'software-support@passcal.nmt.edu'
-__version__ = '2023.4.2.0'
+__version__ = '2023.4.3.0'
diff --git a/nexus/nexus.py b/nexus/nexus.py
index 623d9c50ba30e797b80d8fcd402b54277cc37fa4..5c7fa115726c357ff57a84206d728df9d9b8250b 100755
--- a/nexus/nexus.py
+++ b/nexus/nexus.py
@@ -12,7 +12,7 @@ import traceback
 
 from PySide6 import QtCore, QtGui, QtWidgets
 from PySide6.QtUiTools import loadUiType
-from PySide6.QtWidgets import QMessageBox
+from PySide6.QtWidgets import QMessageBox, QHeaderView
 from PySide6.QtCore import Qt
  
 from obspy import read_inventory
@@ -550,14 +550,21 @@ class InventoryModel(QtCore.QAbstractItemModel):
 
     def data(self, index, role):
         node = self.get_node(index)
-        if role == QtCore.Qt.DisplayRole or role == QtCore.Qt.EditRole:
-            return node.get_data(index.column())
-            # if index.column() == 0:
-                # return node.name
-            # if index.column() == 1:
-                # return node.start
-            # if index.column() == 2:
-                # return node.end
+        value = node.get_data(index.column())
+        if role == QtCore.Qt.DisplayRole:
+            # rounded start/end time on left panel
+            if index.column() == 3 or index.column() == 4:
+                value = QtGui.QFontMetrics(QtGui.QFont()).elidedText(value,
+                                                                     QtGui.Qt.ElideRight,
+                                                                     100)
+                return value
+            return value
+        if role == QtCore.Qt.EditRole:
+            return value
+        # show full start/end time as tooltip in mouse hover
+        if role == Qt.ToolTipRole:
+            if index.column() == 3 or index.column() == 4:
+                return value
         if role == QtCore.Qt.BackgroundRole:
             try:
                 if node._inv_obj._new:
@@ -929,12 +936,13 @@ class NexusWindow(*load_ui("NexusWindow.ui")):
         self.status_message('Saving{}...Done.'.format(file_name))
 
     def reshape_tree(self):
-        '''
+        """
         Expands entire tree and makes contents fit columns
-        '''
+        """
         self.uiInventoryTree.expandAll()
         for col in range(self.inv_model.columnCount(None)):
             self.uiInventoryTree.resizeColumnToContents(col)
+        self.uiInventoryTree.header().setSectionResizeMode(QHeaderView.Fixed)
     
     def closeEvent(self, event):
         """ 
diff --git a/nexus/obspyImproved.py b/nexus/obspyImproved.py
index 97fef2fd9ff545e1e91e1c8fee1878242729d65b..c71617bbc94f8947b412239ebcff6b6fc536176c 100644
--- a/nexus/obspyImproved.py
+++ b/nexus/obspyImproved.py
@@ -687,10 +687,12 @@ class InventoryIm(Inventory):
 # Utitlity functions. Live elsewhere?
 def utc_to_str(date):
     try:
-        return '{}.{:03d}.{:02d}:{:02d}'.format(date.year,
-                                             date.julday,
-                                             date.hour,
-                                             date.minute)
+        return '{}.{:03d}.{:02d}:{:02d}.{:>02d}.{:>06d}'.format(date.year,
+                                                                date.julday,
+                                                                date.hour,
+                                                                date.minute,
+                                                                date.second,
+                                                                date.microsecond)
     except:
         try:
             return str(date)
diff --git a/setup.py b/setup.py
index 104fb65d173716a2cbe632b8ee848a9e48023dba..9e54d29bfeab058fde9b35d39f82f759753d0835 100644
--- a/setup.py
+++ b/setup.py
@@ -50,6 +50,6 @@ setup(
     packages=find_packages(include=['nexus']),
     test_suite='tests',
     url='https://git.passcal.nmt.edu/software_public/passoft/nexus',
-    version='2023.4.2.0',
+    version='2023.4.3.0',
     zip_safe=False,
 )