public bool ReadGPIO(byte pin, out bool value) { if (_handle == IntPtr.Zero) { value = false; return(false); } lock (_lock) { int valTest; var status = LibMpsseI2C.FT_ReadGPIO(_handle, out valTest); var valShift = (valTest >> pin) & 1; value = valShift == 1; CheckResult(status); } return(true); }