def update(self):
        if self._rpc_client:
            # trigger update (async though so only pick up response on next update)
            self._rpc_client.update()
        
            # GPS data
            self.model.GPS_latitude = self._rpc_client.data.lat
            self.model.GPS_longitude = self._rpc_client.data.lon
        
            self.model.GPS_heading = self._rpc_client.data.gps_heading
            self.model.GPS_speed = self._rpc_client.data.gps_speed
            self.model.GPS_altitude = self._rpc_client.data.altitude
        
            self.model.GPS_fix = self._rpc_client.data.fix
            self.model.GPS_satellite_count = self._rpc_client.data.num_sat
        
            # compass data
            self.model.compass_heading = self._rpc_client.data.compass_heading
        
            # time data
            self.model.time = self._rpc_client.data.timestamp
            #strftime(self._rpc_client.data.timestamp).isoformat()
            self.model.date = self._rpc_client.data.datestamp
            #strftime(self._rpc_client.data.datestamp).isoformat()
        
            # other data
            self.model.temperature = self._rpc_client.data.temperature

            # some debugging:
            logging.debug("GPS:\tLat = %s" % str(self.model.GPS_latitude))
            logging.debug("GPS:\tLon = %s" % str(self.model.GPS_longitude))
            logging.debug("GPS:\tHead = %s" % str(self.model.GPS_heading))
            logging.debug("GPS:\tSpeed = %s" % str(self.model.GPS_speed))
            logging.debug("GPS:\tAlt = %s" % str(self.model.GPS_altitude))
            logging.debug("Compass:\tHead = %s" % str(self.model.compass_heading))
    
    # Control modes (Manual, AutoPilot)
Utility method to default to 'normal' state rules in unserialization.
dataset/ETHPy150Open FishPi/FishPi-POCV---Command---Control/fishpi/ui/view_model_wx.py/MainViewController.update--crossover with--dataset/ETHPy150Open nlloyd/SubliminalCollaborator/libs/twisted/spread/jelly.py/setInstanceState