code: def sw_reset(self):
          
          self.write8(_STATUS_BASE, _STATUS_SWRST, 0xFF)
          time.sleep(.500)
  
          chip_id = self.read8(_STATUS_BASE, _STATUS_HW_ID)
  
          if chip_id != _HW_ID_CODE:
              raise RuntimeError("Seesaw hardware ID returned (0x{:x}) is not "
                                 "correct! Expected 0x{:x}. Please check your wiring."
                                 .format(chip_id, _HW_ID_CODE))
  
          pid = self.get_version() >> 16
          if pid == _CRICKIT_PID:
              from adafruit_seesaw.crickit import Crickit_Pinmap
              self.pin_mapping = Crickit_Pinmap
          elif pid == _ROBOHATMM1_PID:
              from adafruit_seesaw.robohat import MM1_Pinmap
              self.pin_mapping = MM1_Pinmap
          else:
              from adafruit_seesaw.samd09 import SAMD09_Pinmap
              self.pin_mapping = SAMD09_Pinmap
docs: Trigger a software reset of the SeeSaw chip