Post Go back to editing

DAC output OSCILLATING when combining MULTIPLE CHANNEL

Category: Hardware
Product Number: LTC2672

Hi,

To test the capabilities of the LTC2672, I am using it to drive a high power LED (cree XML). I am combining channels 0 to 3 to allow for a high output current, around 400 to 500mA. The system worked well at first glance, I successfully lit up the LED and was able to adjust its brightness by controlling the DAC channel output current. However, when I looked at the output voltage of the DAC (channels 0 to 3 combined), it was oscillating (see oscillation.png). This does not happen when using only one channel, however, as soon as I link 2 channels together, even if one is powered down, the output voltage is oscillating. The problem was partially solved when I mounted a 22uH power inductor in series between the combined DAC output and my LED. The inductor is able to filter the ripple, because "none" can be observed after it (see. ripple_filtering.png), but the oscillations can still be observed before. The DAC is supplied with VCC=5V, it as to dissipate some power but does not exceed 90 °C which should be okay. Also, I am using the same output span for all channel as advised.

To be sure it wasn't my design causing this, I tried with the development board and observed the same behavior (two channels tied together seems to cause only small oscillations, but the more channel you link, the more oscillations you get). My application will require a great current/voltage stability, is there some recommendations in this case when combining multiple outputs ? Is there some recommendations in terms of ripple filtering ? Have this behavior been observed before ? This phenomenon is surprising considering the datasheet encourage combining the channels. I saw another query about a similar problem with the same component, but it was left unanswered.

Thanks in advance,

Antoine Richard

  • Hi Antonie,

    Please share your schematic and load details.

    Also share the register configurations for the above plots.

  • Hi,

    You will find attached the schematic. Channels 0 to 3 are linked together and a 22uH inductor is used to flatten out the current. The load used to get the aforementioned result was a power LED cree XML (Vf~2.5V and If ~ 400mA).  The above plot was obtained with those C commands :

    "LTC2672_set_output_span(LTC2672_1, LTC2672_SPAN_200MA, LTC2672_CHANNEL_0);
    LTC2672_set_output_span(LTC2672_1, LTC2672_SPAN_200MA, LTC2672_CHANNEL_1);
    LTC2672_set_output_span(LTC2672_1, LTC2672_SPAN_200MA, LTC2672_CHANNEL_2);
    LTC2672_set_output_span(LTC2672_1, LTC2672_SPAN_200MA, LTC2672_CHANNEL_3);

    LTC2672_set_output_current(LTC2672_1, 100.f, LTC2672_SPAN_200MA, LTC2672_CHANNEL_0);
    LTC2672_set_output_current(LTC2672_1, 100.f, LTC2672_SPAN_200MA, LTC2672_CHANNEL_1);
    LTC2672_set_output_current(LTC2672_1, 100.f, LTC2672_SPAN_200MA, LTC2672_CHANNEL_2);
    LTC2672_set_output_current(LTC2672_1, 100.f, LTC2672_SPAN_200MA, LTC2672_CHANNEL_3);"

    Here is the simplified LTC2672_set_output_span function :

    "LTC2672_sendCommand(deviceID, (unsigned char)LTC2672_CMD_WRITE_SPAN_CH, (unsigned char)channel, (unsigned short)span);"

    Here is the simplified LTC2672_set_output_current function :

    "LTC2672_sendCommand(deviceID, LTC2672_CMD_WRITE_PWRUP_CH, channel, code);"

    Here is my simplified LTC2672_sendCommand function (the same as on the LTC2672 git) :

    "LTC2672[deviceID].CS_level(0); // Select device
    // Send command byte
    LTC2672[deviceID].spi_sendByte((unsigned char)(command | address & 0x0F));// Send 16-bit data
    LTC2672[deviceID].spi_sendByte((unsigned char)((data >> 8) & 0xFF)); // MSB
    LTC2672[deviceID].spi_sendByte((unsigned char)(data & 0xFF)); // LSB
    LTC2672[deviceID].CS_level(1); // Unselect device"

    The #defines are from the datasheet.

    The oscillation amplitude and frequency vary with the output current and the LTC2672 input voltage.

    Best,

    Antoine Richard

  • Hi Antonie,

    Please share the entire schematic - power supply circuit and the load datasheet.

  • Hi, 

    Here is the load datasheet : https://downloads.cree-led.com/files/ds/x/XLamp-XML2.pdf.

    I currently use an ultra-stable laboratory supply that supplies the LTC2662, so no on-board power circuit can be the cause of problem (the 5V supply is routed to an alimentation plane supplying the LTC2662). I cannot really share the entire PCB schematic/routing. When observing the 5V supply at the VCC pin or VDDx pins, it is very stable. Only the output have ripple/oscillation.

    Best, 

    Antoine Richard

  • Hi,

    I send a second message because the first one was flagged as SPAM (I sent a link). You can find the datasheet of the load searching for "XLamp® XM-L2 LEDs". The load is a CREE XML high power LED.

    We are using a laboratory ultra-stable power-supply, so no on board DCDC power circuit can be the source of problem. The 5V is directly supplying the LTC2662 via a power plane. Also, when I probe the 5V of the VCC and VDDx pins, it is stable. You'll understand that I cannot share the entire design, but I can share some specific parts.

    Best,

    Antoine Richard 

  • Hi Antonie,

    I am taking it offline.

    Regards

    Vikash

  • Hi Antonie,

    What is the status of V-?

    Regards

    Vikash

  • Hi,

    I answered offline.

    Regards,

    Antoine

  • Would it be possible to post the resolution of this issue, without disclosing any confidential information? I have a similar problem.

    Thanks
    Andrew

  • Hi,

    I was told several advices to try to minimize the issue :

    1) Do not use any serial inductor to filter the output current, just use decoupling capacitors.

    2) Do not use any serial inductor to filter the MUX output, and use a voltage follower because this output is unbuffered. Drawing too much current on this output can cause the chip to malfunction.

    3) Use a stable power rail to power the chip. Excessive ripple can propagate easily.

    Hope it helps,

    Antoine