← All parts

ULN2803

ULN2803

Darlington driver

ULN2803 8-channel Darlington array (18-pin) — drives relays/steppers/solenoids from logic. Like the ULN2003 with an 8th channel.

In stock

Specifications

0

No specs listed.

Pinout

18
PinNameFunctionsNotes
1IN1
GPIO
Input 1
2IN2
GPIO
Input 2
3IN3
GPIO
Input 3
4IN4
GPIO
Input 4
5IN5
GPIO
Input 5
6IN6
GPIO
Input 6
7IN7
GPIO
Input 7
8IN8
GPIO
Input 8
9GND
GND
Ground
10COM
POWER
Common (flyback cathodes)
11OUT8
Output 8
12OUT7
Output 7
13OUT6
Output 6
14OUT5
Output 5
15OUT4
Output 4
16OUT3
Output 3
17OUT2
Output 2
18OUT1
Output 1

Interactive pinout

Highlight:
ULN2803

Click a pin to copy its name · tap a tag above to spotlight a bus.

Starter code

Community starter examples — minimal, unofficial, and provided to get you wiring fast. Verify against the manufacturer datasheet before relying on them.

Arduino (C++)

arduino
// ULN2803A Darlington sink driver — community starter example
// Each input drives a sinking output (relay/solenoid/LED low side).
#if defined(ESP32)
  #define IN_PIN 26
#else
  #define IN_PIN 8
#endif

void setup() {
  pinMode(IN_PIN, OUTPUT);
}

void loop() {
  digitalWrite(IN_PIN, HIGH);   // OUT pulls its load to GND
  delay(500);
  digitalWrite(IN_PIN, LOW);    // output off (open)
  delay(500);
}

MicroPython

python
# ULN2803A Darlington driver (ESP32) — community starter example
from machine import Pin
import time

drv = Pin(26, Pin.OUT)   # IN1 -> OUT1 sinks the load

while True:
    drv.value(1)   # load ON (sunk to GND)
    time.sleep(0.5)
    drv.value(0)
    time.sleep(0.5)

Wiring

PinArduino Uno R3ESP32 DevKitC (WROOM-32)Notes
IN1D8GPIO26Logic input; 3.3 V drives it fine
GNDGNDGNDChip ground (pin 9)
COM--Flyback-diode common: tie to the load's + supply for inductive loads
OUT1--Open-collector sink: load between +V and OUT1

Typical uses

  • Driving relays, solenoids, and steppers (low side)
  • Switching up to 8 loads from logic pins