## arduino-cli upload

Upload Arduino sketches.

### Synopsis

Upload Arduino sketches. This does NOT compile the sketch prior to upload.

```
arduino-cli upload [flags]
```

### Examples

```
  debian/build/bin/docsgen upload /home/user/Arduino/MySketch -p /dev/ttyACM0 -b arduino:avr:uno
  debian/build/bin/docsgen upload -p 192.168.10.1 -b arduino:avr:uno --upload-field password=abc
```

### Options

```
      --board-options strings         List of board options separated by commas. Or can be used multiple times for multiple options.
      --build-path string             Directory containing binaries to upload.
      --discovery-timeout duration    Max time to wait for port discovery, e.g.: 30s, 1m (default 1s)
  -b, --fqbn string                   Fully Qualified Board Name, e.g.: arduino:avr:uno
  -h, --help                          help for upload
      --input-dir string              Directory containing binaries to upload.
  -i, --input-file string             Binary file to upload.
  -p, --port string                   Upload port address, e.g.: COM3 or /dev/ttyACM2
  -m, --profile string                Sketch profile to use
  -P, --programmer string             Programmer to use, e.g: atmel_ice
  -l, --protocol string               Upload port protocol, e.g: serial
  -F, --upload-field key=value        Set a value for a field required to upload.
      --upload-property stringArray   Override an upload property with a custom value. Can be used multiple times for multiple properties.
  -v, --verbose                       Optional, turns on verbose mode.
  -t, --verify                        Verify uploaded binary after the upload.
```

### Options inherited from parent commands

```
      --additional-urls strings   Comma-separated list of additional URLs for the Boards Manager.
      --config-dir string         Sets the default data directory (Arduino CLI will look for configuration file in this directory).
      --config-file string        The custom config file (if not specified the default will be used).
      --json                      Print the output in JSON format.
      --log                       Print the logs on the standard output.
      --log-file string           Path to the file where logs will be written.
      --log-format string         The output format for the logs, can be: text, json (default "text")
      --log-level string          Messages with this level and above will be logged. Valid levels are: trace, debug, info, warn, error, fatal, panic (default "info")
      --no-color                  Disable colored output.
```

### SEE ALSO

* [arduino-cli](arduino-cli.md)	 - Arduino CLI.

