Skip to content

The trait embedded_hal::delay::DelayNs is not implemented for Timer<microbit::nrf52833_pac::TIMER0> #437

@relia1

Description

@relia1

Configuration/Setup Information

  • Microbit v2 firmware v258
  • I have the nrf-rs/microbit repository pulled down locally with the microbit-common/Cargo.toml updated so nrf52833-hal v0.16.1 is being used
  • My local version of microbit is forked from this branch Update to embedded-hal 1.0. microbit#123

Steps to reproduce

  • Unzip attached .zip for the program I ran that ran into this
  • Pull down a version of microbit based on the above PR and update the Cargo.toml to point to nrf52833-hal v0.16.1
  • cargo run

Results

error[E0277]: the trait bound `Timer<microbit::nrf52833_pac::TIMER0>: embedded_hal::delay::DelayNs` is not satisfied
   --> src/main.rs:43:22
    |
43  |         display.show(&mut timer, fb, 100);
    |                 ---- ^^^^^^^^^^ the trait `embedded_hal::delay::DelayNs` is not implemented for `Timer<microbit::nrf52833_pac::TIMER0>`
    |                 |
    |                 required by a bound introduced by this call
    |
    = help: the trait `embedded_hal::delay::DelayNs` is implemented for `&mut T`
note: required by a bound in `microbit::display::blocking::Display::show`
   --> /Users/robert/open_source/microbit/microbit-common/src/display/blocking.rs:145:20
    |
145 |     pub fn show<D: DelayNs>(&mut self, delay: &mut D, led_display: [[u8; 5]; 5], duration_ms: u32) {
    |                    ^^^^^^^ required by this bound in `Display::show`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `poll-buttons` (bin "poll-buttons") due to previous error

Expected

  • Expected the DelayNs trait to be implemented

Attached zip

DelayNs.zip

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