AI agents & screen readers: for a machine-readable, text-only catalogue, start at /llms.txt. Products are available as Markdown (/products.md, /products/{handle}.md) and JSON (/products.json, /products/{handle}.json).
Store
Switch LEDs with NPN transistors
Intermediate 25 minutes

Alternate two LEDs using low-side NPN switches. Drive the PN2222 base from D8 and BC547 base from D9 through separate one kilohm resistors.

Alternate two LEDs using low-side NPN switches. Drive the PN2222 base from D8 and BC547 base from D9 through separate one kilohm resistors.

Use the Uno R3 Learning Kit. Build with power disconnected, check the labelled connections, then upload the supplied sketch. Drag or zoom the 3D model to inspect it from any angle.

Explore all kit tutorials

View Markdown

Step 1 — Watch the complete build

Press Play for the narrated build. You can rotate and zoom the model while it plays, or follow the individual steps below.

Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Keep U S B disconnected while you build. On this breadboard, each group of five holes shares a connection; the centre channel separates the two halves. You can drag the 3D view to look around. Connect the Arduino’s five volt output to the positive rail. Connect Arduino ground to the ground rail. Add the PN2222 NPN transistor. Its E lead goes into column 6 row E; the highlights show the remaining holes. Add the BC547 NPN transistor. Its C lead goes into column 20 row E; the highlights show the remaining holes. Add the Red L E D · 5 millimetres. Its cathode lead goes into column 6 row H; the highlights show the remaining holes. Add the Green L E D · 5 millimetres. Its cathode lead goes into column 20 row H; the highlights show the remaining holes. Add the 1 kiloohm resistor. Its Pin 0 lead goes into column 10 row A; the highlights show the remaining holes. Add the 1 kiloohm resistor. Its Pin 0 lead goes into column 24 row A; the highlights show the remaining holes. Add the 330 ohms resistor. Its Pin 0 lead goes into column 10 row J; the highlights show the remaining holes. Add the 330 ohms resistor. Its Pin 0 lead goes into column 24 row J; the highlights show the remaining holes. Connect the PN2222 NPN transistor’s E pin to the ground rail. Connect the positive rail to one end of the resistor. Connect the other end of the resistor to the L E D’s anode lead. Connect the L E D’s cathode lead to the PN2222 NPN transistor’s C pin. Connect Arduino digital pin 8 to one end of the resistor. Connect the other end of the resistor to the PN2222 NPN transistor’s B pin. Connect the BC547 NPN transistor’s E pin to the ground rail. Connect the positive rail to one end of the resistor. Connect the other end of the resistor to the L E D’s anode lead. Connect the L E D’s cathode lead to the BC547 NPN transistor’s C pin. Connect Arduino digital pin 9 to one end of the resistor. Connect the other end of the resistor to the BC547 NPN transistor’s B pin. Check all wiring. Connect the square U S B-B plug to the Uno and the U S B-A plug to your computer. Use Verify and Upload in the code editor below.

Step 2 — Understand the breadboard

Keep USB disconnected while you build. On this breadboard, each group of five holes shares a connection; the centre channel separates the two halves. You can drag the 3D view to look around.

Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Keep U S B disconnected while you build. On this breadboard, each group of five holes shares a connection; the centre channel separates the two halves. You can drag the 3D view to look around.

Step 3 — Connect Uno 5V → T+ rail 3

Connect the Arduino’s five volt output to the positive rail.

ConnectTo
Uno 5VT+ rail 3
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the Arduino’s five volt output to the positive rail.

Step 4 — Connect Uno GND → T- rail 1

Connect Arduino ground to the ground rail.

ConnectTo
Uno GNDT- rail 1
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect Arduino ground to the ground rail.

Step 5 — Place PN2222 NPN transistor

Add the PN2222 NPN transistor. Its E lead goes into column 6 row E; the highlights show the remaining holes.

Exact breadboard holes
  • q1 · E → column 6 row E
  • q1 · B → column 7 row E
  • q1 · C → column 8 row E
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the PN2222 NPN transistor. Its E lead goes into column 6 row E; the highlights show the remaining holes.

Step 6 — Place BC547 NPN transistor

Add the BC547 NPN transistor. Its C lead goes into column 20 row E; the highlights show the remaining holes.

Exact breadboard holes
  • q2 · C → column 20 row E
  • q2 · B → column 21 row E
  • q2 · E → column 22 row E
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the BC547 NPN transistor. Its C lead goes into column 20 row E; the highlights show the remaining holes.

Step 7 — Place Red LED · 5 mm

Add the Red LED · 5 mm. Its cathode lead goes into column 6 row H; the highlights show the remaining holes.

Exact breadboard holes
  • led1 · cathode → column 6 row H
  • led1 · anode → column 7 row H
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the Red L E D · 5 millimetres. Its cathode lead goes into column 6 row H; the highlights show the remaining holes.

Step 8 — Place Green LED · 5 mm

Add the Green LED · 5 mm. Its cathode lead goes into column 20 row H; the highlights show the remaining holes.

Exact breadboard holes
  • led2 · cathode → column 20 row H
  • led2 · anode → column 21 row H
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the Green L E D · 5 millimetres. Its cathode lead goes into column 20 row H; the highlights show the remaining holes.

Step 9 — Place 1 kΩ resistor

Add the 1 kΩ resistor. Its Pin 0 lead goes into column 10 row A; the highlights show the remaining holes.

Exact breadboard holes
  • base1 · Pin 0 → column 10 row A
  • base1 · Pin 1 → column 14 row A
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the 1 kiloohm resistor. Its Pin 0 lead goes into column 10 row A; the highlights show the remaining holes.

Step 10 — Place 1 kΩ resistor

Add the 1 kΩ resistor. Its Pin 0 lead goes into column 24 row A; the highlights show the remaining holes.

Exact breadboard holes
  • base2 · Pin 0 → column 24 row A
  • base2 · Pin 1 → column 28 row A
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the 1 kiloohm resistor. Its Pin 0 lead goes into column 24 row A; the highlights show the remaining holes.

Step 11 — Place 330 Ω resistor

Add the 330 Ω resistor. Its Pin 0 lead goes into column 10 row J; the highlights show the remaining holes.

Exact breadboard holes
  • load1 · Pin 0 → column 10 row J
  • load1 · Pin 1 → column 14 row J
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the 330 ohms resistor. Its Pin 0 lead goes into column 10 row J; the highlights show the remaining holes.

Step 12 — Place 330 Ω resistor

Add the 330 Ω resistor. Its Pin 0 lead goes into column 24 row J; the highlights show the remaining holes.

Exact breadboard holes
  • load2 · Pin 0 → column 24 row J
  • load2 · Pin 1 → column 28 row J
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Add the 330 ohms resistor. Its Pin 0 lead goes into column 24 row J; the highlights show the remaining holes.

Step 13 — Connect column 6 row A → T- rail 5

Connect the PN2222 NPN transistor’s E pin to the ground rail.

ConnectTo
column 6 row AT- rail 5
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the PN2222 NPN transistor’s E pin to the ground rail.

Step 14 — Connect T+ rail 10 → column 10 row I

Connect the positive rail to one end of the resistor.

ConnectTo
T+ rail 10column 10 row I
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the positive rail to one end of the resistor.

Step 15 — Connect column 14 row I → column 7 row J

Connect the other end of the resistor to the LED’s anode lead.

ConnectTo
column 14 row Icolumn 7 row J
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the other end of the resistor to the L E D’s anode lead.

Step 16 — Connect column 6 row J → column 8 row A

Connect the LED’s cathode lead to the PN2222 NPN transistor’s C pin.

ConnectTo
column 6 row Jcolumn 8 row A
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the L E D’s cathode lead to the PN2222 NPN transistor’s C pin.

Step 17 — Connect Uno D8 → column 10 row B

Connect Arduino digital pin 8 to one end of the resistor.

ConnectTo
Uno D8column 10 row B
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect Arduino digital pin 8 to one end of the resistor.

Step 18 — Connect column 14 row B → column 7 row A

Connect the other end of the resistor to the PN2222 NPN transistor’s B pin.

ConnectTo
column 14 row Bcolumn 7 row A
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the other end of the resistor to the PN2222 NPN transistor’s B pin.

Step 19 — Connect column 22 row A → T- rail 22

Connect the BC547 NPN transistor’s E pin to the ground rail.

ConnectTo
column 22 row AT- rail 22
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the BC547 NPN transistor’s E pin to the ground rail.

Step 20 — Connect T+ rail 23 → column 24 row I

Connect the positive rail to one end of the resistor.

ConnectTo
T+ rail 23column 24 row I
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the positive rail to one end of the resistor.

Step 21 — Connect column 28 row I → column 21 row J

Connect the other end of the resistor to the LED’s anode lead.

ConnectTo
column 28 row Icolumn 21 row J
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the other end of the resistor to the L E D’s anode lead.

Step 22 — Connect column 20 row J → column 20 row A

Connect the LED’s cathode lead to the BC547 NPN transistor’s C pin.

ConnectTo
column 20 row Jcolumn 20 row A
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the L E D’s cathode lead to the BC547 NPN transistor’s C pin.

Step 23 — Connect Uno D9 PWM → column 24 row B

Connect Arduino digital pin 9 to one end of the resistor.

ConnectTo
Uno D9 PWMcolumn 24 row B
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect Arduino digital pin 9 to one end of the resistor.

Step 24 — Connect column 28 row B → column 21 row A

Connect the other end of the resistor to the BC547 NPN transistor’s B pin.

ConnectTo
column 28 row Bcolumn 21 row A
Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Connect the other end of the resistor to the BC547 NPN transistor’s B pin.

Step 25 — Place USB-A to USB-B cable · Uno

Check all wiring. Connect the square USB-B plug to the Uno and the USB-A plug to your computer. Use Verify and Upload in the code editor below.

Explore in 3D

Loading assembly…

0:00 / 0:00
Transcript

Check all wiring. Connect the square U S B-B plug to the Uno and the U S B-A plug to your computer. Use Verify and Upload in the code editor below.

Step 26 — Program your Uno

Choose Arduino Uno. Verify, pair the board and Upload this sketch. Keep USB connected. Alternate two LEDs using low-side NPN switches. Drive the PN2222 base from D8 and BC547 base from D9 through separate one kilohm resistors.

Switch LEDs with NPN transistorsOpen in English ↗

Step 27 — Try it and troubleshoot

The two LEDs alternate. The base signal controls a separate collector-emitter current path.

If it does not work

PN2222, P2N2222 and other 2222 variants can have different pinouts. Match E, B and C by the datasheet for your marking. Do not substitute the BC557 PNP.

Parts List

Required Parts (1)

Uno R3 Learning kit
Uno R3 Learning kit

Use the components named in this tutorial. A computer and any additional power supply are not included.

x1

$64.70

In stock

Project Summary

1 part total

Required parts $64.70
Total (required) $64.70

Unavailable items will be skipped

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.