diff --git a/Readme.md b/Readme.md
index 7f3ce3b..195fa7c 100644
--- a/Readme.md
+++ b/Readme.md
@@ -36,7 +36,7 @@ All software is provided under a 3-clause BSD License.
In particular it contains:
- the [Hex firmware](https://github.com/BenjaminPoilve/MiniChord/blob/main/firmware/firmware.hex)
- the full [PlatformIO project](https://github.com/BenjaminPoilve/MiniChord/tree/main/firmware)
-- the [minicontrol software](https://github.com/BenjaminPoilve/MiniChord/tree/main/firmware/mini_control)
+- the [minicontrol software](https://github.com/BenjaminPoilve/MiniChord/tree/main/firmware/minicontrol)
## Media
diff --git a/documentation/docs/assembly.md b/documentation/docs/assembly.md
index cd87331..e60e7ec 100644
--- a/documentation/docs/assembly.md
+++ b/documentation/docs/assembly.md
@@ -648,9 +648,69 @@ Whether normal or transparent resin, it is possible to use GTC liquid dyes to dy
-[TBD]
+## Marking the keycap
-Note :
+The first row of keycaps need to be marked with the chord letters. If you have a CNC router, then it is possible to engrave the keycap with a 45° V cutter, using a V-carve mode.
-* do the double sided tape between battery and PCB
-* don't overtighten the screws ! its only plastic
\ No newline at end of file
+For Omron Keycap, I've found the following setting to be satisfying:
+
+* 300 mm/min feed rate;
+* 150 mm/min plunge rate;
+* 10 000 rpm.
+
+![CNC engraving](./ressources/CNC_routing.jpg "CNC engraving")
+
+Once the keycap are engraved, the engraving is filled using Markal "Lacquer fill-in" paint stick. The following steps are recommanded:
+
+* "sharpen" the paintstick with an X-acto to have a pointy end;
+* overfill the engraving with color;
+* wait for at last 15 hours for the paint to start solidifying;
+* buff the surplus color out. Place a tissue paper flat on a table, and rub the keycap on it while maintaining it very flat to remove the color outside of the groove. You may need to do it in several passes, changing the tissue paper in between. To properly remove all remaining color, a few drops of isopropyl might help.
+
+
+![keycaps](./ressources/keycap.jpg "keycaps")
+
+Alternatively, if you don't have a CNC router, you can look into UV DTF transfers. It is a cheap method to allow color tranfers that can work for details up to 0.5mm.
+
+Once you engraved keycap are finished, you can install all the buttons on the main PCB.
+
+The engraved buttons go on the first line, and the order is G/B/A/F/D/E/C.
+
+![all buttons installed](./ressources/all_buttons.jpg "all buttons installed")
+
+## Attaching the battery
+
+The battery needs to be fixed on the pcb using double sided foam tape. The foam part is very important as it protect the soft pouch of the battery from being damaged by the possible sharp bits sticking out of the PCB.
+
+To do so, use the X-acto to cut the double sided foam tape, and press it on the battery pouch.
+
+
+![the scotched battery](./ressources/scotched_battery.jpg "the scotched battery")
+
+Then flip the pouch and press it onto the PCB. Use the picture to identify proper placement.
+
+![attached pouch](./ressources/pouch_attached.jpg "the installed battery")
+
+
+## Assembling the enclosure
+
+Now the easiest step !
+
+![all components](./ressources/all_components.jpg "all components")
+
+
+First install the PCB in the bottom shell. Secure the PCB with the three small screws. Be sure to not overtighten the screws: once you feel a resistance, it is enough.
+
+![bottom installed](./ressources/bottom_installed.jpg "bottom installed")
+
+No install the top shell. Make sure that all keycap are well-aligned with their respective holes. Once it is the case, it should be easy to push the top shell in place.
+
+Secure the top shell with the six long screws. Be sure to not overtighten the screws: once you feel a resistance, it is enough.
+
+![top installed](./ressources/top_installed.jpg "top installed")
+
+The last step is to install the touch zone PCB. Simply be carefull that the header are in their right place, and push it until it makes contact with the shell.
+
+![finished](./ressources/finished.jpg "finished")
+
+That's it, your minichord is done! No to use it, please refer to the ["manual" section](/user_manual)
diff --git a/documentation/docs/ressources/CNC_routing.jpg b/documentation/docs/ressources/CNC_routing.jpg
new file mode 100644
index 0000000..9534328
Binary files /dev/null and b/documentation/docs/ressources/CNC_routing.jpg differ
diff --git a/documentation/docs/ressources/all_buttons.jpg b/documentation/docs/ressources/all_buttons.jpg
new file mode 100644
index 0000000..c7b8126
Binary files /dev/null and b/documentation/docs/ressources/all_buttons.jpg differ
diff --git a/documentation/docs/ressources/all_components.jpg b/documentation/docs/ressources/all_components.jpg
new file mode 100644
index 0000000..e950867
Binary files /dev/null and b/documentation/docs/ressources/all_components.jpg differ
diff --git a/documentation/docs/ressources/bottom_installed.jpg b/documentation/docs/ressources/bottom_installed.jpg
new file mode 100644
index 0000000..b981458
Binary files /dev/null and b/documentation/docs/ressources/bottom_installed.jpg differ
diff --git a/documentation/docs/ressources/finished.jpg b/documentation/docs/ressources/finished.jpg
new file mode 100644
index 0000000..70d739a
Binary files /dev/null and b/documentation/docs/ressources/finished.jpg differ
diff --git a/documentation/docs/ressources/keycap.jpg b/documentation/docs/ressources/keycap.jpg
new file mode 100644
index 0000000..fb7a058
Binary files /dev/null and b/documentation/docs/ressources/keycap.jpg differ
diff --git a/documentation/docs/ressources/pouch_attached.jpg b/documentation/docs/ressources/pouch_attached.jpg
new file mode 100644
index 0000000..61cc958
Binary files /dev/null and b/documentation/docs/ressources/pouch_attached.jpg differ
diff --git a/documentation/docs/ressources/scotched_battery.jpg b/documentation/docs/ressources/scotched_battery.jpg
new file mode 100644
index 0000000..704adf0
Binary files /dev/null and b/documentation/docs/ressources/scotched_battery.jpg differ
diff --git a/documentation/docs/ressources/top_installed.jpg b/documentation/docs/ressources/top_installed.jpg
new file mode 100644
index 0000000..3ded841
Binary files /dev/null and b/documentation/docs/ressources/top_installed.jpg differ
diff --git a/documentation/docs/source.md b/documentation/docs/source.md
index fd88a9f..2c1ad1e 100644
--- a/documentation/docs/source.md
+++ b/documentation/docs/source.md
@@ -3,7 +3,7 @@
> All software is provided under a 3-clause BSD License
-* [minicontrol software](https://github.com/BenjaminPoilve/MiniChord/tree/main/firmware/mini_control)
+* [minicontrol software](https://github.com/BenjaminPoilve/MiniChord/tree/main/firmware/minicontrol)
* [Hex firmware](https://github.com/BenjaminPoilve/MiniChord/blob/main/firmware/firmware.hex)
* [PlatformIO project](https://github.com/BenjaminPoilve/MiniChord/tree/main/firmware)
* [Tutorial for PlatformIO Teensy usage](https://forum.pjrc.com/index.php?threads/tutorial-how-to-use-platformio-visual-code-studio-for-teensy.66674/)
diff --git a/documentation/site/assembly/index.html b/documentation/site/assembly/index.html
index 98be556..c383b45 100644
--- a/documentation/site/assembly/index.html
+++ b/documentation/site/assembly/index.html
@@ -723,12 +723,44 @@ Final assembly
-[TBD]
-Note :
+Marking the keycap
+The first row of keycaps need to be marked with the chord letters. If you have a CNC router, then it is possible to engrave the keycap with a 45° V cutter, using a V-carve mode.
+For Omron Keycap, I've found the following setting to be satisfying:
-- do the double sided tape between battery and PCB
-- don't overtighten the screws ! its only plastic
+- 300 mm/min feed rate;
+- 150 mm/min plunge rate;
+- 10 000 rpm.
+
+Once the keycap are engraved, the engraving is filled using Markal "Lacquer fill-in" paint stick. The following steps are recommanded:
+
+- "sharpen" the paintstick with an X-acto to have a pointy end;
+- overfill the engraving with color;
+- wait for at last 15 hours for the paint to start solidifying;
+- buff the surplus color out. Place a tissue paper flat on a table, and rub the keycap on it while maintaining it very flat to remove the color outside of the groove. You may need to do it in several passes, changing the tissue paper in between. To properly remove all remaining color, a few drops of isopropyl might help.
+
+
+Alternatively, if you don't have a CNC router, you can look into UV DTF transfers. It is a cheap method to allow color tranfers that can work for details up to 0.5mm.
+Once you engraved keycap are finished, you can install all the buttons on the main PCB.
+The engraved buttons go on the first line, and the order is G/B/A/F/D/E/C.
+
+Attaching the battery
+The battery needs to be fixed on the pcb using double sided foam tape. The foam part is very important as it protect the soft pouch of the battery from being damaged by the possible sharp bits sticking out of the PCB.
+To do so, use the X-acto to cut the double sided foam tape, and press it on the battery pouch.
+
+Then flip the pouch and press it onto the PCB. Use the picture to identify proper placement.
+
+Assembling the enclosure
+Now the easiest step !
+
+First install the PCB in the bottom shell. Secure the PCB with the three small screws. Be sure to not overtighten the screws: once you feel a resistance, it is enough.
+
+No install the top shell. Make sure that all keycap are well-aligned with their respective holes. Once it is the case, it should be easy to push the top shell in place.
+Secure the top shell with the six long screws. Be sure to not overtighten the screws: once you feel a resistance, it is enough.
+
+The last step is to install the touch zone PCB. Simply be carefull that the header are in their right place, and push it until it makes contact with the shell.
+
+That's it, your minichord is done! No to use it, please refer to the "manual" section
diff --git a/documentation/site/ressources/CNC_routing.jpg b/documentation/site/ressources/CNC_routing.jpg
new file mode 100644
index 0000000..9534328
Binary files /dev/null and b/documentation/site/ressources/CNC_routing.jpg differ
diff --git a/documentation/site/ressources/all_buttons.jpg b/documentation/site/ressources/all_buttons.jpg
new file mode 100644
index 0000000..c7b8126
Binary files /dev/null and b/documentation/site/ressources/all_buttons.jpg differ
diff --git a/documentation/site/ressources/all_components.jpg b/documentation/site/ressources/all_components.jpg
new file mode 100644
index 0000000..e950867
Binary files /dev/null and b/documentation/site/ressources/all_components.jpg differ
diff --git a/documentation/site/ressources/bottom_installed.jpg b/documentation/site/ressources/bottom_installed.jpg
new file mode 100644
index 0000000..b981458
Binary files /dev/null and b/documentation/site/ressources/bottom_installed.jpg differ
diff --git a/documentation/site/ressources/finished.jpg b/documentation/site/ressources/finished.jpg
new file mode 100644
index 0000000..70d739a
Binary files /dev/null and b/documentation/site/ressources/finished.jpg differ
diff --git a/documentation/site/ressources/keycap.jpg b/documentation/site/ressources/keycap.jpg
new file mode 100644
index 0000000..fb7a058
Binary files /dev/null and b/documentation/site/ressources/keycap.jpg differ
diff --git a/documentation/site/ressources/pouch_attached.jpg b/documentation/site/ressources/pouch_attached.jpg
new file mode 100644
index 0000000..61cc958
Binary files /dev/null and b/documentation/site/ressources/pouch_attached.jpg differ
diff --git a/documentation/site/ressources/scotched_battery.jpg b/documentation/site/ressources/scotched_battery.jpg
new file mode 100644
index 0000000..704adf0
Binary files /dev/null and b/documentation/site/ressources/scotched_battery.jpg differ
diff --git a/documentation/site/ressources/top_installed.jpg b/documentation/site/ressources/top_installed.jpg
new file mode 100644
index 0000000..3ded841
Binary files /dev/null and b/documentation/site/ressources/top_installed.jpg differ
diff --git a/documentation/site/source/index.html b/documentation/site/source/index.html
index e219245..b222e21 100644
--- a/documentation/site/source/index.html
+++ b/documentation/site/source/index.html
@@ -206,7 +206,7 @@ Software
All software is provided under a 3-clause BSD License
Electronics
-- Full BOM
+- Full BOM
- Main PCB schematics
- Main PCB Gerber file
- Touch zone PCB schematics
diff --git a/firmware/README.md b/firmware/README.md
index cb4834c..d907d27 100644
--- a/firmware/README.md
+++ b/firmware/README.md
@@ -12,7 +12,7 @@ In particular the it contains :
- the `lib` folder containing the librairies for the chips used, the debouncing and the potentiometer logic
- the `include` folder containing all the Teensy audio architecture definition, as well as the hardware definitions and the `sysex_handler.h`file.
-This last file is related to the "generator". To be able to simply modify parameters related to sound synthesis and have a coherent firmware and control software, those parameters are defined in a [parameters.json file](https://github.com/BenjaminPoilve/MiniChord/blob/main/firmware/generator/parameters.json). By using the generation script, both the interface and necessary firmware file are generated. Note that the interface will be included in the minichord website by using the `build_site.sh` script in the documentation folder.
+The next interesting folder is related to the "generator". To be able to simply modify parameters related to sound synthesis and have a coherent firmware and control software, those parameters are defined in a [parameters.json file](https://github.com/BenjaminPoilve/MiniChord/blob/main/firmware/generator/parameters.json). By using the generation script, both the interface and necessary firmware file are generated. Note that the interface will be included in the minichord website by using the `build_site.sh` script in the documentation folder.
The resulting fimware itself is present at the root of the project : [firmware.hex](https://github.com/BenjaminPoilve/MiniChord/blob/main/firmware/firmware.hex).