Replace DPDT on-on-on switch with relays
Breaking this down... controlling this via a micro needs to define 3 states:


off (no voltage across the Peltier)
cool (0, +12)
heat (+12, 0)


I think this can be simplified as two GPIO bits, and two SPDT relays. Why two relays? SPDT types are common, inexpensive and reliable, so it’s more convenient to model the on-off-on using a pair of these.

So here’s what that looks like:







simulate this circuit &ndash; Schematic created using CircuitLab

This works as follows:


COOL, HEAT low: (-) = 12V, (+) = 12V
COOL high: (-) = 0V, (+) = 12V
HEAT high: (-) = 12V, (+) = 0V
COOL, HEAT high: (-) = 0V, (+) = 0V (probably does no harm, but check)


The relay coils draw a bit of current, about 10 ~ 30mA depending on the type. That's very small compared to what the Peltier draws, so not even significant.