ulrichstern / Tlc59711

Arduino library for controlling TI's TLC59711 (or TLC5971)
MIT License
22 stars 5 forks source link

How to tell if Adafruit updated their board per your findings? #4

Open RossAWaddell opened 4 years ago

RossAWaddell commented 4 years ago

I've just ordered Adafruit's TLC59711 breakout board (https://www.adafruit.com/product/1455) and have been reviewing their tutorial here:

https://learn.adafruit.com/tlc5947-tlc59711-pwm-led-driver-breakout/connecting-to-the-arduino

How can I tell if they incorporated your findings into the current version of the board/tutorial? You had noted the connections on the board itself were incorrect.

s-light commented 4 years ago

do you mean

Electronics notes

While I like Adafruit's boards, their pin naming is "not optimal":

i think the easiest way is to carefully check the pcb against the schematic and image: https://learn.adafruit.com/tlc5947-tlc59711-pwm-led-driver-breakout/downloads-and-links#tlc59711-schematic-and-print-9-5 the repository is only partly updated... so the board sources there are ~6Years old.. and check the Data Sheet Page 8 for the chip pinout... i did not find my old breakoutboard so i can't tell you if on the picture has changed something..

RossAWaddell commented 4 years ago

I was referring to your comment on their support forum (https://forums.adafruit.com/viewtopic.php?f=47&t=91079#p459416):

In your proposed Arduino Uno (5V microcontroller, no logic level converter) wiring, the TLC's internal 3.3V linear regulator is on and working against the 5V supplied to it via VCC (TLC VREG). The regulator needs to be off, which requires TLC VREG and TLC VCC to be connected. So this change in your proposed wiring is required:

V+ (TLC VCC) -> 5V

To which adafruit2 replied:

oooh i see what i did, i should have tied VCC & VReg together rather than VCC to the +15V supply

OK, its an easy fix, will revise on next PCB

for now, keep the VCC pin disconnected, use level shifter on CI and DI if you're using 5V logic

the good news is that the regulator is current limited and tying the output to 5V has never caused any damage to the chip (clearly its 5V compliant since it can take up to 6V)

So, if in fact I have an older board like what you encountered, I'm unclear as to the correct connections when using a 5V Arduino board (e.g. Uno) but 12V power supply for the LED strips I'll be using. Do I need to leave their "Vcc" pin disconnected but use appropriate resistors to connect the CI/DI pins?

s-light commented 4 years ago

first things first: iam just a active user of this library... not the author..

have you read the hole conversation? i think Uli explains your setup case explicitly in there:

If the LEDs need a high voltage (VLED) other than 5V, VLED cannot be supplied directly from the Adafruit board for a 5V microcontroller.

additionally a warning lamp lights up if i read

12V power supply for the LED strips

the TLC59711 is designed to drive a LED (or some more) with Constant Current and can only handle 20mA per channel!

Most 12V LED-Strips are designed to be driven with Constant Voltage - most likely with more Amps... (they have Resistors on there to drive the leds with Constant Current)

PS: your links are not working: if you use the 'Add a link' button check that you specify a link-text and a url.. [Link-Text](https://example.com) - if you don't need a link-text just enter the url - the system creates a link automatically..

RossAWaddell commented 4 years ago

Fixed the link - sorry for the confusion.

  1. I'm not supplying the 12V from the Arduino board - it will come from the power supply.
  2. The LED strips will be powered via MOSFETs, so no worries about the 60mA limit. See my proposed circuit schematic here: https://forums.adafruit.com/viewtopic.php?f=19&t=159010
  3. So, If I don't use the V++ pins on the Adafruit breakout board as I will be connecting the LED strips to the 12V power supply directly, do I connect to Vcc to the 5V output on the Arduino board and use resistors for the CI/Di pins?
s-light commented 4 years ago

as adafruit_support_mike in his original post described:

Since the TLC59711 is an open-drain device, when it wants to turn a channel on it opens a low-resistance connection to GND. If you connect pull-up resistors, the voltage output will be high when the LEDs are supposed to be shut off, and low when the LEDs are supposed to be turned on. That isn't so bad by itself..

so for this you don't need the V+ pins on the breakout at all... so you can use the breakout as described by Uli in 5V mode:

https://forums.adafruit.com/viewtopic.php?f=47&t=91079#p477058 In my setup, I connected the board's VCC and V+ both to the Uno's 5V. In this case, the TLC's internal regulator is off, the TLC's VREG is 5V, and there is no need for a logic level converter.

i have answered in the adafruit forum - i think this does not really belong here into Ulis library as an issue..

RossAWaddell commented 4 years ago

Thanks s-light. I did see your post on the Adafruit support forum.

The reason I posted here is because Uli found the connection issue and referenced it here on his wiki for his library (which I intend to try), so I’m guessing he could tell me what to look for in terms of determining the board version (Adafruit’s tutorial page has been updated to reflect their revised board, I imagine).