def __init__(self, address, bus = 1):
        """Init smbus channel and tca driver on specified address."""
        try:
            self.PORTS_COUNT = 8     # number of switches

            self.i2c_bus = smbus2.SMBus(bus)
            self.i2c_address = address
            if self.get_control_register() is None:
                raise ValueError
        except ValueError:
            logger.error("No device found on specified address!")
            self.i2c_bus = None
        except:
            logger.error("Bus on channel {} is not available.".format(bus))
            logger.info("Available busses are listed as /dev/i2c*")
            self.i2c_bus = None