├── LICENSE.txt ├── README.md ├── Rev1 ├── Color │ ├── KiCAD │ │ ├── ArduinoPC-cache.lib │ │ ├── ArduinoPC.bck │ │ ├── ArduinoPC.dcm │ │ ├── ArduinoPC.kicad_pcb │ │ ├── ArduinoPC.kicad_pcb-bak │ │ ├── ArduinoPC.lib │ │ ├── ArduinoPC.net │ │ ├── ArduinoPC.pretty │ │ │ └── FP_MINI_DIN_6_PS2.kicad_mod │ │ ├── ArduinoPC.pro │ │ ├── ArduinoPC.sch │ │ ├── ArduinoPC.sch-bak │ │ ├── fp-info-cache │ │ ├── fp-lib-table │ │ └── sym-lib-table │ ├── Library │ │ ├── os │ │ │ └── os.h │ │ └── readme.md │ ├── README.md │ └── Schematic Nano PC Color Mod.pdf └── Monochrome │ ├── KiCAD │ ├── ArduinoPC-cache.lib │ ├── ArduinoPC.bck │ ├── ArduinoPC.dcm │ ├── ArduinoPC.kicad_pcb │ ├── ArduinoPC.kicad_pcb-bak │ ├── ArduinoPC.lib │ ├── ArduinoPC.net │ ├── ArduinoPC.pretty │ │ ├── FP_MINI_DIN_6_PS2.kicad_mod │ │ └── VGA DSUB15HD_female.kicad_mod │ ├── ArduinoPC.pro │ ├── ArduinoPC.sch │ ├── ArduinoPC.sch-bak │ ├── fp-info-cache │ ├── fp-lib-table │ └── sym-lib-table │ ├── Library │ ├── os │ │ ├── os.S │ │ └── os.h │ └── readme.md │ ├── Schematic Nano PC.pdf │ └── readme.md ├── Rev2 ├── KiCAD (color) │ ├── ArduinoPC-backups │ │ ├── ArduinoPC-2024-03-30_172939.zip │ │ ├── ArduinoPC-2024-03-30_194709.zip │ │ └── ArduinoPC-2024-03-30_200020.zip │ ├── ArduinoPC-cache.lib │ ├── ArduinoPC-rescue.dcm │ ├── ArduinoPC-rescue.lib │ ├── ArduinoPC.bin │ ├── ArduinoPC.dcm │ ├── ArduinoPC.dsn │ ├── ArduinoPC.kicad_pcb │ ├── ArduinoPC.kicad_pcb-bak │ ├── ArduinoPC.kicad_prl │ ├── ArduinoPC.kicad_pro │ ├── ArduinoPC.kicad_sch │ ├── ArduinoPC.lib │ ├── ArduinoPC.net │ ├── ArduinoPC.pretty │ │ ├── Arduino_Nano.kicad_mod │ │ ├── FP_MINI_DIN_6_PS2.kicad_mod │ │ └── VGA DSUB15HD_female.kicad_mod │ ├── ArduinoPC.pro │ ├── ArduinoPC.rules │ ├── ArduinoPC.sch │ ├── ArduinoPC.sch-bak │ ├── ArduinoPC.ses │ ├── alternate.dcm │ ├── alternate.lib │ ├── fp-info-cache │ ├── fp-lib-table │ ├── logo.pretty │ │ └── logo.kicad_mod │ └── sym-lib-table ├── KiCAD (monochrome) │ ├── ArduinoPC-backups │ │ ├── ArduinoPC-2024-03-30_172826.zip │ │ ├── ArduinoPC-2024-03-30_194143.zip │ │ ├── ArduinoPC-2024-03-30_200144.zip │ │ ├── ArduinoPC-2024-03-31_111949.zip │ │ └── ArduinoPC-2024-03-31_122102.zip │ ├── ArduinoPC-cache.lib │ ├── ArduinoPC-rescue.dcm │ ├── ArduinoPC-rescue.lib │ ├── ArduinoPC.bin │ ├── ArduinoPC.dcm │ ├── ArduinoPC.dsn │ ├── ArduinoPC.kicad_pcb │ ├── ArduinoPC.kicad_pcb-bak │ ├── ArduinoPC.kicad_prl │ ├── ArduinoPC.kicad_pro │ ├── ArduinoPC.kicad_sch │ ├── ArduinoPC.lib │ ├── ArduinoPC.net │ ├── ArduinoPC.pretty │ │ ├── Arduino_Nano.kicad_mod │ │ ├── FP_MINI_DIN_6_PS2.kicad_mod │ │ └── VGA DSUB15HD_female.kicad_mod │ ├── ArduinoPC.pro │ ├── ArduinoPC.rules │ ├── ArduinoPC.sch │ ├── ArduinoPC.sch-bak │ ├── ArduinoPC.ses │ ├── alternate.dcm │ ├── alternate.lib │ ├── fp-info-cache │ ├── fp-lib-table │ ├── logo.pretty │ │ └── logo.kicad_mod │ └── sym-lib-table ├── Library (mono & color) │ ├── os │ │ ├── os.S │ │ └── os.h │ └── readme.md ├── Schematic (color).pdf └── Schematic (monochrome).pdf └── Sketches ├── NanoBlocks └── NanoBlocks.ino ├── NanoEmpty └── NanoEmpty.ino ├── NanoMandelbrot └── NanoMandelbrot.ino ├── NanoMatrix └── NanoMatrix.ino ├── NanoRandom └── NanoRandom.ino ├── NanoType └── NanoType.ino └── readme.md /LICENSE.txt: -------------------------------------------------------------------------------- 1 | ; LICENSING INFORMATION 2 | ; This file is free software: you can redistribute it and/or modify it under the terms of the 3 | ; GNU General Public License as published by the Free Software Foundation, either 4 | ; version 3 of the License, or (at your option) any later version. 5 | ; This file is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 6 | ; implied warranty of MERCHANMBBILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 7 | ; License for more details. You should have received a copy of the GNU General Public License along 8 | ; with this program. If not, see https://www.gnu.org/licenses/. 9 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Arduino Nano Personal Computer - Squeezing Water from a Stone 2 | 3 | I am pushing the limits of how much compute you can get out of an Arduino Nano: 4 | 5 | o 320x200 pixels of monochrome VGA output (optional: 16 row colors) 6 | 7 | o PS/2 keyboard readout 8 | 9 | o requires only 1(!) logic IC 74HC166 10 | 11 | ![bild](https://github.com/slu4coder/Arduino-Nano-PC/assets/52576999/4f11af82-6a36-43ac-93a1-aada4b404360) 12 | 13 | # HOW TO USE THE 'NANO HOME COMPUTER' 14 | 15 | 1. Set the Nano's fuses for output of the 16MHz system clock on pin D8 (see appendix A below). 16 | 17 | 2. Copy the library files 'os.h' and 'os.S' into a folder '../Arduino/libraries/os'. 18 | 19 | 3. Start a new sketch with '#include '. The following global variables and functions are available: 20 | 21 | int os::frames built-in 16-bit 60Hz frame counter 22 | 23 | byte os::vram[25][40] character video RAM array 24 | 25 | byte os::cram[25] row color RAM array, available colors are: 26 | 27 | WHITE, BLACK, GRAY, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, 28 | 29 | DKGRAY, DKRED, DKGREEN, DKYELLOW, DKBLUE, DKMAGENTA, DKCYAN. 30 | 31 | os::text(String s, byte x, byte y, byte col = 0) prints text at screen position (x, y), col = 0: don't set row color 32 | 33 | os::fill(char c = 32) fills the video RAM with character c 34 | 35 | os::scroll() scrolls the video RAM one step upwards 36 | 37 | os::wait(int n) waits for n frames 38 | 39 | byte os::getkey() returns keystroke ASCII code (none: 0) 40 | 41 | 4. 26KB FLASH (1KB SRAM) of the Nano's 30KB FLASH (2KB SRAM) are usable, respectively. 42 | To save SRAM, define constant variables in FLASH memory by adding PROGMEM to the data type. 43 | Constant string arguments can be defined in FLASH by using the F("...") macro. 44 | 45 | 5. Have fun! 46 | 47 | APPENDIX 48 | 49 | A. Setting Arduino Nano's fuse bytes via ISP (in-situ programming) for output of system CLK 50 | 51 | o Connect two Arduino Nanos in the following way (programmer -> target): 52 | D13 -> D13, D12 -> D12, D11 -> D11, D10 -> RESET, 5V -> 5V, GND -> GND 53 | 54 | o Arduino IDE: Upload sketch 'examples/ArduinoISP' into programmer and select 'Tools/Programmer/Arduino as ISP'. 55 | 56 | o Open the file 'C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt'. 57 | 58 | o In section '## Arduino Nano w/ ATmega328P' (line 141), change line 149 'nano.menu.cpu.atmega328.bootloader.low_fuses=0xFF' 59 | (default) to '...=0xBF' (output system CLK on Pin D8 (B0)) and save the file. 60 | 61 | o Close and re-open the Arduino IDE for the changes to become active. 62 | 63 | o Select target board: 'Arduino Nano', processor: 'AtMega328P' and 'Tools/Burn bootloader'. 64 | 65 | B. Hardware 66 | 67 | Pin A0 (C0): keyboard input CLK 68 | 69 | Pin A1 (C1): keyboard input DAT 70 | 71 | Pin A2-5 (C2-5): 4-bit color output to 74HC08 (optional) 72 | 73 | Pin D0-7 (D0-7): 8-bit pixel output to 74HC166 74 | 75 | Pin D8 (B0): CLKO (16MHz system clock output) 76 | 77 | Pin D9 (B1): unused 78 | 79 | Pin D10 (B2): /VSYNC VGA (timer1, every 1/60s) 80 | 81 | Pin D11 (B3): /PE 74166 pixel shift register synchroneous parallel load on rising edge of CP 82 | 83 | Pin D12 (B4): /HSYNC VGA (inside ISR, every 32µs) 84 | 85 | Pin D13 (B5): LED 86 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/ArduinoPC-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74xx_74HC164 5 | # 6 | DEF 74xx_74HC164 U 0 20 Y Y 1 F N 7 | F0 "U" 75 -550 50 H V L CNN 8 | F1 "74xx_74HC164" 75 -650 50 H V L CNN 9 | F2 "" 900 -300 50 H I C CNN 10 | F3 "" 900 -300 50 H I C CNN 11 | ALIAS 74HCT164 12 | $FPLIST 13 | SOIC*3.9x8.7*P1.27mm* 14 | ?SSOP*P0.65mm* 15 | $ENDFPLIST 16 | DRAW 17 | S 300 400 -300 -500 0 1 10 f 18 | X DSA 1 -400 0 100 R 50 50 1 1 I 19 | X Q4 10 400 -100 100 L 50 50 1 1 O 20 | X Q5 11 400 -200 100 L 50 50 1 1 O 21 | X Q6 12 400 -300 100 L 50 50 1 1 O 22 | X Q7 13 400 -400 100 L 50 50 1 1 O 23 | X VCC 14 0 500 100 D 50 50 1 1 W 24 | X DSB 2 -400 -100 100 R 50 50 1 1 I 25 | X Q0 3 400 300 100 L 50 50 1 1 O 26 | X Q1 4 400 200 100 L 50 50 1 1 O 27 | X Q2 5 400 100 100 L 50 50 1 1 O 28 | X Q3 6 400 0 100 L 50 50 1 1 O 29 | X GND 7 0 -600 100 U 50 50 1 1 W 30 | X CP 8 -400 -300 100 R 50 50 1 1 I 31 | X ~MR 9 -400 200 100 R 50 50 1 1 I 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74xx_74HC86 36 | # 37 | DEF 74xx_74HC86 U 0 40 Y Y 5 L N 38 | F0 "U" 0 50 50 H V C CNN 39 | F1 "74xx_74HC86" 0 -50 50 H V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | ALIAS 74HC86 43 | $FPLIST 44 | DIP*W7.62mm* 45 | $ENDFPLIST 46 | DRAW 47 | A -385 0 258 354 -354 1 0 10 N -174 150 -174 -150 48 | A -360 0 258 354 -354 1 0 10 N -150 150 -150 -150 49 | A -47 -52 204 150 837 1 0 10 f 150 0 -24 150 50 | A -47 52 204 -150 -837 1 0 10 f 150 0 -24 -150 51 | A -385 0 258 354 -354 2 0 10 N -174 150 -174 -150 52 | A -360 0 258 354 -354 2 0 10 N -150 150 -150 -150 53 | A -47 -52 204 150 837 2 0 10 f 150 0 -24 150 54 | A -47 52 204 -150 -837 2 0 10 f 150 0 -24 -150 55 | A -385 0 258 354 -354 3 0 10 N -174 150 -174 -150 56 | A -360 0 258 354 -354 3 0 10 N -150 150 -150 -150 57 | A -47 -52 204 150 837 3 0 10 f 150 0 -24 150 58 | A -47 52 204 -150 -837 3 0 10 f 150 0 -24 -150 59 | A -385 0 258 354 -354 4 0 10 N -174 150 -174 -150 60 | A -360 0 258 354 -354 4 0 10 N -150 150 -150 -150 61 | A -47 -52 204 150 837 4 0 10 f 150 0 -24 150 62 | A -47 52 204 -150 -837 4 0 10 f 150 0 -24 -150 63 | S -200 300 200 -300 5 1 10 f 64 | P 2 1 0 10 -150 -150 -25 -150 f 65 | P 2 1 0 10 -150 150 -25 150 f 66 | P 12 1 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 67 | P 2 2 0 10 -150 -150 -25 -150 f 68 | P 2 2 0 10 -150 150 -25 150 f 69 | P 12 2 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 70 | P 2 3 0 10 -150 -150 -25 -150 f 71 | P 2 3 0 10 -150 150 -25 150 f 72 | P 12 3 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 73 | P 2 4 0 10 -150 -150 -25 -150 f 74 | P 2 4 0 10 -150 150 -25 150 f 75 | P 12 4 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 76 | P 2 1 1 6 -150 -100 -125 -100 N 77 | P 2 1 1 6 -150 100 -125 100 N 78 | P 2 2 1 6 -150 -100 -125 -100 N 79 | P 2 2 1 6 -150 100 -125 100 N 80 | P 2 3 1 6 -150 -100 -125 -100 N 81 | P 2 3 1 6 -150 100 -125 100 N 82 | P 2 4 1 6 -150 -100 -125 -100 N 83 | P 2 4 1 6 -150 100 -125 100 N 84 | X ~ 1 -300 100 175 R 50 50 1 0 I 85 | X ~ 2 -300 -100 175 R 50 50 1 0 I 86 | X ~ 3 300 0 150 L 50 50 1 0 O 87 | X ~ 4 -300 100 175 R 50 50 2 0 I 88 | X ~ 5 -300 -100 175 R 50 50 2 0 I 89 | X ~ 6 300 0 150 L 50 50 2 0 O 90 | X ~ 10 -300 -100 175 R 50 50 3 0 I 91 | X ~ 8 300 0 150 L 50 50 3 0 O 92 | X ~ 9 -300 100 175 R 50 50 3 0 I 93 | X ~ 11 300 0 150 L 50 50 4 0 O 94 | X ~ 12 -300 100 175 R 50 50 4 0 I 95 | X ~ 13 -300 -100 175 R 50 50 4 0 I 96 | X VCC 14 0 500 200 D 50 50 5 0 W 97 | X GND 7 0 -500 200 U 50 50 5 0 W 98 | ENDDRAW 99 | ENDDEF 100 | # 101 | # ArduinoPC_74HC08 102 | # 103 | DEF ArduinoPC_74HC08 U 0 40 Y Y 5 L N 104 | F0 "U" 0 50 50 H V C CNN 105 | F1 "ArduinoPC_74HC08" 0 -50 50 H V C CNN 106 | F2 "" 0 0 50 H I C CNN 107 | F3 "" 0 0 50 H I C CNN 108 | ALIAS 74LS09 109 | $FPLIST 110 | DIP*W7.62mm* 111 | $ENDFPLIST 112 | DRAW 113 | A 0 0 150 -899 899 1 1 10 f 0 -150 0 150 114 | A 0 0 150 -899 899 2 1 10 f 0 -150 0 150 115 | A 0 0 150 -899 899 3 1 10 f 0 -150 0 150 116 | A 0 0 150 -899 899 4 1 10 f 0 -150 0 150 117 | A -360 0 258 354 -354 1 2 10 N -150 150 -150 -150 118 | A -47 -52 204 150 837 1 2 10 f 150 0 -24 150 119 | A -47 52 204 -150 -837 1 2 10 f 150 0 -24 -150 120 | A -360 0 258 354 -354 2 2 10 N -150 150 -150 -150 121 | A -47 -52 204 150 837 2 2 10 f 150 0 -24 150 122 | A -47 52 204 -150 -837 2 2 10 f 150 0 -24 -150 123 | A -360 0 258 354 -354 3 2 10 N -150 150 -150 -150 124 | A -47 -52 204 150 837 3 2 10 f 150 0 -24 150 125 | A -47 52 204 -150 -837 3 2 10 f 150 0 -24 -150 126 | A -360 0 258 354 -354 4 2 10 N -150 150 -150 -150 127 | A -47 -52 204 150 837 4 2 10 f 150 0 -24 150 128 | A -47 52 204 -150 -837 4 2 10 f 150 0 -24 -150 129 | S -200 300 200 -300 5 1 10 f 130 | P 4 1 1 10 0 150 -150 150 -150 -150 0 -150 f 131 | P 4 2 1 10 0 150 -150 150 -150 -150 0 -150 f 132 | P 4 3 1 10 0 150 -150 150 -150 -150 0 -150 f 133 | P 4 4 1 10 0 150 -150 150 -150 -150 0 -150 f 134 | P 2 1 2 10 -150 -150 -25 -150 f 135 | P 2 1 2 10 -150 150 -25 150 f 136 | P 12 1 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 137 | P 2 2 2 10 -150 -150 -25 -150 f 138 | P 2 2 2 10 -150 150 -25 150 f 139 | P 12 2 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 140 | P 2 3 2 10 -150 -150 -25 -150 f 141 | P 2 3 2 10 -150 150 -25 150 f 142 | P 12 3 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 143 | P 2 4 2 10 -150 -150 -25 -150 f 144 | P 2 4 2 10 -150 150 -25 150 f 145 | P 12 4 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 146 | X VCC 14 0 500 200 D 50 50 5 0 W 147 | X GND 7 0 -500 200 U 50 50 5 0 W 148 | X ~ 1 -300 100 150 R 50 50 1 1 I 149 | X ~ 2 -300 -100 150 R 50 50 1 1 I 150 | X ~ 3 300 0 150 L 50 50 1 1 O 151 | X ~ 4 -300 100 150 R 50 50 2 1 I 152 | X ~ 5 -300 -100 150 R 50 50 2 1 I 153 | X ~ 6 300 0 150 L 50 50 2 1 O 154 | X ~ 10 -300 -100 150 R 50 50 3 1 I 155 | X ~ 8 300 0 150 L 50 50 3 1 O 156 | X ~ 9 -300 100 150 R 50 50 3 1 I 157 | X ~ 11 300 0 150 L 50 50 4 1 O 158 | X ~ 12 -300 100 150 R 50 50 4 1 I 159 | X ~ 13 -300 -100 150 R 50 50 4 1 I 160 | X ~ 1 -300 100 170 R 50 50 1 2 I I 161 | X ~ 2 -300 -100 170 R 50 50 1 2 I I 162 | X ~ 3 300 0 150 L 50 50 1 2 O I 163 | X ~ 4 -300 100 170 R 50 50 2 2 I I 164 | X ~ 5 -300 -100 170 R 50 50 2 2 I I 165 | X ~ 6 300 0 150 L 50 50 2 2 O I 166 | X ~ 10 -300 -100 170 R 50 50 3 2 I I 167 | X ~ 8 300 0 150 L 50 50 3 2 O I 168 | X ~ 9 -300 100 170 R 50 50 3 2 I I 169 | X ~ 11 300 0 150 L 50 50 4 2 O I 170 | X ~ 12 -300 100 170 R 50 50 4 2 I I 171 | X ~ 13 -300 -100 170 R 50 50 4 2 I I 172 | ENDDRAW 173 | ENDDEF 174 | # 175 | # ArduinoPC_74HC165 176 | # 177 | DEF ArduinoPC_74HC165 U 0 40 Y Y 1 L N 178 | F0 "U" -300 750 50 H V C CNN 179 | F1 "ArduinoPC_74HC165" -300 -850 50 H V C CNN 180 | F2 "" 0 0 50 H I C CNN 181 | F3 "" 0 0 50 H I C CNN 182 | $FPLIST 183 | DIP?16* 184 | $ENDFPLIST 185 | DRAW 186 | S -300 700 300 -800 1 1 10 f 187 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 188 | X DS 10 -500 600 200 R 50 50 1 0 I 189 | X D0 11 -500 500 200 R 50 50 1 0 I 190 | X D1 12 -500 400 200 R 50 50 1 0 I 191 | X D2 13 -500 300 200 R 50 50 1 0 I 192 | X D3 14 -500 200 200 R 50 50 1 0 I 193 | X ~CE 15 500 -600 200 L 50 50 1 0 I 194 | X VCC 16 0 900 200 D 50 50 1 0 W 195 | X CP 2 -500 -300 200 R 50 50 1 0 I 196 | X D4 3 -500 100 200 R 50 50 1 0 I 197 | X D5 4 -500 0 200 R 50 50 1 0 I 198 | X D6 5 -500 -100 200 R 50 50 1 0 I 199 | X D7 6 -500 -200 200 R 50 50 1 0 I 200 | X ~Q7 7 500 500 200 L 50 50 1 0 O 201 | X GND 8 0 -1000 200 U 50 50 1 0 W 202 | X Q7 9 500 600 200 L 50 50 1 0 O 203 | ENDDRAW 204 | ENDDEF 205 | # 206 | # Connector_DB15_Female_HighDensity 207 | # 208 | DEF Connector_DB15_Female_HighDensity J 0 40 Y N 1 F N 209 | F0 "J" 0 850 50 H V C CNN 210 | F1 "Connector_DB15_Female_HighDensity" 0 750 50 H V C CNN 211 | F2 "" -950 400 50 H I C CNN 212 | F3 "" -950 400 50 H I C CNN 213 | $FPLIST 214 | DSUB*Female* 215 | $ENDFPLIST 216 | DRAW 217 | C -75 -400 25 0 1 0 N 218 | C -75 -200 25 0 1 0 N 219 | C -75 0 25 0 1 0 N 220 | C -75 200 25 0 1 0 N 221 | C -75 400 25 0 1 0 N 222 | C 0 -300 25 0 1 0 N 223 | C 0 -100 25 0 1 0 N 224 | C 0 100 25 0 1 0 N 225 | C 0 300 25 0 1 0 N 226 | C 0 500 25 0 1 0 N 227 | C 75 -400 25 0 1 0 N 228 | C 75 -200 25 0 1 0 N 229 | C 75 0 25 0 1 0 N 230 | C 75 200 25 0 1 0 N 231 | C 75 400 25 0 1 0 N 232 | P 2 0 1 0 -125 300 -25 300 N 233 | P 2 0 1 0 -25 -300 -125 -300 N 234 | P 2 0 1 0 -25 -100 -125 -100 N 235 | P 2 0 1 0 -25 100 -125 100 N 236 | P 2 0 1 0 -25 500 -125 500 N 237 | P 5 0 1 10 -150 700 -150 -600 150 -500 150 600 -150 700 f 238 | X ~ 1 -300 400 200 R 50 50 1 1 P 239 | X ~ 10 -300 -300 200 R 50 50 1 1 P 240 | X ~ 11 300 400 200 L 50 50 1 1 P 241 | X ~ 12 300 200 200 L 50 50 1 1 P 242 | X ~ 13 300 0 200 L 50 50 1 1 P 243 | X ~ 14 300 -200 200 L 50 50 1 1 P 244 | X ~ 15 300 -400 200 L 50 50 1 1 P 245 | X ~ 2 -300 200 200 R 50 50 1 1 P 246 | X ~ 3 -300 0 200 R 50 50 1 1 P 247 | X ~ 4 -300 -200 200 R 50 50 1 1 P 248 | X ~ 5 -300 -400 200 R 50 50 1 1 P 249 | X ~ 6 -300 500 200 R 50 50 1 1 P 250 | X ~ 7 -300 300 200 R 50 50 1 1 P 251 | X ~ 8 -300 100 200 R 50 50 1 1 P 252 | X ~ 9 -300 -100 200 R 50 50 1 1 P 253 | ENDDRAW 254 | ENDDEF 255 | # 256 | # Connector_Mini-DIN-6 257 | # 258 | DEF Connector_Mini-DIN-6 J 0 40 Y Y 1 F N 259 | F0 "J" 0 250 50 H V C CNN 260 | F1 "Connector_Mini-DIN-6" 0 -250 50 H V C CNN 261 | F2 "" 0 0 50 H I C CNN 262 | F3 "" 0 0 50 H I C CNN 263 | $FPLIST 264 | MINI?DIN* 265 | $ENDFPLIST 266 | DRAW 267 | A 0 0 200 -1269 -531 0 1 10 N -120 -160 120 -160 268 | A 2 4 200 1021 -1488 0 1 10 N -40 200 -170 -100 269 | A 2 5 198 -320 790 0 1 10 N 170 -100 40 200 270 | C -130 0 20 0 1 0 N 271 | C -80 -100 20 0 1 0 N 272 | C -80 100 20 0 1 0 N 273 | C 80 -100 20 0 1 0 N 274 | C 90 100 20 0 1 0 N 275 | C 130 0 20 0 1 0 N 276 | S -30 100 30 0 0 1 0 F 277 | P 2 0 1 0 -150 0 -200 0 N 278 | P 2 0 1 0 -100 100 -200 100 N 279 | P 2 0 1 0 110 100 200 100 N 280 | P 2 0 1 0 200 0 150 0 N 281 | P 3 0 1 10 -170 -100 -120 -100 -120 -160 N 282 | P 3 0 1 10 170 -100 120 -100 120 -160 N 283 | P 4 0 1 0 -80 -120 -80 -140 -200 -140 -200 -100 N 284 | P 4 0 1 10 -40 200 -40 160 40 160 40 200 N 285 | P 4 0 1 0 80 -120 80 -140 200 -140 200 -100 N 286 | X ~ 1 300 -100 100 L 50 50 1 1 P 287 | X ~ 2 -300 -100 100 R 50 50 1 1 P 288 | X ~ 3 300 0 100 L 50 50 1 1 P 289 | X ~ 4 -300 0 100 R 50 50 1 1 P 290 | X ~ 5 300 100 100 L 50 50 1 1 P 291 | X ~ 6 -300 100 100 R 50 50 1 1 P 292 | ENDDRAW 293 | ENDDEF 294 | # 295 | # Device_CP 296 | # 297 | DEF Device_CP C 0 10 N Y 1 F N 298 | F0 "C" 25 100 50 H V L CNN 299 | F1 "Device_CP" 25 -100 50 H V L CNN 300 | F2 "" 38 -150 50 H I C CNN 301 | F3 "" 0 0 50 H I C CNN 302 | $FPLIST 303 | CP_* 304 | $ENDFPLIST 305 | DRAW 306 | S -90 20 90 40 0 1 0 N 307 | S 90 -20 -90 -40 0 1 0 F 308 | P 2 0 1 0 -70 90 -30 90 N 309 | P 2 0 1 0 -50 110 -50 70 N 310 | X ~ 1 0 150 110 D 50 50 1 1 P 311 | X ~ 2 0 -150 110 U 50 50 1 1 P 312 | ENDDRAW 313 | ENDDEF 314 | # 315 | # Device_C_Small 316 | # 317 | DEF Device_C_Small C 0 10 N N 1 F N 318 | F0 "C" 10 70 50 H V L CNN 319 | F1 "Device_C_Small" 10 -80 50 H V L CNN 320 | F2 "" 0 0 50 H I C CNN 321 | F3 "" 0 0 50 H I C CNN 322 | $FPLIST 323 | C_* 324 | $ENDFPLIST 325 | DRAW 326 | P 2 0 1 13 -60 -20 60 -20 N 327 | P 2 0 1 12 -60 20 60 20 N 328 | X ~ 1 0 100 80 D 50 50 1 1 P 329 | X ~ 2 0 -100 80 U 50 50 1 1 P 330 | ENDDRAW 331 | ENDDEF 332 | # 333 | # Device_R 334 | # 335 | DEF Device_R R 0 0 N Y 1 F N 336 | F0 "R" 80 0 50 V V C CNN 337 | F1 "Device_R" 0 0 50 V V C CNN 338 | F2 "" -70 0 50 V I C CNN 339 | F3 "" 0 0 50 H I C CNN 340 | $FPLIST 341 | R_* 342 | $ENDFPLIST 343 | DRAW 344 | S -40 -100 40 100 0 1 10 N 345 | X ~ 1 0 150 50 D 50 50 1 1 P 346 | X ~ 2 0 -150 50 U 50 50 1 1 P 347 | ENDDRAW 348 | ENDDEF 349 | # 350 | # MCU_Module_Arduino_Nano_v3.x 351 | # 352 | DEF MCU_Module_Arduino_Nano_v3.x A 0 20 Y Y 1 F N 353 | F0 "A" -400 925 50 H V L BNN 354 | F1 "MCU_Module_Arduino_Nano_v3.x" 200 -950 50 H V L TNN 355 | F2 "Module:Arduino_Nano" 0 0 50 H I C CIN 356 | F3 "" 0 0 50 H I C CNN 357 | ALIAS Arduino_Nano_v3.x 358 | $FPLIST 359 | Arduino*Nano* 360 | $ENDFPLIST 361 | DRAW 362 | S -400 900 400 -900 0 1 10 f 363 | X D1/TX 1 -500 500 100 R 50 50 1 1 B 364 | X D7 10 -500 -100 100 R 50 50 1 1 B 365 | X D8 11 -500 -200 100 R 50 50 1 1 B 366 | X D9 12 -500 -300 100 R 50 50 1 1 B 367 | X D10 13 -500 -400 100 R 50 50 1 1 B 368 | X D11 14 -500 -500 100 R 50 50 1 1 B 369 | X D12 15 -500 -600 100 R 50 50 1 1 B 370 | X D13 16 -500 -700 100 R 50 50 1 1 B 371 | X 3V3 17 100 1000 100 D 50 50 1 1 w 372 | X AREF 18 500 200 100 L 50 50 1 1 I 373 | X A0 19 500 0 100 L 50 50 1 1 B 374 | X D0/RX 2 -500 600 100 R 50 50 1 1 B 375 | X A1 20 500 -100 100 L 50 50 1 1 B 376 | X A2 21 500 -200 100 L 50 50 1 1 B 377 | X A3 22 500 -300 100 L 50 50 1 1 B 378 | X A4 23 500 -400 100 L 50 50 1 1 B 379 | X A5 24 500 -500 100 L 50 50 1 1 B 380 | X A6 25 500 -600 100 L 50 50 1 1 B 381 | X A7 26 500 -700 100 L 50 50 1 1 B 382 | X +5V 27 200 1000 100 D 50 50 1 1 w 383 | X ~RESET 28 500 600 100 L 50 50 1 1 I 384 | X GND 29 100 -1000 100 U 50 50 1 1 W 385 | X ~RESET 3 500 500 100 L 50 50 1 1 I 386 | X VIN 30 -100 1000 100 D 50 50 1 1 W 387 | X GND 4 0 -1000 100 U 50 50 1 1 W 388 | X D2 5 -500 400 100 R 50 50 1 1 B 389 | X D3 6 -500 300 100 R 50 50 1 1 B 390 | X D4 7 -500 200 100 R 50 50 1 1 B 391 | X D5 8 -500 100 100 R 50 50 1 1 B 392 | X D6 9 -500 0 100 R 50 50 1 1 B 393 | ENDDRAW 394 | ENDDEF 395 | # 396 | # power_+5V 397 | # 398 | DEF power_+5V #PWR 0 0 Y Y 1 F P 399 | F0 "#PWR" 0 -150 50 H I C CNN 400 | F1 "power_+5V" 0 140 50 H V C CNN 401 | F2 "" 0 0 50 H I C CNN 402 | F3 "" 0 0 50 H I C CNN 403 | DRAW 404 | P 2 0 1 0 -30 50 0 100 N 405 | P 2 0 1 0 0 0 0 100 N 406 | P 2 0 1 0 0 100 30 50 N 407 | X +5V 1 0 0 0 U 50 50 1 1 W N 408 | ENDDRAW 409 | ENDDEF 410 | # 411 | # power_GND 412 | # 413 | DEF power_GND #PWR 0 0 Y Y 1 F P 414 | F0 "#PWR" 0 -250 50 H I C CNN 415 | F1 "power_GND" 0 -150 50 H V C CNN 416 | F2 "" 0 0 50 H I C CNN 417 | F3 "" 0 0 50 H I C CNN 418 | DRAW 419 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 420 | X GND 1 0 0 0 D 50 50 1 1 W N 421 | ENDDRAW 422 | ENDDEF 423 | # 424 | # power_PWR_FLAG 425 | # 426 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 427 | F0 "#FLG" 0 75 50 H I C CNN 428 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 429 | F2 "" 0 0 50 H I C CNN 430 | F3 "" 0 0 50 H I C CNN 431 | DRAW 432 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 433 | X pwr 1 0 0 0 U 50 50 0 0 w 434 | ENDDRAW 435 | ENDDEF 436 | # 437 | #End Library 438 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/ArduinoPC.bck: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | $CMP 74HC165 4 | D Shift Register 8-bit, parallel load 5 | K TTL SR SR8 6 | F http://www.ti.com/lit/gpn/sn74LS165 7 | $ENDCMP 8 | # 9 | $CMP 74HC173 10 | D 4-bit D-type Register, 3 state out 11 | K TTL REG REG4 3State DFF 12 | F http://www.ti.com/lit/gpn/sn74LS173 13 | $ENDCMP 14 | # 15 | $CMP 74HC193 16 | D Synchronous 4-bit Up/Down (2 clk) counter 17 | K TTL CNT CNT4 18 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 19 | $ENDCMP 20 | # 21 | $CMP 74LS193 22 | D Synchronous 4-bit Up/Down (2 clk) counter 23 | K TTL CNT CNT4 24 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 25 | $ENDCMP 26 | # 27 | #End Doc Library 28 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/ArduinoPC.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | $CMP 74HC08 4 | D Quad And2 5 | K TTL and2 6 | F http://www.ti.com/lit/gpn/sn74LS08 7 | $ENDCMP 8 | # 9 | $CMP 74HC165 10 | D Shift Register 8-bit, parallel load 11 | K TTL SR SR8 12 | F http://www.ti.com/lit/gpn/sn74LS165 13 | $ENDCMP 14 | # 15 | $CMP 74HC173 16 | D 4-bit D-type Register, 3 state out 17 | K TTL REG REG4 3State DFF 18 | F http://www.ti.com/lit/gpn/sn74LS173 19 | $ENDCMP 20 | # 21 | $CMP 74HC193 22 | D Synchronous 4-bit Up/Down (2 clk) counter 23 | K TTL CNT CNT4 24 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 25 | $ENDCMP 26 | # 27 | $CMP 74LS09 28 | D Quad 2-input AND Open Collect 29 | K TTL and2 OpenCol 30 | F http://www.ti.com/lit/gpn/sn74LS09 31 | $ENDCMP 32 | # 33 | $CMP 74LS193 34 | D Synchronous 4-bit Up/Down (2 clk) counter 35 | K TTL CNT CNT4 36 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 37 | $ENDCMP 38 | # 39 | #End Doc Library 40 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/ArduinoPC.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC08 5 | # 6 | DEF 74HC08 U 0 40 Y Y 5 L N 7 | F0 "U" 0 50 50 H V C CNN 8 | F1 "74HC08" 0 -50 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | ALIAS 74LS09 12 | $FPLIST 13 | DIP*W7.62mm* 14 | $ENDFPLIST 15 | DRAW 16 | A 0 0 150 -899 899 1 1 10 f 0 -150 0 150 17 | A 0 0 150 -899 899 2 1 10 f 0 -150 0 150 18 | A 0 0 150 -899 899 3 1 10 f 0 -150 0 150 19 | A 0 0 150 -899 899 4 1 10 f 0 -150 0 150 20 | A -360 0 258 354 -354 1 2 10 N -150 150 -150 -150 21 | A -47 -52 204 150 837 1 2 10 f 150 0 -24 150 22 | A -47 52 204 -150 -837 1 2 10 f 150 0 -24 -150 23 | A -360 0 258 354 -354 2 2 10 N -150 150 -150 -150 24 | A -47 -52 204 150 837 2 2 10 f 150 0 -24 150 25 | A -47 52 204 -150 -837 2 2 10 f 150 0 -24 -150 26 | A -360 0 258 354 -354 3 2 10 N -150 150 -150 -150 27 | A -47 -52 204 150 837 3 2 10 f 150 0 -24 150 28 | A -47 52 204 -150 -837 3 2 10 f 150 0 -24 -150 29 | A -360 0 258 354 -354 4 2 10 N -150 150 -150 -150 30 | A -47 -52 204 150 837 4 2 10 f 150 0 -24 150 31 | A -47 52 204 -150 -837 4 2 10 f 150 0 -24 -150 32 | S -200 300 200 -300 5 1 10 f 33 | P 4 1 1 10 0 150 -150 150 -150 -150 0 -150 f 34 | P 4 2 1 10 0 150 -150 150 -150 -150 0 -150 f 35 | P 4 3 1 10 0 150 -150 150 -150 -150 0 -150 f 36 | P 4 4 1 10 0 150 -150 150 -150 -150 0 -150 f 37 | P 2 1 2 10 -150 -150 -25 -150 f 38 | P 2 1 2 10 -150 150 -25 150 f 39 | P 12 1 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 40 | P 2 2 2 10 -150 -150 -25 -150 f 41 | P 2 2 2 10 -150 150 -25 150 f 42 | P 12 2 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 43 | P 2 3 2 10 -150 -150 -25 -150 f 44 | P 2 3 2 10 -150 150 -25 150 f 45 | P 12 3 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 46 | P 2 4 2 10 -150 -150 -25 -150 f 47 | P 2 4 2 10 -150 150 -25 150 f 48 | P 12 4 2 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 49 | X VCC 14 0 500 200 D 50 50 5 0 W 50 | X GND 7 0 -500 200 U 50 50 5 0 W 51 | X ~ 1 -300 100 150 R 50 50 1 1 I 52 | X ~ 2 -300 -100 150 R 50 50 1 1 I 53 | X ~ 3 300 0 150 L 50 50 1 1 O 54 | X ~ 4 -300 100 150 R 50 50 2 1 I 55 | X ~ 5 -300 -100 150 R 50 50 2 1 I 56 | X ~ 6 300 0 150 L 50 50 2 1 O 57 | X ~ 10 -300 -100 150 R 50 50 3 1 I 58 | X ~ 8 300 0 150 L 50 50 3 1 O 59 | X ~ 9 -300 100 150 R 50 50 3 1 I 60 | X ~ 11 300 0 150 L 50 50 4 1 O 61 | X ~ 12 -300 100 150 R 50 50 4 1 I 62 | X ~ 13 -300 -100 150 R 50 50 4 1 I 63 | X ~ 1 -300 100 170 R 50 50 1 2 I I 64 | X ~ 2 -300 -100 170 R 50 50 1 2 I I 65 | X ~ 3 300 0 150 L 50 50 1 2 O I 66 | X ~ 4 -300 100 170 R 50 50 2 2 I I 67 | X ~ 5 -300 -100 170 R 50 50 2 2 I I 68 | X ~ 6 300 0 150 L 50 50 2 2 O I 69 | X ~ 10 -300 -100 170 R 50 50 3 2 I I 70 | X ~ 8 300 0 150 L 50 50 3 2 O I 71 | X ~ 9 -300 100 170 R 50 50 3 2 I I 72 | X ~ 11 300 0 150 L 50 50 4 2 O I 73 | X ~ 12 -300 100 170 R 50 50 4 2 I I 74 | X ~ 13 -300 -100 170 R 50 50 4 2 I I 75 | ENDDRAW 76 | ENDDEF 77 | # 78 | # 74HC165 79 | # 80 | DEF 74HC165 U 0 40 Y Y 1 L N 81 | F0 "U" -300 750 50 H V C CNN 82 | F1 "74HC165" -300 -850 50 H V C CNN 83 | F2 "" 0 0 50 H I C CNN 84 | F3 "" 0 0 50 H I C CNN 85 | $FPLIST 86 | DIP?16* 87 | $ENDFPLIST 88 | DRAW 89 | S -300 700 300 -800 1 1 10 f 90 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 91 | X DS 10 -500 600 200 R 50 50 1 0 I 92 | X D0 11 -500 500 200 R 50 50 1 0 I 93 | X D1 12 -500 400 200 R 50 50 1 0 I 94 | X D2 13 -500 300 200 R 50 50 1 0 I 95 | X D3 14 -500 200 200 R 50 50 1 0 I 96 | X ~CE 15 500 -600 200 L 50 50 1 0 I 97 | X VCC 16 0 900 200 D 50 50 1 0 W 98 | X CP 2 -500 -300 200 R 50 50 1 0 I 99 | X D4 3 -500 100 200 R 50 50 1 0 I 100 | X D5 4 -500 0 200 R 50 50 1 0 I 101 | X D6 5 -500 -100 200 R 50 50 1 0 I 102 | X D7 6 -500 -200 200 R 50 50 1 0 I 103 | X ~Q7 7 500 500 200 L 50 50 1 0 O 104 | X GND 8 0 -1000 200 U 50 50 1 0 W 105 | X Q7 9 500 600 200 L 50 50 1 0 O 106 | ENDDRAW 107 | ENDDEF 108 | # 109 | # 74HC173 110 | # 111 | DEF 74HC173 U 0 40 Y Y 1 L N 112 | F0 "U" -300 750 50 H V C CNN 113 | F1 "74HC173" -300 -750 50 H V C CNN 114 | F2 "" 0 0 50 H I C CNN 115 | F3 "" 0 0 50 H I C CNN 116 | $FPLIST 117 | DIP?16* 118 | $ENDFPLIST 119 | DRAW 120 | S -300 700 300 -700 1 1 10 f 121 | X ~OE1 1 -500 100 200 R 50 50 1 0 I 122 | X ~E2 10 -500 -300 200 R 50 50 1 0 I 123 | X D3 11 -500 300 200 R 50 50 1 0 I 124 | X D2 12 -500 400 200 R 50 50 1 0 I 125 | X D1 13 -500 500 200 R 50 50 1 0 I 126 | X D0 14 -500 600 200 R 50 50 1 0 I 127 | X MR 15 -500 -600 200 R 50 50 1 0 I 128 | X VCC 16 0 900 200 D 50 50 1 0 W 129 | X ~OE2 2 -500 0 200 R 50 50 1 0 I 130 | X Q0 3 500 600 200 L 50 50 1 0 T 131 | X Q1 4 500 500 200 L 50 50 1 0 T 132 | X Q2 5 500 400 200 L 50 50 1 0 T 133 | X Q3 6 500 300 200 L 50 50 1 0 T 134 | X CP 7 -500 -400 200 R 50 50 1 0 I C 135 | X GND 8 0 -900 200 U 50 50 1 0 W 136 | X ~E1 9 -500 -200 200 R 50 50 1 0 I 137 | ENDDRAW 138 | ENDDEF 139 | # 140 | # 74HC193 141 | # 142 | DEF 74HC193 U 0 20 Y Y 1 F N 143 | F0 "U" -300 550 50 H V C CNN 144 | F1 "74HC193" 200 550 50 H V C CNN 145 | F2 "" 0 0 50 H I C CNN 146 | F3 "" 0 0 50 H I C CNN 147 | ALIAS 74LS193 148 | $FPLIST 149 | SOIC*3.9x9.9mm*P1.27mm* 150 | DIP*W7.62mm* 151 | $ENDFPLIST 152 | DRAW 153 | S -300 500 300 -600 1 1 10 f 154 | X D1 1 -500 300 200 R 50 50 1 0 I 155 | X D2 10 -500 200 200 R 50 50 1 0 I 156 | X ~PL 11 -500 -100 200 R 50 50 1 0 I 157 | X ~TCU 12 500 -100 200 L 50 50 1 0 O 158 | X ~TCD 13 500 -300 200 L 50 50 1 0 O 159 | X MR 14 -500 -500 200 R 50 50 1 0 I 160 | X D0 15 -500 400 200 R 50 50 1 0 I 161 | X VCC 16 0 700 200 D 50 50 1 0 W 162 | X Q1 2 500 300 200 L 50 50 1 0 O 163 | X Q0 3 500 400 200 L 50 50 1 0 O 164 | X CPD 4 -500 -400 200 R 50 50 1 0 I C 165 | X CPU 5 -500 -300 200 R 50 50 1 0 I C 166 | X Q2 6 500 200 200 L 50 50 1 0 O 167 | X Q3 7 500 100 200 L 50 50 1 0 O 168 | X GND 8 0 -800 200 U 50 50 1 0 W 169 | X D3 9 -500 100 200 R 50 50 1 0 I 170 | ENDDRAW 171 | ENDDEF 172 | # 173 | #End Library 174 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/ArduinoPC.pretty/FP_MINI_DIN_6_PS2.kicad_mod: -------------------------------------------------------------------------------- 1 | (module FP_MINI_DIN_6_PS2 (layer F.Cu) (tedit 5F6E4A3D) 2 | (fp_text reference REF** (at -5.08 -1.27) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value FP_MINI_DIN_6_PS2 (at 0 13.97) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 7 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -7 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -7 0) (end -7 12.9) (layer F.Fab) (width 0.12)) 11 | (fp_line (start -7 12.9) (end 7 12.9) (layer F.Fab) (width 0.12)) 12 | (fp_line (start 7 0) (end 7 12.9) (layer F.Fab) (width 0.12)) 13 | (fp_line (start -3.81 0) (end -3.81 1.27) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -3.81 1.27) (end 3.81 1.27) (layer F.Fab) (width 0.12)) 15 | (fp_line (start 3.81 1.27) (end 3.81 0) (layer F.Fab) (width 0.12)) 16 | (pad 2 thru_hole circle (at 1.3 8.5) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 17 | (pad "" thru_hole circle (at 0 4.7) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 18 | (pad "" thru_hole circle (at 6.75 5.5) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 19 | (pad "" thru_hole circle (at -6.75 5.5) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 20 | (pad 1 thru_hole circle (at -1.3 8.5) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 21 | (pad 3 thru_hole circle (at -3.4 8.5) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 22 | (pad 4 thru_hole circle (at 3.4 8.5) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 23 | (pad 6 thru_hole circle (at 3.4 11) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 24 | (pad 5 thru_hole circle (at -3.4 11) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 25 | ) 26 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/ArduinoPC.pro: -------------------------------------------------------------------------------- 1 | update=23/09/2020 21:13:08 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [schematic_editor] 16 | version=1 17 | PageLayoutDescrFile= 18 | PlotDirectoryName= 19 | SubpartIdSeparator=0 20 | SubpartFirstId=65 21 | NetFmtName=Pcbnew 22 | SpiceAjustPassiveValues=0 23 | LabSize=50 24 | ERC_TestSimilarLabels=1 25 | [pcbnew] 26 | version=1 27 | PageLayoutDescrFile= 28 | LastNetListRead=ArduinoPC.net 29 | CopperLayerCount=2 30 | BoardThickness=1.6 31 | AllowMicroVias=0 32 | AllowBlindVias=0 33 | RequireCourtyardDefinitions=0 34 | ProhibitOverlappingCourtyards=1 35 | MinTrackWidth=0.2 36 | MinViaDiameter=0.4 37 | MinViaDrill=0.3 38 | MinMicroViaDiameter=0.2 39 | MinMicroViaDrill=0.09999999999999999 40 | MinHoleToHole=0.25 41 | TrackWidth1=0.25 42 | ViaDiameter1=0.8 43 | ViaDrill1=0.4 44 | dPairWidth1=0.2 45 | dPairGap1=0.25 46 | dPairViaGap1=0.25 47 | SilkLineWidth=0.12 48 | SilkTextSizeV=1 49 | SilkTextSizeH=1 50 | SilkTextSizeThickness=0.15 51 | SilkTextItalic=0 52 | SilkTextUpright=1 53 | CopperLineWidth=0.2 54 | CopperTextSizeV=1.5 55 | CopperTextSizeH=1.5 56 | CopperTextThickness=0.3 57 | CopperTextItalic=0 58 | CopperTextUpright=1 59 | EdgeCutLineWidth=0.05 60 | CourtyardLineWidth=0.05 61 | OthersLineWidth=0.15 62 | OthersTextSizeV=1 63 | OthersTextSizeH=1 64 | OthersTextSizeThickness=0.15 65 | OthersTextItalic=0 66 | OthersTextUpright=1 67 | SolderMaskClearance=0.051 68 | SolderMaskMinWidth=0.25 69 | SolderPasteClearance=0 70 | SolderPasteRatio=0 71 | [pcbnew/Layer.F.Cu] 72 | Name=F.Cu 73 | Type=0 74 | Enabled=1 75 | [pcbnew/Layer.In1.Cu] 76 | Name=In1.Cu 77 | Type=0 78 | Enabled=0 79 | [pcbnew/Layer.In2.Cu] 80 | Name=In2.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In3.Cu] 84 | Name=In3.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In4.Cu] 88 | Name=In4.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In5.Cu] 92 | Name=In5.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In6.Cu] 96 | Name=In6.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In7.Cu] 100 | Name=In7.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In8.Cu] 104 | Name=In8.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In9.Cu] 108 | Name=In9.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In10.Cu] 112 | Name=In10.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In11.Cu] 116 | Name=In11.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In12.Cu] 120 | Name=In12.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In13.Cu] 124 | Name=In13.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In14.Cu] 128 | Name=In14.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In15.Cu] 132 | Name=In15.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In16.Cu] 136 | Name=In16.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In17.Cu] 140 | Name=In17.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In18.Cu] 144 | Name=In18.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In19.Cu] 148 | Name=In19.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In20.Cu] 152 | Name=In20.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In21.Cu] 156 | Name=In21.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In22.Cu] 160 | Name=In22.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In23.Cu] 164 | Name=In23.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In24.Cu] 168 | Name=In24.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In25.Cu] 172 | Name=In25.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In26.Cu] 176 | Name=In26.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In27.Cu] 180 | Name=In27.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In28.Cu] 184 | Name=In28.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In29.Cu] 188 | Name=In29.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.In30.Cu] 192 | Name=In30.Cu 193 | Type=0 194 | Enabled=0 195 | [pcbnew/Layer.B.Cu] 196 | Name=B.Cu 197 | Type=0 198 | Enabled=1 199 | [pcbnew/Layer.B.Adhes] 200 | Enabled=1 201 | [pcbnew/Layer.F.Adhes] 202 | Enabled=1 203 | [pcbnew/Layer.B.Paste] 204 | Enabled=1 205 | [pcbnew/Layer.F.Paste] 206 | Enabled=1 207 | [pcbnew/Layer.B.SilkS] 208 | Enabled=1 209 | [pcbnew/Layer.F.SilkS] 210 | Enabled=1 211 | [pcbnew/Layer.B.Mask] 212 | Enabled=1 213 | [pcbnew/Layer.F.Mask] 214 | Enabled=1 215 | [pcbnew/Layer.Dwgs.User] 216 | Enabled=1 217 | [pcbnew/Layer.Cmts.User] 218 | Enabled=1 219 | [pcbnew/Layer.Eco1.User] 220 | Enabled=1 221 | [pcbnew/Layer.Eco2.User] 222 | Enabled=1 223 | [pcbnew/Layer.Edge.Cuts] 224 | Enabled=1 225 | [pcbnew/Layer.Margin] 226 | Enabled=1 227 | [pcbnew/Layer.B.CrtYd] 228 | Enabled=1 229 | [pcbnew/Layer.F.CrtYd] 230 | Enabled=1 231 | [pcbnew/Layer.B.Fab] 232 | Enabled=1 233 | [pcbnew/Layer.F.Fab] 234 | Enabled=1 235 | [pcbnew/Layer.Rescue] 236 | Enabled=1 237 | [pcbnew/Netclasses] 238 | [pcbnew/Netclasses/Default] 239 | Name=Default 240 | Clearance=0.2 241 | TrackWidth=0.25 242 | ViaDiameter=0.8 243 | ViaDrill=0.4 244 | uViaDiameter=0.3 245 | uViaDrill=0.1 246 | dPairWidth=0.2 247 | dPairGap=0.25 248 | dPairViaGap=0.25 249 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name ArduinoPC)(type KiCad)(uri ${KIPRJMOD}/ArduinoPC.pretty)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /Rev1/Color/KiCAD/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name ArduinoPC)(type Legacy)(uri ${KIPRJMOD}/ArduinoPC.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /Rev1/Color/Library/readme.md: -------------------------------------------------------------------------------- 1 | # Header Library 2 | 3 | Copy the folder 'os' containing the header library files to 'Arduino/libraries/'. 4 | 5 | Copy the sketches to your 'Arduino' folder (see 'Arduino IDE/File/Preferences' if 6 | you are unsure where to find it). Be sure to start a new sketch with '#include '. 7 | 8 | Have fun! 9 | -------------------------------------------------------------------------------- /Rev1/Color/README.md: -------------------------------------------------------------------------------- 1 | # Arduino Nano Personal Computer 1 2 | 3 | 16-color mod of my original 'Arduino Nano PC' revision 1 with VGA output and PS/2 keyboard input 4 | running on a single Arduino NANO and 5 additional logic ICs. 5 | -------------------------------------------------------------------------------- /Rev1/Color/Schematic Nano PC Color Mod.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev1/Color/Schematic Nano PC Color Mod.pdf -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74xx_74HC164 5 | # 6 | DEF 74xx_74HC164 U 0 20 Y Y 1 F N 7 | F0 "U" 75 -550 50 H V L CNN 8 | F1 "74xx_74HC164" 75 -650 50 H V L CNN 9 | F2 "" 900 -300 50 H I C CNN 10 | F3 "" 900 -300 50 H I C CNN 11 | ALIAS 74HCT164 12 | $FPLIST 13 | SOIC*3.9x8.7*P1.27mm* 14 | ?SSOP*P0.65mm* 15 | $ENDFPLIST 16 | DRAW 17 | S 300 400 -300 -500 0 1 10 f 18 | X DSA 1 -400 0 100 R 50 50 1 1 I 19 | X Q4 10 400 -100 100 L 50 50 1 1 O 20 | X Q5 11 400 -200 100 L 50 50 1 1 O 21 | X Q6 12 400 -300 100 L 50 50 1 1 O 22 | X Q7 13 400 -400 100 L 50 50 1 1 O 23 | X VCC 14 0 500 100 D 50 50 1 1 W 24 | X DSB 2 -400 -100 100 R 50 50 1 1 I 25 | X Q0 3 400 300 100 L 50 50 1 1 O 26 | X Q1 4 400 200 100 L 50 50 1 1 O 27 | X Q2 5 400 100 100 L 50 50 1 1 O 28 | X Q3 6 400 0 100 L 50 50 1 1 O 29 | X GND 7 0 -600 100 U 50 50 1 1 W 30 | X CP 8 -400 -300 100 R 50 50 1 1 I 31 | X ~MR 9 -400 200 100 R 50 50 1 1 I 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74xx_74HC86 36 | # 37 | DEF 74xx_74HC86 U 0 40 Y Y 5 L N 38 | F0 "U" 0 50 50 H V C CNN 39 | F1 "74xx_74HC86" 0 -50 50 H V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | ALIAS 74HC86 43 | $FPLIST 44 | DIP*W7.62mm* 45 | $ENDFPLIST 46 | DRAW 47 | A -385 0 258 354 -354 1 0 10 N -174 150 -174 -150 48 | A -360 0 258 354 -354 1 0 10 N -150 150 -150 -150 49 | A -47 -52 204 150 837 1 0 10 f 150 0 -24 150 50 | A -47 52 204 -150 -837 1 0 10 f 150 0 -24 -150 51 | A -385 0 258 354 -354 2 0 10 N -174 150 -174 -150 52 | A -360 0 258 354 -354 2 0 10 N -150 150 -150 -150 53 | A -47 -52 204 150 837 2 0 10 f 150 0 -24 150 54 | A -47 52 204 -150 -837 2 0 10 f 150 0 -24 -150 55 | A -385 0 258 354 -354 3 0 10 N -174 150 -174 -150 56 | A -360 0 258 354 -354 3 0 10 N -150 150 -150 -150 57 | A -47 -52 204 150 837 3 0 10 f 150 0 -24 150 58 | A -47 52 204 -150 -837 3 0 10 f 150 0 -24 -150 59 | A -385 0 258 354 -354 4 0 10 N -174 150 -174 -150 60 | A -360 0 258 354 -354 4 0 10 N -150 150 -150 -150 61 | A -47 -52 204 150 837 4 0 10 f 150 0 -24 150 62 | A -47 52 204 -150 -837 4 0 10 f 150 0 -24 -150 63 | S -200 300 200 -300 5 1 10 f 64 | P 2 1 0 10 -150 -150 -25 -150 f 65 | P 2 1 0 10 -150 150 -25 150 f 66 | P 12 1 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 67 | P 2 2 0 10 -150 -150 -25 -150 f 68 | P 2 2 0 10 -150 150 -25 150 f 69 | P 12 2 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 70 | P 2 3 0 10 -150 -150 -25 -150 f 71 | P 2 3 0 10 -150 150 -25 150 f 72 | P 12 3 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 73 | P 2 4 0 10 -150 -150 -25 -150 f 74 | P 2 4 0 10 -150 150 -25 150 f 75 | P 12 4 0 -1000 -25 150 -150 150 -150 150 -140 134 -119 89 -106 41 -103 -10 -109 -59 -125 -107 -150 -150 -150 -150 -25 -150 f 76 | P 2 1 1 6 -150 -100 -125 -100 N 77 | P 2 1 1 6 -150 100 -125 100 N 78 | P 2 2 1 6 -150 -100 -125 -100 N 79 | P 2 2 1 6 -150 100 -125 100 N 80 | P 2 3 1 6 -150 -100 -125 -100 N 81 | P 2 3 1 6 -150 100 -125 100 N 82 | P 2 4 1 6 -150 -100 -125 -100 N 83 | P 2 4 1 6 -150 100 -125 100 N 84 | X ~ 1 -300 100 175 R 50 50 1 0 I 85 | X ~ 2 -300 -100 175 R 50 50 1 0 I 86 | X ~ 3 300 0 150 L 50 50 1 0 O 87 | X ~ 4 -300 100 175 R 50 50 2 0 I 88 | X ~ 5 -300 -100 175 R 50 50 2 0 I 89 | X ~ 6 300 0 150 L 50 50 2 0 O 90 | X ~ 10 -300 -100 175 R 50 50 3 0 I 91 | X ~ 8 300 0 150 L 50 50 3 0 O 92 | X ~ 9 -300 100 175 R 50 50 3 0 I 93 | X ~ 11 300 0 150 L 50 50 4 0 O 94 | X ~ 12 -300 100 175 R 50 50 4 0 I 95 | X ~ 13 -300 -100 175 R 50 50 4 0 I 96 | X VCC 14 0 500 200 D 50 50 5 0 W 97 | X GND 7 0 -500 200 U 50 50 5 0 W 98 | ENDDRAW 99 | ENDDEF 100 | # 101 | # ArduinoPC_74HC165 102 | # 103 | DEF ArduinoPC_74HC165 U 0 40 Y Y 1 L N 104 | F0 "U" -300 750 50 H V C CNN 105 | F1 "ArduinoPC_74HC165" -300 -850 50 H V C CNN 106 | F2 "" 0 0 50 H I C CNN 107 | F3 "" 0 0 50 H I C CNN 108 | $FPLIST 109 | DIP?16* 110 | $ENDFPLIST 111 | DRAW 112 | S -300 700 300 -800 1 1 10 f 113 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 114 | X DS 10 -500 600 200 R 50 50 1 0 I 115 | X D0 11 -500 500 200 R 50 50 1 0 I 116 | X D1 12 -500 400 200 R 50 50 1 0 I 117 | X D2 13 -500 300 200 R 50 50 1 0 I 118 | X D3 14 -500 200 200 R 50 50 1 0 I 119 | X ~CE 15 500 -600 200 L 50 50 1 0 I 120 | X VCC 16 0 900 200 D 50 50 1 0 W 121 | X CP 2 -500 -300 200 R 50 50 1 0 I 122 | X D4 3 -500 100 200 R 50 50 1 0 I 123 | X D5 4 -500 0 200 R 50 50 1 0 I 124 | X D6 5 -500 -100 200 R 50 50 1 0 I 125 | X D7 6 -500 -200 200 R 50 50 1 0 I 126 | X ~Q7 7 500 500 200 L 50 50 1 0 O 127 | X GND 8 0 -1000 200 U 50 50 1 0 W 128 | X Q7 9 500 600 200 L 50 50 1 0 O 129 | ENDDRAW 130 | ENDDEF 131 | # 132 | # Connector_DB15_Female_HighDensity 133 | # 134 | DEF Connector_DB15_Female_HighDensity J 0 40 Y N 1 F N 135 | F0 "J" 0 850 50 H V C CNN 136 | F1 "Connector_DB15_Female_HighDensity" 0 750 50 H V C CNN 137 | F2 "" -950 400 50 H I C CNN 138 | F3 "" -950 400 50 H I C CNN 139 | $FPLIST 140 | DSUB*Female* 141 | $ENDFPLIST 142 | DRAW 143 | C -75 -400 25 0 1 0 N 144 | C -75 -200 25 0 1 0 N 145 | C -75 0 25 0 1 0 N 146 | C -75 200 25 0 1 0 N 147 | C -75 400 25 0 1 0 N 148 | C 0 -300 25 0 1 0 N 149 | C 0 -100 25 0 1 0 N 150 | C 0 100 25 0 1 0 N 151 | C 0 300 25 0 1 0 N 152 | C 0 500 25 0 1 0 N 153 | C 75 -400 25 0 1 0 N 154 | C 75 -200 25 0 1 0 N 155 | C 75 0 25 0 1 0 N 156 | C 75 200 25 0 1 0 N 157 | C 75 400 25 0 1 0 N 158 | P 2 0 1 0 -125 300 -25 300 N 159 | P 2 0 1 0 -25 -300 -125 -300 N 160 | P 2 0 1 0 -25 -100 -125 -100 N 161 | P 2 0 1 0 -25 100 -125 100 N 162 | P 2 0 1 0 -25 500 -125 500 N 163 | P 5 0 1 10 -150 700 -150 -600 150 -500 150 600 -150 700 f 164 | X ~ 1 -300 400 200 R 50 50 1 1 P 165 | X ~ 10 -300 -300 200 R 50 50 1 1 P 166 | X ~ 11 300 400 200 L 50 50 1 1 P 167 | X ~ 12 300 200 200 L 50 50 1 1 P 168 | X ~ 13 300 0 200 L 50 50 1 1 P 169 | X ~ 14 300 -200 200 L 50 50 1 1 P 170 | X ~ 15 300 -400 200 L 50 50 1 1 P 171 | X ~ 2 -300 200 200 R 50 50 1 1 P 172 | X ~ 3 -300 0 200 R 50 50 1 1 P 173 | X ~ 4 -300 -200 200 R 50 50 1 1 P 174 | X ~ 5 -300 -400 200 R 50 50 1 1 P 175 | X ~ 6 -300 500 200 R 50 50 1 1 P 176 | X ~ 7 -300 300 200 R 50 50 1 1 P 177 | X ~ 8 -300 100 200 R 50 50 1 1 P 178 | X ~ 9 -300 -100 200 R 50 50 1 1 P 179 | ENDDRAW 180 | ENDDEF 181 | # 182 | # Connector_Mini-DIN-6 183 | # 184 | DEF Connector_Mini-DIN-6 J 0 40 Y Y 1 F N 185 | F0 "J" 0 250 50 H V C CNN 186 | F1 "Connector_Mini-DIN-6" 0 -250 50 H V C CNN 187 | F2 "" 0 0 50 H I C CNN 188 | F3 "" 0 0 50 H I C CNN 189 | $FPLIST 190 | MINI?DIN* 191 | $ENDFPLIST 192 | DRAW 193 | A 0 0 200 -1269 -531 0 1 10 N -120 -160 120 -160 194 | A 2 4 200 1021 -1488 0 1 10 N -40 200 -170 -100 195 | A 2 5 198 -320 790 0 1 10 N 170 -100 40 200 196 | C -130 0 20 0 1 0 N 197 | C -80 -100 20 0 1 0 N 198 | C -80 100 20 0 1 0 N 199 | C 80 -100 20 0 1 0 N 200 | C 90 100 20 0 1 0 N 201 | C 130 0 20 0 1 0 N 202 | S -30 100 30 0 0 1 0 F 203 | P 2 0 1 0 -150 0 -200 0 N 204 | P 2 0 1 0 -100 100 -200 100 N 205 | P 2 0 1 0 110 100 200 100 N 206 | P 2 0 1 0 200 0 150 0 N 207 | P 3 0 1 10 -170 -100 -120 -100 -120 -160 N 208 | P 3 0 1 10 170 -100 120 -100 120 -160 N 209 | P 4 0 1 0 -80 -120 -80 -140 -200 -140 -200 -100 N 210 | P 4 0 1 10 -40 200 -40 160 40 160 40 200 N 211 | P 4 0 1 0 80 -120 80 -140 200 -140 200 -100 N 212 | X ~ 1 300 -100 100 L 50 50 1 1 P 213 | X ~ 2 -300 -100 100 R 50 50 1 1 P 214 | X ~ 3 300 0 100 L 50 50 1 1 P 215 | X ~ 4 -300 0 100 R 50 50 1 1 P 216 | X ~ 5 300 100 100 L 50 50 1 1 P 217 | X ~ 6 -300 100 100 R 50 50 1 1 P 218 | ENDDRAW 219 | ENDDEF 220 | # 221 | # Device_CP 222 | # 223 | DEF Device_CP C 0 10 N Y 1 F N 224 | F0 "C" 25 100 50 H V L CNN 225 | F1 "Device_CP" 25 -100 50 H V L CNN 226 | F2 "" 38 -150 50 H I C CNN 227 | F3 "" 0 0 50 H I C CNN 228 | $FPLIST 229 | CP_* 230 | $ENDFPLIST 231 | DRAW 232 | S -90 20 90 40 0 1 0 N 233 | S 90 -20 -90 -40 0 1 0 F 234 | P 2 0 1 0 -70 90 -30 90 N 235 | P 2 0 1 0 -50 110 -50 70 N 236 | X ~ 1 0 150 110 D 50 50 1 1 P 237 | X ~ 2 0 -150 110 U 50 50 1 1 P 238 | ENDDRAW 239 | ENDDEF 240 | # 241 | # Device_C_Small 242 | # 243 | DEF Device_C_Small C 0 10 N N 1 F N 244 | F0 "C" 10 70 50 H V L CNN 245 | F1 "Device_C_Small" 10 -80 50 H V L CNN 246 | F2 "" 0 0 50 H I C CNN 247 | F3 "" 0 0 50 H I C CNN 248 | $FPLIST 249 | C_* 250 | $ENDFPLIST 251 | DRAW 252 | P 2 0 1 13 -60 -20 60 -20 N 253 | P 2 0 1 12 -60 20 60 20 N 254 | X ~ 1 0 100 80 D 50 50 1 1 P 255 | X ~ 2 0 -100 80 U 50 50 1 1 P 256 | ENDDRAW 257 | ENDDEF 258 | # 259 | # Device_R 260 | # 261 | DEF Device_R R 0 0 N Y 1 F N 262 | F0 "R" 80 0 50 V V C CNN 263 | F1 "Device_R" 0 0 50 V V C CNN 264 | F2 "" -70 0 50 V I C CNN 265 | F3 "" 0 0 50 H I C CNN 266 | $FPLIST 267 | R_* 268 | $ENDFPLIST 269 | DRAW 270 | S -40 -100 40 100 0 1 10 N 271 | X ~ 1 0 150 50 D 50 50 1 1 P 272 | X ~ 2 0 -150 50 U 50 50 1 1 P 273 | ENDDRAW 274 | ENDDEF 275 | # 276 | # MCU_Module_Arduino_Nano_v3.x 277 | # 278 | DEF MCU_Module_Arduino_Nano_v3.x A 0 20 Y Y 1 F N 279 | F0 "A" -400 925 50 H V L BNN 280 | F1 "MCU_Module_Arduino_Nano_v3.x" 200 -950 50 H V L TNN 281 | F2 "Module:Arduino_Nano" 0 0 50 H I C CIN 282 | F3 "" 0 0 50 H I C CNN 283 | ALIAS Arduino_Nano_v3.x 284 | $FPLIST 285 | Arduino*Nano* 286 | $ENDFPLIST 287 | DRAW 288 | S -400 900 400 -900 0 1 10 f 289 | X D1/TX 1 -500 500 100 R 50 50 1 1 B 290 | X D7 10 -500 -100 100 R 50 50 1 1 B 291 | X D8 11 -500 -200 100 R 50 50 1 1 B 292 | X D9 12 -500 -300 100 R 50 50 1 1 B 293 | X D10 13 -500 -400 100 R 50 50 1 1 B 294 | X D11 14 -500 -500 100 R 50 50 1 1 B 295 | X D12 15 -500 -600 100 R 50 50 1 1 B 296 | X D13 16 -500 -700 100 R 50 50 1 1 B 297 | X 3V3 17 100 1000 100 D 50 50 1 1 w 298 | X AREF 18 500 200 100 L 50 50 1 1 I 299 | X A0 19 500 0 100 L 50 50 1 1 B 300 | X D0/RX 2 -500 600 100 R 50 50 1 1 B 301 | X A1 20 500 -100 100 L 50 50 1 1 B 302 | X A2 21 500 -200 100 L 50 50 1 1 B 303 | X A3 22 500 -300 100 L 50 50 1 1 B 304 | X A4 23 500 -400 100 L 50 50 1 1 B 305 | X A5 24 500 -500 100 L 50 50 1 1 B 306 | X A6 25 500 -600 100 L 50 50 1 1 B 307 | X A7 26 500 -700 100 L 50 50 1 1 B 308 | X +5V 27 200 1000 100 D 50 50 1 1 w 309 | X ~RESET 28 500 600 100 L 50 50 1 1 I 310 | X GND 29 100 -1000 100 U 50 50 1 1 W 311 | X ~RESET 3 500 500 100 L 50 50 1 1 I 312 | X VIN 30 -100 1000 100 D 50 50 1 1 W 313 | X GND 4 0 -1000 100 U 50 50 1 1 W 314 | X D2 5 -500 400 100 R 50 50 1 1 B 315 | X D3 6 -500 300 100 R 50 50 1 1 B 316 | X D4 7 -500 200 100 R 50 50 1 1 B 317 | X D5 8 -500 100 100 R 50 50 1 1 B 318 | X D6 9 -500 0 100 R 50 50 1 1 B 319 | ENDDRAW 320 | ENDDEF 321 | # 322 | # power_+5V 323 | # 324 | DEF power_+5V #PWR 0 0 Y Y 1 F P 325 | F0 "#PWR" 0 -150 50 H I C CNN 326 | F1 "power_+5V" 0 140 50 H V C CNN 327 | F2 "" 0 0 50 H I C CNN 328 | F3 "" 0 0 50 H I C CNN 329 | DRAW 330 | P 2 0 1 0 -30 50 0 100 N 331 | P 2 0 1 0 0 0 0 100 N 332 | P 2 0 1 0 0 100 30 50 N 333 | X +5V 1 0 0 0 U 50 50 1 1 W N 334 | ENDDRAW 335 | ENDDEF 336 | # 337 | # power_GND 338 | # 339 | DEF power_GND #PWR 0 0 Y Y 1 F P 340 | F0 "#PWR" 0 -250 50 H I C CNN 341 | F1 "power_GND" 0 -150 50 H V C CNN 342 | F2 "" 0 0 50 H I C CNN 343 | F3 "" 0 0 50 H I C CNN 344 | DRAW 345 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 346 | X GND 1 0 0 0 D 50 50 1 1 W N 347 | ENDDRAW 348 | ENDDEF 349 | # 350 | # power_PWR_FLAG 351 | # 352 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 353 | F0 "#FLG" 0 75 50 H I C CNN 354 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 355 | F2 "" 0 0 50 H I C CNN 356 | F3 "" 0 0 50 H I C CNN 357 | DRAW 358 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 359 | X pwr 1 0 0 0 U 50 50 0 0 w 360 | ENDDRAW 361 | ENDDEF 362 | # 363 | #End Library 364 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC.bck: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | $CMP 74HC165 4 | D Shift Register 8-bit, parallel load 5 | K TTL SR SR8 6 | F http://www.ti.com/lit/gpn/sn74LS165 7 | $ENDCMP 8 | # 9 | $CMP 74HC173 10 | D 4-bit D-type Register, 3 state out 11 | K TTL REG REG4 3State DFF 12 | F http://www.ti.com/lit/gpn/sn74LS173 13 | $ENDCMP 14 | # 15 | $CMP 74HC193 16 | D Synchronous 4-bit Up/Down (2 clk) counter 17 | K TTL CNT CNT4 18 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 19 | $ENDCMP 20 | # 21 | $CMP 74LS193 22 | D Synchronous 4-bit Up/Down (2 clk) counter 23 | K TTL CNT CNT4 24 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 25 | $ENDCMP 26 | # 27 | #End Doc Library 28 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | $CMP 74HC165 4 | D Shift Register 8-bit, parallel load 5 | K TTL SR SR8 6 | F http://www.ti.com/lit/gpn/sn74LS165 7 | $ENDCMP 8 | # 9 | $CMP 74HC173 10 | D 4-bit D-type Register, 3 state out 11 | K TTL REG REG4 3State DFF 12 | F http://www.ti.com/lit/gpn/sn74LS173 13 | $ENDCMP 14 | # 15 | $CMP 74HC193 16 | D Synchronous 4-bit Up/Down (2 clk) counter 17 | K TTL CNT CNT4 18 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 19 | $ENDCMP 20 | # 21 | $CMP 74LS193 22 | D Synchronous 4-bit Up/Down (2 clk) counter 23 | K TTL CNT CNT4 24 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 25 | $ENDCMP 26 | # 27 | #End Doc Library 28 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC165 5 | # 6 | DEF 74HC165 U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC165" -300 -850 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 17 | X DS 10 -500 600 200 R 50 50 1 0 I 18 | X D0 11 -500 500 200 R 50 50 1 0 I 19 | X D1 12 -500 400 200 R 50 50 1 0 I 20 | X D2 13 -500 300 200 R 50 50 1 0 I 21 | X D3 14 -500 200 200 R 50 50 1 0 I 22 | X ~CE 15 500 -600 200 L 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X CP 2 -500 -300 200 R 50 50 1 0 I 25 | X D4 3 -500 100 200 R 50 50 1 0 I 26 | X D5 4 -500 0 200 R 50 50 1 0 I 27 | X D6 5 -500 -100 200 R 50 50 1 0 I 28 | X D7 6 -500 -200 200 R 50 50 1 0 I 29 | X ~Q7 7 500 500 200 L 50 50 1 0 O 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X Q7 9 500 600 200 L 50 50 1 0 O 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74HC173 36 | # 37 | DEF 74HC173 U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "74HC173" -300 -750 50 H V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -700 1 1 10 f 47 | X ~OE1 1 -500 100 200 R 50 50 1 0 I 48 | X ~E2 10 -500 -300 200 R 50 50 1 0 I 49 | X D3 11 -500 300 200 R 50 50 1 0 I 50 | X D2 12 -500 400 200 R 50 50 1 0 I 51 | X D1 13 -500 500 200 R 50 50 1 0 I 52 | X D0 14 -500 600 200 R 50 50 1 0 I 53 | X MR 15 -500 -600 200 R 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X ~OE2 2 -500 0 200 R 50 50 1 0 I 56 | X Q0 3 500 600 200 L 50 50 1 0 T 57 | X Q1 4 500 500 200 L 50 50 1 0 T 58 | X Q2 5 500 400 200 L 50 50 1 0 T 59 | X Q3 6 500 300 200 L 50 50 1 0 T 60 | X CP 7 -500 -400 200 R 50 50 1 0 I C 61 | X GND 8 0 -900 200 U 50 50 1 0 W 62 | X ~E1 9 -500 -200 200 R 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # 74HC193 67 | # 68 | DEF 74HC193 U 0 20 Y Y 1 F N 69 | F0 "U" -300 550 50 H V C CNN 70 | F1 "74HC193" 200 550 50 H V C CNN 71 | F2 "" 0 0 50 H I C CNN 72 | F3 "" 0 0 50 H I C CNN 73 | ALIAS 74LS193 74 | $FPLIST 75 | SOIC*3.9x9.9mm*P1.27mm* 76 | DIP*W7.62mm* 77 | $ENDFPLIST 78 | DRAW 79 | S -300 500 300 -600 1 1 10 f 80 | X D1 1 -500 300 200 R 50 50 1 0 I 81 | X D2 10 -500 200 200 R 50 50 1 0 I 82 | X ~PL 11 -500 -100 200 R 50 50 1 0 I 83 | X ~TCU 12 500 -100 200 L 50 50 1 0 O 84 | X ~TCD 13 500 -300 200 L 50 50 1 0 O 85 | X MR 14 -500 -500 200 R 50 50 1 0 I 86 | X D0 15 -500 400 200 R 50 50 1 0 I 87 | X VCC 16 0 700 200 D 50 50 1 0 W 88 | X Q1 2 500 300 200 L 50 50 1 0 O 89 | X Q0 3 500 400 200 L 50 50 1 0 O 90 | X CPD 4 -500 -400 200 R 50 50 1 0 I C 91 | X CPU 5 -500 -300 200 R 50 50 1 0 I C 92 | X Q2 6 500 200 200 L 50 50 1 0 O 93 | X Q3 7 500 100 200 L 50 50 1 0 O 94 | X GND 8 0 -800 200 U 50 50 1 0 W 95 | X D3 9 -500 100 200 R 50 50 1 0 I 96 | ENDDRAW 97 | ENDDEF 98 | # 99 | #End Library 100 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC.pretty/FP_MINI_DIN_6_PS2.kicad_mod: -------------------------------------------------------------------------------- 1 | (module FP_MINI_DIN_6_PS2 (layer F.Cu) (tedit 5F735A85) 2 | (fp_text reference REF** (at -5.08 -0.97) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value FP_MINI_DIN_6_PS2 (at 0 14.27) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 7 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -7 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -7 0) (end -7 13.2) (layer F.Fab) (width 0.12)) 11 | (fp_line (start -7 13.2) (end 7 13.2) (layer F.Fab) (width 0.12)) 12 | (fp_line (start 7 0) (end 7 13.2) (layer F.Fab) (width 0.12)) 13 | (fp_line (start -3.81 0) (end -3.81 1.57) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -3.81 1.57) (end 3.81 1.57) (layer F.Fab) (width 0.12)) 15 | (fp_line (start 3.81 1.57) (end 3.81 0) (layer F.Fab) (width 0.12)) 16 | (pad 2 thru_hole circle (at 1.3 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 17 | (pad "" thru_hole circle (at 0 5) (size 4 4) (drill 2.4) (layers *.Cu *.Mask)) 18 | (pad "" thru_hole circle (at 6.75 5.8) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 19 | (pad "" thru_hole circle (at -6.75 5.8) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 20 | (pad 1 thru_hole circle (at -1.3 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 21 | (pad 3 thru_hole circle (at -3.35 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 22 | (pad 4 thru_hole circle (at 3.35 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 23 | (pad 6 thru_hole circle (at 3.35 11.3) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 24 | (pad 5 thru_hole circle (at -3.35 11.3) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 25 | ) 26 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC.pretty/VGA DSUB15HD_female.kicad_mod: -------------------------------------------------------------------------------- 1 | (module "VGA DSUB15HD_female" (layer F.Cu) (tedit 5F735B8C) 2 | (fp_text reference REF** (at 18 20) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value "VGA DSUB15HD_female" (at 0 -8) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 16 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -16 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -16 0) (end -16 16.1) (layer F.Fab) (width 0.12)) 11 | (fp_line (start 16 0) (end 16 16.1) (layer F.Fab) (width 0.12)) 12 | (fp_line (start -16 16.1) (end 16 16.1) (layer F.Fab) (width 0.12)) 13 | (fp_line (start 8.1 22) (end 8.1 16.1) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -8.1 22) (end -8.1 16.1) (layer F.Fab) (width 0.12)) 15 | (fp_line (start -15 16.1) (end -15 20.6) (layer F.Fab) (width 0.12)) 16 | (fp_line (start -15 20.6) (end -9 20.6) (layer F.Fab) (width 0.12)) 17 | (fp_line (start -9 20.6) (end -9 16.1) (layer F.Fab) (width 0.12)) 18 | (fp_line (start 15 16.1) (end 15 20.6) (layer F.Fab) (width 0.12)) 19 | (fp_line (start 15 20.6) (end 9 20.6) (layer F.Fab) (width 0.12)) 20 | (fp_line (start 9 20.6) (end 9 16.1) (layer F.Fab) (width 0.12)) 21 | (fp_line (start 8.1 22) (end -8.1 22) (layer F.Fab) (width 0.12)) 22 | (pad 3 thru_hole circle (at 0 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 23 | (pad 2 thru_hole circle (at 2.25 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 24 | (pad 1 thru_hole circle (at 4.5 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 25 | (pad 4 thru_hole circle (at -2.25 2.25) (size 1.7 1.7) (drill 0.8) (layers *.Cu *.Mask)) 26 | (pad 5 thru_hole circle (at -4.5 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 27 | (pad 11 thru_hole circle (at 4.5 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 28 | (pad 12 thru_hole circle (at 2.25 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 29 | (pad 14 thru_hole circle (at -2.25 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 30 | (pad 15 thru_hole circle (at -4.5 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 31 | (pad 13 thru_hole circle (at 0 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 32 | (pad 6 thru_hole circle (at 5.625 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 33 | (pad 7 thru_hole circle (at 3.375 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 34 | (pad 9 thru_hole circle (at -1.125 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 35 | (pad 10 thru_hole circle (at -3.375 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 36 | (pad 8 thru_hole circle (at 1.125 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 37 | (pad "" thru_hole circle (at 12.45 4.75) (size 5 5) (drill 3) (layers *.Cu *.Mask)) 38 | (pad "" thru_hole circle (at -12.45 4.75) (size 5 5) (drill 3) (layers *.Cu *.Mask)) 39 | ) 40 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/ArduinoPC.pro: -------------------------------------------------------------------------------- 1 | update=23/09/2020 21:13:08 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [schematic_editor] 16 | version=1 17 | PageLayoutDescrFile= 18 | PlotDirectoryName= 19 | SubpartIdSeparator=0 20 | SubpartFirstId=65 21 | NetFmtName=Pcbnew 22 | SpiceAjustPassiveValues=0 23 | LabSize=50 24 | ERC_TestSimilarLabels=1 25 | [pcbnew] 26 | version=1 27 | PageLayoutDescrFile= 28 | LastNetListRead=ArduinoPC.net 29 | CopperLayerCount=2 30 | BoardThickness=1.6 31 | AllowMicroVias=0 32 | AllowBlindVias=0 33 | RequireCourtyardDefinitions=0 34 | ProhibitOverlappingCourtyards=1 35 | MinTrackWidth=0.2 36 | MinViaDiameter=0.4 37 | MinViaDrill=0.3 38 | MinMicroViaDiameter=0.2 39 | MinMicroViaDrill=0.09999999999999999 40 | MinHoleToHole=0.25 41 | TrackWidth1=0.25 42 | ViaDiameter1=0.8 43 | ViaDrill1=0.4 44 | dPairWidth1=0.2 45 | dPairGap1=0.25 46 | dPairViaGap1=0.25 47 | SilkLineWidth=0.12 48 | SilkTextSizeV=1 49 | SilkTextSizeH=1 50 | SilkTextSizeThickness=0.15 51 | SilkTextItalic=0 52 | SilkTextUpright=1 53 | CopperLineWidth=0.2 54 | CopperTextSizeV=1.5 55 | CopperTextSizeH=1.5 56 | CopperTextThickness=0.3 57 | CopperTextItalic=0 58 | CopperTextUpright=1 59 | EdgeCutLineWidth=0.05 60 | CourtyardLineWidth=0.05 61 | OthersLineWidth=0.15 62 | OthersTextSizeV=1 63 | OthersTextSizeH=1 64 | OthersTextSizeThickness=0.15 65 | OthersTextItalic=0 66 | OthersTextUpright=1 67 | SolderMaskClearance=0.051 68 | SolderMaskMinWidth=0.25 69 | SolderPasteClearance=0 70 | SolderPasteRatio=0 71 | [pcbnew/Layer.F.Cu] 72 | Name=F.Cu 73 | Type=0 74 | Enabled=1 75 | [pcbnew/Layer.In1.Cu] 76 | Name=In1.Cu 77 | Type=0 78 | Enabled=0 79 | [pcbnew/Layer.In2.Cu] 80 | Name=In2.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In3.Cu] 84 | Name=In3.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In4.Cu] 88 | Name=In4.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In5.Cu] 92 | Name=In5.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In6.Cu] 96 | Name=In6.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In7.Cu] 100 | Name=In7.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In8.Cu] 104 | Name=In8.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In9.Cu] 108 | Name=In9.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In10.Cu] 112 | Name=In10.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In11.Cu] 116 | Name=In11.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In12.Cu] 120 | Name=In12.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In13.Cu] 124 | Name=In13.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In14.Cu] 128 | Name=In14.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In15.Cu] 132 | Name=In15.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In16.Cu] 136 | Name=In16.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In17.Cu] 140 | Name=In17.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In18.Cu] 144 | Name=In18.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In19.Cu] 148 | Name=In19.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In20.Cu] 152 | Name=In20.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In21.Cu] 156 | Name=In21.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In22.Cu] 160 | Name=In22.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In23.Cu] 164 | Name=In23.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In24.Cu] 168 | Name=In24.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In25.Cu] 172 | Name=In25.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In26.Cu] 176 | Name=In26.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In27.Cu] 180 | Name=In27.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In28.Cu] 184 | Name=In28.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In29.Cu] 188 | Name=In29.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.In30.Cu] 192 | Name=In30.Cu 193 | Type=0 194 | Enabled=0 195 | [pcbnew/Layer.B.Cu] 196 | Name=B.Cu 197 | Type=0 198 | Enabled=1 199 | [pcbnew/Layer.B.Adhes] 200 | Enabled=1 201 | [pcbnew/Layer.F.Adhes] 202 | Enabled=1 203 | [pcbnew/Layer.B.Paste] 204 | Enabled=1 205 | [pcbnew/Layer.F.Paste] 206 | Enabled=1 207 | [pcbnew/Layer.B.SilkS] 208 | Enabled=1 209 | [pcbnew/Layer.F.SilkS] 210 | Enabled=1 211 | [pcbnew/Layer.B.Mask] 212 | Enabled=1 213 | [pcbnew/Layer.F.Mask] 214 | Enabled=1 215 | [pcbnew/Layer.Dwgs.User] 216 | Enabled=1 217 | [pcbnew/Layer.Cmts.User] 218 | Enabled=1 219 | [pcbnew/Layer.Eco1.User] 220 | Enabled=1 221 | [pcbnew/Layer.Eco2.User] 222 | Enabled=1 223 | [pcbnew/Layer.Edge.Cuts] 224 | Enabled=1 225 | [pcbnew/Layer.Margin] 226 | Enabled=1 227 | [pcbnew/Layer.B.CrtYd] 228 | Enabled=1 229 | [pcbnew/Layer.F.CrtYd] 230 | Enabled=1 231 | [pcbnew/Layer.B.Fab] 232 | Enabled=1 233 | [pcbnew/Layer.F.Fab] 234 | Enabled=1 235 | [pcbnew/Layer.Rescue] 236 | Enabled=1 237 | [pcbnew/Netclasses] 238 | [pcbnew/Netclasses/Default] 239 | Name=Default 240 | Clearance=0.2 241 | TrackWidth=0.25 242 | ViaDiameter=0.8 243 | ViaDrill=0.4 244 | uViaDiameter=0.3 245 | uViaDrill=0.1 246 | dPairWidth=0.2 247 | dPairGap=0.25 248 | dPairViaGap=0.25 249 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name ArduinoPC)(type KiCad)(uri ${KIPRJMOD}/ArduinoPC.pretty)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /Rev1/Monochrome/KiCAD/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name ArduinoPC)(type Legacy)(uri ${KIPRJMOD}/ArduinoPC.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /Rev1/Monochrome/Library/os/os.S: -------------------------------------------------------------------------------- 1 | #define __SFR_OFFSET 0x00 // set the Special Function Register Offset from 0x20 to 0x00 in order to use the AVR PORT definitions 2 | #include // include PORTB, DDRD, ... symbols for easier register access 3 | 4 | .global TIMER0_COMPA_vect ; define this global to make the Arduino IDE integrate the ISR 5 | 6 | .macro TWOCHARS 7 | ld ZL, X+ ; 2 ZL = (X), X = X + 1 8 | lpm r23, Z ; 3 get font byte from program memory for current chr on current line 9 | out PORTD, r23 ; 1 put data to shift register 10 | sbi PORTB, 3 ; 2 pin toggling creates /PL spike via XOR 11 | ld ZL, X+ ; 2 ZL = (X), X = X + 1 12 | lpm r23, Z ; 3 get font byte from program memory for current chr on current line 13 | out PORTD, r23 ; 1 put data to shift register 14 | cbi PORTB, 3 ; 2 pin toggling creates /PL spike via XOR 15 | .endm 16 | 17 | ; ******************************************************************* 18 | ; ***** ***** 19 | ; ***** Assembler routine sending out pixel data for a scanline ***** 20 | ; ***** ***** 21 | ; ******************************************************************* 22 | TIMER0_COMPA_vect: ; ISR table entry is automatically generated by the AVR assembler 23 | push r1 ; save r1 and r0 (the compiler needs this?) 24 | push r0 25 | in r0, SREG ; reads the AVR status register SREG 0x3f holding the complete flag state 26 | push r0 ; push it on the stack, too 27 | eor r1, r1 ; r1: 0 28 | 29 | push r20 ; push content on stack, so we can use this register right away 30 | 31 | lds r20, TCNT2 ; timer TCNT2 jitter compensation 32 | cpi r20, 4 33 | breq .+8 34 | cpi r20, 3 35 | breq .+6 36 | cpi r20, 2 37 | breq .+4 38 | nop 39 | nop 40 | nop 41 | 42 | cbi PORTB, 4 ; start of sync pulse 43 | 44 | push r21 45 | push r22 46 | push r23 47 | push r24 48 | push r25 49 | push r26 50 | push r27 51 | push r30 52 | push r31 53 | 54 | out DDRD, r1 ; r1=0: make D6-7 inputs (PORTD ist hier 0 vom Ende der letzten scanline => pull-ups sind aus) 55 | 56 | lds r20, vline ; lade vline nach r20-21 57 | lds r21, vline+1 58 | movw r24, r20 ; copy register pair r20/21 -> r24/25 59 | adiw r24, 1 ; erhöhe vline um 1 60 | sts vline+1, r25 ; speichere vline wieder 61 | sts vline, r24 62 | asr r21 ; divide vline by 2 and subtract 30 63 | ror r20 64 | subi r20, 30 ; r20: Pixellinie "lin", r24: vline 65 | 66 | sbi PORTB, 4 ; end of sync pulse (after 1µ, should be 3,8µs but this buys valuable time here) 67 | 68 | in r23, PIND ; read in PS/2 keyboard scan code from register 74HC173 69 | in r22, PINC 70 | andi r22, 0b00111111 71 | andi r23, 0b11000000 72 | or r22, r23 ; r22: scan code of keyboard 73 | 74 | ldi r23, 0xff 75 | out DDRD, r23 ; make D6-7 outputs 76 | 77 | mov r21, r20 ; calculate VRAM row address from lin 78 | lsr r21 79 | lsr r21 80 | lsr r21 ; lin>>3 81 | ldi r25, 40 82 | mul r25, r21 ; calculate * 40 => Ergebnis ist in r0-1 83 | movw r30, r0 ; r30-31 (Z): index of VRAM row 84 | eor r1, r1 ; r1: 0 85 | 86 | ldi XL, lo8(vram) 87 | ldi XH, hi8(vram) 88 | add XH, ZH ; add VRAM row index to VRAM start address 89 | add XL, ZL 90 | adc XH, r1 ; r26-27 (X): VRAM row address 91 | 92 | mov r21, r20 ; get lin 93 | andi r21, 7 ; r21: lin & 7, only use lowest 3 bits of lin to determin charset line 94 | 95 | ldi ZH, hi8(charset); charset must be aligned to 256 bytes 96 | add ZH, r21 ; now ZH points to the charset line 97 | 98 | cpi r20, 200 99 | brcs drawPixels 100 | jmp regHandler 101 | 102 | drawPixels: ldi r23, 12 ; shifts screen left BUT BE CAREFUL: if routine takes too long, it won't fit into a scanline! 103 | wait: dec r23 104 | brne wait 105 | 106 | TWOCHARS ; shift out 20 character pairs 107 | TWOCHARS 108 | TWOCHARS 109 | TWOCHARS 110 | TWOCHARS 111 | TWOCHARS 112 | TWOCHARS 113 | TWOCHARS 114 | TWOCHARS 115 | TWOCHARS 116 | TWOCHARS 117 | TWOCHARS 118 | TWOCHARS 119 | TWOCHARS 120 | TWOCHARS 121 | TWOCHARS 122 | TWOCHARS 123 | TWOCHARS 124 | TWOCHARS 125 | TWOCHARS 126 | 127 | regHandler: cpi r22, 0 ; check for scan != 0 128 | breq retreat 129 | andi r24, 7 130 | cpi r24, 0 ; check for lin & 7 == 0 (only every 256µs) 131 | brne retreat 132 | lds r23, prev ; load previous scancode 133 | cp r22, r23 ; check scan == prev (was the data stable?) 134 | brne notstable 135 | cbi PORTB, 1 ; pulse /MR low 136 | sbi PORTB, 1 137 | ldi r31, hi8(reg) ; prepare Z for a load indirect 138 | lds r30, regin ; load direct from data space: "regin" index = LSB 139 | st Z, r22 ; store scan -> (Z) 140 | inc r30 ; regin++, transfer buffer wraps around 141 | andi r30, 7 ; only use 8 bytes for KEYBUFSIZE 142 | sts regin, r30 ; store regin back to data space 143 | notstable: sts prev, r22 ; prev = scan 144 | retreat: pop r31 145 | pop r30 146 | pop r27 147 | pop r26 148 | pop r25 149 | pop r24 150 | pop r23 151 | pop r22 152 | pop r21 153 | pop r20 154 | pop r0 ; restore the AVR status register SREG 0x3f value 155 | out SREG, r0 ; set the SREG back to what it was 156 | pop r0 ; restore r0, r1 157 | pop r1 158 | reti ; return from interrupt 159 | /* 160 | ----------- 161 | MIT License 162 | ----------- 163 | Copyright (c) 2021 Carsten Herting 164 | Permission is hereby granted, free of charge, to any person obtaining a copy of 165 | this software and associated documentation files (the "Software"), to deal in 166 | the Software without restriction, including without limitation the rights to 167 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 168 | of the Software, and to permit persons to whom the Software is furnished to do 169 | so, subject to the following conditions: 170 | The above copyright notice and this permission notice shall be included in all 171 | copies or substantial portions of the Software. 172 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 173 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 174 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 175 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 176 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 177 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 178 | SOFTWARE. 179 | */ 180 | 181 | /* 182 | ISR(TIMER0_COMPA_vect) // HSYNC generation and drawing of a scanline 183 | { 184 | asm("lds r24, 0x00B2\n" // compensate interrupt jitter 185 | "cpi r24, 0x06\n" 186 | "breq .+8\n" 187 | "cpi r24, 0x05\n" 188 | "breq .+6\n" 189 | "cpi r24, 0x04\n" 190 | "breq .+4\n" 191 | "nop\n" 192 | "nop\n" 193 | "nop\n" ); 194 | 195 | DDRD = 0b00000000; // D = input 196 | PORTB = 0b00000010; // /HSYNC=0, /MR=1 197 | byte lin = ((vline++) >> 1) - 30; // skip 2 lines (VSYNC pulse) + some lines (vertical back porch) 198 | volatile byte* vrow = vram[lin >> 3]; // pointer to the vram row 0...24 to display 199 | volatile byte* cset = charset[lin & 0b111] - 32; // pointer to the charset line 0..7 to use starting @ character 32 200 | byte scan = (PINC & 0b00111111) | (PIND & 0b11000000); // read only after output has stabilized 201 | PORTB = 0b00010010; // /HSYNC=1, /MR=1 202 | DDRD = 0b11111111; // D = output 203 | 204 | __builtin_avr_delay_cycles(4);// shift the whole picture to the right 205 | 206 | if (lin < ROWS*8) // draw a line of pixels 207 | { 208 | TCCR2A &= ~(1<'. 7 | 8 | Have fun! 9 | -------------------------------------------------------------------------------- /Rev1/Monochrome/Schematic Nano PC.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev1/Monochrome/Schematic Nano PC.pdf -------------------------------------------------------------------------------- /Rev1/Monochrome/readme.md: -------------------------------------------------------------------------------- 1 | # Arduino Nano PC 1 2 | 3 | Original monochrome version using 4 additional logic ICs. -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC-backups/ArduinoPC-2024-03-30_172939.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (color)/ArduinoPC-backups/ArduinoPC-2024-03-30_172939.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC-backups/ArduinoPC-2024-03-30_194709.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (color)/ArduinoPC-backups/ArduinoPC-2024-03-30_194709.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC-backups/ArduinoPC-2024-03-30_200020.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (color)/ArduinoPC-backups/ArduinoPC-2024-03-30_200020.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74xx_74HC164 5 | # 6 | DEF 74xx_74HC164 U 0 20 Y Y 1 F N 7 | F0 "U" 75 -550 50 H V L CNN 8 | F1 "74xx_74HC164" 75 -650 50 H V L CNN 9 | F2 "" 900 -300 50 H I C CNN 10 | F3 "" 900 -300 50 H I C CNN 11 | ALIAS 74HCT164 12 | $FPLIST 13 | SOIC*3.9x8.7*P1.27mm* 14 | ?SSOP*P0.65mm* 15 | $ENDFPLIST 16 | DRAW 17 | S 300 400 -300 -500 0 1 10 f 18 | X DSA 1 -400 0 100 R 50 50 1 1 I 19 | X Q4 10 400 -100 100 L 50 50 1 1 O 20 | X Q5 11 400 -200 100 L 50 50 1 1 O 21 | X Q6 12 400 -300 100 L 50 50 1 1 O 22 | X Q7 13 400 -400 100 L 50 50 1 1 O 23 | X VCC 14 0 500 100 D 50 50 1 1 W 24 | X DSB 2 -400 -100 100 R 50 50 1 1 I 25 | X Q0 3 400 300 100 L 50 50 1 1 O 26 | X Q1 4 400 200 100 L 50 50 1 1 O 27 | X Q2 5 400 100 100 L 50 50 1 1 O 28 | X Q3 6 400 0 100 L 50 50 1 1 O 29 | X GND 7 0 -600 100 U 50 50 1 1 W 30 | X CP 8 -400 -300 100 R 50 50 1 1 I 31 | X ~MR 9 -400 200 100 R 50 50 1 1 I 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # ArduinoPC-rescue_74HC166-alternate-ArduinoPC-rescue 36 | # 37 | DEF ArduinoPC-rescue_74HC166-alternate-ArduinoPC-rescue U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "ArduinoPC-rescue_74HC166-alternate-ArduinoPC-rescue" 0 -50 50 V V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -800 1 1 10 f 47 | X DS 1 -500 600 200 R 50 50 1 0 I 48 | X D4 10 -500 100 200 R 50 50 1 0 I 49 | X D5 11 -500 0 200 R 50 50 1 0 I 50 | X D6 12 -500 -100 200 R 50 50 1 0 I 51 | X Q7 13 500 -200 200 L 50 50 1 0 O 52 | X D7 14 -500 -200 200 R 50 50 1 0 I 53 | X ~PE 15 -500 -600 200 R 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X D0 2 -500 500 200 R 50 50 1 0 I 56 | X D1 3 -500 400 200 R 50 50 1 0 I 57 | X D2 4 -500 300 200 R 50 50 1 0 I 58 | X D3 5 -500 200 200 R 50 50 1 0 I 59 | X ~CE 6 500 -600 200 L 50 50 1 0 I 60 | X CP 7 -500 -300 200 R 50 50 1 0 I 61 | X GND 8 0 -1000 200 U 50 50 1 0 W 62 | X ~MR 9 500 -400 200 L 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # Connector_DB15_Female_HighDensity 67 | # 68 | DEF Connector_DB15_Female_HighDensity J 0 40 Y N 1 F N 69 | F0 "J" 0 850 50 H V C CNN 70 | F1 "Connector_DB15_Female_HighDensity" 0 750 50 H V C CNN 71 | F2 "" -950 400 50 H I C CNN 72 | F3 "" -950 400 50 H I C CNN 73 | $FPLIST 74 | DSUB*Female* 75 | $ENDFPLIST 76 | DRAW 77 | C -75 -400 25 0 1 0 N 78 | C -75 -200 25 0 1 0 N 79 | C -75 0 25 0 1 0 N 80 | C -75 200 25 0 1 0 N 81 | C -75 400 25 0 1 0 N 82 | C 0 -300 25 0 1 0 N 83 | C 0 -100 25 0 1 0 N 84 | C 0 100 25 0 1 0 N 85 | C 0 300 25 0 1 0 N 86 | C 0 500 25 0 1 0 N 87 | C 75 -400 25 0 1 0 N 88 | C 75 -200 25 0 1 0 N 89 | C 75 0 25 0 1 0 N 90 | C 75 200 25 0 1 0 N 91 | C 75 400 25 0 1 0 N 92 | P 2 0 1 0 -125 300 -25 300 N 93 | P 2 0 1 0 -25 -300 -125 -300 N 94 | P 2 0 1 0 -25 -100 -125 -100 N 95 | P 2 0 1 0 -25 100 -125 100 N 96 | P 2 0 1 0 -25 500 -125 500 N 97 | P 5 0 1 10 -150 700 -150 -600 150 -500 150 600 -150 700 f 98 | X ~ 1 -300 400 200 R 50 50 1 1 P 99 | X ~ 10 -300 -300 200 R 50 50 1 1 P 100 | X ~ 11 300 400 200 L 50 50 1 1 P 101 | X ~ 12 300 200 200 L 50 50 1 1 P 102 | X ~ 13 300 0 200 L 50 50 1 1 P 103 | X ~ 14 300 -200 200 L 50 50 1 1 P 104 | X ~ 15 300 -400 200 L 50 50 1 1 P 105 | X ~ 2 -300 200 200 R 50 50 1 1 P 106 | X ~ 3 -300 0 200 R 50 50 1 1 P 107 | X ~ 4 -300 -200 200 R 50 50 1 1 P 108 | X ~ 5 -300 -400 200 R 50 50 1 1 P 109 | X ~ 6 -300 500 200 R 50 50 1 1 P 110 | X ~ 7 -300 300 200 R 50 50 1 1 P 111 | X ~ 8 -300 100 200 R 50 50 1 1 P 112 | X ~ 9 -300 -100 200 R 50 50 1 1 P 113 | ENDDRAW 114 | ENDDEF 115 | # 116 | # Connector_Mini-DIN-6 117 | # 118 | DEF Connector_Mini-DIN-6 J 0 40 Y Y 1 F N 119 | F0 "J" 0 250 50 H V C CNN 120 | F1 "Connector_Mini-DIN-6" 0 -250 50 H V C CNN 121 | F2 "" 0 0 50 H I C CNN 122 | F3 "" 0 0 50 H I C CNN 123 | $FPLIST 124 | MINI?DIN* 125 | $ENDFPLIST 126 | DRAW 127 | A 0 0 200 -1269 -531 0 1 10 N -120 -160 120 -160 128 | A 2 4 200 1021 -1488 0 1 10 N -40 200 -170 -100 129 | A 2 5 198 -320 790 0 1 10 N 170 -100 40 200 130 | C -130 0 20 0 1 0 N 131 | C -80 -100 20 0 1 0 N 132 | C -80 100 20 0 1 0 N 133 | C 80 -100 20 0 1 0 N 134 | C 90 100 20 0 1 0 N 135 | C 130 0 20 0 1 0 N 136 | S -30 100 30 0 0 1 0 F 137 | P 2 0 1 0 -150 0 -200 0 N 138 | P 2 0 1 0 -100 100 -200 100 N 139 | P 2 0 1 0 110 100 200 100 N 140 | P 2 0 1 0 200 0 150 0 N 141 | P 3 0 1 10 -170 -100 -120 -100 -120 -160 N 142 | P 3 0 1 10 170 -100 120 -100 120 -160 N 143 | P 4 0 1 0 -80 -120 -80 -140 -200 -140 -200 -100 N 144 | P 4 0 1 10 -40 200 -40 160 40 160 40 200 N 145 | P 4 0 1 0 80 -120 80 -140 200 -140 200 -100 N 146 | X ~ 1 300 -100 100 L 50 50 1 1 P 147 | X ~ 2 -300 -100 100 R 50 50 1 1 P 148 | X ~ 3 300 0 100 L 50 50 1 1 P 149 | X ~ 4 -300 0 100 R 50 50 1 1 P 150 | X ~ 5 300 100 100 L 50 50 1 1 P 151 | X ~ 6 -300 100 100 R 50 50 1 1 P 152 | ENDDRAW 153 | ENDDEF 154 | # 155 | # Device_CP 156 | # 157 | DEF Device_CP C 0 10 N Y 1 F N 158 | F0 "C" 25 100 50 H V L CNN 159 | F1 "Device_CP" 25 -100 50 H V L CNN 160 | F2 "" 38 -150 50 H I C CNN 161 | F3 "" 0 0 50 H I C CNN 162 | $FPLIST 163 | CP_* 164 | $ENDFPLIST 165 | DRAW 166 | S -90 20 90 40 0 1 0 N 167 | S 90 -20 -90 -40 0 1 0 F 168 | P 2 0 1 0 -70 90 -30 90 N 169 | P 2 0 1 0 -50 110 -50 70 N 170 | X ~ 1 0 150 110 D 50 50 1 1 P 171 | X ~ 2 0 -150 110 U 50 50 1 1 P 172 | ENDDRAW 173 | ENDDEF 174 | # 175 | # Device_C_Small 176 | # 177 | DEF Device_C_Small C 0 10 N N 1 F N 178 | F0 "C" 10 70 50 H V L CNN 179 | F1 "Device_C_Small" 10 -80 50 H V L CNN 180 | F2 "" 0 0 50 H I C CNN 181 | F3 "" 0 0 50 H I C CNN 182 | $FPLIST 183 | C_* 184 | $ENDFPLIST 185 | DRAW 186 | P 2 0 1 13 -60 -20 60 -20 N 187 | P 2 0 1 12 -60 20 60 20 N 188 | X ~ 1 0 100 80 D 50 50 1 1 P 189 | X ~ 2 0 -100 80 U 50 50 1 1 P 190 | ENDDRAW 191 | ENDDEF 192 | # 193 | # Device_R 194 | # 195 | DEF Device_R R 0 0 N Y 1 F N 196 | F0 "R" 80 0 50 V V C CNN 197 | F1 "Device_R" 0 0 50 V V C CNN 198 | F2 "" -70 0 50 V I C CNN 199 | F3 "" 0 0 50 H I C CNN 200 | $FPLIST 201 | R_* 202 | $ENDFPLIST 203 | DRAW 204 | S -40 -100 40 100 0 1 10 N 205 | X ~ 1 0 150 50 D 50 50 1 1 P 206 | X ~ 2 0 -150 50 U 50 50 1 1 P 207 | ENDDRAW 208 | ENDDEF 209 | # 210 | # MCU_Module_Arduino_Nano_v3.x 211 | # 212 | DEF MCU_Module_Arduino_Nano_v3.x A 0 20 Y Y 1 F N 213 | F0 "A" -400 925 50 H V L BNN 214 | F1 "MCU_Module_Arduino_Nano_v3.x" 200 -950 50 H V L TNN 215 | F2 "Module:Arduino_Nano" 0 0 50 H I C CIN 216 | F3 "" 0 0 50 H I C CNN 217 | ALIAS Arduino_Nano_v3.x 218 | $FPLIST 219 | Arduino*Nano* 220 | $ENDFPLIST 221 | DRAW 222 | S -400 900 400 -900 0 1 10 f 223 | X D1/TX 1 -500 500 100 R 50 50 1 1 B 224 | X D7 10 -500 -100 100 R 50 50 1 1 B 225 | X D8 11 -500 -200 100 R 50 50 1 1 B 226 | X D9 12 -500 -300 100 R 50 50 1 1 B 227 | X D10 13 -500 -400 100 R 50 50 1 1 B 228 | X D11 14 -500 -500 100 R 50 50 1 1 B 229 | X D12 15 -500 -600 100 R 50 50 1 1 B 230 | X D13 16 -500 -700 100 R 50 50 1 1 B 231 | X 3V3 17 100 1000 100 D 50 50 1 1 w 232 | X AREF 18 500 200 100 L 50 50 1 1 I 233 | X A0 19 500 0 100 L 50 50 1 1 B 234 | X D0/RX 2 -500 600 100 R 50 50 1 1 B 235 | X A1 20 500 -100 100 L 50 50 1 1 B 236 | X A2 21 500 -200 100 L 50 50 1 1 B 237 | X A3 22 500 -300 100 L 50 50 1 1 B 238 | X A4 23 500 -400 100 L 50 50 1 1 B 239 | X A5 24 500 -500 100 L 50 50 1 1 B 240 | X A6 25 500 -600 100 L 50 50 1 1 B 241 | X A7 26 500 -700 100 L 50 50 1 1 B 242 | X +5V 27 200 1000 100 D 50 50 1 1 w 243 | X ~RESET 28 500 600 100 L 50 50 1 1 I 244 | X GND 29 100 -1000 100 U 50 50 1 1 W 245 | X ~RESET 3 500 500 100 L 50 50 1 1 I 246 | X VIN 30 -100 1000 100 D 50 50 1 1 W 247 | X GND 4 0 -1000 100 U 50 50 1 1 W 248 | X D2 5 -500 400 100 R 50 50 1 1 B 249 | X D3 6 -500 300 100 R 50 50 1 1 B 250 | X D4 7 -500 200 100 R 50 50 1 1 B 251 | X D5 8 -500 100 100 R 50 50 1 1 B 252 | X D6 9 -500 0 100 R 50 50 1 1 B 253 | ENDDRAW 254 | ENDDEF 255 | # 256 | # power_+5V 257 | # 258 | DEF power_+5V #PWR 0 0 Y Y 1 F P 259 | F0 "#PWR" 0 -150 50 H I C CNN 260 | F1 "power_+5V" 0 140 50 H V C CNN 261 | F2 "" 0 0 50 H I C CNN 262 | F3 "" 0 0 50 H I C CNN 263 | DRAW 264 | P 2 0 1 0 -30 50 0 100 N 265 | P 2 0 1 0 0 0 0 100 N 266 | P 2 0 1 0 0 100 30 50 N 267 | X +5V 1 0 0 0 U 50 50 1 1 W N 268 | ENDDRAW 269 | ENDDEF 270 | # 271 | # power_GND 272 | # 273 | DEF power_GND #PWR 0 0 Y Y 1 F P 274 | F0 "#PWR" 0 -250 50 H I C CNN 275 | F1 "power_GND" 0 -150 50 H V C CNN 276 | F2 "" 0 0 50 H I C CNN 277 | F3 "" 0 0 50 H I C CNN 278 | DRAW 279 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 280 | X GND 1 0 0 0 D 50 50 1 1 W N 281 | ENDDRAW 282 | ENDDEF 283 | # 284 | # power_PWR_FLAG 285 | # 286 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 287 | F0 "#FLG" 0 75 50 H I C CNN 288 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 289 | F2 "" 0 0 50 H I C CNN 290 | F3 "" 0 0 50 H I C CNN 291 | DRAW 292 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 293 | X pwr 1 0 0 0 U 50 50 0 0 w 294 | ENDDRAW 295 | ENDDEF 296 | # 297 | #End Library 298 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC-rescue.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC166-alternate-ArduinoPC-rescue 5 | # 6 | DEF 74HC166-alternate-ArduinoPC-rescue U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC166-alternate-ArduinoPC-rescue" 0 -50 50 V V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X DS 1 -500 600 200 R 50 50 1 0 I 17 | X D4 10 -500 100 200 R 50 50 1 0 I 18 | X D5 11 -500 0 200 R 50 50 1 0 I 19 | X D6 12 -500 -100 200 R 50 50 1 0 I 20 | X Q7 13 500 -200 200 L 50 50 1 0 O 21 | X D7 14 -500 -200 200 R 50 50 1 0 I 22 | X ~PE 15 -500 -600 200 R 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X D0 2 -500 500 200 R 50 50 1 0 I 25 | X D1 3 -500 400 200 R 50 50 1 0 I 26 | X D2 4 -500 300 200 R 50 50 1 0 I 27 | X D3 5 -500 200 200 R 50 50 1 0 I 28 | X ~CE 6 500 -600 200 L 50 50 1 0 I 29 | X CP 7 -500 -300 200 R 50 50 1 0 I 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X ~MR 9 500 -400 200 L 50 50 1 0 I 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | #End Library 36 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (color)/ArduinoPC.bin -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | $CMP 74HC165 4 | D Shift Register 8-bit, parallel load 5 | K TTL SR SR8 6 | F http://www.ti.com/lit/gpn/sn74LS165 7 | $ENDCMP 8 | # 9 | $CMP 74HC173 10 | D 4-bit D-type Register, 3 state out 11 | K TTL REG REG4 3State DFF 12 | F http://www.ti.com/lit/gpn/sn74LS173 13 | $ENDCMP 14 | # 15 | $CMP 74HC193 16 | D Synchronous 4-bit Up/Down (2 clk) counter 17 | K TTL CNT CNT4 18 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 19 | $ENDCMP 20 | # 21 | $CMP 74LS193 22 | D Synchronous 4-bit Up/Down (2 clk) counter 23 | K TTL CNT CNT4 24 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 25 | $ENDCMP 26 | # 27 | #End Doc Library 28 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 37, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 0.6 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 7, 38 | 8, 39 | 9, 40 | 10, 41 | 11, 42 | 12, 43 | 13, 44 | 14, 45 | 15, 46 | 16, 47 | 17, 48 | 18, 49 | 19, 50 | 20, 51 | 21, 52 | 22, 53 | 23, 54 | 24, 55 | 25, 56 | 26, 57 | 27, 58 | 28, 59 | 29, 60 | 30, 61 | 32, 62 | 33, 63 | 34, 64 | 35, 65 | 36 66 | ], 67 | "visible_layers": "fffffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "meta": { 71 | "filename": "ArduinoPC.kicad_prl", 72 | "version": 3 73 | }, 74 | "project": { 75 | "files": [] 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.kicad_pro: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "design_settings": { 4 | "defaults": { 5 | "board_outline_line_width": 0.049999999999999996, 6 | "copper_line_width": 0.19999999999999998, 7 | "copper_text_italic": false, 8 | "copper_text_size_h": 1.5, 9 | "copper_text_size_v": 1.5, 10 | "copper_text_thickness": 0.3, 11 | "copper_text_upright": false, 12 | "courtyard_line_width": 0.049999999999999996, 13 | "dimension_precision": 4, 14 | "dimension_units": 3, 15 | "dimensions": { 16 | "arrow_length": 1270000, 17 | "extension_offset": 500000, 18 | "keep_text_aligned": true, 19 | "suppress_zeroes": false, 20 | "text_position": 0, 21 | "units_format": 1 22 | }, 23 | "fab_line_width": 0.09999999999999999, 24 | "fab_text_italic": false, 25 | "fab_text_size_h": 1.0, 26 | "fab_text_size_v": 1.0, 27 | "fab_text_thickness": 0.15, 28 | "fab_text_upright": false, 29 | "other_line_width": 0.09999999999999999, 30 | "other_text_italic": false, 31 | "other_text_size_h": 1.0, 32 | "other_text_size_v": 1.0, 33 | "other_text_thickness": 0.15, 34 | "other_text_upright": false, 35 | "pads": { 36 | "drill": 0.762, 37 | "height": 1.524, 38 | "width": 1.524 39 | }, 40 | "silk_line_width": 0.12, 41 | "silk_text_italic": false, 42 | "silk_text_size_h": 1.0, 43 | "silk_text_size_v": 1.0, 44 | "silk_text_thickness": 0.15, 45 | "silk_text_upright": false, 46 | "zones": { 47 | "45_degree_only": false, 48 | "min_clearance": 0.508 49 | } 50 | }, 51 | "diff_pair_dimensions": [ 52 | { 53 | "gap": 0.0, 54 | "via_gap": 0.0, 55 | "width": 0.0 56 | } 57 | ], 58 | "drc_exclusions": [], 59 | "meta": { 60 | "filename": "board_design_settings.json", 61 | "version": 2 62 | }, 63 | "rule_severities": { 64 | "annular_width": "error", 65 | "clearance": "error", 66 | "copper_edge_clearance": "error", 67 | "courtyards_overlap": "error", 68 | "diff_pair_gap_out_of_range": "error", 69 | "diff_pair_uncoupled_length_too_long": "error", 70 | "drill_out_of_range": "error", 71 | "duplicate_footprints": "warning", 72 | "extra_footprint": "warning", 73 | "footprint_type_mismatch": "error", 74 | "hole_clearance": "error", 75 | "hole_near_hole": "error", 76 | "invalid_outline": "error", 77 | "item_on_disabled_layer": "error", 78 | "items_not_allowed": "error", 79 | "length_out_of_range": "error", 80 | "malformed_courtyard": "error", 81 | "microvia_drill_out_of_range": "error", 82 | "missing_courtyard": "ignore", 83 | "missing_footprint": "warning", 84 | "net_conflict": "warning", 85 | "npth_inside_courtyard": "ignore", 86 | "padstack": "error", 87 | "pth_inside_courtyard": "ignore", 88 | "shorting_items": "error", 89 | "silk_over_copper": "warning", 90 | "silk_overlap": "warning", 91 | "skew_out_of_range": "error", 92 | "through_hole_pad_without_hole": "error", 93 | "too_many_vias": "error", 94 | "track_dangling": "warning", 95 | "track_width": "error", 96 | "tracks_crossing": "error", 97 | "unconnected_items": "error", 98 | "unresolved_variable": "error", 99 | "via_dangling": "warning", 100 | "zone_has_empty_net": "error", 101 | "zones_intersect": "error" 102 | }, 103 | "rule_severitieslegacy_courtyards_overlap": true, 104 | "rule_severitieslegacy_no_courtyard_defined": false, 105 | "rules": { 106 | "allow_blind_buried_vias": false, 107 | "allow_microvias": false, 108 | "max_error": 0.005, 109 | "min_clearance": 0.0, 110 | "min_copper_edge_clearance": 0.024999999999999998, 111 | "min_hole_clearance": 0.25, 112 | "min_hole_to_hole": 0.25, 113 | "min_microvia_diameter": 0.19999999999999998, 114 | "min_microvia_drill": 0.09999999999999999, 115 | "min_silk_clearance": 0.0, 116 | "min_through_hole_diameter": 0.3, 117 | "min_track_width": 0.19999999999999998, 118 | "min_via_annular_width": 0.049999999999999996, 119 | "min_via_diameter": 0.39999999999999997, 120 | "use_height_for_length_calcs": true 121 | }, 122 | "track_widths": [ 123 | 0.0 124 | ], 125 | "via_dimensions": [ 126 | { 127 | "diameter": 0.0, 128 | "drill": 0.0 129 | } 130 | ], 131 | "zones_allow_external_fillets": false, 132 | "zones_use_no_outline": true 133 | }, 134 | "layer_presets": [] 135 | }, 136 | "boards": [], 137 | "cvpcb": { 138 | "equivalence_files": [] 139 | }, 140 | "erc": { 141 | "erc_exclusions": [], 142 | "meta": { 143 | "version": 0 144 | }, 145 | "pin_map": [ 146 | [ 147 | 0, 148 | 0, 149 | 0, 150 | 0, 151 | 0, 152 | 0, 153 | 1, 154 | 0, 155 | 0, 156 | 0, 157 | 0, 158 | 2 159 | ], 160 | [ 161 | 0, 162 | 2, 163 | 0, 164 | 1, 165 | 0, 166 | 0, 167 | 1, 168 | 0, 169 | 2, 170 | 2, 171 | 2, 172 | 2 173 | ], 174 | [ 175 | 0, 176 | 0, 177 | 0, 178 | 0, 179 | 0, 180 | 0, 181 | 1, 182 | 0, 183 | 1, 184 | 0, 185 | 1, 186 | 2 187 | ], 188 | [ 189 | 0, 190 | 1, 191 | 0, 192 | 0, 193 | 0, 194 | 0, 195 | 1, 196 | 1, 197 | 2, 198 | 1, 199 | 1, 200 | 2 201 | ], 202 | [ 203 | 0, 204 | 0, 205 | 0, 206 | 0, 207 | 0, 208 | 0, 209 | 1, 210 | 0, 211 | 0, 212 | 0, 213 | 0, 214 | 2 215 | ], 216 | [ 217 | 0, 218 | 0, 219 | 0, 220 | 0, 221 | 0, 222 | 0, 223 | 0, 224 | 0, 225 | 0, 226 | 0, 227 | 0, 228 | 2 229 | ], 230 | [ 231 | 1, 232 | 1, 233 | 1, 234 | 1, 235 | 1, 236 | 0, 237 | 1, 238 | 1, 239 | 1, 240 | 1, 241 | 1, 242 | 2 243 | ], 244 | [ 245 | 0, 246 | 0, 247 | 0, 248 | 1, 249 | 0, 250 | 0, 251 | 1, 252 | 0, 253 | 0, 254 | 0, 255 | 0, 256 | 2 257 | ], 258 | [ 259 | 0, 260 | 2, 261 | 1, 262 | 2, 263 | 0, 264 | 0, 265 | 1, 266 | 0, 267 | 2, 268 | 2, 269 | 2, 270 | 2 271 | ], 272 | [ 273 | 0, 274 | 2, 275 | 0, 276 | 1, 277 | 0, 278 | 0, 279 | 1, 280 | 0, 281 | 2, 282 | 0, 283 | 0, 284 | 2 285 | ], 286 | [ 287 | 0, 288 | 2, 289 | 1, 290 | 1, 291 | 0, 292 | 0, 293 | 1, 294 | 0, 295 | 2, 296 | 0, 297 | 0, 298 | 2 299 | ], 300 | [ 301 | 2, 302 | 2, 303 | 2, 304 | 2, 305 | 2, 306 | 2, 307 | 2, 308 | 2, 309 | 2, 310 | 2, 311 | 2, 312 | 2 313 | ] 314 | ], 315 | "rule_severities": { 316 | "bus_definition_conflict": "error", 317 | "bus_entry_needed": "error", 318 | "bus_label_syntax": "error", 319 | "bus_to_bus_conflict": "error", 320 | "bus_to_net_conflict": "error", 321 | "different_unit_footprint": "error", 322 | "different_unit_net": "error", 323 | "duplicate_reference": "error", 324 | "duplicate_sheet_names": "error", 325 | "extra_units": "error", 326 | "global_label_dangling": "warning", 327 | "hier_label_mismatch": "error", 328 | "label_dangling": "error", 329 | "lib_symbol_issues": "warning", 330 | "multiple_net_names": "warning", 331 | "net_not_bus_member": "warning", 332 | "no_connect_connected": "warning", 333 | "no_connect_dangling": "warning", 334 | "pin_not_connected": "error", 335 | "pin_not_driven": "error", 336 | "pin_to_pin": "warning", 337 | "power_pin_not_driven": "error", 338 | "similar_labels": "warning", 339 | "unannotated": "error", 340 | "unit_value_mismatch": "error", 341 | "unresolved_variable": "error", 342 | "wire_dangling": "error" 343 | } 344 | }, 345 | "libraries": { 346 | "pinned_footprint_libs": [], 347 | "pinned_symbol_libs": [] 348 | }, 349 | "meta": { 350 | "filename": "ArduinoPC.kicad_pro", 351 | "version": 1 352 | }, 353 | "net_settings": { 354 | "classes": [ 355 | { 356 | "bus_width": 12.0, 357 | "clearance": 0.2, 358 | "diff_pair_gap": 0.25, 359 | "diff_pair_via_gap": 0.25, 360 | "diff_pair_width": 0.2, 361 | "line_style": 0, 362 | "microvia_diameter": 0.3, 363 | "microvia_drill": 0.1, 364 | "name": "Default", 365 | "pcb_color": "rgba(0, 0, 0, 0.000)", 366 | "schematic_color": "rgba(0, 0, 0, 0.000)", 367 | "track_width": 0.25, 368 | "via_diameter": 0.8, 369 | "via_drill": 0.4, 370 | "wire_width": 6.0 371 | }, 372 | { 373 | "bus_width": 12.0, 374 | "clearance": 0.2, 375 | "diff_pair_gap": 0.25, 376 | "diff_pair_via_gap": 0.25, 377 | "diff_pair_width": 0.2, 378 | "line_style": 0, 379 | "microvia_diameter": 0.3, 380 | "microvia_drill": 0.1, 381 | "name": "Power", 382 | "nets": [ 383 | "+5V", 384 | "GND" 385 | ], 386 | "pcb_color": "rgba(0, 0, 0, 0.000)", 387 | "schematic_color": "rgba(0, 0, 0, 0.000)", 388 | "track_width": 0.5, 389 | "via_diameter": 0.8, 390 | "via_drill": 0.4, 391 | "wire_width": 6.0 392 | } 393 | ], 394 | "meta": { 395 | "version": 2 396 | }, 397 | "net_colors": null 398 | }, 399 | "pcbnew": { 400 | "last_paths": { 401 | "gencad": "", 402 | "idf": "", 403 | "netlist": "ArduinoPC.net", 404 | "specctra_dsn": "ArduinoPC.dsn", 405 | "step": "", 406 | "vrml": "" 407 | }, 408 | "page_layout_descr_file": "" 409 | }, 410 | "schematic": { 411 | "annotate_start_num": 0, 412 | "drawing": { 413 | "default_line_thickness": 6.0, 414 | "default_text_size": 50.0, 415 | "field_names": [], 416 | "intersheets_ref_own_page": false, 417 | "intersheets_ref_prefix": "", 418 | "intersheets_ref_short": false, 419 | "intersheets_ref_show": false, 420 | "intersheets_ref_suffix": "", 421 | "junction_size_choice": 3, 422 | "label_size_ratio": 0.25, 423 | "pin_symbol_size": 0.0, 424 | "text_offset_ratio": 0.08 425 | }, 426 | "legacy_lib_dir": "", 427 | "legacy_lib_list": [], 428 | "meta": { 429 | "version": 1 430 | }, 431 | "net_format_name": "Pcbnew", 432 | "ngspice": { 433 | "fix_include_paths": true, 434 | "fix_passive_vals": false, 435 | "meta": { 436 | "version": 0 437 | }, 438 | "model_mode": 0, 439 | "workbook_filename": "" 440 | }, 441 | "page_layout_descr_file": "", 442 | "plot_directory": "../../../", 443 | "spice_adjust_passive_values": false, 444 | "spice_external_command": "spice \"%I\"", 445 | "subpart_first_id": 65, 446 | "subpart_id_separator": 0 447 | }, 448 | "sheets": [ 449 | [ 450 | "8fd203a8-262b-4cb2-b72e-4179e96203de", 451 | "" 452 | ] 453 | ], 454 | "text_variables": {} 455 | } 456 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC165 5 | # 6 | DEF 74HC165 U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC165" -300 -850 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 17 | X DS 10 -500 600 200 R 50 50 1 0 I 18 | X D0 11 -500 500 200 R 50 50 1 0 I 19 | X D1 12 -500 400 200 R 50 50 1 0 I 20 | X D2 13 -500 300 200 R 50 50 1 0 I 21 | X D3 14 -500 200 200 R 50 50 1 0 I 22 | X ~CE 15 500 -600 200 L 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X CP 2 -500 -300 200 R 50 50 1 0 I 25 | X D4 3 -500 100 200 R 50 50 1 0 I 26 | X D5 4 -500 0 200 R 50 50 1 0 I 27 | X D6 5 -500 -100 200 R 50 50 1 0 I 28 | X D7 6 -500 -200 200 R 50 50 1 0 I 29 | X ~Q7 7 500 500 200 L 50 50 1 0 O 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X Q7 9 500 600 200 L 50 50 1 0 O 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74HC173 36 | # 37 | DEF 74HC173 U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "74HC173" -300 -750 50 H V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -700 1 1 10 f 47 | X ~OE1 1 -500 100 200 R 50 50 1 0 I 48 | X ~E2 10 -500 -300 200 R 50 50 1 0 I 49 | X D3 11 -500 300 200 R 50 50 1 0 I 50 | X D2 12 -500 400 200 R 50 50 1 0 I 51 | X D1 13 -500 500 200 R 50 50 1 0 I 52 | X D0 14 -500 600 200 R 50 50 1 0 I 53 | X MR 15 -500 -600 200 R 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X ~OE2 2 -500 0 200 R 50 50 1 0 I 56 | X Q0 3 500 600 200 L 50 50 1 0 T 57 | X Q1 4 500 500 200 L 50 50 1 0 T 58 | X Q2 5 500 400 200 L 50 50 1 0 T 59 | X Q3 6 500 300 200 L 50 50 1 0 T 60 | X CP 7 -500 -400 200 R 50 50 1 0 I C 61 | X GND 8 0 -900 200 U 50 50 1 0 W 62 | X ~E1 9 -500 -200 200 R 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # 74HC193 67 | # 68 | DEF 74HC193 U 0 20 Y Y 1 F N 69 | F0 "U" -300 550 50 H V C CNN 70 | F1 "74HC193" 200 550 50 H V C CNN 71 | F2 "" 0 0 50 H I C CNN 72 | F3 "" 0 0 50 H I C CNN 73 | ALIAS 74LS193 74 | $FPLIST 75 | SOIC*3.9x9.9mm*P1.27mm* 76 | DIP*W7.62mm* 77 | $ENDFPLIST 78 | DRAW 79 | S -300 500 300 -600 1 1 10 f 80 | X D1 1 -500 300 200 R 50 50 1 0 I 81 | X D2 10 -500 200 200 R 50 50 1 0 I 82 | X ~PL 11 -500 -100 200 R 50 50 1 0 I 83 | X ~TCU 12 500 -100 200 L 50 50 1 0 O 84 | X ~TCD 13 500 -300 200 L 50 50 1 0 O 85 | X MR 14 -500 -500 200 R 50 50 1 0 I 86 | X D0 15 -500 400 200 R 50 50 1 0 I 87 | X VCC 16 0 700 200 D 50 50 1 0 W 88 | X Q1 2 500 300 200 L 50 50 1 0 O 89 | X Q0 3 500 400 200 L 50 50 1 0 O 90 | X CPD 4 -500 -400 200 R 50 50 1 0 I C 91 | X CPU 5 -500 -300 200 R 50 50 1 0 I C 92 | X Q2 6 500 200 200 L 50 50 1 0 O 93 | X Q3 7 500 100 200 L 50 50 1 0 O 94 | X GND 8 0 -800 200 U 50 50 1 0 W 95 | X D3 9 -500 100 200 R 50 50 1 0 I 96 | ENDDRAW 97 | ENDDEF 98 | # 99 | #End Library 100 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.pretty/Arduino_Nano.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "Arduino_Nano" (version 20211014) (generator pcbnew) 2 | (layer "F.Cu") 3 | (tedit 58ACAF70) 4 | (descr "Arduino Nano, http://www.mouser.com/pdfdocs/Gravitech_Arduino_Nano3_0.pdf") 5 | (tags "Arduino Nano") 6 | (attr through_hole) 7 | (fp_text reference "REF**" (at 7.62 -5.08) (layer "F.SilkS") 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | (tstamp 509a0f1d-6540-44cd-97e5-cff4c62d3971) 10 | ) 11 | (fp_text value "Arduino_Nano" (at 8.89 19.05 90) (layer "F.Fab") 12 | (effects (font (size 1 1) (thickness 0.15))) 13 | (tstamp 854801aa-c0f2-443a-8d31-fbf3951e74f1) 14 | ) 15 | (fp_text user "${REFERENCE}" (at 6.35 19.05 90) (layer "F.Fab") 16 | (effects (font (size 1 1) (thickness 0.15))) 17 | (tstamp 7f1073a2-03eb-4087-801d-7261c467611f) 18 | ) 19 | (fp_rect (start -1.27 -3.81) (end 16.51 41.91) (layer "F.CrtYd") (width 0.05) (fill none) (tstamp b672bcfa-46b4-4774-a40d-219dcf683060)) 20 | (fp_line (start -1.27 -2.54) (end 0 -3.81) (layer "F.Fab") (width 0.1) (tstamp 019082a9-20b0-4aa2-b92f-257722216c85)) 21 | (fp_line (start -1.27 39.37) (end -1.27 -2.54) (layer "F.Fab") (width 0.1) (tstamp 11f2556e-eb7c-4498-836c-439962ed53d3)) 22 | (fp_line (start 16.51 39.37) (end -1.27 39.37) (layer "F.Fab") (width 0.1) (tstamp 1ae71026-34c9-426b-918b-b69e7e23985f)) 23 | (fp_line (start 16.51 -3.81) (end 16.51 39.37) (layer "F.Fab") (width 0.1) (tstamp 4e577789-b767-4d96-afc4-97fce6740a64)) 24 | (fp_line (start 3.81 31.75) (end 11.43 31.75) (layer "F.Fab") (width 0.1) (tstamp 5d952b65-9eb7-416a-bb1a-f1c1a12b95c0)) 25 | (fp_line (start 0 -3.81) (end 16.51 -3.81) (layer "F.Fab") (width 0.1) (tstamp 87edb117-2064-4446-b9e8-284a940ff2eb)) 26 | (fp_line (start 11.43 41.91) (end 3.81 41.91) (layer "F.Fab") (width 0.1) (tstamp a4c60846-7b72-49d2-a172-50c1932976eb)) 27 | (fp_line (start 11.43 31.75) (end 11.43 41.91) (layer "F.Fab") (width 0.1) (tstamp e15e5427-ea59-44ff-9236-6d615eba37f8)) 28 | (fp_line (start 3.81 41.91) (end 3.81 31.75) (layer "F.Fab") (width 0.1) (tstamp f1732750-df74-4c11-902f-1fd9a74f7b0f)) 29 | (pad "1" thru_hole rect (at 0 0) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 943f5d82-070f-4392-bdbc-dd64bead03c4)) 30 | (pad "2" thru_hole oval (at 0 2.54) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 4b11ad8d-4a13-4f9d-a7b6-f2b2e0b7ca88)) 31 | (pad "3" thru_hole oval (at 0 5.08) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 0b5d93c2-38a0-4ce2-a25b-11e5ac33a698)) 32 | (pad "4" thru_hole oval (at 0 7.62) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 188b968c-fccb-43d6-93bd-e78279572d2d)) 33 | (pad "5" thru_hole oval (at 0 10.16) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp c7e63fdc-fec1-431f-8c41-2a49a3b35dc3)) 34 | (pad "6" thru_hole oval (at 0 12.7) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 4949234a-9012-4261-b022-7f36546aa874)) 35 | (pad "7" thru_hole oval (at 0 15.24) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 15062e8e-abdf-4bb9-b9ca-34c7469e17bf)) 36 | (pad "8" thru_hole oval (at 0 17.78) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp ca27bd47-503d-4590-8956-f4205e9c5ba6)) 37 | (pad "9" thru_hole oval (at 0 20.32) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 6a4fd4dd-ce22-4f4d-8377-1d39980dcb90)) 38 | (pad "10" thru_hole oval (at 0 22.86) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 04b155eb-140b-451b-9e12-f8b47bc056e1)) 39 | (pad "11" thru_hole oval (at 0 25.4) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp a2ae359f-edf9-4eb8-b2e1-76d18133e994)) 40 | (pad "12" thru_hole oval (at 0 27.94) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 1ab1e5e7-ab5e-442e-af22-375cad3981fc)) 41 | (pad "13" thru_hole oval (at 0 30.48) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp f3631f12-578d-4b5a-bcd0-62b071c31d07)) 42 | (pad "14" thru_hole oval (at 0 33.02) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp f14e6599-c96c-49f4-adc0-8ac2c4acee76)) 43 | (pad "15" thru_hole oval (at 0 35.56) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 137143ce-d539-4a7d-a57f-2e8d22cf9dd2)) 44 | (pad "16" thru_hole oval (at 15.24 35.56) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp cae4f5a0-da99-4b27-98fe-b50cee70ffb0)) 45 | (pad "17" thru_hole oval (at 15.24 33.02) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp c3392eaa-ab38-4439-b144-d0b692a25a95)) 46 | (pad "18" thru_hole oval (at 15.24 30.48) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 7baf2ce3-af7c-484a-a925-271cd03c6e67)) 47 | (pad "19" thru_hole oval (at 15.24 27.94) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 5e22c26f-eefe-4d66-a88a-69f0a82134f7)) 48 | (pad "20" thru_hole oval (at 15.24 25.4) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 4ff4948f-fd88-4d19-b01d-26f02a25fa05)) 49 | (pad "21" thru_hole oval (at 15.24 22.86) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 2f1a4b70-279f-4aee-9e45-6c0db49d76ed)) 50 | (pad "22" thru_hole oval (at 15.24 20.32) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 7c77ddcd-4402-4825-9444-06b2f2060023)) 51 | (pad "23" thru_hole oval (at 15.24 17.78) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp dab84e9e-1e2e-47d5-83e8-94979dd2c45e)) 52 | (pad "24" thru_hole oval (at 15.24 15.24) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp c6b70935-f8bc-42d0-84d5-46c1ccbf8226)) 53 | (pad "25" thru_hole oval (at 15.24 12.7) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 2c86b19e-3ef7-448d-b728-cd29df156eee)) 54 | (pad "26" thru_hole oval (at 15.24 10.16) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 41da5903-9eca-452c-83cd-618ed847c980)) 55 | (pad "27" thru_hole oval (at 15.24 7.62) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 9798aabb-0c59-44f2-9e60-668fed461849)) 56 | (pad "28" thru_hole oval (at 15.24 5.08) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 3f909fc8-bf05-47eb-bb60-ea2163559073)) 57 | (pad "29" thru_hole oval (at 15.24 2.54) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 5ee4beca-344f-4c9f-9765-02e7588136af)) 58 | (pad "30" thru_hole oval (at 15.24 0) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 59a4cc04-701b-4376-9005-58bf36a059d4)) 59 | (model "${KICAD6_3DMODEL_DIR}/Module.3dshapes/Arduino_Nano_WithMountingHoles.wrl" 60 | (offset (xyz 0 0 0)) 61 | (scale (xyz 1 1 1)) 62 | (rotate (xyz 0 0 0)) 63 | ) 64 | ) 65 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.pretty/FP_MINI_DIN_6_PS2.kicad_mod: -------------------------------------------------------------------------------- 1 | (module FP_MINI_DIN_6_PS2 (layer F.Cu) (tedit 5F735A85) 2 | (fp_text reference REF** (at -5.08 -0.97) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value FP_MINI_DIN_6_PS2 (at 0 14.27) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 7 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -7 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -7 0) (end -7 13.2) (layer F.Fab) (width 0.12)) 11 | (fp_line (start -7 13.2) (end 7 13.2) (layer F.Fab) (width 0.12)) 12 | (fp_line (start 7 0) (end 7 13.2) (layer F.Fab) (width 0.12)) 13 | (fp_line (start -3.81 0) (end -3.81 1.57) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -3.81 1.57) (end 3.81 1.57) (layer F.Fab) (width 0.12)) 15 | (fp_line (start 3.81 1.57) (end 3.81 0) (layer F.Fab) (width 0.12)) 16 | (pad 2 thru_hole circle (at 1.3 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 17 | (pad "" thru_hole circle (at 0 5) (size 4 4) (drill 2.4) (layers *.Cu *.Mask)) 18 | (pad "" thru_hole circle (at 6.75 5.8) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 19 | (pad "" thru_hole circle (at -6.75 5.8) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 20 | (pad 1 thru_hole circle (at -1.3 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 21 | (pad 3 thru_hole circle (at -3.35 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 22 | (pad 4 thru_hole circle (at 3.35 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 23 | (pad 6 thru_hole circle (at 3.35 11.3) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 24 | (pad 5 thru_hole circle (at -3.35 11.3) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 25 | ) 26 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.pretty/VGA DSUB15HD_female.kicad_mod: -------------------------------------------------------------------------------- 1 | (module "VGA DSUB15HD_female" (layer F.Cu) (tedit 5F735B8C) 2 | (fp_text reference REF** (at 18 20) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value "VGA DSUB15HD_female" (at 0 -8) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 16 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -16 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -16 0) (end -16 16.1) (layer F.Fab) (width 0.12)) 11 | (fp_line (start 16 0) (end 16 16.1) (layer F.Fab) (width 0.12)) 12 | (fp_line (start -16 16.1) (end 16 16.1) (layer F.Fab) (width 0.12)) 13 | (fp_line (start 8.1 22) (end 8.1 16.1) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -8.1 22) (end -8.1 16.1) (layer F.Fab) (width 0.12)) 15 | (fp_line (start -15 16.1) (end -15 20.6) (layer F.Fab) (width 0.12)) 16 | (fp_line (start -15 20.6) (end -9 20.6) (layer F.Fab) (width 0.12)) 17 | (fp_line (start -9 20.6) (end -9 16.1) (layer F.Fab) (width 0.12)) 18 | (fp_line (start 15 16.1) (end 15 20.6) (layer F.Fab) (width 0.12)) 19 | (fp_line (start 15 20.6) (end 9 20.6) (layer F.Fab) (width 0.12)) 20 | (fp_line (start 9 20.6) (end 9 16.1) (layer F.Fab) (width 0.12)) 21 | (fp_line (start 8.1 22) (end -8.1 22) (layer F.Fab) (width 0.12)) 22 | (pad 3 thru_hole circle (at 0 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 23 | (pad 2 thru_hole circle (at 2.25 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 24 | (pad 1 thru_hole circle (at 4.5 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 25 | (pad 4 thru_hole circle (at -2.25 2.25) (size 1.7 1.7) (drill 0.8) (layers *.Cu *.Mask)) 26 | (pad 5 thru_hole circle (at -4.5 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 27 | (pad 11 thru_hole circle (at 4.5 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 28 | (pad 12 thru_hole circle (at 2.25 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 29 | (pad 14 thru_hole circle (at -2.25 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 30 | (pad 15 thru_hole circle (at -4.5 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 31 | (pad 13 thru_hole circle (at 0 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 32 | (pad 6 thru_hole circle (at 5.625 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 33 | (pad 7 thru_hole circle (at 3.375 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 34 | (pad 9 thru_hole circle (at -1.125 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 35 | (pad 10 thru_hole circle (at -3.375 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 36 | (pad 8 thru_hole circle (at 1.125 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 37 | (pad "" thru_hole circle (at 12.45 4.75) (size 5 5) (drill 3) (layers *.Cu *.Mask)) 38 | (pad "" thru_hole circle (at -12.45 4.75) (size 5 5) (drill 3) (layers *.Cu *.Mask)) 39 | ) 40 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.pro: -------------------------------------------------------------------------------- 1 | update=15/11/2020 16:39:39 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [schematic_editor] 16 | version=1 17 | PageLayoutDescrFile= 18 | PlotDirectoryName= 19 | SubpartIdSeparator=0 20 | SubpartFirstId=65 21 | NetFmtName=Pcbnew 22 | SpiceAjustPassiveValues=0 23 | LabSize=50 24 | ERC_TestSimilarLabels=1 25 | [pcbnew] 26 | version=1 27 | PageLayoutDescrFile= 28 | LastNetListRead=ArduinoPC.net 29 | CopperLayerCount=2 30 | BoardThickness=1.6 31 | AllowMicroVias=0 32 | AllowBlindVias=0 33 | RequireCourtyardDefinitions=0 34 | ProhibitOverlappingCourtyards=1 35 | MinTrackWidth=0.2 36 | MinViaDiameter=0.4 37 | MinViaDrill=0.3 38 | MinMicroViaDiameter=0.2 39 | MinMicroViaDrill=0.09999999999999999 40 | MinHoleToHole=0.25 41 | TrackWidth1=0.25 42 | ViaDiameter1=0.8 43 | ViaDrill1=0.4 44 | dPairWidth1=0.2 45 | dPairGap1=0.25 46 | dPairViaGap1=0.25 47 | SilkLineWidth=0.12 48 | SilkTextSizeV=1 49 | SilkTextSizeH=1 50 | SilkTextSizeThickness=0.15 51 | SilkTextItalic=0 52 | SilkTextUpright=1 53 | CopperLineWidth=0.2 54 | CopperTextSizeV=1.5 55 | CopperTextSizeH=1.5 56 | CopperTextThickness=0.3 57 | CopperTextItalic=0 58 | CopperTextUpright=1 59 | EdgeCutLineWidth=0.05 60 | CourtyardLineWidth=0.05 61 | OthersLineWidth=0.15 62 | OthersTextSizeV=1 63 | OthersTextSizeH=1 64 | OthersTextSizeThickness=0.15 65 | OthersTextItalic=0 66 | OthersTextUpright=1 67 | SolderMaskClearance=0.051 68 | SolderMaskMinWidth=0.25 69 | SolderPasteClearance=0 70 | SolderPasteRatio=-0 71 | [pcbnew/Layer.F.Cu] 72 | Name=F.Cu 73 | Type=0 74 | Enabled=1 75 | [pcbnew/Layer.In1.Cu] 76 | Name=In1.Cu 77 | Type=0 78 | Enabled=0 79 | [pcbnew/Layer.In2.Cu] 80 | Name=In2.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In3.Cu] 84 | Name=In3.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In4.Cu] 88 | Name=In4.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In5.Cu] 92 | Name=In5.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In6.Cu] 96 | Name=In6.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In7.Cu] 100 | Name=In7.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In8.Cu] 104 | Name=In8.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In9.Cu] 108 | Name=In9.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In10.Cu] 112 | Name=In10.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In11.Cu] 116 | Name=In11.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In12.Cu] 120 | Name=In12.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In13.Cu] 124 | Name=In13.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In14.Cu] 128 | Name=In14.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In15.Cu] 132 | Name=In15.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In16.Cu] 136 | Name=In16.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In17.Cu] 140 | Name=In17.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In18.Cu] 144 | Name=In18.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In19.Cu] 148 | Name=In19.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In20.Cu] 152 | Name=In20.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In21.Cu] 156 | Name=In21.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In22.Cu] 160 | Name=In22.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In23.Cu] 164 | Name=In23.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In24.Cu] 168 | Name=In24.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In25.Cu] 172 | Name=In25.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In26.Cu] 176 | Name=In26.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In27.Cu] 180 | Name=In27.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In28.Cu] 184 | Name=In28.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In29.Cu] 188 | Name=In29.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.In30.Cu] 192 | Name=In30.Cu 193 | Type=0 194 | Enabled=0 195 | [pcbnew/Layer.B.Cu] 196 | Name=B.Cu 197 | Type=0 198 | Enabled=1 199 | [pcbnew/Layer.B.Adhes] 200 | Enabled=1 201 | [pcbnew/Layer.F.Adhes] 202 | Enabled=1 203 | [pcbnew/Layer.B.Paste] 204 | Enabled=1 205 | [pcbnew/Layer.F.Paste] 206 | Enabled=1 207 | [pcbnew/Layer.B.SilkS] 208 | Enabled=1 209 | [pcbnew/Layer.F.SilkS] 210 | Enabled=1 211 | [pcbnew/Layer.B.Mask] 212 | Enabled=1 213 | [pcbnew/Layer.F.Mask] 214 | Enabled=1 215 | [pcbnew/Layer.Dwgs.User] 216 | Enabled=1 217 | [pcbnew/Layer.Cmts.User] 218 | Enabled=1 219 | [pcbnew/Layer.Eco1.User] 220 | Enabled=1 221 | [pcbnew/Layer.Eco2.User] 222 | Enabled=1 223 | [pcbnew/Layer.Edge.Cuts] 224 | Enabled=1 225 | [pcbnew/Layer.Margin] 226 | Enabled=1 227 | [pcbnew/Layer.B.CrtYd] 228 | Enabled=1 229 | [pcbnew/Layer.F.CrtYd] 230 | Enabled=1 231 | [pcbnew/Layer.B.Fab] 232 | Enabled=1 233 | [pcbnew/Layer.F.Fab] 234 | Enabled=1 235 | [pcbnew/Layer.Rescue] 236 | Enabled=0 237 | [pcbnew/Netclasses] 238 | [pcbnew/Netclasses/Default] 239 | Name=Default 240 | Clearance=0.2 241 | TrackWidth=0.25 242 | ViaDiameter=0.8 243 | ViaDrill=0.4 244 | uViaDiameter=0.3 245 | uViaDrill=0.1 246 | dPairWidth=0.2 247 | dPairGap=0.25 248 | dPairViaGap=0.25 249 | [pcbnew/Netclasses/1] 250 | Name=Power 251 | Clearance=0.2 252 | TrackWidth=0.5 253 | ViaDiameter=0.8 254 | ViaDrill=0.4 255 | uViaDiameter=0.3 256 | uViaDrill=0.1 257 | dPairWidth=0.2 258 | dPairGap=0.25 259 | dPairViaGap=0.25 260 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/ArduinoPC.rules: -------------------------------------------------------------------------------- 1 | 2 | (rules PCB ArduinoPC 3 | (snap_angle 4 | fortyfive_degree 5 | ) 6 | (autoroute_settings 7 | (fanout off) 8 | (eu.mihosoft.freerouting.autoroute on) 9 | (postroute on) 10 | (vias on) 11 | (via_costs 300) 12 | (plane_via_costs 5) 13 | (start_ripup_costs 100) 14 | (start_pass_no 976) 15 | (layer_rule F.Cu 16 | (active on) 17 | (preferred_direction horizontal) 18 | (preferred_direction_trace_costs 1.0) 19 | (against_preferred_direction_trace_costs 2.2) 20 | ) 21 | (layer_rule B.Cu 22 | (active on) 23 | (preferred_direction vertical) 24 | (preferred_direction_trace_costs 1.0) 25 | (against_preferred_direction_trace_costs 1.8) 26 | ) 27 | ) 28 | (rule 29 | (width 250.0) 30 | (clear 200.2) 31 | (clear 125.0 (type smd_to_turn_gap)) 32 | (clear 50.0 (type smd_smd)) 33 | ) 34 | (padstack "Via[0-1]_800:400_um" 35 | (shape 36 | (circle F.Cu 800.0 0.0 0.0) 37 | ) 38 | (shape 39 | (circle B.Cu 800.0 0.0 0.0) 40 | ) 41 | (attach off) 42 | ) 43 | (via 44 | "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default 45 | ) 46 | (via 47 | "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" "kicad_default" 48 | ) 49 | (via 50 | "Via[0-1]_800:400_um-Power" "Via[0-1]_800:400_um" Power 51 | ) 52 | (via_rule 53 | default "Via[0-1]_800:400_um" 54 | ) 55 | (via_rule 56 | "kicad_default" "Via[0-1]_800:400_um-kicad_default" 57 | ) 58 | (via_rule 59 | Power "Via[0-1]_800:400_um-Power" 60 | ) 61 | (class default 62 | "Net-(A1-Pad1)" "Net-(A1-Pad2)" "Net-(A1-Pad19)" "Net-(A1-Pad20)" "Net-(A1-Pad5)" "unconnected-(A1-Pad12)" "Net-(A1-Pad6)" "Net-(A1-Pad21)" 63 | "Net-(A1-Pad7)" "Net-(A1-Pad22)" "Net-(A1-Pad8)" "Net-(A1-Pad23)" "Net-(A1-Pad9)" "Net-(A1-Pad10)" "Net-(A1-Pad11)" "Net-(A1-Pad24)" 64 | "Net-(A1-Pad13)" "Net-(A1-Pad14)" "Net-(A1-Pad15)" "Net-(J1-Pad1)" "Net-(J1-Pad2)" "Net-(J1-Pad3)" "unconnected-(J1-Pad4)" "unconnected-(A1-Pad3)" 65 | "unconnected-(A1-Pad16)" "unconnected-(A1-Pad17)" "unconnected-(A1-Pad18)" "unconnected-(A1-Pad25)" "unconnected-(A1-Pad26)" "unconnected-(A1-Pad28)" "unconnected-(A1-Pad30)" "unconnected-(J1-Pad9)" 66 | "unconnected-(J1-Pad11)" "unconnected-(J1-Pad12)" "Net-(J1-Pad13)" "Net-(J1-Pad14)" "unconnected-(J1-Pad15)" "unconnected-(J2-Pad2)" "unconnected-(J2-Pad6)" "Net-(R1-Pad1)" 67 | "Net-(R4-Pad2)" "Net-(R5-Pad2)" "Net-(R6-Pad2)" "Net-(U1-Pad13)" 68 | (clearance_class default) 69 | (via_rule default) 70 | (rule 71 | (width 250.0) 72 | ) 73 | (circuit 74 | (use_layer F.Cu B.Cu) 75 | ) 76 | ) 77 | (class "kicad_default" 78 | (clearance_class "kicad_default") 79 | (via_rule kicad_default) 80 | (rule 81 | (width 250.0) 82 | ) 83 | (circuit 84 | (use_layer F.Cu B.Cu) 85 | ) 86 | ) 87 | (class Power 88 | GND +5V 89 | (clearance_class Power) 90 | (via_rule Power) 91 | (rule 92 | (width 500.0) 93 | ) 94 | (circuit 95 | (use_layer F.Cu B.Cu) 96 | ) 97 | ) 98 | ) -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/alternate.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/alternate.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC165 5 | # 6 | DEF 74HC165 U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC165" -300 -850 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 17 | X DS 10 -500 600 200 R 50 50 1 0 I 18 | X D0 11 -500 500 200 R 50 50 1 0 I 19 | X D1 12 -500 400 200 R 50 50 1 0 I 20 | X D2 13 -500 300 200 R 50 50 1 0 I 21 | X D3 14 -500 200 200 R 50 50 1 0 I 22 | X ~CE 15 500 -600 200 L 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X CP 2 -500 -300 200 R 50 50 1 0 I 25 | X D4 3 -500 100 200 R 50 50 1 0 I 26 | X D5 4 -500 0 200 R 50 50 1 0 I 27 | X D6 5 -500 -100 200 R 50 50 1 0 I 28 | X D7 6 -500 -200 200 R 50 50 1 0 I 29 | X ~Q7 7 500 500 200 L 50 50 1 0 O 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X Q7 9 500 600 200 L 50 50 1 0 O 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74HC166 36 | # 37 | DEF 74HC166 U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "74HC166" 0 -50 50 V V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -800 1 1 10 f 47 | X DS 1 -500 600 200 R 50 50 1 0 I 48 | X D4 10 -500 100 200 R 50 50 1 0 I 49 | X D5 11 -500 0 200 R 50 50 1 0 I 50 | X D6 12 -500 -100 200 R 50 50 1 0 I 51 | X Q7 13 500 600 200 L 50 50 1 0 O 52 | X D7 14 -500 -200 200 R 50 50 1 0 I 53 | X ~PE 15 500 -500 200 L 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X D0 2 -500 500 200 R 50 50 1 0 I 56 | X D1 3 -500 400 200 R 50 50 1 0 I 57 | X D2 4 -500 300 200 R 50 50 1 0 I 58 | X D3 5 -500 200 200 R 50 50 1 0 I 59 | X ~CE 6 500 -300 200 L 50 50 1 0 I 60 | X CP 7 500 -700 200 L 50 50 1 0 I 61 | X GND 8 0 -1000 200 U 50 50 1 0 W 62 | X ~MR 9 500 -100 200 L 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # 74HC173 67 | # 68 | DEF 74HC173 U 0 40 Y Y 1 L N 69 | F0 "U" -300 750 50 H V C CNN 70 | F1 "74HC173" -300 -750 50 H V C CNN 71 | F2 "" 0 0 50 H I C CNN 72 | F3 "" 0 0 50 H I C CNN 73 | $FPLIST 74 | DIP?16* 75 | $ENDFPLIST 76 | DRAW 77 | S -300 700 300 -700 1 1 10 f 78 | X ~OE1 1 -500 100 200 R 50 50 1 0 I 79 | X ~E2 10 -500 -300 200 R 50 50 1 0 I 80 | X D3 11 -500 300 200 R 50 50 1 0 I 81 | X D2 12 -500 400 200 R 50 50 1 0 I 82 | X D1 13 -500 500 200 R 50 50 1 0 I 83 | X D0 14 -500 600 200 R 50 50 1 0 I 84 | X MR 15 -500 -600 200 R 50 50 1 0 I 85 | X VCC 16 0 900 200 D 50 50 1 0 W 86 | X ~OE2 2 -500 0 200 R 50 50 1 0 I 87 | X Q0 3 500 600 200 L 50 50 1 0 T 88 | X Q1 4 500 500 200 L 50 50 1 0 T 89 | X Q2 5 500 400 200 L 50 50 1 0 T 90 | X Q3 6 500 300 200 L 50 50 1 0 T 91 | X CP 7 -500 -400 200 R 50 50 1 0 I C 92 | X GND 8 0 -900 200 U 50 50 1 0 W 93 | X ~E1 9 -500 -200 200 R 50 50 1 0 I 94 | ENDDRAW 95 | ENDDEF 96 | # 97 | # 74HC193 98 | # 99 | DEF 74HC193 U 0 20 Y Y 1 F N 100 | F0 "U" -300 550 50 H V C CNN 101 | F1 "74HC193" 200 550 50 H V C CNN 102 | F2 "" 0 0 50 H I C CNN 103 | F3 "" 0 0 50 H I C CNN 104 | ALIAS 74LS193 105 | $FPLIST 106 | SOIC*3.9x9.9mm*P1.27mm* 107 | DIP*W7.62mm* 108 | $ENDFPLIST 109 | DRAW 110 | S -300 500 300 -600 1 1 10 f 111 | X D1 1 -500 300 200 R 50 50 1 0 I 112 | X D2 10 -500 200 200 R 50 50 1 0 I 113 | X ~PL 11 -500 -100 200 R 50 50 1 0 I 114 | X ~TCU 12 500 -100 200 L 50 50 1 0 O 115 | X ~TCD 13 500 -300 200 L 50 50 1 0 O 116 | X MR 14 -500 -500 200 R 50 50 1 0 I 117 | X D0 15 -500 400 200 R 50 50 1 0 I 118 | X VCC 16 0 700 200 D 50 50 1 0 W 119 | X Q1 2 500 300 200 L 50 50 1 0 O 120 | X Q0 3 500 400 200 L 50 50 1 0 O 121 | X CPD 4 -500 -400 200 R 50 50 1 0 I C 122 | X CPU 5 -500 -300 200 R 50 50 1 0 I C 123 | X Q2 6 500 200 200 L 50 50 1 0 O 124 | X Q3 7 500 100 200 L 50 50 1 0 O 125 | X GND 8 0 -800 200 U 50 50 1 0 W 126 | X D3 9 -500 100 200 R 50 50 1 0 I 127 | ENDDRAW 128 | ENDDEF 129 | # 130 | # ATmega48PV-10PU 131 | # 132 | DEF ATmega48PV-10PU U 0 20 Y Y 1 F N 133 | F0 "U" -500 1450 50 H V L BNN 134 | F1 "ATmega48PV-10PU" 100 -1450 50 H V L TNN 135 | F2 "Package_DIP:DIP-28_W7.62mm" 0 0 50 H I C CIN 136 | F3 "" 0 0 50 H I C CNN 137 | ALIAS ATmega48P-20PU ATmega48A-PU ATmega48PA-PU ATmega88PV-10PU ATmega88P-20PU ATmega88A-PU ATmega88PA-PU ATmega168PV-10PU ATmega168P-20PU ATmega168A-PU ATmega168PA-PU ATmega328-PU ATmega328P-PU 138 | $FPLIST 139 | DIP*W7.62mm* 140 | $ENDFPLIST 141 | DRAW 142 | S -500 -1400 500 1400 0 1 10 f 143 | X ~RESET~/PC6 1 600 -300 100 L 50 50 1 1 B 144 | X XTAL2/PB7 10 600 500 100 L 50 50 1 1 B 145 | X PD5 11 600 -1000 100 L 50 50 1 1 B 146 | X PD6 12 600 -1100 100 L 50 50 1 1 B 147 | X PD7 13 600 -1200 100 L 50 50 1 1 B 148 | X PB0 14 600 1200 100 L 50 50 1 1 B 149 | X PB1 15 600 1100 100 L 50 50 1 1 B 150 | X PB2 16 600 1000 100 L 50 50 1 1 B 151 | X PB3 17 600 900 100 L 50 50 1 1 B 152 | X PB4 18 600 800 100 L 50 50 1 1 B 153 | X PB5 19 600 700 100 L 50 50 1 1 B 154 | X PD0 2 600 -500 100 L 50 50 1 1 B 155 | X AVCC 20 100 1500 100 D 50 50 1 1 W 156 | X AREF 21 -600 1200 100 R 50 50 1 1 P 157 | X GND 22 0 -1500 100 U 50 50 1 1 P 158 | X PC0 23 600 300 100 L 50 50 1 1 B 159 | X PC1 24 600 200 100 L 50 50 1 1 B 160 | X PC2 25 600 100 100 L 50 50 1 1 B 161 | X PC3 26 600 0 100 L 50 50 1 1 B 162 | X PC4 27 600 -100 100 L 50 50 1 1 B 163 | X PC5 28 600 -200 100 L 50 50 1 1 B 164 | X PD1 3 600 -600 100 L 50 50 1 1 B 165 | X PD2 4 600 -700 100 L 50 50 1 1 B 166 | X PD3 5 600 -800 100 L 50 50 1 1 B 167 | X PD4 6 600 -900 100 L 50 50 1 1 B 168 | X VCC 7 0 1500 100 D 50 50 1 1 W 169 | X GND 8 -100 -1500 100 U 50 50 1 1 W 170 | X XTAL1/PB6 9 600 600 100 L 50 50 1 1 B 171 | ENDDRAW 172 | ENDDEF 173 | # 174 | #End Library 175 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name "ArduinoPC")(type "KiCad")(uri "${KIPRJMOD}/ArduinoPC.pretty")(options "")(descr "")) 3 | (lib (name "logo")(type "KiCad")(uri "${KIPRJMOD}/logo.pretty")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /Rev2/KiCAD (color)/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name ArduinoPC)(type Legacy)(uri ${KIPRJMOD}/ArduinoPC.lib)(options "")(descr "")) 3 | (lib (name alternate)(type Legacy)(uri ${KIPRJMOD}/alternate.lib)(options "")(descr "")) 4 | (lib (name ArduinoPC-rescue)(type Legacy)(uri ${KIPRJMOD}/ArduinoPC-rescue.lib)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-30_172826.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-30_172826.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-30_194143.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-30_194143.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-30_200144.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-30_200144.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-31_111949.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-31_111949.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-31_122102.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (monochrome)/ArduinoPC-backups/ArduinoPC-2024-03-31_122102.zip -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74xx_74HC164 5 | # 6 | DEF 74xx_74HC164 U 0 20 Y Y 1 F N 7 | F0 "U" 75 -550 50 H V L CNN 8 | F1 "74xx_74HC164" 75 -650 50 H V L CNN 9 | F2 "" 900 -300 50 H I C CNN 10 | F3 "" 900 -300 50 H I C CNN 11 | ALIAS 74HCT164 12 | $FPLIST 13 | SOIC*3.9x8.7*P1.27mm* 14 | ?SSOP*P0.65mm* 15 | $ENDFPLIST 16 | DRAW 17 | S 300 400 -300 -500 0 1 10 f 18 | X DSA 1 -400 0 100 R 50 50 1 1 I 19 | X Q4 10 400 -100 100 L 50 50 1 1 O 20 | X Q5 11 400 -200 100 L 50 50 1 1 O 21 | X Q6 12 400 -300 100 L 50 50 1 1 O 22 | X Q7 13 400 -400 100 L 50 50 1 1 O 23 | X VCC 14 0 500 100 D 50 50 1 1 W 24 | X DSB 2 -400 -100 100 R 50 50 1 1 I 25 | X Q0 3 400 300 100 L 50 50 1 1 O 26 | X Q1 4 400 200 100 L 50 50 1 1 O 27 | X Q2 5 400 100 100 L 50 50 1 1 O 28 | X Q3 6 400 0 100 L 50 50 1 1 O 29 | X GND 7 0 -600 100 U 50 50 1 1 W 30 | X CP 8 -400 -300 100 R 50 50 1 1 I 31 | X ~MR 9 -400 200 100 R 50 50 1 1 I 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # ArduinoPC-rescue_74HC166-alternate-ArduinoPC-rescue 36 | # 37 | DEF ArduinoPC-rescue_74HC166-alternate-ArduinoPC-rescue U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "ArduinoPC-rescue_74HC166-alternate-ArduinoPC-rescue" 0 -50 50 V V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -800 1 1 10 f 47 | X DS 1 -500 600 200 R 50 50 1 0 I 48 | X D4 10 -500 100 200 R 50 50 1 0 I 49 | X D5 11 -500 0 200 R 50 50 1 0 I 50 | X D6 12 -500 -100 200 R 50 50 1 0 I 51 | X Q7 13 500 -200 200 L 50 50 1 0 O 52 | X D7 14 -500 -200 200 R 50 50 1 0 I 53 | X ~PE 15 -500 -600 200 R 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X D0 2 -500 500 200 R 50 50 1 0 I 56 | X D1 3 -500 400 200 R 50 50 1 0 I 57 | X D2 4 -500 300 200 R 50 50 1 0 I 58 | X D3 5 -500 200 200 R 50 50 1 0 I 59 | X ~CE 6 500 -600 200 L 50 50 1 0 I 60 | X CP 7 -500 -300 200 R 50 50 1 0 I 61 | X GND 8 0 -1000 200 U 50 50 1 0 W 62 | X ~MR 9 500 -400 200 L 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # Connector_DB15_Female_HighDensity 67 | # 68 | DEF Connector_DB15_Female_HighDensity J 0 40 Y N 1 F N 69 | F0 "J" 0 850 50 H V C CNN 70 | F1 "Connector_DB15_Female_HighDensity" 0 750 50 H V C CNN 71 | F2 "" -950 400 50 H I C CNN 72 | F3 "" -950 400 50 H I C CNN 73 | $FPLIST 74 | DSUB*Female* 75 | $ENDFPLIST 76 | DRAW 77 | C -75 -400 25 0 1 0 N 78 | C -75 -200 25 0 1 0 N 79 | C -75 0 25 0 1 0 N 80 | C -75 200 25 0 1 0 N 81 | C -75 400 25 0 1 0 N 82 | C 0 -300 25 0 1 0 N 83 | C 0 -100 25 0 1 0 N 84 | C 0 100 25 0 1 0 N 85 | C 0 300 25 0 1 0 N 86 | C 0 500 25 0 1 0 N 87 | C 75 -400 25 0 1 0 N 88 | C 75 -200 25 0 1 0 N 89 | C 75 0 25 0 1 0 N 90 | C 75 200 25 0 1 0 N 91 | C 75 400 25 0 1 0 N 92 | P 2 0 1 0 -125 300 -25 300 N 93 | P 2 0 1 0 -25 -300 -125 -300 N 94 | P 2 0 1 0 -25 -100 -125 -100 N 95 | P 2 0 1 0 -25 100 -125 100 N 96 | P 2 0 1 0 -25 500 -125 500 N 97 | P 5 0 1 10 -150 700 -150 -600 150 -500 150 600 -150 700 f 98 | X ~ 1 -300 400 200 R 50 50 1 1 P 99 | X ~ 10 -300 -300 200 R 50 50 1 1 P 100 | X ~ 11 300 400 200 L 50 50 1 1 P 101 | X ~ 12 300 200 200 L 50 50 1 1 P 102 | X ~ 13 300 0 200 L 50 50 1 1 P 103 | X ~ 14 300 -200 200 L 50 50 1 1 P 104 | X ~ 15 300 -400 200 L 50 50 1 1 P 105 | X ~ 2 -300 200 200 R 50 50 1 1 P 106 | X ~ 3 -300 0 200 R 50 50 1 1 P 107 | X ~ 4 -300 -200 200 R 50 50 1 1 P 108 | X ~ 5 -300 -400 200 R 50 50 1 1 P 109 | X ~ 6 -300 500 200 R 50 50 1 1 P 110 | X ~ 7 -300 300 200 R 50 50 1 1 P 111 | X ~ 8 -300 100 200 R 50 50 1 1 P 112 | X ~ 9 -300 -100 200 R 50 50 1 1 P 113 | ENDDRAW 114 | ENDDEF 115 | # 116 | # Connector_Mini-DIN-6 117 | # 118 | DEF Connector_Mini-DIN-6 J 0 40 Y Y 1 F N 119 | F0 "J" 0 250 50 H V C CNN 120 | F1 "Connector_Mini-DIN-6" 0 -250 50 H V C CNN 121 | F2 "" 0 0 50 H I C CNN 122 | F3 "" 0 0 50 H I C CNN 123 | $FPLIST 124 | MINI?DIN* 125 | $ENDFPLIST 126 | DRAW 127 | A 0 0 200 -1269 -531 0 1 10 N -120 -160 120 -160 128 | A 2 4 200 1021 -1488 0 1 10 N -40 200 -170 -100 129 | A 2 5 198 -320 790 0 1 10 N 170 -100 40 200 130 | C -130 0 20 0 1 0 N 131 | C -80 -100 20 0 1 0 N 132 | C -80 100 20 0 1 0 N 133 | C 80 -100 20 0 1 0 N 134 | C 90 100 20 0 1 0 N 135 | C 130 0 20 0 1 0 N 136 | S -30 100 30 0 0 1 0 F 137 | P 2 0 1 0 -150 0 -200 0 N 138 | P 2 0 1 0 -100 100 -200 100 N 139 | P 2 0 1 0 110 100 200 100 N 140 | P 2 0 1 0 200 0 150 0 N 141 | P 3 0 1 10 -170 -100 -120 -100 -120 -160 N 142 | P 3 0 1 10 170 -100 120 -100 120 -160 N 143 | P 4 0 1 0 -80 -120 -80 -140 -200 -140 -200 -100 N 144 | P 4 0 1 10 -40 200 -40 160 40 160 40 200 N 145 | P 4 0 1 0 80 -120 80 -140 200 -140 200 -100 N 146 | X ~ 1 300 -100 100 L 50 50 1 1 P 147 | X ~ 2 -300 -100 100 R 50 50 1 1 P 148 | X ~ 3 300 0 100 L 50 50 1 1 P 149 | X ~ 4 -300 0 100 R 50 50 1 1 P 150 | X ~ 5 300 100 100 L 50 50 1 1 P 151 | X ~ 6 -300 100 100 R 50 50 1 1 P 152 | ENDDRAW 153 | ENDDEF 154 | # 155 | # Device_CP 156 | # 157 | DEF Device_CP C 0 10 N Y 1 F N 158 | F0 "C" 25 100 50 H V L CNN 159 | F1 "Device_CP" 25 -100 50 H V L CNN 160 | F2 "" 38 -150 50 H I C CNN 161 | F3 "" 0 0 50 H I C CNN 162 | $FPLIST 163 | CP_* 164 | $ENDFPLIST 165 | DRAW 166 | S -90 20 90 40 0 1 0 N 167 | S 90 -20 -90 -40 0 1 0 F 168 | P 2 0 1 0 -70 90 -30 90 N 169 | P 2 0 1 0 -50 110 -50 70 N 170 | X ~ 1 0 150 110 D 50 50 1 1 P 171 | X ~ 2 0 -150 110 U 50 50 1 1 P 172 | ENDDRAW 173 | ENDDEF 174 | # 175 | # Device_C_Small 176 | # 177 | DEF Device_C_Small C 0 10 N N 1 F N 178 | F0 "C" 10 70 50 H V L CNN 179 | F1 "Device_C_Small" 10 -80 50 H V L CNN 180 | F2 "" 0 0 50 H I C CNN 181 | F3 "" 0 0 50 H I C CNN 182 | $FPLIST 183 | C_* 184 | $ENDFPLIST 185 | DRAW 186 | P 2 0 1 13 -60 -20 60 -20 N 187 | P 2 0 1 12 -60 20 60 20 N 188 | X ~ 1 0 100 80 D 50 50 1 1 P 189 | X ~ 2 0 -100 80 U 50 50 1 1 P 190 | ENDDRAW 191 | ENDDEF 192 | # 193 | # Device_R 194 | # 195 | DEF Device_R R 0 0 N Y 1 F N 196 | F0 "R" 80 0 50 V V C CNN 197 | F1 "Device_R" 0 0 50 V V C CNN 198 | F2 "" -70 0 50 V I C CNN 199 | F3 "" 0 0 50 H I C CNN 200 | $FPLIST 201 | R_* 202 | $ENDFPLIST 203 | DRAW 204 | S -40 -100 40 100 0 1 10 N 205 | X ~ 1 0 150 50 D 50 50 1 1 P 206 | X ~ 2 0 -150 50 U 50 50 1 1 P 207 | ENDDRAW 208 | ENDDEF 209 | # 210 | # MCU_Module_Arduino_Nano_v3.x 211 | # 212 | DEF MCU_Module_Arduino_Nano_v3.x A 0 20 Y Y 1 F N 213 | F0 "A" -400 925 50 H V L BNN 214 | F1 "MCU_Module_Arduino_Nano_v3.x" 200 -950 50 H V L TNN 215 | F2 "Module:Arduino_Nano" 0 0 50 H I C CIN 216 | F3 "" 0 0 50 H I C CNN 217 | ALIAS Arduino_Nano_v3.x 218 | $FPLIST 219 | Arduino*Nano* 220 | $ENDFPLIST 221 | DRAW 222 | S -400 900 400 -900 0 1 10 f 223 | X D1/TX 1 -500 500 100 R 50 50 1 1 B 224 | X D7 10 -500 -100 100 R 50 50 1 1 B 225 | X D8 11 -500 -200 100 R 50 50 1 1 B 226 | X D9 12 -500 -300 100 R 50 50 1 1 B 227 | X D10 13 -500 -400 100 R 50 50 1 1 B 228 | X D11 14 -500 -500 100 R 50 50 1 1 B 229 | X D12 15 -500 -600 100 R 50 50 1 1 B 230 | X D13 16 -500 -700 100 R 50 50 1 1 B 231 | X 3V3 17 100 1000 100 D 50 50 1 1 w 232 | X AREF 18 500 200 100 L 50 50 1 1 I 233 | X A0 19 500 0 100 L 50 50 1 1 B 234 | X D0/RX 2 -500 600 100 R 50 50 1 1 B 235 | X A1 20 500 -100 100 L 50 50 1 1 B 236 | X A2 21 500 -200 100 L 50 50 1 1 B 237 | X A3 22 500 -300 100 L 50 50 1 1 B 238 | X A4 23 500 -400 100 L 50 50 1 1 B 239 | X A5 24 500 -500 100 L 50 50 1 1 B 240 | X A6 25 500 -600 100 L 50 50 1 1 B 241 | X A7 26 500 -700 100 L 50 50 1 1 B 242 | X +5V 27 200 1000 100 D 50 50 1 1 w 243 | X ~RESET 28 500 600 100 L 50 50 1 1 I 244 | X GND 29 100 -1000 100 U 50 50 1 1 W 245 | X ~RESET 3 500 500 100 L 50 50 1 1 I 246 | X VIN 30 -100 1000 100 D 50 50 1 1 W 247 | X GND 4 0 -1000 100 U 50 50 1 1 W 248 | X D2 5 -500 400 100 R 50 50 1 1 B 249 | X D3 6 -500 300 100 R 50 50 1 1 B 250 | X D4 7 -500 200 100 R 50 50 1 1 B 251 | X D5 8 -500 100 100 R 50 50 1 1 B 252 | X D6 9 -500 0 100 R 50 50 1 1 B 253 | ENDDRAW 254 | ENDDEF 255 | # 256 | # power_+5V 257 | # 258 | DEF power_+5V #PWR 0 0 Y Y 1 F P 259 | F0 "#PWR" 0 -150 50 H I C CNN 260 | F1 "power_+5V" 0 140 50 H V C CNN 261 | F2 "" 0 0 50 H I C CNN 262 | F3 "" 0 0 50 H I C CNN 263 | DRAW 264 | P 2 0 1 0 -30 50 0 100 N 265 | P 2 0 1 0 0 0 0 100 N 266 | P 2 0 1 0 0 100 30 50 N 267 | X +5V 1 0 0 0 U 50 50 1 1 W N 268 | ENDDRAW 269 | ENDDEF 270 | # 271 | # power_GND 272 | # 273 | DEF power_GND #PWR 0 0 Y Y 1 F P 274 | F0 "#PWR" 0 -250 50 H I C CNN 275 | F1 "power_GND" 0 -150 50 H V C CNN 276 | F2 "" 0 0 50 H I C CNN 277 | F3 "" 0 0 50 H I C CNN 278 | DRAW 279 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 280 | X GND 1 0 0 0 D 50 50 1 1 W N 281 | ENDDRAW 282 | ENDDEF 283 | # 284 | # power_PWR_FLAG 285 | # 286 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 287 | F0 "#FLG" 0 75 50 H I C CNN 288 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 289 | F2 "" 0 0 50 H I C CNN 290 | F3 "" 0 0 50 H I C CNN 291 | DRAW 292 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 293 | X pwr 1 0 0 0 U 50 50 0 0 w 294 | ENDDRAW 295 | ENDDEF 296 | # 297 | #End Library 298 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-rescue.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC166-alternate-ArduinoPC-rescue 5 | # 6 | DEF 74HC166-alternate-ArduinoPC-rescue U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC166-alternate-ArduinoPC-rescue" 0 -50 50 V V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X DS 1 -500 600 200 R 50 50 1 0 I 17 | X D4 10 -500 100 200 R 50 50 1 0 I 18 | X D5 11 -500 0 200 R 50 50 1 0 I 19 | X D6 12 -500 -100 200 R 50 50 1 0 I 20 | X Q7 13 500 -200 200 L 50 50 1 0 O 21 | X D7 14 -500 -200 200 R 50 50 1 0 I 22 | X ~PE 15 -500 -600 200 R 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X D0 2 -500 500 200 R 50 50 1 0 I 25 | X D1 3 -500 400 200 R 50 50 1 0 I 26 | X D2 4 -500 300 200 R 50 50 1 0 I 27 | X D3 5 -500 200 200 R 50 50 1 0 I 28 | X ~CE 6 500 -600 200 L 50 50 1 0 I 29 | X CP 7 -500 -300 200 R 50 50 1 0 I 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X ~MR 9 500 -400 200 L 50 50 1 0 I 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | #End Library 36 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/KiCAD (monochrome)/ArduinoPC.bin -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | $CMP 74HC165 4 | D Shift Register 8-bit, parallel load 5 | K TTL SR SR8 6 | F http://www.ti.com/lit/gpn/sn74LS165 7 | $ENDCMP 8 | # 9 | $CMP 74HC173 10 | D 4-bit D-type Register, 3 state out 11 | K TTL REG REG4 3State DFF 12 | F http://www.ti.com/lit/gpn/sn74LS173 13 | $ENDCMP 14 | # 15 | $CMP 74HC193 16 | D Synchronous 4-bit Up/Down (2 clk) counter 17 | K TTL CNT CNT4 18 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 19 | $ENDCMP 20 | # 21 | $CMP 74LS193 22 | D Synchronous 4-bit Up/Down (2 clk) counter 23 | K TTL CNT CNT4 24 | F http://www.ti.com/lit/ds/symlink/sn74ls193.pdf 25 | $ENDCMP 26 | # 27 | #End Doc Library 28 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 37, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 0.6 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 7, 38 | 8, 39 | 9, 40 | 10, 41 | 11, 42 | 12, 43 | 13, 44 | 14, 45 | 15, 46 | 16, 47 | 17, 48 | 18, 49 | 19, 50 | 20, 51 | 21, 52 | 22, 53 | 23, 54 | 24, 55 | 25, 56 | 26, 57 | 27, 58 | 28, 59 | 29, 60 | 30, 61 | 32, 62 | 33, 63 | 34, 64 | 35, 65 | 36 66 | ], 67 | "visible_layers": "fffffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "meta": { 71 | "filename": "ArduinoPC.kicad_prl", 72 | "version": 3 73 | }, 74 | "project": { 75 | "files": [] 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.kicad_pro: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "design_settings": { 4 | "defaults": { 5 | "board_outline_line_width": 0.049999999999999996, 6 | "copper_line_width": 0.19999999999999998, 7 | "copper_text_italic": false, 8 | "copper_text_size_h": 1.5, 9 | "copper_text_size_v": 1.5, 10 | "copper_text_thickness": 0.3, 11 | "copper_text_upright": false, 12 | "courtyard_line_width": 0.049999999999999996, 13 | "dimension_precision": 4, 14 | "dimension_units": 3, 15 | "dimensions": { 16 | "arrow_length": 1270000, 17 | "extension_offset": 500000, 18 | "keep_text_aligned": true, 19 | "suppress_zeroes": false, 20 | "text_position": 0, 21 | "units_format": 1 22 | }, 23 | "fab_line_width": 0.09999999999999999, 24 | "fab_text_italic": false, 25 | "fab_text_size_h": 1.0, 26 | "fab_text_size_v": 1.0, 27 | "fab_text_thickness": 0.15, 28 | "fab_text_upright": false, 29 | "other_line_width": 0.09999999999999999, 30 | "other_text_italic": false, 31 | "other_text_size_h": 1.0, 32 | "other_text_size_v": 1.0, 33 | "other_text_thickness": 0.15, 34 | "other_text_upright": false, 35 | "pads": { 36 | "drill": 0.762, 37 | "height": 1.524, 38 | "width": 1.524 39 | }, 40 | "silk_line_width": 0.12, 41 | "silk_text_italic": false, 42 | "silk_text_size_h": 1.0, 43 | "silk_text_size_v": 1.0, 44 | "silk_text_thickness": 0.15, 45 | "silk_text_upright": false, 46 | "zones": { 47 | "45_degree_only": false, 48 | "min_clearance": 0.508 49 | } 50 | }, 51 | "diff_pair_dimensions": [ 52 | { 53 | "gap": 0.0, 54 | "via_gap": 0.0, 55 | "width": 0.0 56 | } 57 | ], 58 | "drc_exclusions": [], 59 | "meta": { 60 | "filename": "board_design_settings.json", 61 | "version": 2 62 | }, 63 | "rule_severities": { 64 | "annular_width": "error", 65 | "clearance": "error", 66 | "copper_edge_clearance": "error", 67 | "courtyards_overlap": "error", 68 | "diff_pair_gap_out_of_range": "error", 69 | "diff_pair_uncoupled_length_too_long": "error", 70 | "drill_out_of_range": "error", 71 | "duplicate_footprints": "warning", 72 | "extra_footprint": "warning", 73 | "footprint_type_mismatch": "error", 74 | "hole_clearance": "error", 75 | "hole_near_hole": "error", 76 | "invalid_outline": "error", 77 | "item_on_disabled_layer": "error", 78 | "items_not_allowed": "error", 79 | "length_out_of_range": "error", 80 | "malformed_courtyard": "error", 81 | "microvia_drill_out_of_range": "error", 82 | "missing_courtyard": "ignore", 83 | "missing_footprint": "warning", 84 | "net_conflict": "warning", 85 | "npth_inside_courtyard": "ignore", 86 | "padstack": "error", 87 | "pth_inside_courtyard": "ignore", 88 | "shorting_items": "error", 89 | "silk_over_copper": "warning", 90 | "silk_overlap": "warning", 91 | "skew_out_of_range": "error", 92 | "through_hole_pad_without_hole": "error", 93 | "too_many_vias": "error", 94 | "track_dangling": "warning", 95 | "track_width": "error", 96 | "tracks_crossing": "error", 97 | "unconnected_items": "error", 98 | "unresolved_variable": "error", 99 | "via_dangling": "warning", 100 | "zone_has_empty_net": "error", 101 | "zones_intersect": "error" 102 | }, 103 | "rule_severitieslegacy_courtyards_overlap": true, 104 | "rule_severitieslegacy_no_courtyard_defined": false, 105 | "rules": { 106 | "allow_blind_buried_vias": false, 107 | "allow_microvias": false, 108 | "max_error": 0.005, 109 | "min_clearance": 0.0, 110 | "min_copper_edge_clearance": 0.024999999999999998, 111 | "min_hole_clearance": 0.25, 112 | "min_hole_to_hole": 0.25, 113 | "min_microvia_diameter": 0.19999999999999998, 114 | "min_microvia_drill": 0.09999999999999999, 115 | "min_silk_clearance": 0.0, 116 | "min_through_hole_diameter": 0.3, 117 | "min_track_width": 0.19999999999999998, 118 | "min_via_annular_width": 0.049999999999999996, 119 | "min_via_diameter": 0.39999999999999997, 120 | "use_height_for_length_calcs": true 121 | }, 122 | "track_widths": [ 123 | 0.0 124 | ], 125 | "via_dimensions": [ 126 | { 127 | "diameter": 0.0, 128 | "drill": 0.0 129 | } 130 | ], 131 | "zones_allow_external_fillets": false, 132 | "zones_use_no_outline": true 133 | }, 134 | "layer_presets": [] 135 | }, 136 | "boards": [], 137 | "cvpcb": { 138 | "equivalence_files": [] 139 | }, 140 | "erc": { 141 | "erc_exclusions": [], 142 | "meta": { 143 | "version": 0 144 | }, 145 | "pin_map": [ 146 | [ 147 | 0, 148 | 0, 149 | 0, 150 | 0, 151 | 0, 152 | 0, 153 | 1, 154 | 0, 155 | 0, 156 | 0, 157 | 0, 158 | 2 159 | ], 160 | [ 161 | 0, 162 | 2, 163 | 0, 164 | 1, 165 | 0, 166 | 0, 167 | 1, 168 | 0, 169 | 2, 170 | 2, 171 | 2, 172 | 2 173 | ], 174 | [ 175 | 0, 176 | 0, 177 | 0, 178 | 0, 179 | 0, 180 | 0, 181 | 1, 182 | 0, 183 | 1, 184 | 0, 185 | 1, 186 | 2 187 | ], 188 | [ 189 | 0, 190 | 1, 191 | 0, 192 | 0, 193 | 0, 194 | 0, 195 | 1, 196 | 1, 197 | 2, 198 | 1, 199 | 1, 200 | 2 201 | ], 202 | [ 203 | 0, 204 | 0, 205 | 0, 206 | 0, 207 | 0, 208 | 0, 209 | 1, 210 | 0, 211 | 0, 212 | 0, 213 | 0, 214 | 2 215 | ], 216 | [ 217 | 0, 218 | 0, 219 | 0, 220 | 0, 221 | 0, 222 | 0, 223 | 0, 224 | 0, 225 | 0, 226 | 0, 227 | 0, 228 | 2 229 | ], 230 | [ 231 | 1, 232 | 1, 233 | 1, 234 | 1, 235 | 1, 236 | 0, 237 | 1, 238 | 1, 239 | 1, 240 | 1, 241 | 1, 242 | 2 243 | ], 244 | [ 245 | 0, 246 | 0, 247 | 0, 248 | 1, 249 | 0, 250 | 0, 251 | 1, 252 | 0, 253 | 0, 254 | 0, 255 | 0, 256 | 2 257 | ], 258 | [ 259 | 0, 260 | 2, 261 | 1, 262 | 2, 263 | 0, 264 | 0, 265 | 1, 266 | 0, 267 | 2, 268 | 2, 269 | 2, 270 | 2 271 | ], 272 | [ 273 | 0, 274 | 2, 275 | 0, 276 | 1, 277 | 0, 278 | 0, 279 | 1, 280 | 0, 281 | 2, 282 | 0, 283 | 0, 284 | 2 285 | ], 286 | [ 287 | 0, 288 | 2, 289 | 1, 290 | 1, 291 | 0, 292 | 0, 293 | 1, 294 | 0, 295 | 2, 296 | 0, 297 | 0, 298 | 2 299 | ], 300 | [ 301 | 2, 302 | 2, 303 | 2, 304 | 2, 305 | 2, 306 | 2, 307 | 2, 308 | 2, 309 | 2, 310 | 2, 311 | 2, 312 | 2 313 | ] 314 | ], 315 | "rule_severities": { 316 | "bus_definition_conflict": "error", 317 | "bus_entry_needed": "error", 318 | "bus_label_syntax": "error", 319 | "bus_to_bus_conflict": "error", 320 | "bus_to_net_conflict": "error", 321 | "different_unit_footprint": "error", 322 | "different_unit_net": "error", 323 | "duplicate_reference": "error", 324 | "duplicate_sheet_names": "error", 325 | "extra_units": "error", 326 | "global_label_dangling": "warning", 327 | "hier_label_mismatch": "error", 328 | "label_dangling": "error", 329 | "lib_symbol_issues": "warning", 330 | "multiple_net_names": "warning", 331 | "net_not_bus_member": "warning", 332 | "no_connect_connected": "warning", 333 | "no_connect_dangling": "warning", 334 | "pin_not_connected": "error", 335 | "pin_not_driven": "error", 336 | "pin_to_pin": "warning", 337 | "power_pin_not_driven": "error", 338 | "similar_labels": "warning", 339 | "unannotated": "error", 340 | "unit_value_mismatch": "error", 341 | "unresolved_variable": "error", 342 | "wire_dangling": "error" 343 | } 344 | }, 345 | "libraries": { 346 | "pinned_footprint_libs": [], 347 | "pinned_symbol_libs": [] 348 | }, 349 | "meta": { 350 | "filename": "ArduinoPC.kicad_pro", 351 | "version": 1 352 | }, 353 | "net_settings": { 354 | "classes": [ 355 | { 356 | "bus_width": 12.0, 357 | "clearance": 0.2, 358 | "diff_pair_gap": 0.25, 359 | "diff_pair_via_gap": 0.25, 360 | "diff_pair_width": 0.2, 361 | "line_style": 0, 362 | "microvia_diameter": 0.3, 363 | "microvia_drill": 0.1, 364 | "name": "Default", 365 | "pcb_color": "rgba(0, 0, 0, 0.000)", 366 | "schematic_color": "rgba(0, 0, 0, 0.000)", 367 | "track_width": 0.25, 368 | "via_diameter": 0.8, 369 | "via_drill": 0.4, 370 | "wire_width": 6.0 371 | }, 372 | { 373 | "bus_width": 12.0, 374 | "clearance": 0.2, 375 | "diff_pair_gap": 0.25, 376 | "diff_pair_via_gap": 0.25, 377 | "diff_pair_width": 0.2, 378 | "line_style": 0, 379 | "microvia_diameter": 0.3, 380 | "microvia_drill": 0.1, 381 | "name": "Power", 382 | "nets": [ 383 | "+5V", 384 | "GND" 385 | ], 386 | "pcb_color": "rgba(0, 0, 0, 0.000)", 387 | "schematic_color": "rgba(0, 0, 0, 0.000)", 388 | "track_width": 0.5, 389 | "via_diameter": 0.8, 390 | "via_drill": 0.4, 391 | "wire_width": 6.0 392 | } 393 | ], 394 | "meta": { 395 | "version": 2 396 | }, 397 | "net_colors": null 398 | }, 399 | "pcbnew": { 400 | "last_paths": { 401 | "gencad": "", 402 | "idf": "", 403 | "netlist": "ArduinoPC.net", 404 | "specctra_dsn": "ArduinoPC.dsn", 405 | "step": "", 406 | "vrml": "" 407 | }, 408 | "page_layout_descr_file": "" 409 | }, 410 | "schematic": { 411 | "annotate_start_num": 0, 412 | "drawing": { 413 | "default_line_thickness": 6.0, 414 | "default_text_size": 50.0, 415 | "field_names": [], 416 | "intersheets_ref_own_page": false, 417 | "intersheets_ref_prefix": "", 418 | "intersheets_ref_short": false, 419 | "intersheets_ref_show": false, 420 | "intersheets_ref_suffix": "", 421 | "junction_size_choice": 3, 422 | "label_size_ratio": 0.25, 423 | "pin_symbol_size": 0.0, 424 | "text_offset_ratio": 0.08 425 | }, 426 | "legacy_lib_dir": "", 427 | "legacy_lib_list": [], 428 | "meta": { 429 | "version": 1 430 | }, 431 | "net_format_name": "Pcbnew", 432 | "ngspice": { 433 | "fix_include_paths": true, 434 | "fix_passive_vals": false, 435 | "meta": { 436 | "version": 0 437 | }, 438 | "model_mode": 0, 439 | "workbook_filename": "" 440 | }, 441 | "page_layout_descr_file": "", 442 | "plot_directory": "../../../", 443 | "spice_adjust_passive_values": false, 444 | "spice_external_command": "spice \"%I\"", 445 | "subpart_first_id": 65, 446 | "subpart_id_separator": 0 447 | }, 448 | "sheets": [ 449 | [ 450 | "8fd203a8-262b-4cb2-b72e-4179e96203de", 451 | "" 452 | ] 453 | ], 454 | "text_variables": {} 455 | } 456 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC165 5 | # 6 | DEF 74HC165 U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC165" -300 -850 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 17 | X DS 10 -500 600 200 R 50 50 1 0 I 18 | X D0 11 -500 500 200 R 50 50 1 0 I 19 | X D1 12 -500 400 200 R 50 50 1 0 I 20 | X D2 13 -500 300 200 R 50 50 1 0 I 21 | X D3 14 -500 200 200 R 50 50 1 0 I 22 | X ~CE 15 500 -600 200 L 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X CP 2 -500 -300 200 R 50 50 1 0 I 25 | X D4 3 -500 100 200 R 50 50 1 0 I 26 | X D5 4 -500 0 200 R 50 50 1 0 I 27 | X D6 5 -500 -100 200 R 50 50 1 0 I 28 | X D7 6 -500 -200 200 R 50 50 1 0 I 29 | X ~Q7 7 500 500 200 L 50 50 1 0 O 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X Q7 9 500 600 200 L 50 50 1 0 O 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74HC173 36 | # 37 | DEF 74HC173 U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "74HC173" -300 -750 50 H V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -700 1 1 10 f 47 | X ~OE1 1 -500 100 200 R 50 50 1 0 I 48 | X ~E2 10 -500 -300 200 R 50 50 1 0 I 49 | X D3 11 -500 300 200 R 50 50 1 0 I 50 | X D2 12 -500 400 200 R 50 50 1 0 I 51 | X D1 13 -500 500 200 R 50 50 1 0 I 52 | X D0 14 -500 600 200 R 50 50 1 0 I 53 | X MR 15 -500 -600 200 R 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X ~OE2 2 -500 0 200 R 50 50 1 0 I 56 | X Q0 3 500 600 200 L 50 50 1 0 T 57 | X Q1 4 500 500 200 L 50 50 1 0 T 58 | X Q2 5 500 400 200 L 50 50 1 0 T 59 | X Q3 6 500 300 200 L 50 50 1 0 T 60 | X CP 7 -500 -400 200 R 50 50 1 0 I C 61 | X GND 8 0 -900 200 U 50 50 1 0 W 62 | X ~E1 9 -500 -200 200 R 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # 74HC193 67 | # 68 | DEF 74HC193 U 0 20 Y Y 1 F N 69 | F0 "U" -300 550 50 H V C CNN 70 | F1 "74HC193" 200 550 50 H V C CNN 71 | F2 "" 0 0 50 H I C CNN 72 | F3 "" 0 0 50 H I C CNN 73 | ALIAS 74LS193 74 | $FPLIST 75 | SOIC*3.9x9.9mm*P1.27mm* 76 | DIP*W7.62mm* 77 | $ENDFPLIST 78 | DRAW 79 | S -300 500 300 -600 1 1 10 f 80 | X D1 1 -500 300 200 R 50 50 1 0 I 81 | X D2 10 -500 200 200 R 50 50 1 0 I 82 | X ~PL 11 -500 -100 200 R 50 50 1 0 I 83 | X ~TCU 12 500 -100 200 L 50 50 1 0 O 84 | X ~TCD 13 500 -300 200 L 50 50 1 0 O 85 | X MR 14 -500 -500 200 R 50 50 1 0 I 86 | X D0 15 -500 400 200 R 50 50 1 0 I 87 | X VCC 16 0 700 200 D 50 50 1 0 W 88 | X Q1 2 500 300 200 L 50 50 1 0 O 89 | X Q0 3 500 400 200 L 50 50 1 0 O 90 | X CPD 4 -500 -400 200 R 50 50 1 0 I C 91 | X CPU 5 -500 -300 200 R 50 50 1 0 I C 92 | X Q2 6 500 200 200 L 50 50 1 0 O 93 | X Q3 7 500 100 200 L 50 50 1 0 O 94 | X GND 8 0 -800 200 U 50 50 1 0 W 95 | X D3 9 -500 100 200 R 50 50 1 0 I 96 | ENDDRAW 97 | ENDDEF 98 | # 99 | #End Library 100 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.pretty/Arduino_Nano.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "Arduino_Nano" (version 20211014) (generator pcbnew) 2 | (layer "F.Cu") 3 | (tedit 58ACAF70) 4 | (descr "Arduino Nano, http://www.mouser.com/pdfdocs/Gravitech_Arduino_Nano3_0.pdf") 5 | (tags "Arduino Nano") 6 | (attr through_hole) 7 | (fp_text reference "REF**" (at 7.62 -5.08) (layer "F.SilkS") 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | (tstamp 509a0f1d-6540-44cd-97e5-cff4c62d3971) 10 | ) 11 | (fp_text value "Arduino_Nano" (at 8.89 19.05 90) (layer "F.Fab") 12 | (effects (font (size 1 1) (thickness 0.15))) 13 | (tstamp 854801aa-c0f2-443a-8d31-fbf3951e74f1) 14 | ) 15 | (fp_text user "${REFERENCE}" (at 6.35 19.05 90) (layer "F.Fab") 16 | (effects (font (size 1 1) (thickness 0.15))) 17 | (tstamp 7f1073a2-03eb-4087-801d-7261c467611f) 18 | ) 19 | (fp_line (start -1.53 -4.06) (end -1.53 42.16) (layer "F.CrtYd") (width 0.05) (tstamp 26cb220d-49c8-4d9e-9fd5-96449d9f6261)) 20 | (fp_line (start 16.75 42.16) (end -1.53 42.16) (layer "F.CrtYd") (width 0.05) (tstamp 67c3cfb2-e3bc-4a90-9cce-35bbd05092be)) 21 | (fp_line (start -1.53 -4.06) (end 16.75 -4.06) (layer "F.CrtYd") (width 0.05) (tstamp 79dec9f8-6e12-4259-8a51-9108118b554a)) 22 | (fp_line (start 16.75 42.16) (end 16.75 -4.06) (layer "F.CrtYd") (width 0.05) (tstamp f6825422-2a58-42d0-8570-68d83d7074a4)) 23 | (fp_line (start -1.27 -2.54) (end 0 -3.81) (layer "F.Fab") (width 0.1) (tstamp 019082a9-20b0-4aa2-b92f-257722216c85)) 24 | (fp_line (start -1.27 39.37) (end -1.27 -2.54) (layer "F.Fab") (width 0.1) (tstamp 11f2556e-eb7c-4498-836c-439962ed53d3)) 25 | (fp_line (start 16.51 39.37) (end -1.27 39.37) (layer "F.Fab") (width 0.1) (tstamp 1ae71026-34c9-426b-918b-b69e7e23985f)) 26 | (fp_line (start 16.51 -3.81) (end 16.51 39.37) (layer "F.Fab") (width 0.1) (tstamp 4e577789-b767-4d96-afc4-97fce6740a64)) 27 | (fp_line (start 3.81 31.75) (end 11.43 31.75) (layer "F.Fab") (width 0.1) (tstamp 5d952b65-9eb7-416a-bb1a-f1c1a12b95c0)) 28 | (fp_line (start 0 -3.81) (end 16.51 -3.81) (layer "F.Fab") (width 0.1) (tstamp 87edb117-2064-4446-b9e8-284a940ff2eb)) 29 | (fp_line (start 11.43 41.91) (end 3.81 41.91) (layer "F.Fab") (width 0.1) (tstamp a4c60846-7b72-49d2-a172-50c1932976eb)) 30 | (fp_line (start 11.43 31.75) (end 11.43 41.91) (layer "F.Fab") (width 0.1) (tstamp e15e5427-ea59-44ff-9236-6d615eba37f8)) 31 | (fp_line (start 3.81 41.91) (end 3.81 31.75) (layer "F.Fab") (width 0.1) (tstamp f1732750-df74-4c11-902f-1fd9a74f7b0f)) 32 | (pad "1" thru_hole rect (at 0 0) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 943f5d82-070f-4392-bdbc-dd64bead03c4)) 33 | (pad "2" thru_hole oval (at 0 2.54) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 4b11ad8d-4a13-4f9d-a7b6-f2b2e0b7ca88)) 34 | (pad "3" thru_hole oval (at 0 5.08) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 0b5d93c2-38a0-4ce2-a25b-11e5ac33a698)) 35 | (pad "4" thru_hole oval (at 0 7.62) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 188b968c-fccb-43d6-93bd-e78279572d2d)) 36 | (pad "5" thru_hole oval (at 0 10.16) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp c7e63fdc-fec1-431f-8c41-2a49a3b35dc3)) 37 | (pad "6" thru_hole oval (at 0 12.7) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 4949234a-9012-4261-b022-7f36546aa874)) 38 | (pad "7" thru_hole oval (at 0 15.24) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 15062e8e-abdf-4bb9-b9ca-34c7469e17bf)) 39 | (pad "8" thru_hole oval (at 0 17.78) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp ca27bd47-503d-4590-8956-f4205e9c5ba6)) 40 | (pad "9" thru_hole oval (at 0 20.32) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 6a4fd4dd-ce22-4f4d-8377-1d39980dcb90)) 41 | (pad "10" thru_hole oval (at 0 22.86) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 04b155eb-140b-451b-9e12-f8b47bc056e1)) 42 | (pad "11" thru_hole oval (at 0 25.4) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp a2ae359f-edf9-4eb8-b2e1-76d18133e994)) 43 | (pad "12" thru_hole oval (at 0 27.94) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 1ab1e5e7-ab5e-442e-af22-375cad3981fc)) 44 | (pad "13" thru_hole oval (at 0 30.48) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp f3631f12-578d-4b5a-bcd0-62b071c31d07)) 45 | (pad "14" thru_hole oval (at 0 33.02) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp f14e6599-c96c-49f4-adc0-8ac2c4acee76)) 46 | (pad "15" thru_hole oval (at 0 35.56) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 137143ce-d539-4a7d-a57f-2e8d22cf9dd2)) 47 | (pad "16" thru_hole oval (at 15.24 35.56) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp cae4f5a0-da99-4b27-98fe-b50cee70ffb0)) 48 | (pad "17" thru_hole oval (at 15.24 33.02) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp c3392eaa-ab38-4439-b144-d0b692a25a95)) 49 | (pad "18" thru_hole oval (at 15.24 30.48) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 7baf2ce3-af7c-484a-a925-271cd03c6e67)) 50 | (pad "19" thru_hole oval (at 15.24 27.94) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 5e22c26f-eefe-4d66-a88a-69f0a82134f7)) 51 | (pad "20" thru_hole oval (at 15.24 25.4) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 4ff4948f-fd88-4d19-b01d-26f02a25fa05)) 52 | (pad "21" thru_hole oval (at 15.24 22.86) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 2f1a4b70-279f-4aee-9e45-6c0db49d76ed)) 53 | (pad "22" thru_hole oval (at 15.24 20.32) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 7c77ddcd-4402-4825-9444-06b2f2060023)) 54 | (pad "23" thru_hole oval (at 15.24 17.78) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp dab84e9e-1e2e-47d5-83e8-94979dd2c45e)) 55 | (pad "24" thru_hole oval (at 15.24 15.24) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp c6b70935-f8bc-42d0-84d5-46c1ccbf8226)) 56 | (pad "25" thru_hole oval (at 15.24 12.7) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 2c86b19e-3ef7-448d-b728-cd29df156eee)) 57 | (pad "26" thru_hole oval (at 15.24 10.16) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 41da5903-9eca-452c-83cd-618ed847c980)) 58 | (pad "27" thru_hole oval (at 15.24 7.62) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 9798aabb-0c59-44f2-9e60-668fed461849)) 59 | (pad "28" thru_hole oval (at 15.24 5.08) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 3f909fc8-bf05-47eb-bb60-ea2163559073)) 60 | (pad "29" thru_hole oval (at 15.24 2.54) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 5ee4beca-344f-4c9f-9765-02e7588136af)) 61 | (pad "30" thru_hole oval (at 15.24 0) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask) (tstamp 59a4cc04-701b-4376-9005-58bf36a059d4)) 62 | (model "${KICAD6_3DMODEL_DIR}/Module.3dshapes/Arduino_Nano_WithMountingHoles.wrl" 63 | (offset (xyz 0 0 0)) 64 | (scale (xyz 1 1 1)) 65 | (rotate (xyz 0 0 0)) 66 | ) 67 | ) 68 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.pretty/FP_MINI_DIN_6_PS2.kicad_mod: -------------------------------------------------------------------------------- 1 | (module FP_MINI_DIN_6_PS2 (layer F.Cu) (tedit 5F735A85) 2 | (fp_text reference REF** (at -5.08 -0.97) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value FP_MINI_DIN_6_PS2 (at 0 14.27) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 7 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -7 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -7 0) (end -7 13.2) (layer F.Fab) (width 0.12)) 11 | (fp_line (start -7 13.2) (end 7 13.2) (layer F.Fab) (width 0.12)) 12 | (fp_line (start 7 0) (end 7 13.2) (layer F.Fab) (width 0.12)) 13 | (fp_line (start -3.81 0) (end -3.81 1.57) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -3.81 1.57) (end 3.81 1.57) (layer F.Fab) (width 0.12)) 15 | (fp_line (start 3.81 1.57) (end 3.81 0) (layer F.Fab) (width 0.12)) 16 | (pad 2 thru_hole circle (at 1.3 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 17 | (pad "" thru_hole circle (at 0 5) (size 4 4) (drill 2.4) (layers *.Cu *.Mask)) 18 | (pad "" thru_hole circle (at 6.75 5.8) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 19 | (pad "" thru_hole circle (at -6.75 5.8) (size 4 4) (drill 2.2) (layers *.Cu *.Mask)) 20 | (pad 1 thru_hole circle (at -1.3 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 21 | (pad 3 thru_hole circle (at -3.35 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 22 | (pad 4 thru_hole circle (at 3.35 8.9) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 23 | (pad 6 thru_hole circle (at 3.35 11.3) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 24 | (pad 5 thru_hole circle (at -3.35 11.3) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask)) 25 | ) 26 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.pretty/VGA DSUB15HD_female.kicad_mod: -------------------------------------------------------------------------------- 1 | (module "VGA DSUB15HD_female" (layer F.Cu) (tedit 5F735B8C) 2 | (fp_text reference REF** (at 18 20) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value "VGA DSUB15HD_female" (at 0 -8) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 0 0) (end 16 0) (layer F.Fab) (width 0.12)) 9 | (fp_line (start 0 0) (end -16 0) (layer F.Fab) (width 0.12)) 10 | (fp_line (start -16 0) (end -16 16.1) (layer F.Fab) (width 0.12)) 11 | (fp_line (start 16 0) (end 16 16.1) (layer F.Fab) (width 0.12)) 12 | (fp_line (start -16 16.1) (end 16 16.1) (layer F.Fab) (width 0.12)) 13 | (fp_line (start 8.1 22) (end 8.1 16.1) (layer F.Fab) (width 0.12)) 14 | (fp_line (start -8.1 22) (end -8.1 16.1) (layer F.Fab) (width 0.12)) 15 | (fp_line (start -15 16.1) (end -15 20.6) (layer F.Fab) (width 0.12)) 16 | (fp_line (start -15 20.6) (end -9 20.6) (layer F.Fab) (width 0.12)) 17 | (fp_line (start -9 20.6) (end -9 16.1) (layer F.Fab) (width 0.12)) 18 | (fp_line (start 15 16.1) (end 15 20.6) (layer F.Fab) (width 0.12)) 19 | (fp_line (start 15 20.6) (end 9 20.6) (layer F.Fab) (width 0.12)) 20 | (fp_line (start 9 20.6) (end 9 16.1) (layer F.Fab) (width 0.12)) 21 | (fp_line (start 8.1 22) (end -8.1 22) (layer F.Fab) (width 0.12)) 22 | (pad 3 thru_hole circle (at 0 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 23 | (pad 2 thru_hole circle (at 2.25 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 24 | (pad 1 thru_hole circle (at 4.5 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 25 | (pad 4 thru_hole circle (at -2.25 2.25) (size 1.7 1.7) (drill 0.8) (layers *.Cu *.Mask)) 26 | (pad 5 thru_hole circle (at -4.5 2.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 27 | (pad 11 thru_hole circle (at 4.5 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 28 | (pad 12 thru_hole circle (at 2.25 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 29 | (pad 14 thru_hole circle (at -2.25 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 30 | (pad 15 thru_hole circle (at -4.5 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 31 | (pad 13 thru_hole circle (at 0 7.25) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 32 | (pad 6 thru_hole circle (at 5.625 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 33 | (pad 7 thru_hole circle (at 3.375 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 34 | (pad 9 thru_hole circle (at -1.125 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 35 | (pad 10 thru_hole circle (at -3.375 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 36 | (pad 8 thru_hole circle (at 1.125 4.75) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 37 | (pad "" thru_hole circle (at 12.45 4.75) (size 5 5) (drill 3) (layers *.Cu *.Mask)) 38 | (pad "" thru_hole circle (at -12.45 4.75) (size 5 5) (drill 3) (layers *.Cu *.Mask)) 39 | ) 40 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.pro: -------------------------------------------------------------------------------- 1 | update=15/11/2020 16:39:39 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [schematic_editor] 16 | version=1 17 | PageLayoutDescrFile= 18 | PlotDirectoryName= 19 | SubpartIdSeparator=0 20 | SubpartFirstId=65 21 | NetFmtName=Pcbnew 22 | SpiceAjustPassiveValues=0 23 | LabSize=50 24 | ERC_TestSimilarLabels=1 25 | [pcbnew] 26 | version=1 27 | PageLayoutDescrFile= 28 | LastNetListRead=ArduinoPC.net 29 | CopperLayerCount=2 30 | BoardThickness=1.6 31 | AllowMicroVias=0 32 | AllowBlindVias=0 33 | RequireCourtyardDefinitions=0 34 | ProhibitOverlappingCourtyards=1 35 | MinTrackWidth=0.2 36 | MinViaDiameter=0.4 37 | MinViaDrill=0.3 38 | MinMicroViaDiameter=0.2 39 | MinMicroViaDrill=0.09999999999999999 40 | MinHoleToHole=0.25 41 | TrackWidth1=0.25 42 | ViaDiameter1=0.8 43 | ViaDrill1=0.4 44 | dPairWidth1=0.2 45 | dPairGap1=0.25 46 | dPairViaGap1=0.25 47 | SilkLineWidth=0.12 48 | SilkTextSizeV=1 49 | SilkTextSizeH=1 50 | SilkTextSizeThickness=0.15 51 | SilkTextItalic=0 52 | SilkTextUpright=1 53 | CopperLineWidth=0.2 54 | CopperTextSizeV=1.5 55 | CopperTextSizeH=1.5 56 | CopperTextThickness=0.3 57 | CopperTextItalic=0 58 | CopperTextUpright=1 59 | EdgeCutLineWidth=0.05 60 | CourtyardLineWidth=0.05 61 | OthersLineWidth=0.15 62 | OthersTextSizeV=1 63 | OthersTextSizeH=1 64 | OthersTextSizeThickness=0.15 65 | OthersTextItalic=0 66 | OthersTextUpright=1 67 | SolderMaskClearance=0.051 68 | SolderMaskMinWidth=0.25 69 | SolderPasteClearance=0 70 | SolderPasteRatio=-0 71 | [pcbnew/Layer.F.Cu] 72 | Name=F.Cu 73 | Type=0 74 | Enabled=1 75 | [pcbnew/Layer.In1.Cu] 76 | Name=In1.Cu 77 | Type=0 78 | Enabled=0 79 | [pcbnew/Layer.In2.Cu] 80 | Name=In2.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In3.Cu] 84 | Name=In3.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In4.Cu] 88 | Name=In4.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In5.Cu] 92 | Name=In5.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In6.Cu] 96 | Name=In6.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In7.Cu] 100 | Name=In7.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In8.Cu] 104 | Name=In8.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In9.Cu] 108 | Name=In9.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In10.Cu] 112 | Name=In10.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In11.Cu] 116 | Name=In11.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In12.Cu] 120 | Name=In12.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In13.Cu] 124 | Name=In13.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In14.Cu] 128 | Name=In14.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In15.Cu] 132 | Name=In15.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In16.Cu] 136 | Name=In16.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In17.Cu] 140 | Name=In17.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In18.Cu] 144 | Name=In18.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In19.Cu] 148 | Name=In19.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In20.Cu] 152 | Name=In20.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In21.Cu] 156 | Name=In21.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In22.Cu] 160 | Name=In22.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In23.Cu] 164 | Name=In23.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In24.Cu] 168 | Name=In24.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In25.Cu] 172 | Name=In25.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In26.Cu] 176 | Name=In26.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In27.Cu] 180 | Name=In27.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In28.Cu] 184 | Name=In28.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In29.Cu] 188 | Name=In29.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.In30.Cu] 192 | Name=In30.Cu 193 | Type=0 194 | Enabled=0 195 | [pcbnew/Layer.B.Cu] 196 | Name=B.Cu 197 | Type=0 198 | Enabled=1 199 | [pcbnew/Layer.B.Adhes] 200 | Enabled=1 201 | [pcbnew/Layer.F.Adhes] 202 | Enabled=1 203 | [pcbnew/Layer.B.Paste] 204 | Enabled=1 205 | [pcbnew/Layer.F.Paste] 206 | Enabled=1 207 | [pcbnew/Layer.B.SilkS] 208 | Enabled=1 209 | [pcbnew/Layer.F.SilkS] 210 | Enabled=1 211 | [pcbnew/Layer.B.Mask] 212 | Enabled=1 213 | [pcbnew/Layer.F.Mask] 214 | Enabled=1 215 | [pcbnew/Layer.Dwgs.User] 216 | Enabled=1 217 | [pcbnew/Layer.Cmts.User] 218 | Enabled=1 219 | [pcbnew/Layer.Eco1.User] 220 | Enabled=1 221 | [pcbnew/Layer.Eco2.User] 222 | Enabled=1 223 | [pcbnew/Layer.Edge.Cuts] 224 | Enabled=1 225 | [pcbnew/Layer.Margin] 226 | Enabled=1 227 | [pcbnew/Layer.B.CrtYd] 228 | Enabled=1 229 | [pcbnew/Layer.F.CrtYd] 230 | Enabled=1 231 | [pcbnew/Layer.B.Fab] 232 | Enabled=1 233 | [pcbnew/Layer.F.Fab] 234 | Enabled=1 235 | [pcbnew/Layer.Rescue] 236 | Enabled=0 237 | [pcbnew/Netclasses] 238 | [pcbnew/Netclasses/Default] 239 | Name=Default 240 | Clearance=0.2 241 | TrackWidth=0.25 242 | ViaDiameter=0.8 243 | ViaDrill=0.4 244 | uViaDiameter=0.3 245 | uViaDrill=0.1 246 | dPairWidth=0.2 247 | dPairGap=0.25 248 | dPairViaGap=0.25 249 | [pcbnew/Netclasses/1] 250 | Name=Power 251 | Clearance=0.2 252 | TrackWidth=0.5 253 | ViaDiameter=0.8 254 | ViaDrill=0.4 255 | uViaDiameter=0.3 256 | uViaDrill=0.1 257 | dPairWidth=0.2 258 | dPairGap=0.25 259 | dPairViaGap=0.25 260 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.rules: -------------------------------------------------------------------------------- 1 | 2 | (rules PCB ArduinoPC 3 | (snap_angle 4 | fortyfive_degree 5 | ) 6 | (autoroute_settings 7 | (fanout off) 8 | (eu.mihosoft.freerouting.autoroute on) 9 | (postroute on) 10 | (vias on) 11 | (via_costs 50) 12 | (plane_via_costs 5) 13 | (start_ripup_costs 100) 14 | (start_pass_no 342) 15 | (layer_rule F.Cu 16 | (active on) 17 | (preferred_direction horizontal) 18 | (preferred_direction_trace_costs 1.0) 19 | (against_preferred_direction_trace_costs 2.2) 20 | ) 21 | (layer_rule B.Cu 22 | (active on) 23 | (preferred_direction vertical) 24 | (preferred_direction_trace_costs 1.0) 25 | (against_preferred_direction_trace_costs 1.8) 26 | ) 27 | ) 28 | (rule 29 | (width 250.0) 30 | (clear 200.2) 31 | (clear 125.0 (type smd_to_turn_gap)) 32 | (clear 50.0 (type smd_smd)) 33 | ) 34 | (padstack "Via[0-1]_800:400_um" 35 | (shape 36 | (circle F.Cu 800.0 0.0 0.0) 37 | ) 38 | (shape 39 | (circle B.Cu 800.0 0.0 0.0) 40 | ) 41 | (attach off) 42 | ) 43 | (via 44 | "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default 45 | ) 46 | (via 47 | "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" "kicad_default" 48 | ) 49 | (via 50 | "Via[0-1]_800:400_um-Power" "Via[0-1]_800:400_um" Power 51 | ) 52 | (via_rule 53 | default "Via[0-1]_800:400_um" 54 | ) 55 | (via_rule 56 | "kicad_default" "Via[0-1]_800:400_um-kicad_default" 57 | ) 58 | (via_rule 59 | Power "Via[0-1]_800:400_um-Power" 60 | ) 61 | (class default 62 | "Net-(A1-Pad1)" "Net-(A1-Pad2)" "Net-(A1-Pad19)" "Net-(A1-Pad20)" "Net-(A1-Pad5)" "unconnected-(A1-Pad12)" "Net-(A1-Pad6)" "unconnected-(A1-Pad21)" 63 | "Net-(A1-Pad7)" "unconnected-(A1-Pad22)" "Net-(A1-Pad8)" "unconnected-(A1-Pad23)" "Net-(A1-Pad9)" "Net-(A1-Pad10)" "Net-(A1-Pad11)" "unconnected-(A1-Pad24)" 64 | "Net-(A1-Pad13)" "Net-(A1-Pad14)" "Net-(A1-Pad15)" "Net-(J2-Pad1)" "Net-(J2-Pad14)" "Net-(J2-Pad13)" "Net-(R3-Pad2)" "unconnected-(A1-Pad3)" 65 | "unconnected-(A1-Pad16)" "unconnected-(A1-Pad17)" "unconnected-(A1-Pad18)" "unconnected-(A1-Pad25)" "unconnected-(A1-Pad26)" "unconnected-(A1-Pad28)" "unconnected-(A1-Pad30)" "unconnected-(J1-Pad2)" 66 | "unconnected-(J1-Pad6)" "unconnected-(J2-Pad4)" "unconnected-(J2-Pad9)" "unconnected-(J2-Pad11)" "unconnected-(J2-Pad12)" "unconnected-(J2-Pad15)" 67 | (clearance_class default) 68 | (via_rule default) 69 | (rule 70 | (width 250.0) 71 | ) 72 | (circuit 73 | (use_layer F.Cu B.Cu) 74 | ) 75 | ) 76 | (class "kicad_default" 77 | (clearance_class "kicad_default") 78 | (via_rule kicad_default) 79 | (rule 80 | (width 250.0) 81 | ) 82 | (circuit 83 | (use_layer F.Cu B.Cu) 84 | ) 85 | ) 86 | (class Power 87 | GND +5V 88 | (clearance_class Power) 89 | (via_rule Power) 90 | (rule 91 | (width 500.0) 92 | ) 93 | (circuit 94 | (use_layer F.Cu B.Cu) 95 | ) 96 | ) 97 | ) -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/ArduinoPC.ses: -------------------------------------------------------------------------------- 1 | 2 | (session ArduinoPC.ses 3 | (base_design ArduinoPC.dsn) 4 | (placement 5 | (resolution um 10) 6 | (component ArduinoPC:Arduino_Nano 7 | (place A1 1648460 -1029870 front 270) 8 | ) 9 | (component ArduinoPC:FP_MINI_DIN_6_PS2 10 | (place J1 1230350 -927100 front 90) 11 | ) 12 | (component "ArduinoPC:VGA DSUB15HD_female" 13 | (place J2 1526540 -961390 front 180) 14 | ) 15 | (component Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal 16 | (place R1 1562100 -984250 front 180) 17 | ) 18 | (component Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal::1 19 | (place R2 1670050 -984250 front 180) 20 | ) 21 | (component Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal::2 22 | (place R3 1454150 -984250 front 180) 23 | ) 24 | (component "Package_DIP:DIP-16_W7.62mm" 25 | (place U1 1470810 -1144170 front 90) 26 | ) 27 | ) 28 | (was_is 29 | ) 30 | (routes 31 | (resolution um 10) 32 | (parser 33 | (host_cad "KiCad's Pcbnew") 34 | (host_version "(6.0.5)") 35 | ) 36 | (library_out 37 | (padstack "Via[0-1]_800:400_um" 38 | (shape 39 | (circle F.Cu 8000 0 0) 40 | ) 41 | (shape 42 | (circle B.Cu 8000 0 0) 43 | ) 44 | (attach off) 45 | ) 46 | ) 47 | (network_out 48 | (net "Net-(A1-Pad1)" 49 | (wire 50 | (path F.Cu 2500 51 | 1648460 -1029870 52 | 1648460 -1041123 53 | ) 54 | ) 55 | (wire 56 | (path F.Cu 2500 57 | 1521610 -1144170 58 | 1532863 -1144170 59 | ) 60 | ) 61 | (wire 62 | (path F.Cu 2500 63 | 1532863 -1144170 64 | 1532863 -1146983 65 | 1541410 -1155530 66 | 1627784 -1155530 67 | 1635910 -1147404 68 | 1635910 -1111943 69 | 1664798 -1083055 70 | 1664798 -1057461 71 | 1648460 -1041123 72 | ) 73 | ) 74 | ) 75 | (net "Net-(A1-Pad2)" 76 | (wire 77 | (path F.Cu 2500 78 | 1623060 -1029870 79 | 1634313 -1029870 80 | ) 81 | ) 82 | (wire 83 | (path F.Cu 2500 84 | 1496210 -1144170 85 | 1507463 -1144170 86 | ) 87 | ) 88 | (wire 89 | (path F.Cu 2500 90 | 1507463 -1144170 91 | 1507463 -1146983 92 | 1520526 -1160046 93 | 1648928 -1160046 94 | 1669342 -1139632 95 | 1669342 -1029921 96 | 1658038 -1018617 97 | 1638532 -1018617 98 | 1634313 -1022836 99 | 1634313 -1029870 100 | ) 101 | ) 102 | ) 103 | (net "Net-(A1-Pad19)" 104 | (wire 105 | (path B.Cu 2500 106 | 1369060 -1182270 107 | 1369060 -1171017 108 | ) 109 | ) 110 | (wire 111 | (path B.Cu 2500 112 | 1343350 -960600 113 | 1343350 -978422 114 | 1306741 -1015031 115 | 1306741 -1108698 116 | 1369060 -1171017 117 | ) 118 | ) 119 | ) 120 | (net "Net-(A1-Pad20)" 121 | (wire 122 | (path F.Cu 2500 123 | 1394460 -1182270 124 | 1394460 -1171017 125 | ) 126 | ) 127 | (wire 128 | (path F.Cu 2500 129 | 1319350 -940100 130 | 1309930 -940100 131 | 1264936 -985094 132 | 1264936 -1041493 133 | 1394460 -1171017 134 | ) 135 | ) 136 | ) 137 | (net "Net-(A1-Pad5)" 138 | (wire 139 | (path B.Cu 2500 140 | 1546860 -1041123 141 | 1558263 -1052526 142 | 1558263 -1121664 143 | 1547010 -1132917 144 | ) 145 | ) 146 | (wire 147 | (path B.Cu 2500 148 | 1547010 -1144170 149 | 1547010 -1132917 150 | ) 151 | ) 152 | (wire 153 | (path B.Cu 2500 154 | 1546860 -1029870 155 | 1546860 -1041123 156 | ) 157 | ) 158 | ) 159 | (net "Net-(A1-Pad6)" 160 | (wire 161 | (path B.Cu 2500 162 | 1521460 -1029870 163 | 1532713 -1029870 164 | ) 165 | ) 166 | (wire 167 | (path B.Cu 2500 168 | 1572410 -1144170 169 | 1572410 -1102913 170 | 1584145 -1091178 171 | 1584145 -1062502 172 | 1559560 -1037917 173 | 1559560 -1026525 174 | 1551512 -1018477 175 | 1542108 -1018477 176 | 1532713 -1027872 177 | 1532713 -1029870 178 | ) 179 | ) 180 | ) 181 | (net "Net-(A1-Pad7)" 182 | (wire 183 | (path B.Cu 2500 184 | 1611957 -1067970 185 | 1611957 -1061106 186 | 1584960 -1034109 187 | 1584960 -1026503 188 | 1572431 -1013974 189 | 1521073 -1013974 190 | 1507313 -1027734 191 | 1507313 -1029870 192 | ) 193 | ) 194 | (wire 195 | (path B.Cu 2500 196 | 1496060 -1029870 197 | 1507313 -1029870 198 | ) 199 | ) 200 | (wire 201 | (path B.Cu 2500 202 | 1623210 -1067970 203 | 1611957 -1067970 204 | ) 205 | ) 206 | ) 207 | (net "Net-(A1-Pad8)" 208 | (wire 209 | (path F.Cu 2500 210 | 1609063 -1067970 211 | 1609063 -1070783 212 | 1617662 -1079382 213 | 1653675 -1079382 214 | 1659989 -1073068 215 | 1659989 -1063326 216 | 1637786 -1041123 217 | 1490352 -1041123 218 | 1481913 -1032684 219 | 1481913 -1029870 220 | ) 221 | ) 222 | (wire 223 | (path F.Cu 2500 224 | 1470660 -1029870 225 | 1481913 -1029870 226 | ) 227 | ) 228 | (wire 229 | (path F.Cu 2500 230 | 1597810 -1067970 231 | 1609063 -1067970 232 | ) 233 | ) 234 | ) 235 | (net "Net-(A1-Pad9)" 236 | (wire 237 | (path F.Cu 2500 238 | 1572410 -1067970 239 | 1561157 -1067970 240 | ) 241 | ) 242 | (wire 243 | (path F.Cu 2500 244 | 1561157 -1067970 245 | 1561157 -1070783 246 | 1552622 -1079318 247 | 1466177 -1079318 248 | 1445260 -1058401 249 | 1445260 -1029870 250 | ) 251 | ) 252 | ) 253 | (net "Net-(A1-Pad10)" 254 | (wire 255 | (path B.Cu 2500 256 | 1419860 -1029870 257 | 1431113 -1029870 258 | ) 259 | ) 260 | (wire 261 | (path B.Cu 2500 262 | 1521610 -1067970 263 | 1510357 -1067970 264 | ) 265 | ) 266 | (wire 267 | (path B.Cu 2500 268 | 1510357 -1067970 269 | 1510357 -1065156 270 | 1501918 -1056717 271 | 1455147 -1056717 272 | 1431113 -1032683 273 | 1431113 -1029870 274 | ) 275 | ) 276 | ) 277 | (net "Net-(A1-Pad11)" 278 | (wire 279 | (path F.Cu 2500 280 | 1394460 -1029870 281 | 1405713 -1029870 282 | ) 283 | ) 284 | (wire 285 | (path F.Cu 2500 286 | 1623210 -1144170 287 | 1611957 -1144170 288 | ) 289 | ) 290 | (wire 291 | (path F.Cu 2500 292 | 1611957 -1144170 293 | 1611957 -1142060 294 | 1575967 -1106070 295 | 1479100 -1106070 296 | 1405713 -1032683 297 | 1405713 -1029870 298 | ) 299 | ) 300 | ) 301 | (net +5V 302 | (wire 303 | (path B.Cu 5000 304 | 1572260 -1182270 305 | 1572260 -1169767 306 | ) 307 | ) 308 | (wire 309 | (path B.Cu 5000 310 | 1648610 -1067970 311 | 1648610 -1080473 312 | ) 313 | ) 314 | (wire 315 | (path B.Cu 5000 316 | 1648610 -1080473 317 | 1643160 -1080473 318 | 1585110 -1138523 319 | 1585110 -1156917 320 | 1572260 -1169767 321 | ) 322 | ) 323 | (wire 324 | (path B.Cu 5000 325 | 1319350 -893600 326 | 1363561 -937811 327 | 1363561 -988199 328 | 1382096 -1006734 329 | 1389146 -1006734 330 | 1407160 -1024748 331 | 1407160 -1035106 332 | 1440024 -1067970 333 | 1470810 -1067970 334 | ) 335 | ) 336 | (wire 337 | (path F.Cu 5000 338 | 1648610 -1067970 339 | 1636107 -1067970 340 | ) 341 | ) 342 | (wire 343 | (path F.Cu 5000 344 | 1470810 -1067970 345 | 1483313 -1067970 346 | ) 347 | ) 348 | (wire 349 | (path F.Cu 5000 350 | 1483313 -1067970 351 | 1483313 -1062500 352 | 1490520 -1055293 353 | 1628869 -1055293 354 | 1636107 -1062531 355 | 1636107 -1067970 356 | ) 357 | ) 358 | ) 359 | (net "Net-(A1-Pad13)" 360 | (wire 361 | (path F.Cu 2500 362 | 1343660 -1029870 363 | 1354913 -1029870 364 | ) 365 | ) 366 | (wire 367 | (path F.Cu 2500 368 | 1593850 -984250 369 | 1582597 -984250 370 | ) 371 | ) 372 | (wire 373 | (path F.Cu 2500 374 | 1582597 -984250 375 | 1548230 -1018617 376 | 1363352 -1018617 377 | 1354913 -1027056 378 | 1354913 -1029870 379 | ) 380 | ) 381 | ) 382 | (net "Net-(A1-Pad14)" 383 | (wire 384 | (path B.Cu 2500 385 | 1318260 -1029870 386 | 1329513 -1029870 387 | ) 388 | ) 389 | (wire 390 | (path B.Cu 2500 391 | 1496210 -1067970 392 | 1484957 -1067970 393 | ) 394 | ) 395 | (wire 396 | (path B.Cu 2500 397 | 1484957 -1067970 398 | 1484957 -1070783 399 | 1476348 -1079392 400 | 1376222 -1079392 401 | 1329513 -1032683 402 | 1329513 -1029870 403 | ) 404 | ) 405 | ) 406 | (net "Net-(A1-Pad15)" 407 | (wire 408 | (path F.Cu 2500 409 | 1292860 -1029870 410 | 1304113 -1029870 411 | ) 412 | ) 413 | (wire 414 | (path F.Cu 2500 415 | 1485900 -984250 416 | 1474647 -984250 417 | ) 418 | ) 419 | (wire 420 | (path F.Cu 2500 421 | 1474647 -984250 422 | 1463394 -995503 423 | 1335667 -995503 424 | 1304113 -1027057 425 | 1304113 -1029870 426 | ) 427 | ) 428 | ) 429 | (net "Net-(J2-Pad1)" 430 | (wire 431 | (path B.Cu 2500 432 | 1454150 -984250 433 | 1454150 -966280 434 | 1481540 -938890 435 | ) 436 | ) 437 | (wire 438 | (path F.Cu 2500 439 | 1504040 -938890 440 | 1481540 -938890 441 | ) 442 | ) 443 | (wire 444 | (path F.Cu 2500 445 | 1526540 -938890 446 | 1504040 -938890 447 | ) 448 | ) 449 | ) 450 | (net "Net-(J2-Pad14)" 451 | (wire 452 | (path F.Cu 2500 453 | 1670050 -984250 454 | 1588436 -902636 455 | 1562786 -902636 456 | 1549040 -888890 457 | ) 458 | ) 459 | ) 460 | (net "Net-(J2-Pad13)" 461 | (wire 462 | (path B.Cu 2500 463 | 1562100 -984250 464 | 1582831 -963519 465 | 1582831 -920451 466 | 1565016 -902636 467 | 1540286 -902636 468 | 1526540 -888890 469 | ) 470 | ) 471 | ) 472 | (net "Net-(R3-Pad2)" 473 | (wire 474 | (path B.Cu 2500 475 | 1377950 -984250 476 | 1389203 -984250 477 | ) 478 | ) 479 | (wire 480 | (path B.Cu 2500 481 | 1547010 -1067970 482 | 1535757 -1067970 483 | ) 484 | ) 485 | (wire 486 | (path B.Cu 2500 487 | 1535757 -1067970 488 | 1535757 -1065157 489 | 1517415 -1046815 490 | 1496982 -1046815 491 | 1481913 -1031746 492 | 1481913 -1025208 493 | 1452208 -995503 494 | 1400456 -995503 495 | 1389203 -984250 496 | ) 497 | ) 498 | ) 499 | ) 500 | ) 501 | ) -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/alternate.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/alternate.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74HC165 5 | # 6 | DEF 74HC165 U 0 40 Y Y 1 L N 7 | F0 "U" -300 750 50 H V C CNN 8 | F1 "74HC165" -300 -850 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | DIP?16* 13 | $ENDFPLIST 14 | DRAW 15 | S -300 700 300 -800 1 1 10 f 16 | X ~PL 1 -500 -600 200 R 50 50 1 0 I 17 | X DS 10 -500 600 200 R 50 50 1 0 I 18 | X D0 11 -500 500 200 R 50 50 1 0 I 19 | X D1 12 -500 400 200 R 50 50 1 0 I 20 | X D2 13 -500 300 200 R 50 50 1 0 I 21 | X D3 14 -500 200 200 R 50 50 1 0 I 22 | X ~CE 15 500 -600 200 L 50 50 1 0 I 23 | X VCC 16 0 900 200 D 50 50 1 0 W 24 | X CP 2 -500 -300 200 R 50 50 1 0 I 25 | X D4 3 -500 100 200 R 50 50 1 0 I 26 | X D5 4 -500 0 200 R 50 50 1 0 I 27 | X D6 5 -500 -100 200 R 50 50 1 0 I 28 | X D7 6 -500 -200 200 R 50 50 1 0 I 29 | X ~Q7 7 500 500 200 L 50 50 1 0 O 30 | X GND 8 0 -1000 200 U 50 50 1 0 W 31 | X Q7 9 500 600 200 L 50 50 1 0 O 32 | ENDDRAW 33 | ENDDEF 34 | # 35 | # 74HC166 36 | # 37 | DEF 74HC166 U 0 40 Y Y 1 L N 38 | F0 "U" -300 750 50 H V C CNN 39 | F1 "74HC166" 0 -50 50 V V C CNN 40 | F2 "" 0 0 50 H I C CNN 41 | F3 "" 0 0 50 H I C CNN 42 | $FPLIST 43 | DIP?16* 44 | $ENDFPLIST 45 | DRAW 46 | S -300 700 300 -800 1 1 10 f 47 | X DS 1 -500 600 200 R 50 50 1 0 I 48 | X D4 10 -500 100 200 R 50 50 1 0 I 49 | X D5 11 -500 0 200 R 50 50 1 0 I 50 | X D6 12 -500 -100 200 R 50 50 1 0 I 51 | X Q7 13 500 600 200 L 50 50 1 0 O 52 | X D7 14 -500 -200 200 R 50 50 1 0 I 53 | X ~PE 15 500 -500 200 L 50 50 1 0 I 54 | X VCC 16 0 900 200 D 50 50 1 0 W 55 | X D0 2 -500 500 200 R 50 50 1 0 I 56 | X D1 3 -500 400 200 R 50 50 1 0 I 57 | X D2 4 -500 300 200 R 50 50 1 0 I 58 | X D3 5 -500 200 200 R 50 50 1 0 I 59 | X ~CE 6 500 -300 200 L 50 50 1 0 I 60 | X CP 7 500 -700 200 L 50 50 1 0 I 61 | X GND 8 0 -1000 200 U 50 50 1 0 W 62 | X ~MR 9 500 -100 200 L 50 50 1 0 I 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # 74HC173 67 | # 68 | DEF 74HC173 U 0 40 Y Y 1 L N 69 | F0 "U" -300 750 50 H V C CNN 70 | F1 "74HC173" -300 -750 50 H V C CNN 71 | F2 "" 0 0 50 H I C CNN 72 | F3 "" 0 0 50 H I C CNN 73 | $FPLIST 74 | DIP?16* 75 | $ENDFPLIST 76 | DRAW 77 | S -300 700 300 -700 1 1 10 f 78 | X ~OE1 1 -500 100 200 R 50 50 1 0 I 79 | X ~E2 10 -500 -300 200 R 50 50 1 0 I 80 | X D3 11 -500 300 200 R 50 50 1 0 I 81 | X D2 12 -500 400 200 R 50 50 1 0 I 82 | X D1 13 -500 500 200 R 50 50 1 0 I 83 | X D0 14 -500 600 200 R 50 50 1 0 I 84 | X MR 15 -500 -600 200 R 50 50 1 0 I 85 | X VCC 16 0 900 200 D 50 50 1 0 W 86 | X ~OE2 2 -500 0 200 R 50 50 1 0 I 87 | X Q0 3 500 600 200 L 50 50 1 0 T 88 | X Q1 4 500 500 200 L 50 50 1 0 T 89 | X Q2 5 500 400 200 L 50 50 1 0 T 90 | X Q3 6 500 300 200 L 50 50 1 0 T 91 | X CP 7 -500 -400 200 R 50 50 1 0 I C 92 | X GND 8 0 -900 200 U 50 50 1 0 W 93 | X ~E1 9 -500 -200 200 R 50 50 1 0 I 94 | ENDDRAW 95 | ENDDEF 96 | # 97 | # 74HC193 98 | # 99 | DEF 74HC193 U 0 20 Y Y 1 F N 100 | F0 "U" -300 550 50 H V C CNN 101 | F1 "74HC193" 200 550 50 H V C CNN 102 | F2 "" 0 0 50 H I C CNN 103 | F3 "" 0 0 50 H I C CNN 104 | ALIAS 74LS193 105 | $FPLIST 106 | SOIC*3.9x9.9mm*P1.27mm* 107 | DIP*W7.62mm* 108 | $ENDFPLIST 109 | DRAW 110 | S -300 500 300 -600 1 1 10 f 111 | X D1 1 -500 300 200 R 50 50 1 0 I 112 | X D2 10 -500 200 200 R 50 50 1 0 I 113 | X ~PL 11 -500 -100 200 R 50 50 1 0 I 114 | X ~TCU 12 500 -100 200 L 50 50 1 0 O 115 | X ~TCD 13 500 -300 200 L 50 50 1 0 O 116 | X MR 14 -500 -500 200 R 50 50 1 0 I 117 | X D0 15 -500 400 200 R 50 50 1 0 I 118 | X VCC 16 0 700 200 D 50 50 1 0 W 119 | X Q1 2 500 300 200 L 50 50 1 0 O 120 | X Q0 3 500 400 200 L 50 50 1 0 O 121 | X CPD 4 -500 -400 200 R 50 50 1 0 I C 122 | X CPU 5 -500 -300 200 R 50 50 1 0 I C 123 | X Q2 6 500 200 200 L 50 50 1 0 O 124 | X Q3 7 500 100 200 L 50 50 1 0 O 125 | X GND 8 0 -800 200 U 50 50 1 0 W 126 | X D3 9 -500 100 200 R 50 50 1 0 I 127 | ENDDRAW 128 | ENDDEF 129 | # 130 | # ATmega48PV-10PU 131 | # 132 | DEF ATmega48PV-10PU U 0 20 Y Y 1 F N 133 | F0 "U" -500 1450 50 H V L BNN 134 | F1 "ATmega48PV-10PU" 100 -1450 50 H V L TNN 135 | F2 "Package_DIP:DIP-28_W7.62mm" 0 0 50 H I C CIN 136 | F3 "" 0 0 50 H I C CNN 137 | ALIAS ATmega48P-20PU ATmega48A-PU ATmega48PA-PU ATmega88PV-10PU ATmega88P-20PU ATmega88A-PU ATmega88PA-PU ATmega168PV-10PU ATmega168P-20PU ATmega168A-PU ATmega168PA-PU ATmega328-PU ATmega328P-PU 138 | $FPLIST 139 | DIP*W7.62mm* 140 | $ENDFPLIST 141 | DRAW 142 | S -500 -1400 500 1400 0 1 10 f 143 | X ~RESET~/PC6 1 600 -300 100 L 50 50 1 1 B 144 | X XTAL2/PB7 10 600 500 100 L 50 50 1 1 B 145 | X PD5 11 600 -1000 100 L 50 50 1 1 B 146 | X PD6 12 600 -1100 100 L 50 50 1 1 B 147 | X PD7 13 600 -1200 100 L 50 50 1 1 B 148 | X PB0 14 600 1200 100 L 50 50 1 1 B 149 | X PB1 15 600 1100 100 L 50 50 1 1 B 150 | X PB2 16 600 1000 100 L 50 50 1 1 B 151 | X PB3 17 600 900 100 L 50 50 1 1 B 152 | X PB4 18 600 800 100 L 50 50 1 1 B 153 | X PB5 19 600 700 100 L 50 50 1 1 B 154 | X PD0 2 600 -500 100 L 50 50 1 1 B 155 | X AVCC 20 100 1500 100 D 50 50 1 1 W 156 | X AREF 21 -600 1200 100 R 50 50 1 1 P 157 | X GND 22 0 -1500 100 U 50 50 1 1 P 158 | X PC0 23 600 300 100 L 50 50 1 1 B 159 | X PC1 24 600 200 100 L 50 50 1 1 B 160 | X PC2 25 600 100 100 L 50 50 1 1 B 161 | X PC3 26 600 0 100 L 50 50 1 1 B 162 | X PC4 27 600 -100 100 L 50 50 1 1 B 163 | X PC5 28 600 -200 100 L 50 50 1 1 B 164 | X PD1 3 600 -600 100 L 50 50 1 1 B 165 | X PD2 4 600 -700 100 L 50 50 1 1 B 166 | X PD3 5 600 -800 100 L 50 50 1 1 B 167 | X PD4 6 600 -900 100 L 50 50 1 1 B 168 | X VCC 7 0 1500 100 D 50 50 1 1 W 169 | X GND 8 -100 -1500 100 U 50 50 1 1 W 170 | X XTAL1/PB6 9 600 600 100 L 50 50 1 1 B 171 | ENDDRAW 172 | ENDDEF 173 | # 174 | #End Library 175 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name "ArduinoPC")(type "KiCad")(uri "${KIPRJMOD}/ArduinoPC.pretty")(options "")(descr "")) 3 | (lib (name "logo")(type "KiCad")(uri "${KIPRJMOD}/logo.pretty")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /Rev2/KiCAD (monochrome)/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name ArduinoPC)(type Legacy)(uri ${KIPRJMOD}/ArduinoPC.lib)(options "")(descr "")) 3 | (lib (name alternate)(type Legacy)(uri ${KIPRJMOD}/alternate.lib)(options "")(descr "")) 4 | (lib (name ArduinoPC-rescue)(type Legacy)(uri ${KIPRJMOD}/ArduinoPC-rescue.lib)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /Rev2/Library (mono & color)/os/os.S: -------------------------------------------------------------------------------- 1 | // *************************************************************** 2 | // ***** Assembly HSYNC (TIMER0) interrupt vector ***** 3 | // ***** by Carsten Herting (slu4), last update: 17.07.2023 ***** 4 | // ***** copy 'os.h' and 'os.S' into '/Arduino/libraries/os' ***** 5 | // *************************************************************** 6 | 7 | #define __SFR_OFFSET 0x00 // set the Special Function Register Offset from 0x20 to 0x00 in order to use AVR PORT definitions 8 | #include // include PORTB, DDRD, ... symbols for easier register access 9 | 10 | .global TIMER0_COMPA_vect // define this global to make the Arduino IDE integrate the ISR 11 | 12 | // *************************************************************** 13 | 14 | .macro ONECHAR // Z: address of char data (MSB is fixed, LSB depends on char), X: current VRAM position (one line) 15 | ld ZL, X+ // 2CP ZL = (X), X = X + 1 16 | lpm r21, Z // 3CP get font byte from program memory for current chr on current line 17 | out PORTD, r21 // 1CP put data to shift register's parallel input 18 | out PORTB, r24 // 1CP /PE LOW (next CLK rising edge will load pixel data) 19 | out PORTB, r23 // 1CP /PE HIGH (now CLK will pump out 8 pixels) 20 | .endm 21 | 22 | // *************************************************************** 23 | 24 | TIMER0_COMPA_vect: // ISR table entry is automatically generated by the AVR assembler 25 | push r1 // save r1 and r0 (r0-1 are modified by the result of a multiplication) 26 | push r0 27 | in r0, SREG // reads the AVR status register SREG 0x3f holding the complete flag state 28 | push r0 // push it on the stack, too 29 | 30 | push r20 // push content on stack, so we can use this register right away 31 | 32 | lds r20, TCNT2 // interrupt jitter compensation using timer TCNT2 33 | cpi r20, 4 34 | breq .+8 35 | cpi r20, 3 36 | breq .+6 37 | cpi r20, 2 38 | breq .+4 39 | nop 40 | nop 41 | nop 42 | 43 | cbi PORTB, 4 // start HSYNC pulse by hand 44 | 45 | push r21 // push current values of registers to be used onto stack 46 | push r22 47 | push r23 48 | push r24 49 | push r25 50 | push r26 // X 51 | push r27 52 | push r30 // Z 53 | push r31 54 | 55 | lds r20, vline+0 // lade vline nach r20-21 56 | lds r21, vline+1 57 | movw r24, r20 // copy register pair r20/21 -> r24/25 58 | adiw r24, 1 // erhöhe vline um 1 59 | sts vline+1, r25 // speichere vline wieder 60 | sts vline+0, r24 61 | lsr r21 // divide vline by 2 and subtract 30 ??? lsr also okay?? 62 | ror r20 63 | subi r20, 30 // r20 = pixel line "lin" 64 | 65 | sbi PORTB, 4 // ??? end HSYNC (after only 1µ, should be 3,8µs but this buys valuable time here) 66 | 67 | in r22, PINC // r22 = scan PS/2 keyboard state (CLK and DAT) every 32µs 68 | // Note: This is not quite fast enough to cover the full PS/2 spec 69 | // (10.0 - 16.7kHz) but works fine with all PS/2 keyboards I have checked. 70 | 71 | mov r21, r20 // calculate VRAM row address from lin 72 | lsr r21 73 | lsr r21 74 | lsr r21 // lin>>3 = row number 75 | ldi r23, 40 76 | mul r23, r21 // ATTENTION: calculate * 40 => RESULT is in r0-r1!!! 77 | movw r30, r0 // RESULT r0-1 to r30-31 (Z): index of VRAM row 78 | 79 | ldi r24, 0 // needed for add with carry (see below) 80 | ldi XL, lo8(cram) // output the row color to pins A2-A5 (C2-C5) 81 | ldi XH, hi8(cram) 82 | add XL, r21 // add row number index to start address 83 | adc XH, r24 // takes a potential carry flag into account 84 | ld r21, X // load row color from (X) 85 | lsl r21 // shift color info 2 steps up to C2..5 86 | lsl r21 87 | ori r21, 3 // make sure the 20k-pull-ups stay always on for PS/2 CLK and DAT 88 | out PORTC, r21 // output color information 89 | 90 | ldi XL, lo8(vram) 91 | ldi XH, hi8(vram) 92 | add XH, ZH // add VRAM row index to VRAM start address 93 | add XL, ZL // r26-27 = X = VRAM row address 94 | adc XH, r24 // takes a potential carry flag into account 95 | 96 | mov r21, r20 // get lin a 2nd time 97 | andi r21, 7 // only use lowest 3 bits of lin to determin charset line 98 | 99 | ldi ZH, hi8(charset) // charset must be aligned to 256 bytes 100 | add ZH, r21 // now ZH points to the charset line 101 | 102 | in r23, PORTB // prepare the two different /PE states for ultra-fast switching 103 | mov r24, r23 // r23: B3=1 104 | andi r24, 0x37 // r24: B3=0 105 | 106 | cpi r20, 200 // draw 200 scanlines (25 x 8) 107 | brcs drawPixels 108 | jmp regHandler 109 | 110 | drawPixels: ldi r20, 11 // shifts screen left BUT BE CAREFUL: if routine takes too long, it won't fit into a scanline! 111 | wait: dec r20 112 | brne wait 113 | 114 | ONECHAR // transmit 40 characters at a rate of 2MHz (16MHz pixel clock) 115 | ONECHAR 116 | ONECHAR 117 | ONECHAR 118 | ONECHAR 119 | ONECHAR 120 | ONECHAR 121 | ONECHAR 122 | ONECHAR 123 | ONECHAR 124 | 125 | ONECHAR 126 | ONECHAR 127 | ONECHAR 128 | ONECHAR 129 | ONECHAR 130 | ONECHAR 131 | ONECHAR 132 | ONECHAR 133 | ONECHAR 134 | ONECHAR 135 | 136 | ONECHAR 137 | ONECHAR 138 | ONECHAR 139 | ONECHAR 140 | ONECHAR 141 | ONECHAR 142 | ONECHAR 143 | ONECHAR 144 | ONECHAR 145 | ONECHAR 146 | 147 | ONECHAR 148 | ONECHAR 149 | ONECHAR 150 | ONECHAR 151 | ONECHAR 152 | ONECHAR 153 | ONECHAR 154 | ONECHAR 155 | ONECHAR 156 | ONECHAR 157 | 158 | regHandler: mov r23, r22 159 | andi r23, 2 // r23 = isolated DAT in bit1 160 | andi r22, 1 // r22 = isolated current CLK in bit0, operation sets Z flag 161 | breq regLow // CLK = 0? 162 | 163 | lds r30, data+1 // CLK = 1! 164 | cpi r30, 0 // high byte will contain at least the high stop bit if data is present 165 | breq regEnd // don't do anything if no data is present 166 | 167 | lds r30, cnts // we have data! => Check for end of datagram... 168 | inc r30 169 | sts cnts, r30 // cnts++ 170 | cpi r30, 8 // cnts >= 8? 171 | brlo regEnd 172 | 173 | ldi ZH, hi8(reg) // DATAGRAM finished! => prepare Z for an indirect store 174 | ldi ZL, lo8(reg) 175 | lds r21, regin // load direct from data space: "regin" index 176 | add ZL, r21 177 | ldi r21, 0 178 | adc ZH, r21 179 | 180 | lds r21, data+0 // load low PS/2 data byte (start bit is shifted out) 181 | st Z, r21 // store scan code -> (Z) 182 | 183 | lds r30, regin // again load "regin" index for incrementation 184 | inc r30 // regin++ 185 | andi r30, 7 // only use 8 bytes for KEYBUFSIZE (wrap around) 186 | sts regin, r30 // store regin back to data space 187 | ldi r30, 0 188 | sts data+1, r30 // invalidate the PS/2 data by setting MSB to zero 189 | jmp regEnd 190 | 191 | regLow: lds r21, prev // CLK = 0! => load previous CLK state 192 | cp r22, r21 // compare the two CLK states for a change 193 | breq regEnd // CLK falling edge? 194 | 195 | ldi r30, 0 196 | sts cnts, r30 // reset the counter after rising edge 197 | lds r20, data // load data into r20-21 198 | lds r21, data+1 199 | lsr r21 // shift data one step down 200 | ror r20 201 | or r21, r23 // insert the (previous) DAT as bit9 202 | sts data+0, r20 // store data 203 | sts data+1, r21 204 | 205 | regEnd: sts prev, r22 // remember the state of CLK 206 | pop r31 // restore previous values of used registers 207 | pop r30 // Z 208 | pop r27 209 | pop r26 // X 210 | pop r25 211 | pop r24 212 | pop r23 213 | pop r22 214 | pop r21 215 | pop r20 216 | pop r0 // restore the AVR status register SREG 0x3f value 217 | out SREG, r0 // set the SREG back to what it was 218 | pop r0 // restore r0, r1 219 | pop r1 220 | reti // return from interrupt 221 | /* 222 | ----------- 223 | MIT License 224 | ----------- 225 | Copyright (c) 2023 Carsten Herting 226 | Permission is hereby granted, free of charge, to any person obtaining a copy of 227 | this software and associated documentation files (the "Software"), to deal in 228 | the Software without restriction, including without limitation the rights to 229 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 230 | of the Software, and to permit persons to whom the Software is furnished to do 231 | so, subject to the following conditions: 232 | The above copyright notice and this permission notice shall be included in all 233 | copies or substantial portions of the Software. 234 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 235 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 236 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 237 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 238 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 239 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 240 | SOFTWARE. 241 | */ 242 | -------------------------------------------------------------------------------- /Rev2/Library (mono & color)/readme.md: -------------------------------------------------------------------------------- 1 | # Header Library 2 | 3 | Copy the folder 'os' containing the header library files to '/Arduino/libraries/'. 4 | 5 | See 'Arduino IDE/File/Preferences' if you are unsure where to find it). 6 | Be sure to start a new sketch with '#include '. 7 | 8 | Have fun! 9 | -------------------------------------------------------------------------------- /Rev2/Schematic (color).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/Schematic (color).pdf -------------------------------------------------------------------------------- /Rev2/Schematic (monochrome).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/slu4coder/Arduino-Nano-PC/a53506b95b5c2d525aa550fd55981b76d5af3cfd/Rev2/Schematic (monochrome).pdf -------------------------------------------------------------------------------- /Sketches/NanoBlocks/NanoBlocks.ino: -------------------------------------------------------------------------------- 1 | #include // copy the files 'os.h' and 'os.S' into the folder '.../Arduino/libraries/os' 2 | 3 | char state, x, y, waiting; 4 | int score, high = 0; 5 | char shape[10]; // holding the current shape (with offset) 6 | const char minos[7][10] PROGMEM = { { 0, 0, 1, 0, 0, -1, 1, -1, 0, 1 }, // Quadrat (with SRS offset) 7 | { -1, -1, 0, -1, 0, 0, 1, 0, 0, 0 }, // Z 8 | { -1, 0, 0, 0, 0, -1, 1, -1, 0, 0 }, // neg. Z 9 | { -1, 0, 0, 0, 1, 0, 2, 0, 0, 1 }, // I 10 | { -1, 0, 0, 0, 1, 0, 0, -1, 0, 0 }, // Podest 11 | { -1, -1, -1, 0, 0, 0, 1, 0, 0, 0 }, // L 12 | { -1, 0, 0, 0, 1, 0, 1, -1, 0, 0 } }; // neg. L 13 | 14 | void drawintro() 15 | { 16 | os::fill(); 17 | os::text(F("A R D U I N O B L O C K S"), 6, 10, CYAN); 18 | os::text(F("Press SPACE"), 13, 23, YELLOW); 19 | } 20 | 21 | void drawfield() 22 | { 23 | os::fill(); 24 | for (byte i=0; i<5; i++) os::text(F(""), 12, i, CYAN); 25 | for (byte i=5; i<20; i++) os::text(F(""), 12, i, WHITE); 26 | os::text(F(""), 12, 20, CYAN); 27 | os::text(F(" VVVVVVVVVV "), 12, 21, MAGENTA); 28 | os::text(F("SCORE 0"), 0, 0, GREEN); 29 | os::text(F("HIGH"), 27, 0); 30 | os::text(String(high, DEC), 32, 0); 31 | os::text(F("CONTROLS"), 0, 3, CYAN); 32 | os::text(F("A - Left"), 0, 5, GRAY); 33 | os::text(F("D - Right"), 0, 6, GRAY); 34 | os::text(F("W - Rotate"), 0, 7, GRAY); 35 | os::text(F("S - Drop"), 0, 8, GRAY); 36 | } 37 | 38 | boolean testShape(char x, char y) 39 | { 40 | boolean isok = true; 41 | for (char i=0; i<8; i+=2) 42 | { 43 | if (x + shape[i] < 14+0 || x + shape[i] > 14+9) { isok = false; break; } // linker / rechter Rand 44 | if (y + shape[i+1] < 0 || y + shape[i+1] > 19) { isok = false; break; } // oberer / unterer Rand 45 | if (os::vram[y + shape[i+1]][x + shape[i]] != '.') { isok = false; break; } // Spielfeld 46 | } 47 | return isok; 48 | } 49 | 50 | void newShape() 51 | { 52 | byte m = random(7); 53 | for (char i=0; i<10; i++) shape[i] = pgm_read_byte_near(&minos[m][i]); 54 | x = 14+4; y = 1; 55 | if (testShape(x, y)) drawShape('#'); 56 | else 57 | { 58 | os::text(F("GAME OVER"), 14, 10, RED); 59 | os::text(F("Press SPACE"), 13, 23, YELLOW); 60 | state = 2; 61 | } 62 | } 63 | 64 | void rotShape() 65 | { 66 | char rotshape[10]; 67 | for(char i=0; i<10; i+=2) 68 | { 69 | rotshape[i] = shape[i+1]; 70 | rotshape[i+1] = -shape[i]; 71 | } 72 | for (char i=0; i<10; i++) shape[i] = rotshape[i]; 73 | x += shape[8]; y+= shape[9]; // add rotated offset correction 74 | } 75 | 76 | void drawShape(char c) 77 | { 78 | for (char i=0; i<8; i+=2) os::vram[y + shape[i+1]][x + shape[i]] = c; // Shape ins Feld schreiben 79 | } 80 | 81 | void updateField() 82 | { 83 | char anzrows = 0; // count the number of rows cleared 84 | for (char y=0; y<20; y++) // gehe alle Reihen durch 85 | { 86 | boolean rowfull = true; 87 | for(char x=14; x<14+10; x++) if (os::vram[y][x] == '.') rowfull = false; // ist diese Reihe voll? 88 | if (rowfull) 89 | { 90 | anzrows++; 91 | for(char i=y; i>0; i--) for(char x=14; x<14+10; x++) os::vram[i][x] = os::vram[i-1][x]; // kopiere ab dieser Reihe alles nach unten 92 | for(char x=14; x<14+10; x++) os::vram[0][x] = '.'; // und lösche die obere Zeile 93 | } 94 | } 95 | switch (anzrows) 96 | { 97 | case 1: score += 40; break; 98 | case 2: score += 100; break; 99 | case 3: score += 200; break; 100 | case 4: score += 500; break; 101 | } 102 | } 103 | 104 | void setup() 105 | { 106 | drawintro(); 107 | state = 0; 108 | } 109 | 110 | void loop() 111 | { 112 | int frame = os::frames; 113 | byte key = os::getkey(); 114 | switch(state) 115 | { 116 | case 0: 117 | if (key == ' ') 118 | { 119 | randomSeed(os::frames); random(); 120 | drawfield(); 121 | newShape(); 122 | waiting = 40; os::frames = 0; score = 0; state = 1; 123 | 124 | } 125 | break; 126 | case 1: 127 | if (key != 0) 128 | { 129 | if (key == 's') { waiting -= 40; score++; } 130 | else 131 | { 132 | drawShape('.'); // Shape ins Feld schreiben 133 | switch (key) 134 | { 135 | case 'a': 136 | if (testShape(x-1, y)) x--; 137 | break; 138 | case 'd': 139 | if (testShape(x+1, y)) x++; 140 | break; 141 | case 'w': 142 | rotShape(); // drehe die Shape ccw 143 | if (testShape(x, y) == false) // prüfe, ob darunter KEIN Platz ist 144 | { 145 | if (testShape(x-1, y)) x--; // teste links 146 | else if (testShape(x+1, y)) x++; // teste rechts 147 | else if (testShape(x-2, y)) x-=2; // Sonderfall langer Balken 148 | else if (testShape(x+2, y)) x+=2; 149 | else { rotShape(); rotShape(); rotShape(); } // geht nicht => Drehung rückgängig machen 150 | } 151 | break; 152 | } 153 | drawShape('#'); // Shape ins Feld schreiben 154 | } 155 | } 156 | if (waiting-- < 0) // FALLEN 157 | { 158 | waiting += (40 - (os::frames >> 9)); 159 | drawShape('.'); 160 | if (testShape(x, y+1)) { y++; drawShape('#'); } 161 | else 162 | { 163 | drawShape('#'); // fix shape 164 | updateField(); // clear full rows 165 | os::text(String(score, DEC), 6, 0); 166 | if (score > high) { high = score; os::text(String(high, DEC), 32, 0); } 167 | newShape(); // pick a new shape if possible 168 | drawShape('#'); 169 | } 170 | } 171 | break; 172 | case 2: 173 | if (key == ' ') { drawintro(); state = 0; } 174 | break; 175 | } 176 | while (frame == os::frames); 177 | } 178 | -------------------------------------------------------------------------------- /Sketches/NanoEmpty/NanoEmpty.ino: -------------------------------------------------------------------------------- 1 | #include // copy the files 'os.h' and 'os.S' into the folder '.../Arduino/libraries/os' 2 | 3 | void setup() {} 4 | 5 | void loop() {} 6 | -------------------------------------------------------------------------------- /Sketches/NanoMandelbrot/NanoMandelbrot.ino: -------------------------------------------------------------------------------- 1 | // ------------------------------------------------------------------------ 2 | // Displays the 'Mandelbrot' set by projecting the area (-2.5..1) * (-1..1) 3 | // onto 32 x 22 pixels using a maximum of 15 iterations and 32-bit integer 4 | // math in 9-bit fixed-point format - written by C. Herting (slu4) 2024 5 | // ------------------------------------------------------------------------ 6 | #include // copy the files 'os.h' and 'os.S' into the folder '.../Arduino/libraries/os' 7 | 8 | void setup() { os::fill(); } // clear the screen 9 | 10 | void loop() 11 | { 12 | long cb = -506; // -1 13 | for (byte y=0; y<22; y++) 14 | { 15 | long ca = -1288; // -2.5 16 | for (byte x=0; x<32; x++) 17 | { 18 | long za = ca; // init start condition 19 | long zb = cb; 20 | byte n; 21 | 22 | for (n=15; n>0; n--) // iterate f(z) = z^2 + c 23 | { 24 | long za_sq = (za * za) >> 9; 25 | long zb_sq = (zb * zb) >> 9; 26 | if (za_sq + zb_sq >= (4 << 9)) break; // diverging if z^2 >= 4 27 | zb = (((za * zb) >> 9) << 1) + cb; // zb = za*zb + cb 28 | za = za_sq - zb_sq + ca; // za = za^2 - zb^2 + ca 29 | } 30 | os::vram[y][x] = ' ' + n; // plot current pixel 31 | ca += 56; 32 | } 33 | cb += 46; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Sketches/NanoMatrix/NanoMatrix.ino: -------------------------------------------------------------------------------- 1 | #include // copy the files 'os.h' and 'os.S' into the folder '.../Arduino/libraries/os' 2 | 3 | #define MAXLINES 100 4 | struct line { char x, y, h; }; 5 | line lines[MAXLINES]; 6 | 7 | void setup() 8 | { 9 | os::fill(); 10 | for (byte i=0; i= 0 && lines[i].y < ROWS) os::vram[lines[i].y][lines[i].x] = random(33, 127); 28 | if (lines[i].y - lines[i].h >= 0) 29 | { 30 | if (lines[i].y - lines[i].h < ROWS) os::vram[lines[i].y - lines[i].h][lines[i].x] = 32; 31 | else 32 | { 33 | lines[i].x = random(COLS); // make a random line 34 | lines[i].y = -1; 35 | lines[i].h = random(3, 15); 36 | } 37 | } 38 | } 39 | 40 | os::wait(5); 41 | } 42 | -------------------------------------------------------------------------------- /Sketches/NanoRandom/NanoRandom.ino: -------------------------------------------------------------------------------- 1 | #include // copy the files 'os.h' and 'os.S' into the folder '.../Arduino/libraries/os' 2 | 3 | void setup() 4 | { 5 | for(byte i=0; i<25; i++) os::cram[i] = i & 15; 6 | } 7 | 8 | void loop() 9 | { 10 | os::vram[random(25)][random(40)] = random(33, 127); 11 | } 12 | -------------------------------------------------------------------------------- /Sketches/NanoType/NanoType.ino: -------------------------------------------------------------------------------- 1 | #include // copy the files 'os.h' and 'os.S' into the folder '.../Arduino/libraries/os' 2 | 3 | int x=0, y=5; // cursor position 4 | 5 | void setup() 6 | { 7 | os::text(F("READY."), 0, 4); 8 | os::vram[y][x] = os::vram[y][x] + 128; // invert char at cursor position 9 | } 10 | 11 | void loop() 12 | { 13 | byte a = os::getkey(); 14 | if (a != 0) // any key pressed? 15 | { 16 | os::vram[y][x] = os::vram[y][x] - 128; // un-invert char at old cursor position 17 | switch(a) 18 | { 19 | case 17: if (y>0) y--; break; 20 | case 18: if (y<24) y++; break; 21 | case 19: if (x>0) x--; break; 22 | case 20: if (x<39) x++; break; 23 | case 10: x=0; if (y<24) y++; else os::scroll(); break; 24 | case 8: x--; if (x<0) x=0; os::vram[y][x] = 32; break; 25 | default: os::vram[y][x++] = a; if (x>39) { x=0; if (y<24) y++; else os::scroll(); } break; 26 | } 27 | os::vram[y][x] = os::vram[y][x] + 128; // invert char at new cursor position 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Sketches/readme.md: -------------------------------------------------------------------------------- 1 | # 'Nano Personal Computer' Sketches 2 | 3 | These sketches run on all hardware revisions. 4 | --------------------------------------------------------------------------------