Why do you want to measure the temperature of the heat sinks? What's the purpose of the digital pot? The current through the elements should be controlled e.g. by PWM, resistors only add more heat.

I just hope yuo don't want to use the digital potentiometer directly for supply the current to the Peltier cell ... ;)

Please post a hand-drawn wiring diagram, showing how you are powering the Peltier elements and controlling the current flow.

What removes the heat from the hot side of the Peltier elements?

You need a logic level MOSFET or transistor switch, to control the current. To set the average current, use a PWM Arduino output. Something like the typical [u]motor driver[/u] circuit shown below will work. "M" would be the Peltier device and in that case, neither the diode nor the capacitor are required.


To set the average current, use a PWM Arduino output.

PWM is less efficient and degrades the Peltier element more than DC does.

Recommendations of the manufacturers

Manufacturers of Peltier elements suggest using direct current and limiting current ripple for the regulation of the output current.
They explicitly advise against the usage of direct PWM control of Peltier elements:

Ferrotec: “However we recommend limiting power supply ripple to a maximum of 10 percent with a preferred value being <5%.”

RMT: “TEC [Peltier elements] controlled by PWM operates less effectively than at DC current. The PWM control is always less effective than TEC operation at the same average DC current and power consumption.”

Marlow: “Thermoelectric coolers require smooth DC current for optimum operation. A ripple factor of less than 10% will result in less than 1% degradation in ∆T. […] Marlow does not recommend an ON/OFF control.”

Peltier Element Efficiency

DC current limiting will require a BIG heatsink (and probably a fan) for the mosfet … if i recall correctly, TEC1-12706 can go til 5A each one, at 12V … also if used at a fraction of this current, the 2.5A media the OP mentioned, a common mosfet will dissipate a lot of power in heat, working in this range (at least, if not used a TrenchMOS or OptiMOS with 1 or less milliohms RdsON) …

A more convenient compromise can be using a discretely big electrolytic capacitor in parallel with the TEC , so the PWM is partially compensated and “translated” in a sort of pseudo-DC current (still with ripple, but always better than direct PWM) … also this prevent the reverse heat conduction in the deadtimes of a “pure” PWM use (TECs are NOT thermally insulant, in fact is the opposite, when they are not powered, the heat from hot side quickly return to the cold side … keeping them also just partially powered take care of this problem and increase efficence)

Turning a Peltier element on and off is also only a form of PWM, at a low frequency. A high PWM frequency should keep the temperature gradient stable, so that the element doesn't decompose itself by thermal stress.

PWM is less efficient and degrades the Peltier element more than DC does.

True, but for the OP’s soon to be discarded experiment, this won’t matter.

I think you re the one proposing the circuit, which we have never seen. Paul

May I suggest a bit of a different direction for your project. You are designing a cooling vest, but are measuring the hot side of the Peltier device. You are attempting to regulate the cooling which is very little compared the the internally generated heat for the Peltier diodes. You need to measure the temperature on the cool side. I sincerely doubt you will have much success in limiting the current because of the voltage needed just to get the 12-13 diodes in series the begin conducting current. Paul

peltier123: ... Initially, my thought of using the digital potentiometer together with the temp sensor ...

The problem is that 90% of the digital potentiometers (intended as components), may hold from 3 to 5 mA max, some can also go til 20 or 25, never seen one that can hold more than these currents ...

So probably regardless the fact you choose linear or PWM, you still need a circuit that control an external power mosfet with its own heatsink ... then this can be drived from Arduino, yes ...