public async Task <I2cDevice> CreateI2cDeviceAsync(WD.I2c.I2cConnectionSettings connectionSettings) { if (this.IsTypeSupported(SocketType.Y) && !this.IsTypeSupported(SocketType.I)) { return(await this.CreateI2cDeviceAsync(connectionSettings, SocketPinNumber.Eight, SocketPinNumber.Nine)); } this.EnsureTypeIsSupported(SocketType.I); if (this.I2cDeviceCreator != null) { return(await this.I2cDeviceCreator(this)); } return(new NativeInterfaces.I2cDevice(await NativeInterfaces.I2cDevice.CreateInterfaceAsync(this.NativeI2cDeviceId, connectionSettings))); }
public static async Task <WD.I2c.I2cDevice> CreateInterfaceAsync(string deviceId, WD.I2c.I2cConnectionSettings connectionSettings) { var infos = await WD.Enumeration.DeviceInformation.FindAllAsync(WD.I2c.I2cDevice.GetDeviceSelector(deviceId)); return(await WD.I2c.I2cDevice.FromIdAsync(infos[0].Id, connectionSettings)); }