diff --git a/Testing/Data/SystemTest/HB3A_data.nxs.md5 b/Testing/Data/SystemTest/HB3A_data.nxs.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d3279946092339cdf048f3068f8ee771fe869166
--- /dev/null
+++ b/Testing/Data/SystemTest/HB3A_data.nxs.md5
@@ -0,0 +1 @@
+f524fad52590c9f68172293d05d01d52
diff --git a/Testing/SystemTests/tests/analysis/ConvertWANDSCDtoQTest.py b/Testing/SystemTests/tests/analysis/ConvertWANDSCDtoQTest.py
index e0887250cacdbf4d1b0dc5bc9f2c393d87d8bb8f..de4dcde402de26e147a85cd393533b203fe8cac7 100644
--- a/Testing/SystemTests/tests/analysis/ConvertWANDSCDtoQTest.py
+++ b/Testing/SystemTests/tests/analysis/ConvertWANDSCDtoQTest.py
@@ -63,3 +63,53 @@ class ConvertWANDSCDtoQTest(systemtesting.MantidSystemTest):
             return False
 
         return True
+
+
+class ConvertWANDSCDtoQ_HB3A_Test(systemtesting.MantidSystemTest):
+    def requiredMemoryMB(self):
+            return 8000
+
+    def runTest(self):
+        LoadMD('HB3A_data.nxs', OutputWorkspace='ConvertWANDSCDtoQ_HB3ATest_data')
+
+        SetGoniometer('ConvertWANDSCDtoQ_HB3ATest_data',
+                      Axis0='omega,0,1,0,-1',
+                      Axis1='chi,0,0,1,-1',
+                      Axis2='phi,0,1,0,-1')
+
+        ConvertWANDSCDtoQ(InputWorkspace='ConvertWANDSCDtoQ_HB3ATest_data',
+                          Wavelength=1.008,
+                          BinningDim0='-5.0125,5.0125,401',
+                          BinningDim1='-2.0125,3.0125,201',
+                          BinningDim2='-0.0125,5.0125,201',
+                          KeepTemporaryWorkspaces=True,
+                          OutputWorkspace='ConvertWANDSCDtoQTest_Q')
+
+        ConvertWANDSCDtoQTest_peaks=FindPeaksMD(InputWorkspace='ConvertWANDSCDtoQTest_Q_data',
+                                                PeakDistanceThreshold=0.25,
+                                                DensityThresholdFactor=20000,
+                                                CalculateGoniometerForCW=True,
+                                                Wavelength=1.008,
+                                                FlipX=True,
+                                                InnerGoniometer=False)
+
+        IndexPeaks(ConvertWANDSCDtoQTest_peaks)
+
+        self.assertEqual(ConvertWANDSCDtoQTest_peaks.getNumberPeaks(), 1)
+
+        peak = ConvertWANDSCDtoQTest_peaks.getPeak(0)
+        self.assertDelta(peak.getWavelength(), 1.008, 1e-7)
+        np.testing.assert_allclose(peak.getQSampleFrame(), [-0.425693,1.6994,2.30206], rtol=1e-5)
+        np.testing.assert_array_equal(peak.getHKL(), [0, 0, 6])
+
+        ConvertWANDSCDtoQTest_HKL = ConvertWANDSCDtoQ(InputWorkspace='ConvertWANDSCDtoQ_HB3ATest_data',
+                                                      Wavelength=1.008,
+                                                      Frame='HKL',
+                                                      BinningDim0='-1.01,1.01,101',
+                                                      BinningDim1='-1.01,1.01,101',
+                                                      BinningDim2='4.99,7.01,101',
+                                                      KeepTemporaryWorkspaces=True)
+
+        signal = ConvertWANDSCDtoQTest_HKL.getSignalArray()
+        # peak should be roughly the center of the volume
+        np.testing.assert_array_equal(np.unravel_index(np.nanargmax(signal), signal.shape), (50, 51, 53))
diff --git a/docs/source/algorithms/ConvertWANDSCDtoQ-v1.rst b/docs/source/algorithms/ConvertWANDSCDtoQ-v1.rst
index 8dcd25ac2f9f1647699ced7b764a688d088448b2..54a1f067ae4a74a8c0a2db2dffcce9d08d4aa883 100644
--- a/docs/source/algorithms/ConvertWANDSCDtoQ-v1.rst
+++ b/docs/source/algorithms/ConvertWANDSCDtoQ-v1.rst
@@ -15,6 +15,8 @@ output Q sample space, then the UB can be found and used to then
 convert to HKL. The default binning ranges are good for converting to
 Q sample with the default wavelength.
 
+This algorithm will also work for data from DEMAND (HB3A).
+
 The normalization is calculated in the same way as
 :ref:`algm-MDNormSCD` but with the solid angle and flux coming from
 the NormalisationWorkspace, normally vanadium. A brief introduction to
diff --git a/docs/source/release/v4.3.0/diffraction.rst b/docs/source/release/v4.3.0/diffraction.rst
index 8b8b664de40e4880bfd094ed05a5834f1f7f4014..1f526ddf16a2893f72b790fb4179ac8e7eafa403 100644
--- a/docs/source/release/v4.3.0/diffraction.rst
+++ b/docs/source/release/v4.3.0/diffraction.rst
@@ -18,7 +18,9 @@ Engineering Diffraction
 Single Crystal Diffraction
 --------------------------
 
+- Support added for DEMAND (HB3A) to the algorithms :ref:`ConvertWANDSCDtoQ <algm-ConvertWANDSCDtoQ-v1>` and :ref:`FindPeaksMD <algm-FindPeaksMD-v1>` in order to handle additional goniometers.
+
 Imaging
 -------
 
-:ref:`Release 4.3.0 <v4.3.0>`
\ No newline at end of file
+:ref:`Release 4.3.0 <v4.3.0>`