 
     func timerUpdateLocationEvent() {
         print("t L")
-        locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation
-        locationManager.distanceFilter = 0.1
+        locationManager.desiredAccuracy = kCLLocationAccuracyBest
+        locationManager.distanceFilter = 1
     }
 
     func timerSendLocationEvent() {

    var timerUpdateGui: Timer!
    var locationsMarkersArr: [Data]!
    var previousLocationTime: Date!

    func deviceUuid() -> String {
        return (UIDevice.current.identifierForVendor?.uuidString)!

        sendLocationsToCloud()
    }

    func updateLocation() -> Bool {
        let location = locationManager.location! as CLLocation
        let horizontalAccuracy = location.horizontalAccuracy

        print("try updateLocation with horizontalAccuracy:", horizontalAccuracy)
        if (horizontalAccuracy > MIN_GPS_ACCURACY) {
            print("----not updateLocation. Min accuracy")
            return false
        }

        let newLocationTime = Date()
        print("timediff", newLocationTime.timeIntervalSince(previousLocationTime))
        if (newLocationTime.timeIntervalSince(previousLocationTime) < 5) {
            if (Double(horizontalAccuracy) < Double(previousHorizontalAccuracy)) {
                print("----too frequently, but accuracy better. Continue")
            } else {
                print("----not updateLocation. Too frequently")
                return false
            }
        }

        let jsonData = try! JSONSerialization.data(withJSONObject: [
            "deviceId": deviceUuid(),
            "latitude": location.coordinate.latitude,
            "longitude": location.coordinate.longitude,
            "horizontalAccuracy": horizontalAccuracy,
            "verticalAccuracy": location.verticalAccuracy,
            "timestamp": newLocationTime.timeIntervalSince1970,
            "speed": location.speed,
