# Studuino Development Instructions ## Environment Setup - Run `./setup.sh --with-editor` to install `arduino-cli` and `clangd`. - **Mandatory Configuration**: Create `.arduino_config.lua` in the root with `board` and `port` settings for `Arduino-Nvim` to function. ## Development Workflow - **Boilerplate**: Use the `studuino_boilerplate` snippet to insert required headers and the `Studuino board` instance. - **Snippets**: Project-specific snippets are located in `.vscode/studuino.code-snippets`. - **Build & Upload**: Use the following Neovim leader keybindings: - `mc`: Compile (`:InoCheck`) - `mu`: Upload (`:InoUpload`) - `mm`: Serial Monitor (`:InoMonitor`) ## Repo Structure - **Libraries**: Custom or adapted libraries are under `/libraries/`. Key libraries used in Studuino projects include: - `ColorSensor`, `MPU6050`, `BusIOForStuduino`, `Clock`, `Servo`, `Adafruit_CircuitPlayground`, and `IRremoteForStuduino`. - When adding new functionality, ensure the corresponding header files are included in your sketches as shown in the boilerplate.