Skip to the content
4 layers99.1 × 75.7 mmCircuit tap, the printed circuit board in 3D

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Size
99.1 × 75.7 mm
Copper layers
4
Thickness
1.61 mm
Parts
65
Nets
119
Pads
339
Tracks, vias
654, 19
Pours
1
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
18 Jun 2023
Updated
23 Jun 2023

Overview

Circuit tap is an open-source printed circuit board by gcoonrod, from the gcoonrod/circuit-tap repository on GitHub, published under the Apache-2.0 licence. It is a 4-layer board of 99.1 × 75.7 mm with 65 parts on 119 nets, routed with 654 tracks and 19 vias.

It is built around the ATMEGA4809-PF, MCP2221A-I/P and CD74HC165E, with the ACH-20.000MHZ-EK and UJ2-BH-1-TH among its other parts. Its parts include 18 capacitors, 11 connectors, 8 ICs, 8 diodes and 6 resistors. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

5

README

README.md

Circuit Tap

A low-speed digital logic analyzer designed around 74HC165 shift registers and the ATMega4809 MCU.

Design

layout

The Circuit Tap is designed to serve as a digital logic analyzer for primarily low speed circuits (<= 1Mhz). It is intended to aid in debugging the RetroStack, a 6502 based hobbyist computer. As I do not (at the time of designing this tool) own an oscilliscope or logic analyzer, I needed a way to monitor the address bus, data bus, and numerous control signals of the RetroStack while the clock was freely running. For very simple programs it was sufficient to use a manually stepped clock to debug, but the addition of IO peripherals and more complex programs have made it prohibitively time consuming to continue manual clock control.

Data Capture

The Circuit Tap has 6 low speed 8-bit input ports and one full speed 8-bit port. The low speed ports are implemented with 74HC165 parallel load shift registers which allows for the simultaneous capture of up to 48 signals on a single clock transition. However, those bits must be shifted out before (~10 mcu clock cycles) before another sample can be taken. This is the primary limiting factor for the sampling speed of the low speed inputs. The full speed port is directly mapped to Port D of the 4809 and can be read from or written to as fast as the mcu is capable.

Goals

  • Reliably capture signals at ~1Mhz
  • Read test plans from an SD card or UART
  • Write test results to SD or UART
  • Integrate with desktop GUI (TBD)
  • Drive external clock and control lines
  • Trigger off external clock and control lines

Parts

65
QtyValueFootprintReferences
12100nCapacitor_THT:C_Rect_L4.0mm_W2.5mm_P2.50mmC2, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14
61kResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_HorizontalR1, R2, R3, R4, R5, R6
6CD74HC165EPackage_DIP:DIP-16_W7.62mm_Socket_LongPadsU3, U4, U5, U6, U7, U8
41uCapacitor_THT:C_Rect_L4.6mm_W3.8mm_P2.50mm_MKS02_FKP02C16, C17, C18, C19
4M3MountingHole:MountingHole_3.2mm_M3_DIN965_PadH1, H2, H3, H4
110nCapacitor_THT:C_Rect_L4.0mm_W2.5mm_P2.50mmC1
11kResistor_THT:R_Array_SIP9RN1
14u7Capacitor_THT:CP_Radial_D5.0mm_P2.50mmC3
1600RFerrite_THT:LairdTech_28C0236-0JW-10L1
1ACH-20.000MHZ-EKOscillator:Oscillator_DIP-8X1
1ATMEGA4809-PFPackage_DIP:DIP-40_W15.24mm_Socket_LongPadsU2
1HDR_DUT_CLKConnector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_VerticalJ10
1HDR_HSIOConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ9
1HDR_PORTAConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ3
1HDR_PORTBConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ4
1HDR_PORTCConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ5
1HDR_PORTDConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ6
1HDR_PORTEConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ7
1HDR_PORTFConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ8
1HDR_SDConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ11
1HDR_UPDIConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ2
1LED_ARMLED_THT:LED_D5.0mmD5
1LED_ENDLED_THT:LED_D5.0mmD8
1LED_ERRLED_THT:LED_D5.0mmD7
1LED_PWRLED_THT:LED_D5.0mmD4
1LED_RUNLED_THT:LED_D5.0mmD6
1LED_RXLED_THT:LED_D5.0mmD10
1LED_TXLED_THT:LED_D5.0mmD9
1LOGORetroStack:RetroStackFullLogo13x10mmG***
1MCP2221A-I/PPackage_DIP:DIP-14_W7.62mmU1
1P6KE-ATDiode_THT:D_DO-15_P3.81mm_Vertical_AnodeUpD1
1SW_ARMButton_Switch_THT:SW_PUSH_6mmSW1
1SW_CLKButton_Switch_THT:SW_PUSH_6mmSW4
1SW_MCU_RSTButton_Switch_THT:SW_PUSH_6mmSW3
1SW_USB_RSTButton_Switch_THT:SW_PUSH_6mmSW2
1UJ2-BH-1-THRetroStack:UJ2BH1THJ1

The 63 most common of 65 parts.

Similar boards

  • 2 layers6502-schematic, the printed circuit board in 3D

    6502-schematic

    lolakkalol/6502-computer-project

    A 6502-based computer project! Explore the docs » View Demo Programs · Report Bug · Request Feature

    57 parts
  • 2 layers165 × 135 mmPeripheral board, the printed circuit board in 3D

    Peripheral board

    Lintaroh/OMA68k

    MC68000でコンピュータを作ろう!

    148 partsMIT
  • 2 layers95 × 100 mmSbcz80cpm, the printed circuit board in 3D

    Sbcz80cpm

    tkhshmsy/sbcz80cpm

    Single Board Computer with Z80 for CP/M

    42 partsMIT
  • 4 layers70 × 45 mmUSB Power Injector 4 Layer V1.0, the printed circuit board in 3D

    USB Power Injector 4 Layer V1.0

    Board-Outline/USB-Power-Injector

    The USB Power Injector allows a convenient way to power up USB 2.0 devices from a lab power supply, while still allowing data transfer from the device to the host.

    11 parts9
  • 4 layers75 × 57 mmPlatypus, the printed circuit board in 3D

    Platypus

    ManiacalLabs/Platypus

    Open Hardware CNC / Laser Controller Board

    63 parts6
  • 2 layers139.7 × 100.3 mmAchterart, the printed circuit board in 3D

    Achterart

    CounterPillow/achterart

    An 8-way USB-to-UART converter board based on the CH348 chip

    63 parts2
  • 6 layers250 × 167.9 mmDev board1, the printed circuit board in 3D

    Dev board1

    tbennellick/sts-hiz-serial-bodge

    966 parts
  • 2 layers100 × 54 mmArduinoMega2560, the printed circuit board in 3D

    ArduinoMega2560

    muhardianab/ArduinoMega2560

    Making a new Arduino Mega 2560 Board

    73 parts

Questions

How big is the Circuit tap PCB?

It measures 99.1 × 75.7 mm and has 4 copper layers, 1.61 mm thick.

What parts does the Circuit tap use?

65 parts, built around the ATMEGA4809-PF, MCP2221A-I/P, CD74HC165E and ACH-20.000MHZ-EK. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Circuit tap KiCad files?

From the gcoonrod/circuit-tap repository on GitHub, at the commit this page was made from: the board is circuit-tap.kicad_pcb and its schematic circuit-tap.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Circuit tap design in my own project?

Its repository publishes it under the Apache-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).