diff --git a/data/models/misc/cube.obj b/data/models/misc/cube.obj
index 7260ea9f7865406d2a5ced66b533e2ed80e61fb9..297cfee546ae96a89fd6b82bf1b68acf48c9140e 100644
--- a/data/models/misc/cube.obj
+++ b/data/models/misc/cube.obj
@@ -1,6 +1,6 @@
 # Blender v2.90.1 OBJ File: ''
 # www.blender.org
-mtllib untitled.mtl
+# mtllib untitled.mtl
 o Cube
 v 1.000000 -1.000000 1.000000
 v 1.000000 1.000000 1.000000
@@ -30,7 +30,7 @@ vn -1.0000 0.0000 0.0000
 vn 0.0000 1.0000 0.0000
 vn 1.0000 0.0000 0.0000
 vn 0.0000 0.0000 1.0000
-usemtl Material
+# usemtl Material
 s off
 f 5/1/1 3/2/1 1/3/1
 f 3/2/2 8/4/2 4/5/2
diff --git a/data/models/rofi/pad_board.obj b/data/models/rofi/pad_board.obj
new file mode 100644
index 0000000000000000000000000000000000000000..297cfee546ae96a89fd6b82bf1b68acf48c9140e
--- /dev/null
+++ b/data/models/rofi/pad_board.obj
@@ -0,0 +1,46 @@
+# Blender v2.90.1 OBJ File: ''
+# www.blender.org
+# mtllib untitled.mtl
+o Cube
+v 1.000000 -1.000000 1.000000
+v 1.000000 1.000000 1.000000
+v 1.000000 -1.000000 -1.000000
+v 1.000000 1.000000 -1.000000
+v -1.000000 -1.000000 1.000000
+v -1.000000 1.000000 1.000000
+v -1.000000 -1.000000 -1.000000
+v -1.000000 1.000000 -1.000000
+vt 0.875000 0.500000
+vt 0.625000 0.750000
+vt 0.625000 0.500000
+vt 0.375000 1.000000
+vt 0.375000 0.750000
+vt 0.625000 0.000000
+vt 0.375000 0.250000
+vt 0.375000 0.000000
+vt 0.375000 0.500000
+vt 0.125000 0.750000
+vt 0.125000 0.500000
+vt 0.625000 0.250000
+vt 0.875000 0.750000
+vt 0.625000 1.000000
+vn 0.0000 -1.0000 0.0000
+vn 0.0000 0.0000 -1.0000
+vn -1.0000 0.0000 0.0000
+vn 0.0000 1.0000 0.0000
+vn 1.0000 0.0000 0.0000
+vn 0.0000 0.0000 1.0000
+# usemtl Material
+s off
+f 5/1/1 3/2/1 1/3/1
+f 3/2/2 8/4/2 4/5/2
+f 7/6/3 6/7/3 8/8/3
+f 2/9/4 8/10/4 6/11/4
+f 1/3/5 4/5/5 2/9/5
+f 5/12/6 2/9/6 6/7/6
+f 5/1/1 7/13/1 3/2/1
+f 3/2/2 7/14/2 8/4/2
+f 7/6/3 5/12/3 6/7/3
+f 2/9/4 4/5/4 8/10/4
+f 1/3/5 3/2/5 4/5/5
+f 5/12/6 1/3/6 2/9/6
diff --git a/data/models/rofi/pad_connector.obj b/data/models/rofi/pad_connector.obj
new file mode 100644
index 0000000000000000000000000000000000000000..d15a0dfbb61c1215a41502e7872c986301cc1482
--- /dev/null
+++ b/data/models/rofi/pad_connector.obj
@@ -0,0 +1,425 @@
+# Blender 3.6.2
+# www.blender.org
+o roficom
+v 0.037365 -0.247208 -0.066987
+v 0.037365 -0.247208 -0.000000
+v 0.000000 -0.250000 -0.066987
+v 0.000000 -0.250000 -0.000000
+v -0.037365 -0.247208 -0.066987
+v -0.037365 -0.247208 -0.000000
+v -0.073895 -0.238893 -0.066987
+v -0.073895 -0.238893 -0.000000
+v -0.108775 -0.225242 -0.066987
+v -0.108775 -0.225242 -0.000000
+v -0.141225 -0.206560 -0.066987
+v -0.141225 -0.206560 -0.000000
+v -0.170520 -0.183263 -0.066987
+v -0.170520 -0.183263 -0.000000
+v -0.196006 -0.155872 -0.066987
+v -0.196006 -0.155872 -0.000000
+v -0.217113 -0.125000 -0.066987
+v -0.217113 -0.125000 -0.000000
+v -0.233371 -0.091335 -0.066987
+v -0.233371 -0.091335 -0.000000
+v -0.244415 -0.055630 -0.066987
+v -0.244415 -0.055630 -0.000000
+v -0.250000 -0.018683 -0.066987
+v -0.250000 -0.018683 -0.000000
+v -0.250000 0.018683 -0.066987
+v -0.250000 0.018683 -0.000000
+v -0.244415 0.055630 -0.066987
+v -0.244415 0.055630 -0.000000
+v -0.233371 0.091335 -0.066987
+v -0.233371 0.091335 -0.000000
+v -0.217113 0.125000 -0.066987
+v -0.217113 0.125000 -0.000000
+v -0.196006 0.155872 -0.066987
+v -0.196006 0.155872 -0.000000
+v -0.170520 0.183263 -0.066987
+v -0.170520 0.183263 -0.000000
+v -0.141225 0.206560 -0.066987
+v -0.141225 0.206560 -0.000000
+v -0.108775 0.225242 -0.066987
+v -0.108775 0.225242 -0.000000
+v -0.073895 0.238893 -0.066987
+v -0.073895 0.238893 -0.000000
+v -0.037365 0.247208 -0.066987
+v -0.037365 0.247208 -0.000000
+v -0.000000 0.250000 -0.066987
+v -0.000000 0.250000 -0.000000
+v 0.037365 0.247208 -0.066987
+v 0.037365 0.247208 -0.000000
+v 0.073895 0.238893 -0.066987
+v 0.073895 0.238893 -0.000000
+v 0.108775 0.225242 -0.066987
+v 0.108775 0.225242 -0.000000
+v 0.141225 0.206560 -0.066987
+v 0.141225 0.206560 -0.000000
+v 0.170520 0.183263 -0.066987
+v 0.170520 0.183263 -0.000000
+v 0.196006 0.155872 -0.066987
+v 0.196006 0.155872 -0.000000
+v 0.217113 0.125000 -0.066987
+v 0.217113 0.125000 -0.000000
+v 0.233371 0.091335 -0.066987
+v 0.233371 0.091335 -0.000000
+v 0.244415 0.055630 -0.066987
+v 0.244415 0.055630 -0.000000
+v 0.250000 0.018683 -0.066987
+v 0.250000 0.018683 -0.000000
+v 0.250000 -0.018683 -0.066987
+v 0.250000 -0.018683 -0.000000
+v 0.244415 -0.055630 -0.066987
+v 0.244415 -0.055630 -0.000000
+v 0.233371 -0.091335 -0.066987
+v 0.233371 -0.091335 -0.000000
+v 0.217113 -0.125000 -0.066987
+v 0.217113 -0.125000 -0.000000
+v 0.196006 -0.155872 -0.066987
+v 0.196006 -0.155872 -0.000000
+v 0.170520 -0.183263 -0.066987
+v 0.170520 -0.183263 -0.000000
+v 0.141225 -0.206560 -0.066987
+v 0.141225 -0.206560 -0.000000
+v 0.108775 -0.225242 -0.066987
+v 0.108775 -0.225242 -0.000000
+v 0.073895 -0.238893 -0.066987
+v 0.073895 -0.238893 -0.000000
+vn 0.1486 -0.9889 -0.0000
+vn -0.0000 -1.0000 -0.0000
+vn -0.1486 -0.9889 -0.0000
+vn -0.2940 -0.9558 -0.0000
+vn -0.4329 -0.9014 -0.0000
+vn -0.5623 -0.8270 -0.0000
+vn -0.6792 -0.7340 -0.0000
+vn -0.7810 -0.6245 -0.0000
+vn -0.8654 -0.5010 -0.0000
+vn -0.9305 -0.3662 -0.0000
+vn -0.9748 -0.2231 -0.0000
+vn -0.9972 -0.0749 -0.0000
+vn -0.9972 0.0749 -0.0000
+vn -0.9748 0.2231 -0.0000
+vn -0.9305 0.3662 -0.0000
+vn -0.8654 0.5010 -0.0000
+vn -0.7810 0.6245 -0.0000
+vn -0.6792 0.7340 -0.0000
+vn -0.5623 0.8270 -0.0000
+vn -0.4329 0.9014 -0.0000
+vn -0.2940 0.9558 -0.0000
+vn -0.1486 0.9889 -0.0000
+vn -0.0000 1.0000 -0.0000
+vn 0.1486 0.9889 -0.0000
+vn 0.2940 0.9558 -0.0000
+vn 0.4329 0.9014 -0.0000
+vn 0.5623 0.8270 -0.0000
+vn 0.6792 0.7340 -0.0000
+vn 0.7810 0.6245 -0.0000
+vn 0.8654 0.5010 -0.0000
+vn 0.9305 0.3662 -0.0000
+vn 0.9748 0.2231 -0.0000
+vn 0.9972 0.0749 -0.0000
+vn 0.9972 -0.0749 -0.0000
+vn 0.9748 -0.2231 -0.0000
+vn 0.9305 -0.3662 -0.0000
+vn 0.8654 -0.5010 -0.0000
+vn 0.7810 -0.6245 -0.0000
+vn 0.6792 -0.7340 -0.0000
+vn 0.5623 -0.8270 -0.0000
+vn 0.4329 -0.9014 -0.0000
+vn 0.2940 -0.9558 -0.0000
+vn -0.0000 -0.0000 -1.0000
+vn -0.0000 -0.0000 1.0000
+vt -0.669873 7.479983
+vt -0.000000 7.479983
+vt -0.669873 7.853982
+vt -0.000000 7.853982
+vt -0.669873 -7.853982
+vt -0.000000 -7.853982
+vt -0.669873 -7.479983
+vt -0.000000 -7.479983
+vt -0.669873 -7.105983
+vt -0.000000 -7.105983
+vt -0.669873 -6.731984
+vt -0.000000 -6.731984
+vt -0.669873 -6.357985
+vt -0.000000 -6.357985
+vt -0.669873 -5.983986
+vt -0.000000 -5.983986
+vt -0.669873 -5.609987
+vt -0.000000 -5.609987
+vt -0.669873 -5.235988
+vt -0.000000 -5.235988
+vt -0.669873 -4.861989
+vt -0.000000 -4.861989
+vt -0.669873 -4.487990
+vt -0.000000 -4.487990
+vt -0.669873 -4.113990
+vt -0.000000 -4.113990
+vt -0.669873 -3.739991
+vt -0.000000 -3.739991
+vt -0.669873 -3.365992
+vt -0.000000 -3.365992
+vt -0.669873 -2.991993
+vt -0.000000 -2.991993
+vt -0.669873 -2.617994
+vt -0.000000 -2.617994
+vt -0.669873 -2.243995
+vt -0.000000 -2.243995
+vt -0.669873 -1.869996
+vt -0.000000 -1.869996
+vt -0.669873 -1.495997
+vt -0.000000 -1.495997
+vt -0.669873 -1.121997
+vt -0.000000 -1.121997
+vt -0.669873 -0.747998
+vt -0.000000 -0.747998
+vt -0.669873 -0.373999
+vt -0.000000 -0.373999
+vt -0.669873 0.000000
+vt -0.000000 0.000000
+vt -0.669873 0.373999
+vt -0.000000 0.373999
+vt -0.669873 0.747998
+vt -0.000000 0.747998
+vt -0.669873 1.121997
+vt -0.000000 1.121997
+vt -0.669873 1.495997
+vt -0.000000 1.495997
+vt -0.669873 1.869996
+vt -0.000000 1.869996
+vt -0.669873 2.243995
+vt -0.000000 2.243995
+vt -0.669873 2.617994
+vt -0.000000 2.617994
+vt -0.669873 2.991993
+vt -0.000000 2.991993
+vt -0.669873 3.365992
+vt -0.000000 3.365992
+vt -0.669873 3.739991
+vt -0.000000 3.739991
+vt -0.669873 4.113990
+vt -0.000000 4.113990
+vt -0.669873 4.487990
+vt -0.000000 4.487990
+vt -0.669873 4.861989
+vt -0.000000 4.861989
+vt -0.669873 5.235988
+vt -0.000000 5.235988
+vt -0.669873 5.609987
+vt -0.000000 5.609987
+vt -0.669873 5.983986
+vt -0.000000 5.983986
+vt -0.669873 6.357985
+vt -0.000000 6.357985
+vt -0.669873 6.731984
+vt -0.000000 6.731984
+vt -0.669873 7.105983
+vt -0.000000 7.105983
+vt -2.472077 -0.372606
+vt 2.472077 -0.372606
+vt -2.500000 -0.000000
+vt 2.500000 0.000000
+vt -2.472077 0.372606
+vt 2.472077 0.372606
+vt -2.388932 0.736888
+vt 2.388932 0.736888
+vt -2.252422 1.084709
+vt 2.252422 1.084709
+vt -2.065597 1.408300
+vt 2.065597 1.408300
+vt -1.832630 1.700432
+vt 1.832630 1.700432
+vt -1.558725 1.954579
+vt 1.558725 1.954579
+vt -1.250000 2.165064
+vt 1.250000 2.165064
+vt -0.913353 2.327184
+vt 0.913353 2.327184
+vt -0.556302 2.437320
+vt 0.556302 2.437320
+vt -0.186825 2.493010
+vt 0.186825 2.493010
+vt 2.388932 -0.736888
+vt -2.388932 -0.736888
+vt 2.252422 -1.084709
+vt -2.252422 -1.084709
+vt 2.065597 -1.408300
+vt -2.065597 -1.408300
+vt 1.832630 -1.700432
+vt -1.832630 -1.700432
+vt 1.558725 -1.954579
+vt -1.558725 -1.954579
+vt 1.250000 -2.165064
+vt -1.250000 -2.165064
+vt 0.913353 -2.327184
+vt -0.913353 -2.327184
+vt 0.556302 -2.437320
+vt -0.556302 -2.437320
+vt 0.186825 -2.493010
+vt -0.186825 -2.493010
+vt 2.500000 -0.000000
+s 1
+f 1/1/1 2/2/1 3/3/2
+f 3/3/2 2/2/1 4/4/2
+f 3/5/2 4/6/2 5/7/3
+f 5/7/3 4/6/2 6/8/3
+f 5/7/3 6/8/3 7/9/4
+f 7/9/4 6/8/3 8/10/4
+f 7/9/4 8/10/4 9/11/5
+f 9/11/5 8/10/4 10/12/5
+f 9/11/5 10/12/5 11/13/6
+f 11/13/6 10/12/5 12/14/6
+f 11/13/6 12/14/6 13/15/7
+f 13/15/7 12/14/6 14/16/7
+f 13/15/7 14/16/7 15/17/8
+f 15/17/8 14/16/7 16/18/8
+f 15/17/8 16/18/8 17/19/9
+f 17/19/9 16/18/8 18/20/9
+f 17/19/9 18/20/9 19/21/10
+f 19/21/10 18/20/9 20/22/10
+f 19/21/10 20/22/10 21/23/11
+f 21/23/11 20/22/10 22/24/11
+f 21/23/11 22/24/11 23/25/12
+f 23/25/12 22/24/11 24/26/12
+f 23/25/12 24/26/12 25/27/13
+f 25/27/13 24/26/12 26/28/13
+f 25/27/13 26/28/13 27/29/14
+f 27/29/14 26/28/13 28/30/14
+f 27/29/14 28/30/14 29/31/15
+f 29/31/15 28/30/14 30/32/15
+f 29/31/15 30/32/15 31/33/16
+f 31/33/16 30/32/15 32/34/16
+f 31/33/16 32/34/16 33/35/17
+f 33/35/17 32/34/16 34/36/17
+f 33/35/17 34/36/17 35/37/18
+f 35/37/18 34/36/17 36/38/18
+f 35/37/18 36/38/18 37/39/19
+f 37/39/19 36/38/18 38/40/19
+f 37/39/19 38/40/19 39/41/20
+f 39/41/20 38/40/19 40/42/20
+f 39/41/20 40/42/20 41/43/21
+f 41/43/21 40/42/20 42/44/21
+f 41/43/21 42/44/21 43/45/22
+f 43/45/22 42/44/21 44/46/22
+f 43/45/22 44/46/22 45/47/23
+f 45/47/23 44/46/22 46/48/23
+f 45/47/23 46/48/23 47/49/24
+f 47/49/24 46/48/23 48/50/24
+f 47/49/24 48/50/24 49/51/25
+f 49/51/25 48/50/24 50/52/25
+f 49/51/25 50/52/25 51/53/26
+f 51/53/26 50/52/25 52/54/26
+f 51/53/26 52/54/26 53/55/27
+f 53/55/27 52/54/26 54/56/27
+f 53/55/27 54/56/27 55/57/28
+f 55/57/28 54/56/27 56/58/28
+f 55/57/28 56/58/28 57/59/29
+f 57/59/29 56/58/28 58/60/29
+f 57/59/29 58/60/29 59/61/30
+f 59/61/30 58/60/29 60/62/30
+f 59/61/30 60/62/30 61/63/31
+f 61/63/31 60/62/30 62/64/31
+f 61/63/31 62/64/31 63/65/32
+f 63/65/32 62/64/31 64/66/32
+f 63/65/32 64/66/32 65/67/33
+f 65/67/33 64/66/32 66/68/33
+f 65/67/33 66/68/33 67/69/34
+f 67/69/34 66/68/33 68/70/34
+f 67/69/34 68/70/34 69/71/35
+f 69/71/35 68/70/34 70/72/35
+f 69/71/35 70/72/35 71/73/36
+f 71/73/36 70/72/35 72/74/36
+f 71/73/36 72/74/36 73/75/37
+f 73/75/37 72/74/36 74/76/37
+f 73/75/37 74/76/37 75/77/38
+f 75/77/38 74/76/37 76/78/38
+f 75/77/38 76/78/38 77/79/39
+f 77/79/39 76/78/38 78/80/39
+f 77/79/39 78/80/39 79/81/40
+f 79/81/40 78/80/39 80/82/40
+f 79/81/40 80/82/40 81/83/41
+f 81/83/41 80/82/40 82/84/41
+f 81/83/41 82/84/41 83/85/42
+f 83/85/42 82/84/41 84/86/42
+f 83/85/42 84/86/42 1/1/1
+f 1/1/1 84/86/42 2/2/1
+f 5/87/43 43/88/43 3/89/43
+f 3/89/43 43/88/43 45/90/43
+f 3/89/43 45/90/43 1/91/43
+f 1/91/43 45/90/43 47/92/43
+f 1/91/43 47/92/43 83/93/43
+f 83/93/43 47/92/43 49/94/43
+f 83/93/43 49/94/43 81/95/43
+f 81/95/43 49/94/43 51/96/43
+f 81/95/43 51/96/43 79/97/43
+f 79/97/43 51/96/43 53/98/43
+f 79/97/43 53/98/43 77/99/43
+f 77/99/43 53/98/43 55/100/43
+f 77/99/43 55/100/43 75/101/43
+f 75/101/43 55/100/43 57/102/43
+f 75/101/43 57/102/43 73/103/43
+f 73/103/43 57/102/43 59/104/43
+f 73/103/43 59/104/43 71/105/43
+f 71/105/43 59/104/43 61/106/43
+f 71/105/43 61/106/43 69/107/43
+f 69/107/43 61/106/43 63/108/43
+f 69/107/43 63/108/43 67/109/43
+f 67/109/43 63/108/43 65/110/43
+f 43/88/43 5/87/43 41/111/43
+f 41/111/43 5/87/43 7/112/43
+f 41/111/43 7/112/43 39/113/43
+f 39/113/43 7/112/43 9/114/43
+f 39/113/43 9/114/43 37/115/43
+f 37/115/43 9/114/43 11/116/43
+f 37/115/43 11/116/43 35/117/43
+f 35/117/43 11/116/43 13/118/43
+f 35/117/43 13/118/43 33/119/43
+f 33/119/43 13/118/43 15/120/43
+f 33/119/43 15/120/43 31/121/43
+f 31/121/43 15/120/43 17/122/43
+f 31/121/43 17/122/43 29/123/43
+f 29/123/43 17/122/43 19/124/43
+f 29/123/43 19/124/43 27/125/43
+f 27/125/43 19/124/43 21/126/43
+f 27/125/43 21/126/43 25/127/43
+f 25/127/43 21/126/43 23/128/43
+f 2/92/44 48/91/44 4/129/44
+f 4/90/44 48/91/44 46/89/44
+f 4/90/44 46/89/44 6/88/44
+f 6/88/44 46/89/44 44/87/44
+f 6/88/44 44/87/44 8/111/44
+f 8/111/44 44/87/44 42/112/44
+f 8/111/44 42/112/44 10/113/44
+f 10/113/44 42/112/44 40/114/44
+f 10/113/44 40/114/44 12/115/44
+f 12/115/44 40/114/44 38/116/44
+f 12/115/44 38/116/44 14/117/44
+f 14/117/44 38/116/44 36/118/44
+f 14/117/44 36/118/44 16/119/44
+f 16/119/44 36/118/44 34/120/44
+f 16/119/44 34/120/44 18/121/44
+f 18/121/44 34/120/44 32/122/44
+f 18/121/44 32/122/44 20/123/44
+f 20/123/44 32/122/44 30/124/44
+f 20/123/44 30/124/44 22/125/44
+f 22/125/44 30/124/44 28/126/44
+f 22/125/44 28/126/44 24/127/44
+f 24/127/44 28/126/44 26/128/44
+f 48/91/44 2/92/44 50/93/44
+f 50/93/44 2/92/44 84/94/44
+f 50/93/44 84/94/44 52/95/44
+f 52/95/44 84/94/44 82/96/44
+f 52/95/44 82/96/44 54/97/44
+f 54/97/44 82/96/44 80/98/44
+f 54/97/44 80/98/44 56/99/44
+f 56/99/44 80/98/44 78/100/44
+f 56/99/44 78/100/44 58/101/44
+f 58/101/44 78/100/44 76/102/44
+f 58/101/44 76/102/44 60/103/44
+f 60/103/44 76/102/44 74/104/44
+f 60/103/44 74/104/44 62/105/44
+f 62/105/44 74/104/44 72/106/44
+f 62/105/44 72/106/44 64/107/44
+f 64/107/44 72/106/44 70/108/44
+f 64/107/44 70/108/44 66/109/44
+f 66/109/44 70/108/44 68/110/44
diff --git a/src/edit/include/edit/editor.hpp b/src/edit/include/edit/editor.hpp
index 924e0785fde8a19d2d58932f57760da386d8d3c8..1bc4807dd7e1d3f8da7dc9ae0f42443b6e0c6465 100644
--- a/src/edit/include/edit/editor.hpp
+++ b/src/edit/include/edit/editor.hpp
@@ -216,8 +216,9 @@ class Editor
 
     mesh_ptr voxel_mesh = Mesh::loadMesh("./data/models/rofi/cube_new_scale.obj");
     mesh_ptr body_mesh = Mesh::loadMesh("./data/models/rofi/body_new_scale.obj", false, false);
+    mesh_ptr pad_board_mesh = Mesh::loadMesh("./data/models/rofi/pad_board.obj", true, false);
 
-    mesh_ptr fixed_connector_mesh = Mesh::loadMesh("./data/models/rofi/connector_new_scale.obj", false, false);
+    mesh_ptr fixed_connector_mesh = Mesh::loadMesh("./data/models/rofi/pad_connector.obj", false, false);
     mesh_ptr open_connector_mesh = Mesh::loadMesh("./data/models/rofi/connector_new_scale.obj", false, false);
     mesh_ptr connected_connector_mesh = Mesh::loadMesh("./data/models/rofi/connector_connected_new_scale.obj", false, false);
     mesh_ptr shared_connector_mesh = Mesh::loadMesh("./data/models/rofi/connector_new_scale.obj");
@@ -229,8 +230,9 @@ class Editor
 
     mesh_ptr voxel_mesh_invalid = Mesh::loadMesh("./data/models/rofi/cube_new_scale.obj");
     mesh_ptr body_mesh_invalid = Mesh::loadMesh("./data/models/rofi/body_new_scale.obj", false, false);
+    mesh_ptr pad_board_mesh_invalid = Mesh::loadMesh("./data/models/rofi/pad_board.obj", true, false);
 
-    mesh_ptr fixed_connector_mesh_invalid = Mesh::loadMesh("./data/models/rofi/connector_new_scale.obj", false, false);
+    mesh_ptr fixed_connector_mesh_invalid = Mesh::loadMesh("./data/models/rofi/pad_connector.obj", false, false);
     mesh_ptr open_connector_mesh_invalid = Mesh::loadMesh("./data/models/rofi/connector_new_scale.obj", false, false);
     mesh_ptr connected_connector_mesh_invalid = Mesh::loadMesh("./data/models/rofi/connector_connected_new_scale.obj", false, false);
     mesh_ptr shared_connector_mesh_invalid = Mesh::loadMesh("./data/models/rofi/connector_new_scale.obj");
@@ -240,6 +242,7 @@ class Editor
 
     const std::vector<mesh_ptr> voxel_meshes = { voxel_mesh, voxel_mesh_invalid };
     const std::vector<mesh_ptr> body_meshes = { body_mesh, body_mesh_invalid };
+    const std::vector<mesh_ptr> pad_board_meshes = { pad_board_mesh, pad_board_mesh_invalid };
     const std::vector<mesh_ptr> fixed_connector_meshes = { fixed_connector_mesh, fixed_connector_mesh_invalid };
     const std::vector<mesh_ptr> open_connector_meshes = { open_connector_mesh, open_connector_mesh_invalid };
     const std::vector<mesh_ptr> connected_connector_meshes = { connected_connector_mesh, connected_connector_mesh_invalid };
@@ -260,6 +263,7 @@ public:
         // Default Mesh
         voxel_mesh->setMaterial(mat::yellow_plastic);
         body_mesh->setMaterial(mat::black_plastic);
+        pad_board_mesh->setMaterial(mat::brown_rubber);
 
         fixed_connector_mesh->setMaterial(mat::red_plastic);
         open_connector_mesh->setMaterial(mat::blue_plastic);
@@ -272,6 +276,7 @@ public:
         //Invalid Mesh
         voxel_mesh_invalid->setMaterial(mat::red_highlight);
         body_mesh_invalid->setMaterial(mat::red_highlight);
+        pad_board_mesh_invalid->setMaterial(mat::red_highlight);
 
         fixed_connector_mesh_invalid->setMaterial(mat::red_highlight);
         open_connector_mesh_invalid->setMaterial(mat::red_highlight);
@@ -388,6 +393,7 @@ private:
     void initializeUniversal();
     void initializePad();
     void initializeUnknown();
+    void createPad(std::size_t width, std::size_t height);
     void setVoxelGraphToScene(voxel_graph_ptr prev_vg, voxel_graph_ptr new_vg);
     void addVoxelGraphToScene(voxel_graph_ptr vg);
     void removeVoxelGraphFromScene(voxel_graph_ptr vg);
diff --git a/src/edit/src/editor.cpp b/src/edit/src/editor.cpp
index 998879417f0f989556e547a33aa364d01d7a6914..35d97823f5f208ef3df58260f591e75c5f664d94 100644
--- a/src/edit/src/editor.cpp
+++ b/src/edit/src/editor.cpp
@@ -284,6 +284,7 @@ void Editor::exitBuildModeI(const build_mode_I previous_build_mode)
     {
         scene->manageSelection(nullptr);
         scene->manageHighlight(glm::vec3(0.0f), nullptr);
+        hover_nearest_node = nullptr;
         setVoxelGraphToScene(voxel_graph, module_type_voxel_graphs[editor_build_mode_I]);
         voxel_graph = module_type_voxel_graphs[editor_build_mode_I];
     }
@@ -458,11 +459,12 @@ void Editor::doBuildUniversalAction()
 
 void Editor::doBuildPadAction()
 {
-    hoverOver();
+    // hoverOver();
     selectObject();
     updateAllowedComponents();
-    updateBuildHint();
-    controlBuild();
+    // updateBuildHint();
+    // controlBuild();
+    // createPad();
     selection_previous_frame = scene->getSelection();
 }
 
@@ -489,8 +491,8 @@ void Editor::updateAllowedComponents()
             allowed_components = { voxel, open_con, rotation_con, shared_rotation_con };
             break;
         case pad:
-            allowed_components = { open_con };
-            break;
+            allowed_components = {};
+            return;
         case unknown:
             allowed_components = { voxel, fixed_con, open_con, rotation_con, shared_rotation_con };
             break;
@@ -555,7 +557,6 @@ bool Editor::checkUniversalBuildValid()
 
 bool Editor::checkPadBuildValid()
 {
-    // TO DO
     return true;
 }
 
@@ -997,10 +998,17 @@ void Editor::initializePad()
     using namespace rofi;
 
     module_type_voxel_graphs[pad] = std::make_shared<VoxelGraph>();
-    auto open_con_node = Node::create(glm::vec3(0.0f, -0.5f, 0.0f), get_connector_face_rotation(glm::vec3(0.0f, 1.0f, 0.0f)));
+    auto open_con_node = Node::create(glm::vec3(0.0f, 0.0f, 0.0f), get_connector_face_rotation(glm::vec3(0.0f, 1.0f, 0.0f)));
     auto open_connector = module_type_voxel_graphs[pad]->addConnector(open_con_node, connector_type::open);
-    addConnectorMesh(open_con_node, connector_type::open);
+    addConnectorMesh(open_con_node, connector_type::fixed);
     open_con_node->addObject(open_connector);
+
+    auto pad_board_node = Node::create(glm::vec3(0.0f, -0.5f, 0.0f));
+    auto pad_board = module_type_voxel_graphs[pad]->addPadBoard(pad_board_node);
+    scene->addMesh(pad_board_node, pad_board_mesh);
+    pad_board_node->addObject(pad_board);
+
+    module_type_voxel_graphs[pad]->join(open_connector, pad_board, enum_to_vec(side::y_pos));
 }
 
 void Editor::initializeUnknown()
@@ -1920,14 +1928,14 @@ void Editor::updateRoFIMesh(const voxel_graph_ptr vg)
             scene->removeAllMesh(voxel->getNode());
             scene->addMesh(voxel->getNode(), body_mesh);
         }
-        else if (!voxel->hasSharedRotation() && !scene->containsMesh(voxel->getNode(), voxel_mesh))
+        else if (!voxel->hasSharedRotation() && (!scene->containsMesh(voxel->getNode(), voxel_mesh) && !scene->containsMesh(voxel->getNode(), pad_board_mesh)))
         {
             changed = true;
             scene->removeAllMesh(voxel->getNode());
             scene->addMesh(voxel->getNode(), voxel_mesh);
         }
 
-        if (changed  && voxel->getNode() == scene->getSelection())
+        if (changed && voxel->getNode() == scene->getSelection())
         {
             scene->manageSelection(voxel->getNode());
         }
@@ -1964,9 +1972,10 @@ void Editor::setVoxelMesh(const voxel_ptr voxel, bool invalid_state)
         return;
 
     int i = invalid_state ? 1 : 0;
+    auto voxel_meshes_local = std::dynamic_pointer_cast<rofi::PadBoard>(voxel) ? pad_board_meshes : voxel_meshes;
 
     scene->removeAllMesh(voxel->getNode());
-    const auto mesh = voxel->hasSharedRotation() ? body_meshes[i] : voxel_meshes[i];
+    const auto mesh = voxel->hasSharedRotation() ? body_meshes[i] : voxel_meshes_local[i];
     scene->addMesh(voxel->getNode(), mesh);
 }
 
diff --git a/src/gfx/include/gfx/material.hpp b/src/gfx/include/gfx/material.hpp
index f817733d9b4fb63b06ca87836c69d7d4dbe5ffdd..7a38901d1df539ba2fd4536a41caa9c9202296fd 100644
--- a/src/gfx/include/gfx/material.hpp
+++ b/src/gfx/include/gfx/material.hpp
@@ -82,9 +82,13 @@ namespace mat
                                                glm::vec4(1.0f),
                                                glm::vec4(0.9f, 0.9f, 0.9f, 256.0f));
                                                
-    static const Material black_rubber = Material(glm::vec4(0.0f),
-                                                  glm::vec4(1.0f),
-                                                  glm::vec4(0.0f));
+    static const Material black_rubber = Material(glm::vec4(0.02f, 0.02f, 0.02f, 1.0f),
+                                                  glm::vec4(0.01f, 0.01f, 0.01f, 1.0f),
+                                                  glm::vec4(0.4f, 0.4f, 0.4f, 10.0f));
+
+    static const Material brown_rubber = Material(glm::vec4(0.02f, 0.02f, 0.02f, 0.0f),
+                                                  glm::vec4(0.647f, 0.365f, 0.165f, 1.0f),
+                                                  glm::vec4(glm::vec3(0.647f, 0.365f, 0.165f) * 0.4f, 10.0f));
 
     static const Material green_highlight = Material(glm::vec4(0.0f),
                                                   glm::vec4(0.0f, 1.0f, 0.0f, 0.05f),
diff --git a/src/rofi/include/rofi/voxel_graph.hpp b/src/rofi/include/rofi/voxel_graph.hpp
index 5f5cbbfe388d2d77e319d88254f1f35316f40d21..bbc504547850e3eb421b470fbc0054999ee81ea6 100644
--- a/src/rofi/include/rofi/voxel_graph.hpp
+++ b/src/rofi/include/rofi/voxel_graph.hpp
@@ -55,6 +55,7 @@ public:
 
     voxel_ptr addVoxel(node_ptr node);
     voxel_ptr addModuleLink(node_ptr node);
+    voxel_ptr addPadBoard(node_ptr node);
     connector_ptr addConnector(node_ptr node, enum class connector_type t);
     connector_ptr addConnector(node_ptr node, enum class connector_type t, glm::vec3 rotation_axis);
     connector_ptr addConnector(node_ptr node, enum class connector_type t, glm::vec3 rotation_axis, glm::vec3 highlight_direction);
diff --git a/src/rofi/src/voxel_graph.cpp b/src/rofi/src/voxel_graph.cpp
index b7df2e0da3a835d8227c5386485fbe49f199fecd..dc8bd3677e8a9db189d934009aeaeccb3f7ad71b 100644
--- a/src/rofi/src/voxel_graph.cpp
+++ b/src/rofi/src/voxel_graph.cpp
@@ -221,6 +221,12 @@ voxel_ptr VoxelGraph::addModuleLink(node_ptr node)
     return voxels.back();
 }
 
+voxel_ptr VoxelGraph::addPadBoard(node_ptr node)
+{
+    voxels.emplace_back(std::make_shared<PadBoard>(node));
+    return voxels.back();
+}
+
 connector_ptr VoxelGraph::addConnector(node_ptr node, connector_type t)
 {
     using enum connector_type;