pub trait Device {
// Required methods
fn spi<'a>(&mut self, spi: &HandleArray<'a>) -> Result<(), Error>;
fn i2c<'a>(&mut self, i2c: &HandleArray<'a>) -> Result<(), Error>;
fn gpio_in<'a>(&mut self, gpio_in: &HandleArray<'a>) -> Result<(), Error>;
fn gpio_out<'a>(&mut self, gpio_out: &HandleArray<'a>) -> Result<(), Error>;
}