KiCad ERC: Input pin not driven by any Output pins

Diagnostic signature

Input pin not driven by any Output pins

The KiCad Electrical Rules Checker (ERC) detected a symbol pin defined as an Input connected to a net that lacks a valid driving source.

What it means

KiCad's Electrical Rules Checker evaluates the electrical types of all pins connected to each net to ensure logical consistency. This diagnostic is emitted when a net contains at least one pin configured with the 'Input' electrical type, but does not contain any pins capable of driving that input. By default, KiCad considers 'Output', 'Bidirectional', 'Tri-state', 'Power output', and 'Passive' pins as valid driving sources for an input. If none of these exist on the net, the tool warns that the input may be electrically floating or undefined.

Why it happens

This warning occurs because un-driven inputs on active components (like logic gates or microcontrollers) can float to intermediate voltage levels, potentially causing excessive current draw, oscillation, or undefined logic states in the physical circuit. Common schematic design situations that trigger this include: 1. Leaving an IC's input pin completely unconnected. 2. Connecting two or more 'Input' pins together without connecting them to a driving source or pull-up/pull-down resistor. 3. Using a custom symbol or connector where the source pin was incorrectly configured in the Symbol Editor with an 'Input' electrical type instead of 'Output' or 'Passive'. 4. Connecting a signal to a hierarchical sheet pin, but failing to provide a driving source on the parent sheet.

Minimal reproduction

(kicad_sch (version 20231120) (generator "eeschema") (symbol (lib_id "74xx:74LS00") (at 100 100 0) (unit 1) (pin "1" (uuid "abcd") (name "") (type input))) (wire (pts (xy 100 100) (xy 80 100))) (label "SIG_IN" (at 80 100 0)))

How to fix it

Provide a valid driving source for the input net, update incorrect pin types in the Symbol Editor, or explicitly mark intentionally floating pins with a No Connect flag.

```kicad_sch
(kicad_sch (version 20231120) (generator "eeschema") (symbol (lib_id "74xx:74LS00") (at 100 100 0) (unit 1) (pin "1" (uuid "abcd") (name "A") (type input))) (symbol (lib_id "Logic_Programmable:CPLD_Macrocell") (at 80 100 0) (unit 1) (pin "2" (uuid "efgh") (name "OUT") (type output))) (wire (pts (xy 100 100) (xy 80 100))))
```

Step 1

Step 2

Step 3

Step 4

Step 5

Upstream references

Schematic Editor | 8.0 | English | Documentation

eeschema/erc_item.cpp - KiCad Source Code