LiPo battery charger add-on for the Teensy 3.1Designed by Pesky Products, Ships from United States of America
What is it? This is an "appallingly small" add-on shield for Teensy 3.1 that mounts on the bottom, USB-end of the Teensy 3.1 by soldering the board to the GND, VIN, VUSB and pin 0 pins of the Teens...Read More…
This is an "appallingly small" add-on shield for Teensy 3.1 that mounts on the bottom, USB-end of the Teensy 3.1 by soldering the board to the GND, VIN, VUSB and pin 0 pins of the Teensy. The heart of the board is the MAX1555 battery management chip by Maxim Integrated. The board has +/- through-hole mounting holes for a JST LiPo battery connector (supplied with the LiPo charger) and for an external DC power supply. The board charges the LiPo battery at a 100 mA charge current with the USB cable attached to the Teensy, or at 280 mA charge current when the external DC source is used; the chip chooses depending on the power sources present. While charging, the red LED is lit and when the battery is fully charged it goes out. The charging state is also broken out to Teensy 3.1 pin 0 and can be monitored (LOW = charging, HIGH = fully charged), and the battery charging can be managed, in software.
The connection between VIN and VUSB must be cut to allow this LiPo charging board to function properly. This a straightforward operation best accomplished with an Exacto knife by gently cutting the connecting copper trace as described in the Teensy home page.
There is a power switch mounted just under the LiPo charger; when the switch is on it provides power to the Teensy and the green LED is lit. When the switch is off the green LED is off and the Teensy has no power. Lastly, when the battery is drained, the green LED flashes to indicate charging is needed or that the power switch should be turned off.
For breadboarding with the Teensy or Arduino attaching a 5 V or LiPo battery to the breadboard power rail is fine and convenient. As my circuits have matured and I have transitioned off the breadboard to real device applications I needed some better way to provide and manage power. Plus I got tired of removing the battery, fishing out my standalone LiPo charger, plugging both into my computer and waiting until the battery charged to get my device up and running again. With this LiPo charger add-on the charger can be integrated into my applications easily and when I plug in the USB cable to reprogram the Teensy or monitor Serial output, I can be charging at the same time. More importantly, for portable applications it is very convenient to have an on/off switch and I never have to waste time remembering where I put the LiPo charger the last time I used it!
This is a full-function LiPo charger circuit similar to those offered by Sparkfun or Adafruit but designed specifically to mount directly on the Teensy 3.1 in an unobtrusive and convenient way. It can be used with the JST connector to allow the battery to be easily removed and re-attached, or the battery can be soldered into the board for a smaller profile and more permanent mounting. A connector can be soldered into the board to allow charging from a 5 V wall wart while maintaining the ability to charge from USB.
Order the board from OSH Park and assemble your own LiPo charger, or buy one from me fully assembled and guaranteed to please!
The SMD switch soldered to the bottom of the LiPo charger add-on board can dislodge with rough handling. Please use it gently and it should endure. This is a potential weakness in the design. I chose an SMD mechanical SPDT switch because I wanted to minimize board size and allow a low-profile fit to the Teensy 3.1. Unlike a through-hole-mounted mechanical switch, the SMD soldered mounts can be torn off if too much force is applied. I have not done so in normal use but I am issuing this warning out of an abundance of caution!
Here is a more detailed description of the LiPo charger board layout (verbose mode ON!): If you look at the schematic you can see that it follows the typical application recommended in the MAX1555 data sheet. Now refering to the board layout, the input power to the MAX1555 is either through VUSB (the through-hole just below the label) and GND (the two through-holes at bottom left with the "T" or GND symbol to their lower right), or through VDC and GND. The GND at the lowest left corner of the board (looking at the top) should be soldered to the Teensy 3.1 GND pin. The two through-holes immediately to the right of the GND pin are the GND and VDC for the DC power source for charging. If one wanted to use a wall wart power source rather than USB power, or one wanted to charge from a larger battery the -/+ leads from either would be attached to this GND/VDC pair. One could mount a power jack here, if there is room, to accommodate a wall wart plug, for example. Or just leave it unconnected if the USB is to be the main power source. The through-hole above the GND corresponding to pin 0 on the Teensy 3.1 is the Charge signal from the MAX1555, which is LOW when charging and high impedence or HIGH (with the 100 K pullup) when charging is complete. These conditions are really determined by the current flow and I refer you to the datasheet for the details. The CHG signal can interfere with RX/TX on Teensy 3.1 pins 0 and 1. One can leave this pin unsoldered to the LiPo charger and avoid any potential interference; to be sure one can cut the trace to this through hole. Fortunately, there are many serial ports on the Teensy 3.1 so this shouldn't be a critical issue. The red LED (left-most one) is also attached to this signal line and glows red when the battery is charging (CHG is LOW) and turns off when the battery stops charging (CHG is HIGH, pulled up by a 100K Ohm resistor). The CHG signal is broken out in case this signal might want to be monitored in software or by an interrupt. In normal use, the GND, CHG, VUSB, and VIN pins would be soldered to the board and the thin trace between VUSB and VIN on the Teensy 3.1 would be cut. This allows the Teensy VIN to be provided solely by the battery, which in turn gets its charge from USB or VDC. The green LED (right-most) glows when the mechanical SPDT switch mounted on SMD tabs on the back of the LiPo board is switched on. This provides power to the Teensy 3.1. When this switch is turned off the Teensy 3.1 is unpowered. Thus, the battery charging and Teensy 3.1 functions can be separated. The top left and two top right through-holes corresponding to Teensy 3.1 pins 1, AGND, and 3V3, respectively, do not have to be soldered and are only there for convenient mounting with a small form factor. They are not connected to the circuit so could be soldered for increased mechanical stability but this isn't really necessary. The MAX1555 chip is pretty-well connected (as well as can be on a 0.3 in x 0.7 in board) to the thermal sink and electrical ground plane. At 100 - 280 mA there should not be a heating problem. The LEDs are 20 mA max (set to ~10 mA with the 330 Ohm resistors), 10 mcd and are readily visible even when hidden under the Teensy 3.1. One possible improvement would be to use 1000 Ohm resistors for the LEDs to reduce the power drain in normal operation. When the Teensy 3.1 is powered and the green light is on, it will start blinking about once every second when the battery power drops to the point that recharging is needed. This is an unexpected but very useful feature that is not documented in the data sheet. This is likely related to an RC time constant but I admit I do not understand from where this behavior originates.
David | Nov. 16, 2016
Blair | July 4, 2016
Oscar | Jan. 22, 2016
Alan M | Nov. 14, 2015
Richard | June 29, 2015
Kabe | Dec. 26, 2014
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!