docs: def unpack_data(self, usnap=.2):  # 2/10th second sleep between empty requests
          """ Iterates over socket response and unpacks values of object attributes.
          Sleeping here has the greatest response to cpu cycles short of blocking sockets
          """
          for new_data in self.socket:
              if new_data:
                  self.data_stream.unpack(new_data)
              else:
                  sleep(usnap)