# Arduino Neovim Configuration This directory contains the Neovim configuration for Arduino development, using [Arduino-Nvim](https://github.com/yuukiflow/Arduino-Nvim) with **LazyVim**. ## Installation 1. Copy `lua/plugins/arduino.lua` to your LazyVim plugins directory (e.g. `~/.config/nvim/lua/plugins/`) 2. Copy `.arduino_config.lua` to your Arduino project root ## Custom Keybinds | Keybind | Command | Description | |---------|---------|-------------| | `mc` | `:InoCheck` | Compile and verify sketch | | `mu` | `:InoUpload` | Upload sketch to board | | `ms` | `:InoStatus` | Display board, port & FQBN status | | `mg` | `:InoGUI` | Open GUI for board/port selection | | `mm` | `:InoMonitor` | Open serial monitor | | `ml` | `:InoLib` | Open library manager | | `mb` | `:InoSelectBoard` | Select Arduino board | | `mp` | `:InoSelectPort` | Select Arduino port | | `mr` | `:InoUploadReset` | Upload with manual reset (UNO R4 WiFi) | ## Board Configuration Edit `.arduino_config.lua` to set your board, port, and baudrate: ```lua return { board = "studuino:avr:studuino", port = "/dev/ttyUSB0", baudrate = "115200", } ``` ## Requirements - [arduino-cli](https://arduino.github.io/arduino-cli/latest/installation/) - [arduino-language-server](https://github.com/arduino/arduino-language-server) - [Telescope.nvim](https://github.com/nvim-telescope/telescope.nvim) - [nvim-lspconfig](https://github.com/neovim/nvim-lspconfig)