Skip to the content
PCBKitNew board
2 layersIndicator driver, the printed circuit board in 3D

Schematics and board layouts for an Apollo Guidance Computer replica

Copper layers
2
Thickness
1.6 mm
Parts
176
Nets
248
Pads
678
Tracks, vias
0, 0
Routed
Not yet
KiCad
KiCad 5 (file 20170123)
Created
11 Oct 2015
Updated
14 Apr 2019

Overview

Indicator driver is an open-source printed circuit board by virtualagc, from the virtualagc/agc_hardware repository on GitHub, published under the MIT licence. It is a 2-layer board with 176 parts on 248 nets.

It is built around the EC2-12TNU, PN2907A and PN2222A, with the EC2-12NU among its other parts. Its parts include 67 resistors, 22 switches, 13 transistors, 7 capacitors and 2 inductors.

Main components

4

README

README.md

AGC Hardware

This repository contains KiCAD projects and libraries for a replica of the Apollo Guidance Computer. The schematics have, for the most part, been digitized directly from the original schematics for the computer and ND-1021042, the LEM Primary Guidance, Navigation, and Control System Manual, Volume I and Volume II. The schematics have been peppered with metadata required for digital simulation using my agc_simulation repository.

Current Status

All logic modules (A1-A24) have been digitized and appear to be operating correctly in simulation. Additionally, one custom module, fixed_erasable_memory, has been designed. The simulation is able to completely pass the AGC Block Two Self-Check present in Aurora 12 (the only program we have so far with the complete version), so the central processor wiring is correct. Interfaces still need to be fully tested.

The current focus is on designing and building a working DSKY replica, which will make further interface testing significantly easier. The digital indicator and alarm indicator modules are done, and the Indicator Driver Module has been digitized.

ND-1021042, which contains all of the schematics missing from Eldon Hall's set, has recently become available. Once the DSKY is functioning, I plan to do another pass through A1-A24 and check for differences between the schematics, ND-1021042, and my digitizations. I may or may not end up implementing accurate memory modules after that.

Differences from the Real Thing

  • Modern 74HC-series components are used due to the unavailability of RTL logic chips.
  • I've taken advantage of the nearly-infinite fanout of 74HC chips to remove all fanout expansion gates.
  • To reduce chip count, I've not limited myself to using only 3-input NOR gates; I also use NOT gates, 2-input NOR gates, and 4-input NOR gates, where applicable. Combined with the deletion of fanout expansion gates, the total chip count is roughly half of the original's.
  • Again due to the nature of 74HC logic, outputs of NOR gates cannot be directly connected together as was possible with RTL. Where this is necessary (cross-module buses and >4 input gates), I've inserted fast open-drain buffers with accompanying pullup resistors. This gives very close to the same behavior, as the fan-in expander gates of the original were operating effectively open-collector lines.
  • I've been fairly liberal about moving sections of logic around to make modules more stand-alone, and to condense related logic all into the same module. This facilited much easier development, and I anticipate it to make bench-testing individual modules easier when I've actually gotten boards manufactured. I also believe it to have significantly reduced the number of signals that will be going across the final backplane, although I have no numbers to back this up.
  • The implementation for fixed and erasable memory module is custom, by me. It replaces all Tray B modules with the exception of the analog alarms module and the clock oscillator module.

Parts

176
QtyValueFootprintReferences
64DDiodes_SMD:D_0603CR1, CR2, CR10, CR11, CR12, CR13, CR14, CR15, CR16, CR17, CR18, CR19, CR20, CR21, CR22, CR23 +48
421.5kResistors_SMD:R_0603_HandSolderingR101, R102, R103, R104, R105, R106, R107, R108, R109, R110, R111, R112, R113, R114, R115, R116 +26
20EC2-12TNUagc_footprints:EC2-12TNUK1, K2, K3, K4, K5, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K20 +4
1410kResistors_SMD:R_0603_HandSolderingR1, R2, R3, R4, R6, R7, R9, R11, R12, R15, R16, R19, R22, R24
7PN2907ATO_SOT_Packages_THT:TO-3Q1, Q8, Q9, Q10, Q11, Q12, Q13
6PN2222ATO_SOT_Packages_THT:TO-3Q2, Q3, Q4, Q5, Q6, Q7
50.1uFCapacitors_SMD:C_0603_HandSolderingC3, C4, C5, C6, C7
42kResistors_SMD:R_0603_HandSolderingR14, R18, R21, R23
318kResistors_SMD:R_0603_HandSolderingR5, R8, R10
21kResistors_SMD:R_0603_HandSolderingR20, R25
220kResistors_SMD:R_0603_HandSolderingR13, R17
24.7uFCapacitors_SMD:C_0603_HandSolderingC1, C2
28.2uHInductors:Inductor_1212L1, L2
2EC2-12NUagc_footprints:EC2-12NUK21, K22
1PCN10A-128Pagc_footprints:PCN10A-128PP1

Questions

What parts does the Indicator driver use?

176 parts, built around the EC2-12TNU, PN2907A, PN2222A and EC2-12NU. 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 Indicator driver KiCad files?

From the virtualagc/agc_hardware repository on GitHub, at the commit this page was made from: the board is dsky/indicator_driver/indicator_driver.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Indicator driver design in my own project?

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

More from virtualagc/agc_hardware

2
  • 4 layers63.5 × 109.2 mmDigital indicator, the printed circuit board in 3D

    Digital indicator

    virtualagc/agc_hardware

    Schematics and board layouts for an Apollo Guidance Computer replica

    217 parts118MIT
  • 2 layers63.5 × 109.2 mmAlarm indicator, the printed circuit board in 3D

    Alarm indicator

    virtualagc/agc_hardware

    Schematics and board layouts for an Apollo Guidance Computer replica

    44 parts118MIT

Similar boards

  • 2 layers176.3 × 106.7 mmIS250 Interface Board, the printed circuit board in 3D

    IS250 Interface Board

    MrArgon39/SimDrivingCockpit

    All the code and other assorted stuff for this project

    62 parts
  • 4 layers114.3 × 114 mmBaSe PWR V4 0, the printed circuit board in 3D

    BaSe PWR V4 0

    M-Welsch/backup-server

    Backup Server (BaSe)

    109 parts3Apache-2.0
  • 4 layers46 × 93.7 mmBaSe PWR V3 3, the printed circuit board in 3D

    BaSe PWR V3 3

    M-Welsch/base-pcb-power

    Backup Server Circuit Board that contains power management and sbu

    110 parts
  • 4 layers150 × 100 mmHL2-MRF101, the printed circuit board in 3D

    HL2-MRF101

    mathisschmieder/HL2-MRF101

    Hermes-Lite2 Power Amplifier/Filter board using MRF-101

    219 parts29
  • 2 layers65 × 90 mmDual BPF, the printed circuit board in 3D

    Dual BPF

    F6ITU/Dual_BPF

    New generation dual band pass filter for OpenHPSDR receive path

    137 parts2
  • 2 layers99.6 × 99.6 mmTasmoTree, the printed circuit board in 3D

    TasmoTree

    engineerjoe440/TasmoTree

    PCB Layout for Tasmota Controlled (ESP32) Christmas Tree Miniature Village Display

    26 partsMIT