When I pass in {timeout:5000}, it doesn't appear to get used... geolocation.getLocation({timeout:5000}).then(function(data){ }, function(error){ //--- never gets called. }