Found it: ``` impl<'d> embedded_hal_1::digital::OutputPin for OutputOpenDrain<'d> { #[inline] fn set_high(&mut self) -> Result<(), Self::Error> { Ok(self.set_high()) } #[inline] fn set_low(&mut self) -> Result<(), Self::Error> { Ok(self.set_low()) } } ``` But how does the compiler know, which of the identically named functions I am using. I didn't know that this is allowed.