---
title: "<code class=\"docutils literal notranslate\"><span class=\"pre\">pbl</span> <span class=\"pre\">flash</span></code>"
canonical_url: https://developer.repebble.com/pebbleos/docs/pbl/flash/
last_updated: 2026-10-21
sdk_version: 4.33.1
---
# <code class="docutils literal notranslate"><span class="pre">pbl</span> <span class="pre">flash</span></code>

Source: https://developer.repebble.com/pebbleos/docs/pbl/flash/

Flash the firmware to a watch connected through a [programmer](https://developer.repebble.com/pebbleos/docs/programmers.md), using the board’s [runner](https://developer.repebble.com/pebbleos/docs/pbl.md#pbl-runners).

```
pbl flash
```

Before flashing, check the [board’s page](https://developer.repebble.com/pebbleos/docs/boards.md) for how to connect the programmer. The `sftool` runner talks to the watch over a serial port, given with `--tty`, e.g. `/dev/ttyACM0` or `/dev/tty.usbmodem1102`:

```
pbl flash --tty /dev/ttyACM0
```

The first time, the system resources have to be written too. The `sftool` runner, and the `openocd` and `nrfutil` ones on asterix, take `--resources`; otherwise, image them over the serial console once the firmware is running, with [pbl image\_resources](https://developer.repebble.com/pebbleos/docs/pbl/image_resources.md).

When both firmware and resources are written, the watch boots into the main application; [pbl console](https://developer.repebble.com/pebbleos/docs/pbl/console.md) shows its logs.

A watch without a programmer can only be updated by sideloading a [pbl bundle](https://developer.repebble.com/pebbleos/docs/pbl/bundle.md).

## Options

```
pbl flash [-h] [-b DIR] [--dry-run] [--resources]
          [-r {nrfutil,openocd,sftool}] [--tty TTY]
```

`--resources`

Also flash the system resources alongside the firmware

`-r, --runner {nrfutil,openocd,sftool}`

Override the board’s runner

`--tty TTY`

Serial port for the sftool runner

Generated from PebbleOS [3a7b71785](https://github.com/coredevices/pebbleos/commit/3a7b71785fd439666c4a8bc116f561140e8dec01). This page is maintained in the pebbleos repository: [docs/pbl/flash.md](https://github.com/coredevices/pebbleos/blob/3a7b71785fd439666c4a8bc116f561140e8dec01/docs/pbl/flash.md).
