I'm assisting in the creation of a solar powered battery charger with an Enable line to prevent the battery from attempting to power the solar panel eg on a cloudy day. We initially tried a simple MOSFET, but forgot about the body diode, which allows drain-source current even when the FET is off. Is there a way to circumvent this somehow? A diode is the obvious solution, but we'd prefer to avoid as much power loss as possible in order to keep the battery charging even if the weather isn't ideal. Additionally, we're anticipating up to 2.5A in ideal conditions, which would take a rather beefy diode and sink close to 1.5W with a typical 0.6-0.7V drop.
No other transistor seems to fill this requirement; currently we're looking at relays, which we'd have to configure to use the battery voltage across the coil as the En line will be driven by a GPIO pin of the micro (ATTINY25)
Is there a simpler solution we're missing? Vsol could be 12 or 24V depending on configuration.