diff --git a/Code/Mantid/Nexus/src/LoadLogsFromSNSNexus.cpp b/Code/Mantid/Nexus/src/LoadLogsFromSNSNexus.cpp
index e7aced3fdcf3e712f99f0f066f95d43b748a5427..e09f714ce4bb24bb2b85fc25fef68630c67e833a 100644
--- a/Code/Mantid/Nexus/src/LoadLogsFromSNSNexus.cpp
+++ b/Code/Mantid/Nexus/src/LoadLogsFromSNSNexus.cpp
@@ -85,7 +85,7 @@ void LoadLogsFromSNSNexus::exec()
   {
     std::string entry_name(it->first);
     std::string entry_class(it->second);
-    if (entry_class == "NXlog")
+    if ((entry_class == "NXlog") ||(entry_class == "NXpositioner"))
     {
       loadSampleLog(file, entry_name, entry_class);
     }
diff --git a/Code/Mantid/Nexus/test/LoadLogsFromSNSNexusTest.h b/Code/Mantid/Nexus/test/LoadLogsFromSNSNexusTest.h
index 9e457f6bcc2eb6d0284a7eb4289ad2775b491fbf..e079242da90f35889a8b5fe61a5cc1a52f002c4d 100644
--- a/Code/Mantid/Nexus/test/LoadLogsFromSNSNexusTest.h
+++ b/Code/Mantid/Nexus/test/LoadLogsFromSNSNexusTest.h
@@ -59,6 +59,12 @@ public:
         TS_ASSERT_DELTA( val, 10914.857421875, 1e-6);
         TS_ASSERT_EQUALS(prop->units(), "Phase,uS");
 
+        //NXPositioner
+        prop = run.getLogData("chi");
+        val = boost::lexical_cast<double>(prop->value());
+        TS_ASSERT_DELTA( val, 45.0, 1e-6);
+        TS_ASSERT_EQUALS(prop->units(), "degree");
+
         TimeSeriesProperty<double> * tsp;
 
         prop = run.getLogData("Phase1");