## Technical Information ### cpdctrl-gui Software `cpdctrl-gui` is written in python and uses the Qt framework for the graphical user interface. Most functionality like interaction with the various devices is provided by the `cpdctrl` package, which can be used without the GUI in an ipython shell for advanced or debugging purposes. ### Arduino Code To control the ThorLabs LEDD1B, it is connected to an Arduino Nano, which is connected to the lab PC via USB. The Arduino must have the correct software loaded in order to communicate with `cpdctrl` and the LEDD1B. 1. Open the Arduino IDE 2. Open the sketch `~/cpd-dev/cpdctrl/arduino-thorlabs-led/led_control/led_control.ino` 3. Select `COM4` and `Arduino Nano` and then 'Upload Sketch' ### Documentation The documentation files are in the `cpdtrl-gui` directory: `cpdctl-gui/cpdctrl_gui/resources`. **Only edit these files** and then generate the documentation for the Wiki and the PDF manual using the scripts in the repository. #### PDF Manual To generate the pdf manual, adapt and run the script found in the cpdctrl-gui repository, in `.scripts/make-manual.py`. It converts the markdown files to html and generates the PDF from that. #### Wiki Convert the markdown files to html and directly copy-paste that into the BayernCollab Wiki. 1. Adapt and run the script in the cpdctrl-gui repository, in `.scripts/convert_docs_for_website.py`. 4. Open the `.html` files in a text editor (Notepad) and copy the content 3. While editing a page in collab, click the `` button in the top right corner to enable source code editing 4. Paste the html in the appropriate place