TPL5110 insights

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
edringel
 
Posts: 7
Joined: Sat Jul 14, 2018 11:47 am

TPL5110 insights

Post by edringel »

I've spent the last couple of days using the TPL5110 board. I'm building a weather station and the MCU I'm using is a Sparkfun Artemis. My observations may be generalizable.
I checked the specs on the P-MOSFET drive transistor. It should have been quite happy driving the Artemis and sensors, but it would not turn on. I had connected the board correctly, and found a couple of interesting things. When the timer was OFF, the Drive voltage was approximately 0.5V, and the Done voltage, measured from the Done pin to battery ground was approximately 0.9V. I noted in the documentation that there were reports that the timer did not work with a Adafruit MCU. Hmmm...
I ended up driving a logic level N-MOSFET with the TPL5110 drive signal to switch the MCU on and off. That didn't work either. This time, with the Artemis board off, unpowered, the reading on the done pin, driven by the Artemis was at Vin (approx 3.9-4.0 V). What???
In this case, it was easier to understand what was going on. When using an N-MOSFET, the transistor goes between the load and ground. When the N-MOSFET was OFF, Vin was still delivered to the Artemis, but there was no current flow. That means that with respect to battery ground, the entire Artemis board was at Vbat, both Vin and Vground. The GPIO pin communicating with the DONE pin on the TPL5110 was also at Vbat with respect to the timer's circuitry. I put in an optocoupler and everything works quite well now.
The key here is the attached, admittedly crude schematic.
So, I am hoping that someone smarter and more articulate than me will take these comments and my schematic and do something useful. I can't help but wonder if a process similar to this is what is making the board the subject of so many questions.
Attachments
Artemis-vs.-TPL5110.jpg
Artemis-vs.-TPL5110.jpg (322.65 KiB) Viewed 714 times

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: TPL5110 insights

Post by adafruit_support_mike »

edringel wrote:When the timer was OFF, the Drive voltage was approximately 0.5V
That's a problem. The TPl5110 is made to work with a p-mosfet, so its output should be VCC while it's counting then drop to 0V when the next counting cycle begins.
edringel wrote:and the Done voltage, measured from the Done pin to battery ground was approximately 0.9V.
That's also a problem. The DONE pin is a high-impedance input, so the 0.9V probably came from the circuit connected to it.
edringel wrote:I ended up driving a logic level N-MOSFET with the TPL5110 drive signal to switch the MCU on and off. That didn't work either.
It shouldn't. The DRV signals should be opposite to what an n-mosfet wants.
edringel wrote:The key here is the attached, admittedly crude schematic.
I hate to say it, but that shouldn't work. The TPL5110's output should be opposite to what an n-mosfet wants.

Your choice to control the load connection to GND will work, but is contrary to normal practice. It leaves the load 'floating hot'. That can be dangerous in circuits that carry 20V or more, and tends to be a nuisance for connections to anything else. Any connection to a voltage lower than VCC can become a path that turns the load on in an unexpected way.

User avatar
edringel
 
Posts: 7
Joined: Sat Jul 14, 2018 11:47 am

Re: TPL5110 insights

Post by edringel »

Hi adafruit_support_mike,
Thanks for your comments. I'm going to push back a little in the hopes of getting some more info.
I hand-soldered a TPL5110 to a SOT-23 breakout board, so I'm used to the barebones unit and had success using it. I had hoped to consolidate components onto a single board and have commercial quality construction, which is why I picked up the Adafruit board.
The Adafruit board is NOT a "pure" breakout board in that it provides considerably more function. Every comment you made regarding the TPL5110 alone is absolutely correct. However, the A board does not present the drive pin voltages to the user directly. According to the board's schematic the TPL5110 drive output is used to drive a DMG3415 (https://www.diodes.com/assets/Datasheet ... 5UFY4Q.pdf), a logic level P-MOSFET with sufficient current for small projects (16V, at least 2A, and we aren't ever going to use at 16V). As indicated in the website documentation, the output of the A board (drive) can be used to power a project. This did not work for me, Use of a P-MOSFET on the A board as a final output stage means that the output from the Adafruit board will be HIGH when the timer is ON, and LOW when the timer is OFF. Again, according to the documentation, the HIGH voltage (and current) should be sufficient to power a project such as mine, which is 3.3V with 200 mA maximum draw (and it's likely closer to 100 mA.) I totally agree with you that I don't understand why I have non-zero voltages as described on my original post. Those abnormal voltages resolved when I drove an N-channel MOSFET rather than driving my circuit directly.
With respect to your comments regarding the use of an N-MOSFET as a switch-- I am also unenthusiastic about a floating hot circuit. However, every single source that I reviewed (both web and Art of Electronics, 3rd Ed) configures an N-MOSFET switched circuit as V+ --> LOAD --> N-MOSFET-->GROUND. Although not wholly similar, on p.205 of Art of Elect. 3rd figure 3.107B also uses an optocoupler.
Again, I appreciate your input. If I'm missing something, I'd love to learn more.
Thank you.
Ed

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: TPL5110 insights

Post by adafruit_support_mike »

edringel wrote:Thanks for your comments. I'm going to push back a little in the hopes of getting some more info.
No problem.. it's an interesting chip that I've spent a fair amount of time testing.
edringel wrote:The Adafruit board is NOT a "pure" breakout board in that it provides considerably more function.
I'd say it's half and half.. the Adafruit breakout is a full implementation of the repeating timer function, but the TPL5110 also has a one-shot mode that isn't available from the breakout.. the trace that configures the function runs directly beneath the chip.
edringel wrote:Use of a P-MOSFET on the A board as a final output stage means that the output from the Adafruit board will be HIGH when the timer is ON, and LOW when the timer is OFF.
Ah.. I see what you're doing now. Yeah, the breakout's DRV output is inverted from the TPL5110's DRIVE pin, so yes, it will control an n-mosfet properly.
edringel wrote:As indicated in the website documentation, the output of the A board (drive) can be used to power a project. This did not work for me,
Hmm.. the breakout's connection from power source to load is pretty straightforward. If you were seeing sub-1V voltages on things that should be connected to GND, it suggests power was going through a diode.. probably protection diodes on IO pins.

Try hooking the load up to the breakout in the normal configuration: GND connected to GND and DRV controlling current to the load, and check the resistance in the GND-to-GND connection.
edringel wrote:With respect to your comments regarding the use of an N-MOSFET as a switch-- I am also unenthusiastic about a floating hot circuit. However, every single source that I reviewed (both web and Art of Electronics, 3rd Ed) configures an N-MOSFET switched circuit as V+ --> LOAD --> N-MOSFET-->GROUND. Although not wholly similar, on p.205 of Art of Elect. 3rd figure 3.107B also uses an optocoupler.
Your connections are right for a normal ground-side switch. Thing is, they tend to be used for low-current loads with only a few well-defined connectitons. The big concern is avoiding any unexpected connection to GND.. first to keep them from happening at all, and second to keep the current low enough that an unexpected connection won't destroy any parts.

N-mosfets are the preferred device for high-current switching -- they have the lowest resistance and highest electron mobility of any device we have today -- but it's done on the high side. Making that work requires another voltage rail far enough above VCC to turn the mosfets on completely. Chips like the MAX1614 have a built-in charge pump to generate the necessary gate voltage:

https://www.maximintegrated.com/en/prod ... X1614.html

User avatar
edringel
 
Posts: 7
Joined: Sat Jul 14, 2018 11:47 am

Re: TPL5110 insights

Post by edringel »

thanks again. Interesting about the charge pump stuff. It might be a couple of days or so, but I'll try what you are suggesting regarding measuring grounds. I did look at the schematic for the Artemis, and it has a reverse polarity protection diode on the Vin pin. So, the TPL5110 board when connected directly, as it is supposed to be, is in fact powering the MCU through a diode. I wonder if these ground issues are what's a problem for other folks? I would think that lots of boards have reverse polarity protection.
Appreciate your help.
Cheers,
Ed

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: TPL5110 insights

Post by adafruit_support_mike »

edringel wrote: I did look at the schematic for the Artemis, and it has a reverse polarity protection diode on the Vin pin. So, the TPL5110 board when connected directly, as it is supposed to be, is in fact powering the MCU through a diode.
Is VIN a power input or a "connected devices operate at this voltage" pin?

Supply pins can have diodes that block power from being connected backwards, which can usually destroy a device. Those are in series with the load, while overvoltage protection diodes are connected in parallel to the load:
protection-diodes.jpg
protection-diodes.jpg (49.52 KiB) Viewed 681 times
The problem comes when the load isn't connected to power (or GND) but some other voltage is connected to an input with overvotage protection. Under those conditions, one of the protection diodes can become forward biased and become an unwanted supply pin.

User avatar
edringel
 
Posts: 7
Joined: Sat Jul 14, 2018 11:47 am

Re: TPL5110 insights

Post by edringel »

I'm fairly certain it is a series connection. I've included a screen shot of the relevant part of the schematic below. Sparkfun, like you folks, is open source, so I am not doing anything inappropriate here. My connection is via the VBat option. The entire schematic is here: https://cdn.sparkfun.com/assets/5/5/1/6 ... s-Nano.pdf
Attachments
Artemis input..JPG
Artemis input..JPG (49.43 KiB) Viewed 674 times

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: TPL5110 insights

Post by adafruit_support_mike »

That's a combination of polarity protection and input selection.

D3 can only conduct if Vin is ~300mV lower than V_USB. When D3 does conduct (and assuming V_USB is 5V), Vin will be ~4.7V.

D4 can only conduct if Vin is ~300mV lower than V_BATT. When D4 does conduct (assuming V_BATT is 3.7V), Vin will be ~3.4V.

So if you connect 5V to V_USB, D4 will be reverse biased and basically disconnected from Vin and the 3.3V regulator. It will still be connected to the output from the LiPo charger though, so the board will charge the battery on USB power.

If you disconnect V_USB while the LiPo is connected, the voltage at VIN will drop to 3.4v, at which D4 will become forward biased and connected to the 3.3V regulator.

We use the same circuit on our Feather boards.

User avatar
edringel
 
Posts: 7
Joined: Sat Jul 14, 2018 11:47 am

Re: TPL5110 insights

Post by edringel »

There's a nice article in elektor magazine about MOSFET drivers here: https://www.elektormagazine.com/article ... d-drivers/

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”