Skip to content

"Running examples" section from readme doesn't work on nRF52840-DK #302

@fhars

Description

@fhars

If I follow the description in the README, the first problem is that the cargo run invocation fails, because it is missing the erase_all permission.

If I add --allow-erase-all in config.toml, it is flashes successfully, and cargo run fails with Error: Run loop exited due to a locked up core. No BLE device is started.

If I perform the steps in the wrong order:

probe-rs erase --chip nrf52840_xxAA --allow-erase-all
cargo run --bin ble_bas_peripheral --features nrf52840-dk
probe-rs download --verify --binary-format hex --chip nRF52840_xxAA ~/Downloads/s140_nrf52_7.3.0_softdevice.hex

the BLE device works. In this case, neither the cargo run nor the probe-rs download need an --allow-erase-all.
Flashing a new version of the app with cargo run (which will again require --allow-erase-all) will break the setup again. Then I have to perform the same three steps in the same wrong order again.

This is with probe-rs 0.29.1 (0.27.0 shows similar symptoms), rustc 1.90.0 (1159e78c4 2025-09-14), the current nrf-softdevice (commit 5949a5b), on a nRF52840-DK, v 3.0.3.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions