diff --git a/homeassistant/components/device_tracker/gpslogger.py b/homeassistant/components/device_tracker/gpslogger.py
index 2e897ccb10c3cec8ba03c38732b78c21385432f5..d8e7ca8b0747eb7d95b3538999d8f042e6d533e8 100644
--- a/homeassistant/components/device_tracker/gpslogger.py
+++ b/homeassistant/components/device_tracker/gpslogger.py
@@ -63,10 +63,20 @@ class GPSLoggerView(HomeAssistantView):
             accuracy = int(float(data['accuracy']))
         if 'battery' in data:
             battery = float(data['battery'])
+        attrs = {}
+        if 'speed' in data:
+            attrs['speed'] = float(data['speed'])
+        if 'direction' in data:
+            attrs['direction'] = float(data['direction'])
+        if 'altitude' in data:
+            attrs['altitude'] = float(data['altitude'])
+        if 'provider' in data:
+            attrs['provider'] = data['provider']
 
         yield from hass.loop.run_in_executor(
             None, partial(self.see, dev_id=device,
                           gps=gps_location, battery=battery,
-                          gps_accuracy=accuracy))
+                          gps_accuracy=accuracy,
+                          attributes=attrs))
 
         return 'Setting location for {}'.format(device)