Problem with Nina W102 startup on MKR 1010

This code works:

        self.cs.set_high().map_err(SpiError::ChipSelect)?;
        self.reset.set_high().map_err(SpiError::Reset)?;
        self.delay(time::Duration::from_millis(10))?;
        self.reset.set_low().map_err(SpiError::Reset)?;
        self.delay(time::Duration::from_millis(750))?;

This does not:

        self.cs.set_high().map_err(SpiError::ChipSelect)?;
        self.reset.set_low().map_err(SpiError::Reset)?;
        self.delay(time::Duration::from_millis(10))?;
        self.reset.set_high().map_err(SpiError::Reset)?;
        self.delay(time::Duration::from_millis(750))?;

Also, when you look at the variant header file you provided:
#define SPIWIFI_SS PIN_SPI1_SS
#define SPIWIFI_ACK NINA_ACK
#define SPIWIFI_RESET (~NINA_RESETN) // fixme! Inverted logic

1 Like