fn gpio_lower(&mut self) -> Result<u8, TimeoutError> {
        let cmd = MpsseCmdBuilder::new().gpio_lower().send_immediate();
        let mut buf: [u8; 1] = [0];

        self.write_all(cmd.as_slice())?;
        self.read_all(&mut buf)?;

        Ok(buf[0])
    }
/// Get the pin state state of the lower byte (0-7) GPIO pins on the MPSSE
/// interface.
///
/// # Example
///
/// Set the first GPIO, without modify the state of the other GPIOs.
///
/// ```no_run
/// use libftd2xx::{Ft232h, FtdiMpsse};
///
/// let mut ft = Ft232h::with_serial_number("FT59UO4C")?;
/// ft.initialize_mpsse_default()?;
/// let mut gpio_state: u8 = ft.gpio_lower()?;
/// gpio_state |= 0x01;
/// ft.set_gpio_lower(gpio_state, 0xFF)?;
/// # Ok::<(), std::boxed::Box<dyn std::error::Error>>(())
/// ```
Get the pin state state of the lower byte (0-7) GPIO pins on the MPSSE
interface.
Get the pin state state of the lower byte ( 0 - 7 ) GPIO pins on the MPSSE interface .
fn gpio_lower(&mut self) -> Result<u8, TimeoutError> {
        let cmd = MpsseCmdBuilder::new().gpio_lower().send_immediate();
        let mut buf: [u8; 1] = [0];
        self.write_all(cmd.as_slice())?;
        self.read_all(&mut buf)?;
        Ok(buf[0])
    }
fn gpio_lower ( & mut self ) -> Result < u8 , TimeoutError > { let cmd = MpsseCmdBuilder :: new ( ) . gpio_lower ( ) . send_immediate ( ) ; let mut buf : [ u8 ; 1 ] = [ 0 ] ; self . write_all ( cmd . as_slice ( ) ) ? ; self . read_all ( & mut buf ) ? ; Ok ( buf [ 0 ] ) }
Get the pin state state of the lower byte (0-7) GPIO pins on the MPSSE
interface.
Get the pin state state of the lower byte ( 0 - 7 ) GPIO pins on the MPSSE interface .
&mut self
&mut self
example
Set the first GPIO, without modify the state of the other GPIOs.

```no_run
use libftd2xx::{Ft232h, FtdiMpsse}.


Set the first GPIO without modify the state of the other GPIOs . ` ` ` no_run use libftd2xx :: { Ft232h FtdiMpsse } .
ok::<(), std::boxed::box<dyn std::error::error>>(())
None