This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

I2C controlled low side relay driver

Hi,

I'm looking for a I2C interface controlled multi-channel (up-to 8 channels) low side relay driver, found SPI based drivers available (a part like ULN2803A). However, my application requirements to control through I2C interface. 

Is there any limiting physics for a I2C based low side drivers?

Regards,

Manikandan M V

  • Hey Manikandan,

    We do not have an I2C low side relay driver. What you could do is use an 8 bit I2C IO expander and the ULN2803A. The IO expander could control the ULN2803A to control your relays.

    You can find IO expanders here:

    I would recommend using TCA over the PCA.

    "Is there any limiting physics for a I2C based low side drivers?"

    The only limitations I could think of is if you turned on a bunch of magnetic relays at the same time, if the inductive coils require a large turn on current then you could potentially pull your Vcc out of regulation. (not really an I2C limitation). The other main thing to worry about when driving a large inductive load would be the inductive kickback, you can minimize this effect by using a flywheel diode between the power source and the inductive coils.

    None of which I mentioned is directly an I2C limitation. I2C is only limited by speed. Most of our devices can communicate at a maximum speed of 400kHz so if you need to turn on and off the low side drivers quicker then I2C probably isn't ideal.

    The last thing I can think of is that using an IO expander and the ULN2803A has one disadvantage. If you are trying to keep the relay driver on for long periods then you cannot adjust the driving current to a holding current. A relay requires a certain current to pull the wiper to the desired terminal but after it has been pulled it requires less current to hold it there. In this case, you're holding current and turn on current cannot be changed so you waste power and can build up heat.

    Thanks,

    -Bobby

  • Hi Bobby,

    Thank for you for advising the I2C based solution.

    "I would recommend using TCA over the PCA." Could you please elaborate the things you meant for using TCA series part rather PCA series?

    From my understanding, relays would not be deployed for switching on/off at 400kHz ranges. Just a momentary or prolonged on/off controls for relay, relatively this type of approaches may not require high speed bus interfaces like SPI, rather could work with I2C 100kHz. Not getting what is limitation for I2C based relay drivers generally.

    "In this case, you're holding current and turn on current cannot be changed so you waste power and can build up heat." I agree this argument. Do we've any smart solutions from TI with this current adjustment features?

    Regards,

    Manikandan M V

  • Hey Manikandan,

    Very sorry for this delayed response, I previously thoguht I had already responded to your latest reply but it may not have posted.....

    "Could you please elaborate the things you meant for using TCA series part rather PCA series?"
    Our TCA devices are newer and fix some bugs with the PCA family. Typically TCA will have better PoR requirements, wider supply voltage ranges, pin to pin compatible to the PCA, and is more cost competitive.

    "I agree this argument. Do we've any smart solutions from TI with this current adjustment features?"
    Unfortunately I do not know of any. If you plan on implementing something like this then I think you would need to use a discrete solution.

    Thanks and sorry for the late reply once again,
    -Bobby
  • Hi Bobby,
    That's Okay, it happens.

    Fine, got it. Thank you.

    Regards,
    Manikandan M V