Make a Logic Probe

If you ever thought about making a logic probe to help you with digital electronics, this project may be for you.
I have attached images showing a finished logic probe project and the PDFs include a 1:1 PCB layout for the probe.

This Logic Probe reacts to pulses as short as 50nS.
Signals up to +20 volts can be monitored.
This Logic Probe has 3 output LEDs to indicate what is happening on the probe input.
The following are the LED conditions when the probe is touching a pin with:

  1. a logic ONE.
    HIGH led “ON” with high 350HZ sound.

  2. a logic ZERO.
    LOW led “ON” with low 175HZ sound.

  3. a (HIGH to LOW) or a (LOW to HIGH) transition (with the Pulse/Hold switch in the Pulse position).
    HIGH or LOW leds “ON” with PULSE led (400ms flash).

  4. a (HIGH to LOW) or a (LOW to HIGH) transition (with the Pulse/Hold switch in the Hold position).
    HIGH or LOW leds “ON” with PULSE led (ON).

  5. a pulse train.
    HIGH and LOW leds “ON” with PULSE led “ON” (or flashing) with 350HZ to 175HZ sound (or a mixture of).

  6. a floating input or open collector/drain output that is momentarily going to a logic level.
    HIGH and LOW leds “OFF” and PULSE led “ON” (or flashing) with no sound.

  7. a floating input or open collector/drain output with no logic transitions.
    HIGH, LOW and PULSE leds off with no sound.

Putting the “Pull-Up” switch in the up (closed) position connects a 100K pull-up resistor on the probe input (useful for floating inputs or open collector/drain outputs.

LogicProbeSchematic.pdf (26.1 KB)

LogicProbePcbLayout.pdf (26.7 KB)

LogicProbePCB.pdf (15.9 KB)

Fast blink:
Two more files:

/*
  Fast Blink
 */

int led = 13;

void setup()
{                
  pinMode(led, OUTPUT);
  PINB |= _BV(PINB5);  
}

void loop()
{
  pinMode(13,OUTPUT);
  PINB |= _BV(PINB5);  // Toggle digital pin D13  Pulse is about 70nS
  PINB |= _BV(PINB5);  // Toggle digital pin D13
  
  pinMode(13,INPUT);  
  delay(1000);
}

Parts List.pdf (49 KB)

Logic Probe operation.pdf (140 KB)

No decoupling capacitors?

C7, C2, C1 and C10 are there, each .1uF

One per chip, right next to the chip's supply pin? Not really.... Now with a good
groundplane it's probably not critical, but there's no consistent ground or supply
grid.

Thank you for the suggestions.
One per gate can be in the next version.
Same with the ground plane.
As it is, it works great.
I'll try with 74LS14s at the front end to see if I can get better than 50ns.
The 7404 at the output could be a O.C. 7406.

EDIT:
Ground plane PCB version attached

Top.PDF (151 KB)

TopNeg.PDF (151 KB)