servalproject / openwrt

OpenWRT distribution for Serval Mesh Extenders
https://developer.servalproject.org
GNU General Public License v2.0
8 stars 3 forks source link

Power Shutdown detection doesn't recognise power from USB #4

Open gardners opened 7 years ago

gardners commented 7 years ago

rev2 prototype boards: Supplying 5V to an ME2.0 via the power / radio port (pin 13, +5V) causes too low a voltage to appear on GPIO24, which is insufficient for detection. It should be 1.4V - 2.5V.

The R15/R14/D1 circuit needs to match the impedance of GPIO24, which we have determined is about 20K Ohm. R14 can be removed, because the Atheros 9331 seems to have a 20K pull-down resister internally.

Using a 23K resistor as the top half of the voltage divider is a partial solution for power sources >5V, yielding ~3.1V, which is a little high, but works. But with 5V power delivers only 0.7V at the top of R15, and then gets only 0.5V at GPIO24.

Thus we need a larger resistor to be safe for non-5V power, e.g., battery, solar or automotive, and a solution for detecting when USB power is lost.

Perhaps the better solution is to check for low voltage simply by having, say, a Zener Diode in the range of 4.0V - 4.5V (e.g., a 4.3V 1N4731), and using something to detect the current flow that will occur when the input voltage is above the Zener break-down voltage.

More generally, there are some good potential solutions described in:

http://electronics.stackexchange.com/questions/4967/circuit-to-protect-against-undervoltage

This looks particularly interesting: A 3-pin <1 uA reset control IC, the MAX809/810.

The 4.38V threshold ones are in stock with Digikey, for example:

http://www.digikey.com/product-detail/en/on-semiconductor/MAX809MTRG/MAX809MTRGOSCT-ND/917958

US$0.49 for one piece.

This could then considerably simplify the entire power circuit, as the 5V line could be fed directly to the board, avoiding the current drop over the diode, and also feed the super-capacitor directly, and then use the MAX809 to detect low-voltage to tell the Atheros 9331 when this has occurred via GPIO24.

gardners commented 7 years ago

To charge the supercap safely, something like the following should be used:

http://www.digikey.com/product-detail/en/linear-technology/LTC3225EDDB-TRMPBF/LTC3225EDDB-TRMPBFTR-ND/1931590

or if the current it can supply is too low, then:

http://www.linear.com/product/LTC3625

Both require 2x >2.75V 0.1F super capacitors.