The PCBs for LiPoly charging, LiPoly protection, RTC, and low power ADC are back. They have been assembled and testing has begun. The code has been written for arduino. SnapPy code written too...
[gallery link="file" columns="4"]
These boards are being tested, then merged into one board. The next board is designed to fit into a case that can be used indoors or outdoors. If this is something that interests you, let me know. We would love to have more feed back or beta testers.
At this point, I can't take all of the credit. Serge Sozonoff as been a huge help in all of this. He initially started by providing ideas and use cases. Later he helped in board design and components. Now he is helping with all of it plus code. So I want to share credit where credit is due.
Let's start with an interesting board. The DS2764 whose pcb layout I owe a thank you to Serge Sozonoff. This IC tells you all kinds of information. Voltage, Current, Accumulated Current, charging, discharging, and more. It will also protect the battery from being discharged or charged too much. This is a good thing so that you do not need to constantly watch the battery level. Arduino code available at Google Code site. Snappy code also available at Google Code.
Next is the PCF2129A, a low power TCXO RTC. This Temperature Compensated Crystal (Xtal) Oscillator Real Time Clock and Calendar support I2C-Bus or SPI-Bus interface. This IC was selected for low power usage and the integrated TXCO. We provide Snappy code to talk to this IC and also set the time from Portal.
The main board being tested ("Solar Base"), has the charging IC MCP73861 from MicroChip. The idea is to charge a LiPo battery from a solar panel. We included to voltage regulators. The main one is always one powering the rf engine or other components. The second regulator has its shutdown line connected to a GPIO on the rf engine. This could be used to power down sensors when not being read. This board also holds the Synapse RF Engine. We are trying to keep this board generic and have provided headers for application specific add-on boards to stack on it.
Alright, that is a brief description of each board. We have been testing these boards over the past week. There are a couple of problems to fix on the next revision. The biggest problem of all is when the DS2764 hits an under voltage condition. Its response is to disable discharge and charge, then enter sleep mode. This is a problem as it is unable to self-recover. We apply power to the charger, but charging never starts. Even if the DS2764 did not disable charging, the MCP73861 still would not begin charging. At this point the MCP73861 sees the battery at 0 volts.
Another issue comes is when charging by a solar panel. With the MCP73861 we can set the fast charge rate. Let's assume a 100ma fast charge rate. When the sun is coming up in the morning, the solar panel does not have very much power available. The MCP73861 will try to pull more power than is available. As the MCP73861 increases its current pull above what the panel can handle, the voltage drops. Once the voltage dips around 4.7 volts, the Under Voltage Lockout kicks in on the MCP73861. This stops the chip from charging, and starts a cycle all over again. The other disadvantage of pre-setting the fast charge rate, is when the sun is all the way up. The charger is not using all of the available power. Due to this and other problems we are testing out two other chips, the LT3652 and the MCP73861.
The LT3652 is a multi composition battery charger designed to be powered from solar. Currently laying out the schematic to have a test batch made. The advantage it offers is the voltage regulation loop which automatically adjusts to use the power optimally. The MCP73871 also as its own advantages to offer. More on that later...
Here is a chart show the battery status and current consumption. This is a 900 mAh battery that started at full charge over 48 hours ago. The rf engine consumes around 65 ma while awake. It is configured to run for 10 seconds, then sleep for 3 minutes.