The last couple months I’ve been working on this project, I’m nearing its end and I’m getting really excited! However, this is still pretty new to me and so I was hoping my electrical diagram/accumulated knowledge could be verified before I go and start spending money on parts. All criticism is welcome as are any additional resources. Thank you in advance!

Circuit diagram


Arduino setup:

Arduino pins (aside from the power section) at the bottom are capable of outputting up to 40mA at most and when using multiple pins, no more than 200 mA should ever be drawn at once

Piezo buzzers are the only electrical component that do not need resistors

This was taken directly from How To Mechatronics, attaching a 330 Ohm resistor to the LED strip lowers its electrical noise

The other resistor attached to the LED strip should be 25 ohms, seeing as I don’t have one though I will be using a 27-ohm resistor instead. Where 5 LED’s on the strip should take up 300mA (each GRB uses 20mA and I’m using 5 in total, therefore 20 x 3 x 5 = 300). Using Ohms law R = V/I, therefore R = 7.5/0.3, therefore R = 25.

**I would like to add that I also looked at Watt’s law and was a big confused as I got a current of 200 mA instead (as the LED’s each use between 0.1 – 0.3 Watts, therefore I = W/V, therefore I = 1.5/7.5, therefore I = 0.2) I went with the 27 ohms instead of the 37.5 ohms watts law gave me instead because How To Mechatronics really seemed to know what was up I chose to power the board via the 7.5V, 1A adapter mostly because I wanted its voltage-in to be regulated and seeing as it won’t be plugged into a computer, I thought USB was a bit sketch and it made more sense to use the power port as opposed to the Vin pin.

Motor setup:

The motor was chosen based off of my need for high torque – the door handle I am trying to push requires 5 pounds (raised to 6 pounds for extra breathing room) and the entire handle is 4.5 inches (lowered to 3 inches for breathing room) in length (the measurements were provided by a friend as I wont be home for a little bit, might seem a bit overkill but its just cause I don’t think they are entirely accurate in the first place). Using these measurements and the equation Torque = length x Force I got the required torque had to be greater than 0.3572kg/cm to open my door. Knowing this I took a look at a bunch of Nema stepper motors and chose one capable of producing that torque (based off of its holding torque) that was the lightest and smallest. I wanted something light as I am still unsure how I will be mounting this to my door…

Originally, I was going to use the L298N but seeing as how using the 5V pin off the Arduino is not recommended for powering it and that they generally don’t dissipate heat that well for their motors I decided not to

Lastly, the 12V 4A power supply was chosen because I needed something stronger than 9V and I wanted to save money. Seeing as I would have the 0.5A - 0.7A current option selected (to my knowledge anything more could cause damage unlike with the Arduino, extra current is not necessarily a bad thing in this case) it’s a bit overkill. I’m thinking it shouldn’t cause any thermal limiting though seeing as it is rated to 4A and its not as if my motor will be going that often anyways :)

Links (all links except for the motor which goes to pololu redirect to amazon): 7.5V 1A Power supply: https://www.amazon.ca/Belker-Adjustable-Universal-Household-Electronics/dp/B07NKZCWT1/ref=cm_cr_arp_d_product_top?ie=UTF8 12V 4A power supply: https://www.amazon.ca/COOLM-Adapter-100-240V-Doorbell-5-5X2-5MM/dp/B07H2T31JJ/ref=sr_1_6?dchild=1&keywords=10V+4A+POWER+SUPPLY&qid=1606959202&s=hi&sr=1-6 KEYESTUDIO W5500 Ethernet Arduino (Uno): https://www.amazon.ca/gp/product/B079G4WDGW/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&th=1 NEMA 14 stepper motor (2.7V, 1 A/Phase): https://www.pololu.com/product/1209 TB6600 stepper motor driver: https://www.amazon.ca/TB6600-Stepper-Driver-Controller-tb6600/dp/B07B9ZQF5D/ref=asc_df_B07B9ZQF5D/?tag=googleshopc0c-20&linkCode=df0&hvadid=292963865944&hvpos=&hvnetw=g&hvrand=11283888445696292979&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9001232&hvtargid=pla-524548131497&psc=1 LED strip (WS2812B): https://www.amazon.ca/gp/product/B01CDTED80/ref=ppx_yo_dt_b_asin_title_o06_s00?ie=UTF8&psc=1

  • what is the purpose of the device?
    – jsotola
    Dec 3, 2020 at 3:50
  • its a door unlocker :) gona set it up inside my apartment, the LEDs creates a colour code to be entered on a website I built, the speaker is to give me a minute heads up and the motor will pull a string to unlock the door
    – dhw123
    Dec 3, 2020 at 4:43
  • interesting ... the color code authentication is very clever
    – jsotola
    Dec 3, 2020 at 5:20
  • 1
    1. The 330 Ohms resistor does not lower any noise. It is not necessary. 2. The LED strip (WS2812B) can be powered by the Arduinos power pin. I would prefer an external power source, avoiding an overload of the Arduinos power regulator. It has no cooling and if you draw 500 mA it has to dissipate (7.5-5)*0.5 = 1.25 Watts. (It'll get really hot ;-) ) You could build an external regulator with an 7805 or LM317 or use a 5 Volt Power Supply. 3. If the color code is entered into Website, how does the Website communicate with the Arduino to control the motor? Have I misunderstood the setup? Dec 3, 2020 at 9:01
  • Get a 5V power supply instead of the 7.5V. Get one with a micro-USB plug. They are probably cheaper than the one you picked. Secondly; ohms law doesn't apply to WS2812 leds, as the regulate the current themselves. Thirdly, some buzzers require a transistor to drive, as some exceed the maximum current of an Arduino pin. Fourthly; it seems like a stepper motor is a bit of overkill for the application you're describing. I was thinking about maybe using a solenoid or one of the beefier hobby servos. But it kind of depends on how much force is required to unlock the door.
    – Gerben
    Dec 3, 2020 at 16:06

1 Answer 1


Let's take a look at the LEDs. Different kinds of LEDs have different forward voltage requirements. Non-bright LEDs tend to require less voltage than bright LEDs, since bright LEDs need more power to work. Typical VLED values are 1.7V for non-high-brightness red, 1.9V for high-brightness high-efficiency low-current red, 2V for orange and yellow, 2.1V for green, and 3.4 to 3.6V for bright white and most blue types.

In order to make sure that this voltage gets dropped across the LED, you should use a voltage greater than the LED's forward voltage. Use at least 3V supply voltage for lower-voltage LEDs and 4.5V for 3.4V types. Also add a resistor in series with the LED to limit excess current from burning out the LED, usually so that the current flowing through the LED is about 10mA. Make sure that the current doesn't exceed the maximum current specified on the LED's datasheet. You have 5 LEDs in series with (assuming keeps the math simple) a Vf of 2 Volts, therefore you need 5*2 (they add) or 10 volts to get them to light then a little more (2 volts) so you can control the current with a resistor. At this point you have 5 volts trying to push current through a 10V device circuit, nothing will happen. Using 12 volts and Ohm's law a 200 Ohm resistor will give you about 10 mA, a safe current for most LEDS. If you want them light replace the 27 Ohm with a 200 Ohm and connect to the +12V inplace of the 5V pin. Note LEDs do not work well in parallel unless the current is controlled in each LED or LED string. This is based on your schematic showing 5 LEDs powered by a 5V source.

  • 1
    The LEDs in the question are addressable LEDs that take care of their own current regulation. Your answer is not relevant to those.
    – StarCat
    Dec 5, 2020 at 10:56
  • An led's forward voltage does not depend on the power rating, all leds (of certain color) have the same forward drop (more or less, slight differences between manufacturers/materials). Power leds instead are driven at higher currents.
    – Sim Son
    Dec 5, 2020 at 18:52
  • Take a look at a LUXEON 5050 It needs about 22V at 25mA and about 25V at 200mA. Then there is the Violet Indium gallium which has a Vf range of 2.8 to 4 volts or Green which is 1.9 to 4 volts, over 200% Delta. Try this link: circuitbread.com/ee-faq/the-forward-voltages-of-different-leds The Vf is determined by the chemestry used and the process. LEDs also make great substitutes for low voltage zeners, just keep the current down, try it.
    – Gil
    Dec 7, 2020 at 3:18

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.