diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/README.md b/Handbook/src/getting-started/setup-virtual-hand-meshes/README.md
index 452e24c4..4fe5120f 100644
--- a/Handbook/src/getting-started/setup-virtual-hand-meshes/README.md
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/README.md
@@ -147,3 +147,111 @@ However, if you're looking to get up and running with the SenseGlove Unreal Engi
## Setting up the SenseGlove Grab and Touch Sockets
+
+To ensure the Grab/Release and Touch systems function correctly, multiple sockets must be set up on each virtual hand mesh with precise locations and rotations. Before version [`v2.1.0`](../../appendix/changelog.html) of the SenseGlove Unreal Engine Plugin, this was a manual and time-consuming process. However, with the `v2.1.0` release, the plugin now includes the SenseGlove Sockets Editor, a built-in tool specifically designed for this task.
+
+> [!NOTE]
+> If for any reason you still prefer to manually set up the sockets,
+> [a detailed video tutorial](https://youtu.be/jN4VcfXVrTA) is available.
+
+
+
+
+
+### Accessing the SenseGlove Sockets Editor
+
+The SenseGlove Sockets Editor can be utilized in three ways:
+
+1. By right-clicking on any Skeleton or Skeletal Mesh asset inside the Unreal Content Browser.
+
+
+
+> [!TIP]
+> You can also perform Sockets Editor actions in bulk by selecting multiple
+> assets of the same type and right-clicking on one of them. Note that if the
+> selected assets are not all of the same type, Sockets Editor actions will not
+> appear (e.g. selecting assets of type Skeletons and Skeletal Meshes together).
+
+
+
+2. From the `Asset` menu in the Skeleton Editor or Skeletal Mesh Editor for any open Skeleton or Skeletal Mesh asset.
+
+
+
+3. From the Skeleton Editor or Skeletal Mesh Editor toolbar for any open Skeleton or Skeletal Mesh asset.
+
+
+
+The SenseGlove Sockets Editor currently offers two actions:
+
+1. `Add SenseGlove Sockets`: which adds and sets up the SenseGlove grab and touch sockets to any virtual hand mesh that adheres to the Epic rig and bone structure.
+2. `Clear Existing Sockets`: which destructively clears all existing sockets; SenseGlove or otherwise, from any mesh.
+
+> [!IMPORTANT]
+> Simply performing any of these actions won't permanently modify your assets.
+> In fact, if you close the Unreal Editor without saving your assets first, all
+> changes performed by the SenseGlove Sockets Editor will be lost forever. This
+> is by design and the plugin will leave this final choice to the user. So, in
+> order to apply the changes permanently, you must save the assets manually.
+
+### Adding the SenseGlove Sockets
+
+When you invoke the `Add SenseGlove Sockets` action, the Sockets Editor will prompt you for confirmation:
+
+
+
+If it succeeds at adding the standard SenseGlove sockets, you will receive a confirmation message:
+
+
+
+After closing the dialog, the editors for the affected Skeleton and Skeletal Mesh assets will open, displaying the newly added sockets:
+
+
+
+To ensure the changes persist, save the assets to disk.
+
+> [!NOTE]
+> The `Add SenseGlove Sockets` action can fail for various reasons, so it's
+> important to investigate and identify the cause if an issue arises.
+
+
+
+
+
+> [!IMPORTANT]
+> A common cause of failure is that the SenseGlove sockets have already been set
+> up, or the meshes you’re using already have the necessary sockets. In this
+> case, consider using the
+> [`Clear Existing Sockets`](#clearing-all-existing-sockets) action first.
+
+> [!CAUTION]
+> Another common cause of failure is if your virtual hand meshes share a skeleton. As noted in [the Compatible Virtual Hand Meshes section](#compatible-virtual-hand-meshes), the SenseGlove Sockets Editor does not support skeletal meshes that share their skeleton. You may need to [export](#exporting-the-virtual-hand-meshes-from-the-vrtemplate) and [re-import](#importing-the-virtual-hand-meshes-into-your-own-project) the virtual hand meshes in in a compatible manner first.
+
+In any case, the SenseGlove Sockets Editor reports all failures in the Unreal Editor logs. To view and investigate the logs, simply head to the `Window` menu and click on `Output Log`:
+
+
+
+For example, in the following screenshots the following errors are stated: `Socket 'GrabAttachPoint' already exists on '/Game/SGHandbook/SKM_MannyXR_left.SKM_MannyXR_left'; refuse to add a duplicate!`.
+
+```
+LogGeneric: Error: [ERROR C:\Users\mamadou\Desktop\dev\SGHandbook\Plugins\SenseGlove\Source\SenseGloveEditor\Private\SGEditor\SGAssetUtils.cpp FSGAssetUtils::FImpl::AddSocket 394] Socket 'GrabAttachPoint' already exists on '/Game/SGHandbook/SKM_MannyXR_left.SKM_MannyXR_left'; refuse to add a duplicate!
+LogGeneric: Error: [ERROR C:\Users\mamadou\Desktop\dev\SGHandbook\Plugins\SenseGlove\Source\SenseGloveEditor\Private\SGEditor\SGAssetUtils.cpp FSGAssetUtils::FImpl::AddGrabAttachPointSocket 442] Failed to add the socket 'GrabAttachPoint' to '/Game/SGHandbook/SKM_MannyXR_left.SKM_MannyXR_left'!
+LogGeneric: Error: [ERROR C:\Users\mamadou\Desktop\dev\SGHandbook\Plugins\SenseGlove\Source\SenseGloveEditor\Private\SGEditor\SGAssetUtils.cpp FSGAssetUtils::FImpl::AddSenseGloveSockets 587] Failed to add the grab attach point socket to asset '/Game/SGHandbook/SKM_MannyXR_left.SKM_MannyXR_left'!
+LogGeneric: Error: [ERROR C:\Users\mamadou\Desktop\dev\SGHandbook\Plugins\SenseGlove\Source\SenseGloveEditor\Private\SGEditor\SGAssetUtils.cpp FSGAssetUtils::FImpl::AddSenseGloveSockets 741] Failed to add the SenseGlove sockets to the asset '/Game/SGHandbook/SKM_MannyXR_left.SKM_MannyXR_left'!
+```
+
+
+
+### Clearing All Existing Sockets
+
+When you invoke the `Clear Existing Sockets` action, the Sockets Editor will ask for your confirmation:
+
+
+
+If successful, you will receive a message indicating all the existing sockets have been cleared:
+
+
+
+After closing the dialog, the editors for the affected Skeleton and Skeletal Mesh assets will open, displaying the affected assets with all sockets cleared:
+
+
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-confirmation.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-confirmation.png
new file mode 100755
index 00000000..7b3fd9b2
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-confirmation.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:24e4860db3766306d397b3e803e0dd9854461cf6d12f95938dceed9ad36f4103
+size 11941
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-failure-1.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-failure-1.png
new file mode 100755
index 00000000..2030b66d
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-failure-1.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b8926be833deedb09234a5e8b9436b82b637be52b238e37c06a0441ddac72c86
+size 10082
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-failure-2.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-failure-2.png
new file mode 100755
index 00000000..9e6b6477
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-failure-2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:228b1e2d831646ce194b88e4c922422a8f100a79f23508036fd30c7855448687
+size 14671
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-success.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-success.png
new file mode 100755
index 00000000..ed6ef4eb
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-add-sockets-success.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:19441233849ade89c0b4d30d05587ae50e2fdd99b11b80770976e7e689e58bf5
+size 16117
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-added-sockets.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-added-sockets.png
new file mode 100755
index 00000000..57619f0f
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-added-sockets.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:af753301815ce94a3c51bc1d76dd771b5e4a1d2f98cde60221c50e4177f59e89
+size 1205454
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-clear-sockets-confirmation.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-clear-sockets-confirmation.png
new file mode 100755
index 00000000..4b50d6fc
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-clear-sockets-confirmation.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8a9a7aa49527256e524b88b2e95320cd571d30843ce6f36fc8feab9cc3b04edb
+size 13439
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-clear-sockets-success.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-clear-sockets-success.png
new file mode 100755
index 00000000..5c0c9905
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-clear-sockets-success.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:963a99cb79fa48bc0806270f35d6dc1e4044c24ee3a2e02b445be21c0e663c4a
+size 15442
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-failure-output-log.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-failure-output-log.png
new file mode 100755
index 00000000..2bee6a52
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-failure-output-log.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9304875ef4174cc2875503417088d3573a53ca050cd2b19568b9b9e64016c79c
+size 1151467
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-failure-output-logs-socket-already-exists.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-failure-output-logs-socket-already-exists.png
new file mode 100755
index 00000000..ea98911e
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-failure-output-logs-socket-already-exists.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:31a6118701cfa603893b8dfbdeef68dbda6a8e99006b743b87e974b67f50293f
+size 226112
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-content-browser-bulk-actions.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-content-browser-bulk-actions.png
new file mode 100755
index 00000000..38772161
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-content-browser-bulk-actions.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5cd177495f00454649d615a9ff5c1559b418848fdc870bbe351caad8dec6680c
+size 1229105
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-content-browser.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-content-browser.png
new file mode 100755
index 00000000..c23f40ae
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-content-browser.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f322f5c78387c2e0e12832459043045295cf28b5e1dc9dc69a65b4db10cfde24
+size 1238049
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-skeleton-skeletal-mesh-editor-asset-menu.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-skeleton-skeletal-mesh-editor-asset-menu.png
new file mode 100755
index 00000000..57fd3846
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-skeleton-skeletal-mesh-editor-asset-menu.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:15ed42221f5946ea6eb31751b8b5c5deb6d23b195038f2582e87cb9d3808ea5e
+size 962708
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-skeleton-skeletal-mesh-editor-toolbar.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-skeleton-skeletal-mesh-editor-toolbar.png
new file mode 100755
index 00000000..a029a859
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-from-skeleton-skeletal-mesh-editor-toolbar.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9df428ca88b1ae15f3d4e81b15681e2e05165fd95467917c337af2e6622e4a2c
+size 1433279
diff --git a/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-sockets-cleared.png b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-sockets-cleared.png
new file mode 100755
index 00000000..0bb11f6e
--- /dev/null
+++ b/Handbook/src/getting-started/setup-virtual-hand-meshes/senseglove-sockets-editor-sockets-cleared.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3fd63ab7e53c530e6e9e784eb4d5564ea90063da5381ae2eb5e2443e0c3a32fe
+size 1215018