I would like to control and power a 40x40mm size array of 25 x 25 small heating elements which should function just like a visual display of LEDs, but switching heating elements on/off instead. I am thinking of using tiny strips (<2mm square) of 28-30 AWG nichrome wire. And I would like to use an Arduino to drive the matrix of wires. Each nichrome strip needs to reach temperatures between 30°C to 45°C in the air. Power source can be 1 x Li-Ion Polymer battery OR 2 x Li-Ion 18650 (2300mAh) cells.

but need the following advice:

  1. Would SMD themistors be suitable instead of resistive nichrome wire?
  2. Can I provide the Nichrome wires with sufficient current through using a multiplexor? or must I use relays to power them directly?
  3. How does cooling nichrome wire (drawing heat via conduction to lower temperature) compare to less resistive wires? does this require less or more power?
  4. What are some suitable multiplex shields or other methods of controlling them with an arduino?
  5. Would Nichrome sheet be able to be chemically etched just like laminated copper boards?

Thank you!


1 Answer 1


edit: changed calculations to the diode's package

I would use SMT diodes (I'll explain in a minute why). 45 °C is not very hot, they can easily handle that without derating. You can use the BAS16 in SC79 package.

Thermal resistance for the SC79 package is 120 K/W. That means that without thermal losses supplying 200 mW will already heat the package up from room temperature (20 °C) to 45 °C.

You'll have to experiment a bit with power, because at equilibrium you supply as much power as is lost to the environment, and that last thing is not easy to calculate theoretically. Keep in mind that the diodes will lose more heat through conduction (to the PCB) than through convection (to the air).

Arduino can supply 100mW per pin, so you can't multiplex directly from the I/O. Three problems.

  • Not only is the 100mW insufficient, if you want to multiplex 25 columns and have 200mW for each, that means you have to supply 5 A at a 4 % duty cycle. Arduino can't source nor sink that, so you'll need transistors for controlling both rows and columns.
  • And that's where the diodes come in, you can't just multiplex an array of resistors, nor Nichrome wire. The resistors in adjacent colums/rows are parallel to them and they will also take a share in the load. You can't control them individually. With diodes you can do that, LED display multiplexing is done all the time.
  • 25 diodes \$\times\$ 200 mA average = 5 A. Arduino can't supply that. Using an external 5 V supply is a Bad Idea™: the diodes drop only about 1 V, so the rest of the 5 V would cause 20 W dissipation in transistors and current limiting resistors. You want a power supply at around 2 V.

Further reading
Thermal Management in Surface-Mounted Resistor Applications

  • \$\begingroup\$ Thanks Steven! great tips. I have only a few concerns. I need the diodes to be square in shape, most SM diodes are rectangular. I would also like most of their heat to dissipate via conduction of their top surface in contact with another surface, rather than conducted by the PCB, as the heat map (pdf) indicates. Also, what do you mean "Arduino can't source nor sink that"? Thanks again. \$\endgroup\$
    – Edan
    Jun 14, 2012 at 8:04
  • \$\begingroup\$ @MachuPichu - Square may be hard to find. They use package names, so you may have to go through the list of existing SMT diode packages. You can reduce losses to the PCB by placing a 0.5 mm (something like that) spacer under the diode during soldering, remove afterwards. Also make the traces to the LED narrow at a point close to the LEDs; copper conduct heat very well. "Arduino can't source nor sink that" means its I/O pins can't supply 5 A, nor can they draw 5 A. (there was a typo in my answer, 5 W should be 5 A) \$\endgroup\$
    – stevenvh
    Jun 14, 2012 at 8:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.