Compare commits

...

19 Commits

Author SHA1 Message Date
Mark van Renswoude b446d0fa98 Commented out all logging lines as it was using too much RAM 2 years ago
Mark van Renswoude b9f5394d53 Implemented overcurrent detection 2 years ago
Mark van Renswoude c8ccd519fc Implemented menu and presets configuration 2 years ago
Mark van Renswoude 9ab3da2782 Persist calibration settings 2 years ago
Mark van Renswoude 7ec4fa3394 Changed measurements to be async to keep handling button presses 2 years ago
Mark van Renswoude 1ca611e504 Much refactoring, wow. 2 years ago
Mark van Renswoude 8b5e23cecb Cleanup of the code 2 years ago
Mark van Renswoude 0124b89fef Added "moving" screen 2 years ago
Mark van Renswoude 61a4072738 Cleaned up the interface 2 years ago
Mark van Renswoude df61b1f24d Implemented screen timeout and button detection 2 years ago
Mark van Renswoude b1600ab1d6 Migrated to Polulu VL53L0X library 2 years ago
Mark van Renswoude 5d013b4273 Implemented basic home screen 2 years ago
Mark van Renswoude 72fd1af579 Finished v1 of the PCB layout 2 years ago
Mark van Renswoude 344e0bd3b0 Added error message for VL53L0X initialization 2 years ago
Mark van Renswoude 73ba3b2750 Added initialization sequence 2 years ago
Mark van Renswoude be0b4a4872 Error handling and timing budget in VL53L0X class 2 years ago
Mark van Renswoude 271c7de255 Framework code 2 years ago
Mark van Renswoude 23f432712b Added Fusion 360 exports for mount design (WIP) 2 years ago
Mark van Renswoude 2ff37d5991 Basic project setup 2 years ago
  1. 3
      .gitignore
  2. 10
      DeskControl.sublime-project
  3. 20
      README.md
  4. 24
      UNLICENSE
  5. BIN
      doc/DeskControl UI mockup - LCD version.psd
  6. 45
      doc/pinout.md
  7. 21
      doc/testscript.md
  8. BIN
      mount/Cover Right (Right-Mounted).factory
  9. BIN
      mount/Motor.f3d
  10. BIN
      mount/Mount.f3z
  11. BIN
      mount/Mount.factory
  12. 494
      pcb/DeskControl.bak
  13. 734
      pcb/DeskControl.kicad_pcb
  14. 33
      pcb/DeskControl.pro
  15. 91
      pcb/display/DeskControlDisplay-cache.lib
  16. 735
      pcb/display/DeskControlDisplay.kicad_pcb
  17. 135
      pcb/display/DeskControlDisplay.net
  18. 249
      pcb/display/DeskControlDisplay.pro
  19. 131
      pcb/display/DeskControlDisplay.sch
  20. 131
      pcb/display/DeskControlDisplay.sch-bak
  21. 48602
      pcb/display/fp-info-cache
  22. 3
      pcb/display/fp-lib-table
  23. 3
      pcb/display/sym-lib-table
  24. 3
      pcb/fp-lib-table
  25. 3
      pcb/lib/AMS1117-5.0.dcm
  26. 24
      pcb/lib/AMS1117-5.0.lib
  27. 73
      pcb/lib/AMS1117-5.0.mod
  28. 14
      pcb/lib/DeskControl.pretty/YT2099_2P_straight.kicad_mod
  29. 216
      pcb/main/DeskControl-cache.lib
  30. 3
      pcb/main/DeskControl-rescue.dcm
  31. 51
      pcb/main/DeskControl-rescue.lib
  32. 278
      pcb/main/DeskControl.bak
  33. 1667
      pcb/main/DeskControl.kicad_pcb
  34. 395
      pcb/main/DeskControl.net
  35. 249
      pcb/main/DeskControl.pro
  36. 579
      pcb/main/DeskControl.sch
  37. 694
      pcb/main/DeskControl.sch-bak
  38. 48602
      pcb/main/fp-info-cache
  39. 4
      pcb/main/fp-lib-table
  40. 4
      pcb/main/sym-lib-table
  41. 3
      pcb/sym-lib-table
  42. 48
      platformio.ini
  43. BIN
      src/fonts/AdafruitGFXFontTrim.exe
  44. BIN
      src/fonts/AdafruitGFXFontsLib.dll
  45. 480
      src/fonts/FreeSansBold18pt7b.h
  46. 228
      src/fonts/FreeSansBold18pt7b.trimmed.h
  47. 7
      src/fonts/trim.bat
  48. 191
      src/include/config.h
  49. 86
      src/include/metrics.h
  50. 16
      src/include/screenids.h
  51. 302
      src/lib/control.cpp
  52. 82
      src/lib/control.h
  53. 28
      src/lib/debug.h
  54. 57
      src/lib/motor.cpp
  55. 18
      src/lib/motor.h
  56. 88
      src/lib/screen.cpp
  57. 96
      src/lib/screen.h
  58. 162
      src/lib/screen/baseheightentry.cpp
  59. 34
      src/lib/screen/baseheightentry.h
  60. 69
      src/lib/screen/calibrate.cpp
  61. 47
      src/lib/screen/calibrate.h
  62. 152
      src/lib/screen/home.cpp
  63. 37
      src/lib/screen/home.h
  64. 41
      src/lib/screen/manual.cpp
  65. 34
      src/lib/screen/manual.h
  66. 115
      src/lib/screen/menu.cpp
  67. 45
      src/lib/screen/menu.h
  68. 42
      src/lib/screen/move-overcurrent.cpp
  69. 27
      src/lib/screen/move-overcurrent.h
  70. 76
      src/lib/screen/move-sensorerror.cpp
  71. 33
      src/lib/screen/move-sensorerror.h
  72. 92
      src/lib/screen/move.cpp
  73. 33
      src/lib/screen/move.h
  74. 55
      src/lib/screen/presets.cpp
  75. 35
      src/lib/screen/presets.h
  76. 74
      src/lib/settings.cpp
  77. 27
      src/lib/settings.h
  78. 4
      src/lib/state.cpp
  79. 10
      src/lib/state.h
  80. 1124
      src/lib/vl53l0x.cpp
  81. 204
      src/lib/vl53l0x.h
  82. 295
      src/main.cpp

3
.gitignore

@ -1 +1,4 @@
.pio
*.kicad_pcb-bak
*.sublime-workspace
pcb/plot

10
DeskControl.sublime-project

@ -0,0 +1,10 @@
{
"folders":
[
{
"path": ".",
"file_exclude_patterns": ["*.sublime-project"],
"folder_exclude_patterns": [".pioenvs"]
}
]
}

20
README.md

@ -0,0 +1,20 @@
# DeskControl
This project is for motorizing a (very specific) manually controlled standing desk. I wanted to call it AutoDesk, but I don't like getting sued :-)
Contained in this repository are the hardware designs and software source code. I doubt it's useful to anyone but me, but it may contain some interesting bits of code.
All contents are released under the [Unlicense](https://unlicense.org/). Help yourself!
## Building and uploading
This project uses [PlatformIO](https://platformio.org/). For reference, here are some of the common commands:
_Building_
```pio run```
_Building and uploading_
```pio run -t upload```
_Installing the libraries (without building)_
```pio lib install```

24
UNLICENSE

@ -0,0 +1,24 @@
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.
In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
For more information, please refer to <http://unlicense.org/>

BIN
doc/DeskControl UI mockup - LCD version.psd

45
doc/pinout.md

@ -0,0 +1,45 @@
## ST7789 LCD
https://learn.adafruit.com/adafruit-1-3-and-1-54-240-x-240-wide-angle-tft-lcd-displays/pinouts
| Identifier | Description | Arduino pin | ATMega328p pin |
|------------|----------------------------|-------------|----------------|
| MOSI | SPI master out - slave in | 11 | 15 - PB3 |
| SCLK | SPI clock | 13 | 17 - PB5 |
| CS | Chip select | N/C | N/C |
| RST | Reset | 9 | 13 - PB1 |
| DC | SPI data / command select | 8 | 12 - PB0 |
| BL | Backlight PWM | 7 | 11 - PD7 |
## Polulu G2 motor driver
https://www.pololu.com/product/2995
| Identifier | Description | Arduino pin | ATMega328p pin |
|------------|----------------------------|-------------|----------------|
| PWM | Motor PWM | 14 / A0 | 23 - PC0 |
| DIR | Direction | 15 / A1 | 24 - PC1 |
| SLP | Sleep (active low) | 16 | 25 - PC2 |
| CS | Current sensing | 17 / A3 | 26 - PC3 |
CS has a voltage of 50mV + 20mV per A.
## VL53L0X time-of-flight sensor
https://learn.adafruit.com/adafruit-vl53l0x-micro-lidar-distance-sensor-breakout/pinouts
| Identifier | Description | Arduino pin | ATMega328p pin |
|------------|----------------------------|-------------|----------------|
| SCL | I²C clock | 18 / A4 | 28 - PC5 |
| SDA | I²C data | 19 / A5 | 27 - PC4 |
## Buttons
| Description | Arduino pin | ATMega328p pin |
|-------------|-------------|----------------|
| Up | 3 | 1 - PD3 |
| Menu | 5 | 9 - PD5 |
| Down | 6 | 10 - PD6 |

21
doc/testscript.md

@ -0,0 +1,21 @@
# Testscript
As I really do not want to explain to my employer how I broke my desk, this document describes the intended behaviour of the software in various scenarios, focusing on the safety guards.
## Startup
1. Height sensor must report at least 3 values within 10mm of each other to be considered stable.
1. If the EEPROM has not been initialized yet, the height offset setup screen must be displayed.
1. Otherwise, the home screen must be displayed.
## Home
## Moving
1. If the height sensor does not report a valid value for 100ms the move must be aborted and the move error screen shown.
### Move error screen
1. This screen can only be closed if the height sensor is considered stable, as described in the startup sequence.
1. Pressing any button will close this screen and return to the Home screen.

BIN
mount/Cover Right (Right-Mounted).factory

BIN
mount/Motor.f3d

BIN
mount/Mount.f3z

BIN
mount/Mount.factory

494
pcb/DeskControl.bak

@ -1,494 +0,0 @@
EESchema Schematic File Version 4
EELAYER 26 0
EELAYER END
$Descr A4 11693 8268
encoding utf-8
Sheet 1 1
Title ""
Date ""
Rev ""
Comp ""
Comment1 ""
Comment2 ""
Comment3 ""
Comment4 ""
$EndDescr
$Comp
L MCU_Microchip_ATmega:ATmega328-AU U1
U 1 1 5D753A97
P 5100 3400
F 0 "U1" H 4200 2050 50 0000 C CNN
F 1 "ATmega328-AU" H 4200 2150 50 0000 C CNN
F 2 "Package_QFP:TQFP-32_7x7mm_P0.8mm" H 5100 3400 50 0001 C CIN
F 3 "http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega328_P%20AVR%20MCU%20with%20picoPower%20Technology%20Data%20Sheet%2040001984A.pdf" H 5100 3400 50 0001 C CNN
1 5100 3400
1 0 0 -1
$EndComp
$Comp
L Connector_Generic:Conn_01x04 J2
U 1 1 5D753B7C
P 9400 2250
F 0 "J2" H 9479 2242 50 0000 L CNN
F 1 "SSD1306" H 9479 2151 50 0000 L CNN
F 2 "Pin_Headers:Pin_Header_Straight_1x04_Pitch2.54mm" H 9400 2250 50 0001 C CNN
F 3 "~" H 9400 2250 50 0001 C CNN
1 9400 2250
1 0 0 -1
$EndComp
$Comp
L Connector_Generic:Conn_02x03_Odd_Even J1
U 1 1 5D753DE7
P 9350 3100
F 0 "J1" H 9400 3417 50 0000 C CNN
F 1 "PROG" H 9400 3326 50 0000 C CNN
F 2 "Pin_Headers:Pin_Header_Straight_2x03_Pitch2.54mm" H 9350 3100 50 0001 C CNN
F 3 "~" H 9350 3100 50 0001 C CNN
1 9350 3100
1 0 0 -1
$EndComp
Text GLabel 9150 3000 0 50 Input ~ 0
MISO
Text GLabel 9150 3100 0 50 Input ~ 0
SCK
Text GLabel 9150 3200 0 50 Input ~ 0
RST
Text GLabel 9650 3100 2 50 Input ~ 0
MOSI
$Comp
L power:+5V #PWR08
U 1 1 5D753EAE
P 9750 3000
F 0 "#PWR08" H 9750 2850 50 0001 C CNN
F 1 "+5V" H 9765 3173 50 0000 C CNN
F 2 "" H 9750 3000 50 0001 C CNN
F 3 "" H 9750 3000 50 0001 C CNN
1 9750 3000
1 0 0 -1
$EndComp
$Comp
L power:GND #PWR09
U 1 1 5D753EEB
P 9750 3200
F 0 "#PWR09" H 9750 2950 50 0001 C CNN
F 1 "GND" H 9755 3027 50 0000 C CNN
F 2 "" H 9750 3200 50 0001 C CNN
F 3 "" H 9750 3200 50 0001 C CNN
1 9750 3200
1 0 0 -1
$EndComp
Wire Wire Line
9650 3000 9750 3000
Wire Wire Line
9650 3200 9750 3200
$Comp
L power:+5V #PWR04
U 1 1 5D753F2B
P 8900 2350
F 0 "#PWR04" H 8900 2200 50 0001 C CNN
F 1 "+5V" H 8915 2523 50 0000 C CNN
F 2 "" H 8900 2350 50 0001 C CNN
F 3 "" H 8900 2350 50 0001 C CNN
1 8900 2350
-1 0 0 1
$EndComp
$Comp
L power:GND #PWR06
U 1 1 5D753F42
P 9100 2450
F 0 "#PWR06" H 9100 2200 50 0001 C CNN
F 1 "GND" H 9105 2277 50 0000 C CNN
F 2 "" H 9100 2450 50 0001 C CNN
F 3 "" H 9100 2450 50 0001 C CNN
1 9100 2450
1 0 0 -1
$EndComp
Wire Wire Line
9100 2450 9200 2450
Wire Wire Line
9200 2350 8900 2350
Text GLabel 9200 2150 0 50 Input ~ 0
SDA
Text GLabel 9200 2250 0 50 Input ~ 0
SCL
$Comp
L power:+5V #PWR01
U 1 1 5D7540FC
P 900 900
F 0 "#PWR01" H 900 750 50 0001 C CNN
F 1 "+5V" H 915 1073 50 0000 C CNN
F 2 "" H 900 900 50 0001 C CNN
F 3 "" H 900 900 50 0001 C CNN
1 900 900
1 0 0 -1
$EndComp
$Comp
L power:GND #PWR03
U 1 1 5D754134
P 900 1450
F 0 "#PWR03" H 900 1200 50 0001 C CNN
F 1 "GND" H 905 1277 50 0000 C CNN
F 2 "" H 900 1450 50 0001 C CNN
F 3 "" H 900 1450 50 0001 C CNN
1 900 1450
1 0 0 -1
$EndComp
$Comp
L power:PWR_FLAG #FLG02
U 1 1 5D754186
P 900 1450
F 0 "#FLG02" H 900 1525 50 0001 C CNN
F 1 "PWR_FLAG" H 900 1624 50 0000 C CNN
F 2 "" H 900 1450 50 0001 C CNN
F 3 "~" H 900 1450 50 0001 C CNN
1 900 1450
1 0 0 -1
$EndComp
$Comp
L power:PWR_FLAG #FLG01
U 1 1 5D7541A4
P 900 900
F 0 "#FLG01" H 900 975 50 0001 C CNN
F 1 "PWR_FLAG" H 900 1073 50 0000 C CNN
F 2 "" H 900 900 50 0001 C CNN
F 3 "~" H 900 900 50 0001 C CNN
1 900 900
-1 0 0 1
$EndComp
$Comp
L Device:C C3
U 1 1 5D754323
P 3900 2350
F 0 "C3" H 3785 2304 50 0000 R CNN
F 1 "100nF" H 3785 2395 50 0000 R CNN
F 2 "Capacitors_SMD:C_1206" H 3938 2200 50 0001 C CNN
F 3 "~" H 3900 2350 50 0001 C CNN
1 3900 2350
-1 0 0 1
$EndComp
$Comp
L power:GND #PWR07
U 1 1 5D75441A
P 3350 2750
F 0 "#PWR07" H 3350 2500 50 0001 C CNN
F 1 "GND" H 3355 2577 50 0000 C CNN
F 2 "" H 3350 2750 50 0001 C CNN
F 3 "" H 3350 2750 50 0001 C CNN
1 3350 2750
1 0 0 -1
$EndComp
$Comp
L Device:C C2
U 1 1 5D7545D2
P 3350 2350
F 0 "C2" H 3235 2304 50 0000 R CNN
F 1 "100nF" H 3235 2395 50 0000 R CNN
F 2 "Capacitors_SMD:C_1206" H 3388 2200 50 0001 C CNN
F 3 "~" H 3350 2350 50 0001 C CNN
1 3350 2350
-1 0 0 1
$EndComp
$Comp
L Device:C C1
U 1 1 5D75463E
P 2800 2350
F 0 "C1" H 2685 2304 50 0000 R CNN
F 1 "10uF" H 2685 2395 50 0000 R CNN
F 2 "Capacitors_Tantalum_SMD:CP_Tantalum_Case-D_EIA-7343-31_Reflow" H 2838 2200 50 0001 C CNN
F 3 "~" H 2800 2350 50 0001 C CNN
1 2800 2350
-1 0 0 1
$EndComp
Wire Wire Line
2800 2200 3100 2200
Wire Wire Line
3900 2200 4500 2200
$Comp
L power:+5V #PWR02
U 1 1 5D754E27
P 3100 1400
F 0 "#PWR02" H 3100 1250 50 0001 C CNN
F 1 "+5V" H 3115 1573 50 0000 C CNN
F 2 "" H 3100 1400 50 0001 C CNN
F 3 "" H 3100 1400 50 0001 C CNN
1 3100 1400
1 0 0 -1
$EndComp
Connection ~ 3100 2200
Wire Wire Line
3100 2200 3350 2200
Wire Wire Line
5200 1900 5200 1750
Wire Wire Line
5200 1750 5100 1750
Wire Wire Line
5100 1750 5100 1900
Wire Wire Line
5100 1750 3100 1750
Connection ~ 5100 1750
Wire Wire Line
3900 2500 3900 2650
Wire Wire Line
3900 2650 3350 2650
Wire Wire Line
3350 2650 3350 2750
Wire Wire Line
3350 2500 3350 2650
Connection ~ 3350 2650
Wire Wire Line
2800 2500 2800 2650
Wire Wire Line
2800 2650 3350 2650
NoConn ~ 4500 2400
NoConn ~ 4500 2500
Wire Wire Line
3100 1400 3100 1750
Connection ~ 3100 1750
Wire Wire Line
3100 1750 3100 2200
$Comp
L Device:C C4
U 1 1 5D75696A
P 6800 2700
F 0 "C4" V 7052 2700 50 0000 C CNN
F 1 "33pF" V 6961 2700 50 0000 C CNN
F 2 "Capacitors_SMD:C_1206" H 6838 2550 50 0001 C CNN
F 3 "~" H 6800 2700 50 0001 C CNN
1 6800 2700
0 -1 -1 0
$EndComp
$Comp
L Device:C C5
U 1 1 5D756A0E
P 6800 3150
F 0 "C5" V 7052 3150 50 0000 C CNN
F 1 "33pF" V 6961 3150 50 0000 C CNN
F 2 "Capacitors_SMD:C_1206" H 6838 3000 50 0001 C CNN
F 3 "~" H 6800 3150 50 0001 C CNN
1 6800 3150
0 -1 -1 0
$EndComp
$Comp
L power:GND #PWR010
U 1 1 5D756A8A
P 7100 3300
F 0 "#PWR010" H 7100 3050 50 0001 C CNN
F 1 "GND" H 7105 3127 50 0000 C CNN
F 2 "" H 7100 3300 50 0001 C CNN
F 3 "" H 7100 3300 50 0001 C CNN
1 7100 3300
1 0 0 -1
$EndComp
Wire Wire Line
6950 3150 7100 3150
Wire Wire Line
7100 3150 7100 3300
Wire Wire Line
6950 2700 7100 2700
Wire Wire Line
7100 2700 7100 3150
Connection ~ 7100 3150
$Comp
L Device:Crystal XTAL1
U 1 1 5D756FAB
P 6500 2950
F 0 "XTAL1" V 6550 3300 50 0000 R CNN
F 1 "16 Mhz" V 6450 3350 50 0000 R CNN
F 2 "Crystals:Crystal_HC49-U_Vertical" H 6500 2950 50 0001 C CNN
F 3 "~" H 6500 2950 50 0001 C CNN
1 6500 2950
0 -1 -1 0
$EndComp
Wire Wire Line
6500 2800 6500 2700
Wire Wire Line
6500 2700 6650 2700
Wire Wire Line
6500 3100 6500 3150
Wire Wire Line
6500 3150 6650 3150
Wire Wire Line
5700 2800 6050 2800
Wire Wire Line
6050 2800 6050 2700
Wire Wire Line
6050 2700 6500 2700
Connection ~ 6500 2700
Wire Wire Line
5700 2900 6050 2900
Wire Wire Line
6050 2900 6050 3150
Wire Wire Line
6050 3150 6500 3150
Connection ~ 6500 3150
Text GLabel 5700 3500 2 50 Input ~ 0
SDA
Text GLabel 5700 3600 2 50 Input ~ 0
SCL
Text GLabel 5700 2500 2 50 Input ~ 0
MOSI
Text GLabel 5700 2600 2 50 Input ~ 0
MISO
Text GLabel 5700 2700 2 50 Input ~ 0
SCK
$Comp
L Device:R R1
U 1 1 5D758534
P 6250 3550
F 0 "R1" H 6320 3596 50 0000 L CNN
F 1 "10k" H 6320 3505 50 0000 L CNN
F 2 "Resistors_SMD:R_0603" V 6180 3550 50 0001 C CNN
F 3 "~" H 6250 3550 50 0001 C CNN
1 6250 3550
1 0 0 -1
$EndComp
$Comp
L power:+5V #PWR011
U 1 1 5D7585CC
P 6250 3400
F 0 "#PWR011" H 6250 3250 50 0001 C CNN
F 1 "+5V" H 6265 3573 50 0000 C CNN
F 2 "" H 6250 3400 50 0001 C CNN
F 3 "" H 6250 3400 50 0001 C CNN
1 6250 3400
1 0 0 -1
$EndComp
Wire Wire Line
5700 3700 6250 3700
Text GLabel 6450 3700 2 50 Input ~ 0
RST
Wire Wire Line
6250 3700 6450 3700
Connection ~ 6250 3700
$Comp
L power:GND #PWR012
U 1 1 5D75920D
P 5100 4900
F 0 "#PWR012" H 5100 4650 50 0001 C CNN
F 1 "GND" H 5105 4727 50 0000 C CNN
F 2 "" H 5100 4900 50 0001 C CNN
F 3 "" H 5100 4900 50 0001 C CNN
1 5100 4900
1 0 0 -1
$EndComp
$Comp
L Switch:SW_Push SW1
U 1 1 5D759C24
P 6250 1600
F 0 "SW1" H 6250 1885 50 0000 C CNN
F 1 "SW_Push" H 6250 1794 50 0000 C CNN
F 2 "SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM" H 6250 1800 50 0001 C CNN
F 3 "" H 6250 1800 50 0001 C CNN
1 6250 1600
1 0 0 -1
$EndComp
$Comp
L Switch:SW_Push SW2
U 1 1 5D759CB0
P 6250 2000
F 0 "SW2" H 6250 2285 50 0000 C CNN
F 1 "SW_Push" H 6250 2194 50 0000 C CNN
F 2 "SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM" H 6250 2200 50 0001 C CNN
F 3 "" H 6250 2200 50 0001 C CNN
1 6250 2000
1 0 0 -1
$EndComp
$Comp
L Switch:SW_Push SW3
U 1 1 5D759CF0
P 6250 2400
F 0 "SW3" H 6250 2685 50 0000 C CNN
F 1 "SW_Push" H 6250 2594 50 0000 C CNN
F 2 "SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM" H 6250 2600 50 0001 C CNN
F 3 "" H 6250 2600 50 0001 C CNN
1 6250 2400
1 0 0 -1
$EndComp
Wire Wire Line
5700 2200 5800 2200
Wire Wire Line
5800 2200 5800 1600
Wire Wire Line
5800 1600 6050 1600
Wire Wire Line
5700 2300 5850 2300
Wire Wire Line
5850 2300 5850 2000
Wire Wire Line
5850 2000 6050 2000
Wire Wire Line
5700 2400 6050 2400
$Comp
L power:GND #PWR05
U 1 1 5D75B49B
P 6550 2400
F 0 "#PWR05" H 6550 2150 50 0001 C CNN
F 1 "GND" H 6555 2227 50 0000 C CNN
F 2 "" H 6550 2400 50 0001 C CNN
F 3 "" H 6550 2400 50 0001 C CNN
1 6550 2400
1 0 0 -1
$EndComp
Wire Wire Line
6450 2400 6550 2400
Wire Wire Line
6450 2000 6550 2000
Wire Wire Line
6550 2000 6550 2400
Connection ~ 6550 2400
Wire Wire Line
6450 1600 6550 1600
Wire Wire Line
6550 1600 6550 2000
Connection ~ 6550 2000
NoConn ~ 5700 3100
NoConn ~ 5700 3200
NoConn ~ 5700 3300
NoConn ~ 5700 3400
NoConn ~ 5700 4100
NoConn ~ 5700 4200
NoConn ~ 5700 4300
NoConn ~ 5700 4400
NoConn ~ 5700 4500
NoConn ~ 5700 4600
$Comp
L Connector_Generic:Conn_01x04 J?
U 1 1 5D7651C5
P 6500 4000
F 0 "J?" H 6650 4050 50 0000 L CNN
F 1 "L298" H 6580 3951 50 0000 L CNN
F 2 "" H 6500 4000 50 0001 C CNN
F 3 "~" H 6500 4000 50 0001 C CNN
1 6500 4000
1 0 0 -1
$EndComp
$Comp
L power:GND #PWR?
U 1 1 5D765563
P 6150 4200
F 0 "#PWR?" H 6150 3950 50 0001 C CNN
F 1 "GND" H 6155 4027 50 0000 C CNN
F 2 "" H 6150 4200 50 0001 C CNN
F 3 "" H 6150 4200 50 0001 C CNN
1 6150 4200
1 0 0 -1
$EndComp
Wire Wire Line
5700 3900 6300 3900
Wire Wire Line
5700 4000 6300 4000
$Comp
L power:+5V #PWR?
U 1 1 5D767927
P 6000 4100
F 0 "#PWR?" H 6000 3950 50 0001 C CNN
F 1 "+5V" H 6015 4273 50 0000 C CNN
F 2 "" H 6000 4100 50 0001 C CNN
F 3 "" H 6000 4100 50 0001 C CNN
1 6000 4100
-1 0 0 1
$EndComp
Wire Wire Line
6000 4100 6300 4100
Wire Wire Line
6150 4200 6300 4200
$EndSCHEMATC

734
pcb/DeskControl.kicad_pcb

@ -1,734 +0,0 @@
(kicad_pcb (version 20171130) (host pcbnew "(5.0.1)-3")
(general
(thickness 1.6)
(drawings 0)
(tracks 0)
(zones 0)
(modules 14)
(nets 17)
)
(page A4)
(layers
(0 F.Cu signal)
(31 B.Cu signal)
(32 B.Adhes user)
(33 F.Adhes user)
(34 B.Paste user)
(35 F.Paste user)
(36 B.SilkS user)
(37 F.SilkS user)
(38 B.Mask user)
(39 F.Mask user)
(40 Dwgs.User user)
(41 Cmts.User user)
(42 Eco1.User user)
(43 Eco2.User user)
(44 Edge.Cuts user)
(45 Margin user)
(46 B.CrtYd user)
(47 F.CrtYd user)
(48 B.Fab user)
(49 F.Fab user)
)
(setup
(last_trace_width 0.25)
(trace_clearance 0.2)
(zone_clearance 0.508)
(zone_45_only no)
(trace_min 0.2)
(segment_width 0.2)
(edge_width 0.15)
(via_size 0.8)
(via_drill 0.4)
(via_min_size 0.4)
(via_min_drill 0.3)
(uvia_size 0.3)
(uvia_drill 0.1)
(uvias_allowed no)
(uvia_min_size 0.2)
(uvia_min_drill 0.1)
(pcb_text_width 0.3)
(pcb_text_size 1.5 1.5)
(mod_edge_width 0.15)
(mod_text_size 1 1)
(mod_text_width 0.15)
(pad_size 1.524 1.524)
(pad_drill 0.762)
(pad_to_mask_clearance 0.051)
(solder_mask_min_width 0.25)
(aux_axis_origin 0 0)
(visible_elements FFFFFF7F)
(pcbplotparams
(layerselection 0x010fc_ffffffff)
(usegerberextensions false)
(usegerberattributes false)
(usegerberadvancedattributes false)
(creategerberjobfile false)
(excludeedgelayer true)
(linewidth 0.100000)
(plotframeref false)
(viasonmask false)
(mode 1)
(useauxorigin false)
(hpglpennumber 1)
(hpglpenspeed 20)
(hpglpendiameter 15.000000)
(psnegative false)
(psa4output false)
(plotreference true)
(plotvalue true)
(plotinvisibletext false)
(padsonsilk false)
(subtractmaskfromsilk false)
(outputformat 1)
(mirror false)
(drillshape 1)
(scaleselection 1)
(outputdirectory ""))
)
(net 0 "")
(net 1 +5V)
(net 2 GND)
(net 3 "Net-(C3-Pad2)")
(net 4 "Net-(C4-Pad1)")
(net 5 "Net-(C5-Pad1)")
(net 6 RST)
(net 7 MOSI)
(net 8 SCK)
(net 9 MISO)
(net 10 SCL)
(net 11 SDA)
(net 12 "Net-(J3-Pad1)")
(net 13 "Net-(J3-Pad2)")
(net 14 "Net-(SW1-Pad1)")
(net 15 "Net-(SW2-Pad1)")
(net 16 "Net-(SW3-Pad1)")
(net_class Default "This is the default net class."
(clearance 0.2)
(trace_width 0.25)
(via_dia 0.8)
(via_drill 0.4)
(uvia_dia 0.3)
(uvia_drill 0.1)
(add_net +5V)
(add_net GND)
(add_net MISO)
(add_net MOSI)
(add_net "Net-(C3-Pad2)")
(add_net "Net-(C4-Pad1)")
(add_net "Net-(C5-Pad1)")
(add_net "Net-(J3-Pad1)")
(add_net "Net-(J3-Pad2)")
(add_net "Net-(SW1-Pad1)")
(add_net "Net-(SW2-Pad1)")
(add_net "Net-(SW3-Pad1)")
(add_net RST)
(add_net SCK)
(add_net SCL)
(add_net SDA)
)
(module Capacitors_Tantalum_SMD:CP_Tantalum_Case-D_EIA-7343-31_Reflow (layer F.Cu) (tedit 58CC8C08) (tstamp 5D755080)
(at 108.458 80.01 270)
(descr "Tantalum capacitor, Case D, EIA 7343-31, 7.3x4.3x2.8mm, Reflow soldering footprint")
(tags "capacitor tantalum smd")
(path /5D75463E)
(attr smd)
(fp_text reference C1 (at 0 -3.9 270) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 10uF (at 0 3.9 270) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -4.75 -2.4) (end -4.75 2.4) (layer F.SilkS) (width 0.12))
(fp_line (start -4.75 2.4) (end 3.65 2.4) (layer F.SilkS) (width 0.12))
(fp_line (start -4.75 -2.4) (end 3.65 -2.4) (layer F.SilkS) (width 0.12))
(fp_line (start -2.555 -2.15) (end -2.555 2.15) (layer F.Fab) (width 0.1))
(fp_line (start -2.92 -2.15) (end -2.92 2.15) (layer F.Fab) (width 0.1))
(fp_line (start 3.65 -2.15) (end -3.65 -2.15) (layer F.Fab) (width 0.1))
(fp_line (start 3.65 2.15) (end 3.65 -2.15) (layer F.Fab) (width 0.1))
(fp_line (start -3.65 2.15) (end 3.65 2.15) (layer F.Fab) (width 0.1))
(fp_line (start -3.65 -2.15) (end -3.65 2.15) (layer F.Fab) (width 0.1))
(fp_line (start 4.85 -2.5) (end -4.85 -2.5) (layer F.CrtYd) (width 0.05))
(fp_line (start 4.85 2.5) (end 4.85 -2.5) (layer F.CrtYd) (width 0.05))
(fp_line (start -4.85 2.5) (end 4.85 2.5) (layer F.CrtYd) (width 0.05))
(fp_line (start -4.85 -2.5) (end -4.85 2.5) (layer F.CrtYd) (width 0.05))
(fp_text user %R (at 0 0 270) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 2 smd rect (at 3.175 0 270) (size 2.55 2.7) (layers F.Cu F.Paste F.Mask)
(net 1 +5V))
(pad 1 smd rect (at -3.175 0 270) (size 2.55 2.7) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(model Capacitors_Tantalum_SMD.3dshapes/CP_Tantalum_Case-D_EIA-7343-31.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Capacitors_SMD:C_1206 (layer F.Cu) (tedit 58AA84B8) (tstamp 5D755091)
(at 117.094 85.09)
(descr "Capacitor SMD 1206, reflow soldering, AVX (see smccp.pdf)")
(tags "capacitor 1206")
(path /5D7545D2)
(attr smd)
(fp_text reference C2 (at 0 -1.75) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 100nF (at 0 2) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user %R (at 0 -1.75) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -1.6 0.8) (end -1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 0.8) (end -1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 -0.8) (end 1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start -1.6 -0.8) (end 1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1 -1.02) (end -1 -1.02) (layer F.SilkS) (width 0.12))
(fp_line (start -1 1.02) (end 1 1.02) (layer F.SilkS) (width 0.12))
(fp_line (start -2.25 -1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.25 -1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 2.25 1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 2.25 1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(pad 1 smd rect (at -1.5 0) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 2 smd rect (at 1.5 0) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 1 +5V))
(model Capacitors_SMD.3dshapes/C_1206.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Capacitors_SMD:C_1206 (layer F.Cu) (tedit 58AA84B8) (tstamp 5D7550A2)
(at 125.984 82.55)
(descr "Capacitor SMD 1206, reflow soldering, AVX (see smccp.pdf)")
(tags "capacitor 1206")
(path /5D754323)
(attr smd)
(fp_text reference C3 (at 0 -1.75) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 100nF (at 0 2) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 2.25 1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 2.25 1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.25 -1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.25 -1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -1 1.02) (end 1 1.02) (layer F.SilkS) (width 0.12))
(fp_line (start 1 -1.02) (end -1 -1.02) (layer F.SilkS) (width 0.12))
(fp_line (start -1.6 -0.8) (end 1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 -0.8) (end 1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 0.8) (end -1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start -1.6 0.8) (end -1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_text user %R (at 0 -1.75) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 2 smd rect (at 1.5 0) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 3 "Net-(C3-Pad2)"))
(pad 1 smd rect (at -1.5 0) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(model Capacitors_SMD.3dshapes/C_1206.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Capacitors_SMD:C_1206 (layer F.Cu) (tedit 58AA84B8) (tstamp 5D7550B3)
(at 114.554 88.646 90)
(descr "Capacitor SMD 1206, reflow soldering, AVX (see smccp.pdf)")
(tags "capacitor 1206")
(path /5D75696A)
(attr smd)
(fp_text reference C4 (at 0 -1.75 90) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 33pF (at 0 2 90) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 2.25 1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 2.25 1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.25 -1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.25 -1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -1 1.02) (end 1 1.02) (layer F.SilkS) (width 0.12))
(fp_line (start 1 -1.02) (end -1 -1.02) (layer F.SilkS) (width 0.12))
(fp_line (start -1.6 -0.8) (end 1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 -0.8) (end 1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 0.8) (end -1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start -1.6 0.8) (end -1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_text user %R (at 0 -1.75 90) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 2 smd rect (at 1.5 0 90) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 1 smd rect (at -1.5 0 90) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 4 "Net-(C4-Pad1)"))
(model Capacitors_SMD.3dshapes/C_1206.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Capacitors_SMD:C_1206 (layer F.Cu) (tedit 58AA84B8) (tstamp 5D7550C4)
(at 114.554 96.52 270)
(descr "Capacitor SMD 1206, reflow soldering, AVX (see smccp.pdf)")
(tags "capacitor 1206")
(path /5D756A0E)
(attr smd)
(fp_text reference C5 (at 0 -1.75 270) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 33pF (at 0 2 270) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user %R (at 0 -1.75 270) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -1.6 0.8) (end -1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 0.8) (end -1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1.6 -0.8) (end 1.6 0.8) (layer F.Fab) (width 0.1))
(fp_line (start -1.6 -0.8) (end 1.6 -0.8) (layer F.Fab) (width 0.1))
(fp_line (start 1 -1.02) (end -1 -1.02) (layer F.SilkS) (width 0.12))
(fp_line (start -1 1.02) (end 1 1.02) (layer F.SilkS) (width 0.12))
(fp_line (start -2.25 -1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.25 -1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 2.25 1.05) (end 2.25 -1.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 2.25 1.05) (end -2.25 1.05) (layer F.CrtYd) (width 0.05))
(pad 1 smd rect (at -1.5 0 270) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 5 "Net-(C5-Pad1)"))
(pad 2 smd rect (at 1.5 0 270) (size 1 1.6) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(model Capacitors_SMD.3dshapes/C_1206.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Pin_Headers:Pin_Header_Straight_2x03_Pitch2.54mm (layer F.Cu) (tedit 59650532) (tstamp 5D7550E0)
(at 141.224 69.85)
(descr "Through hole straight pin header, 2x03, 2.54mm pitch, double rows")
(tags "Through hole pin header THT 2x03 2.54mm double row")
(path /5D753DE7)
(fp_text reference J1 (at 1.27 -2.33) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value PROG (at 1.27 7.41) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user %R (at 1.27 2.54 90) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 4.35 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_line (start 4.35 6.85) (end 4.35 -1.8) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.8 6.85) (end 4.35 6.85) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.8 -1.8) (end -1.8 6.85) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start 1.27 -1.33) (end 3.87 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start 1.27 1.27) (end 1.27 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end 1.27 1.27) (layer F.SilkS) (width 0.12))
(fp_line (start 3.87 -1.33) (end 3.87 6.41) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end -1.33 6.41) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 6.41) (end 3.87 6.41) (layer F.SilkS) (width 0.12))
(fp_line (start -1.27 0) (end 0 -1.27) (layer F.Fab) (width 0.1))
(fp_line (start -1.27 6.35) (end -1.27 0) (layer F.Fab) (width 0.1))
(fp_line (start 3.81 6.35) (end -1.27 6.35) (layer F.Fab) (width 0.1))
(fp_line (start 3.81 -1.27) (end 3.81 6.35) (layer F.Fab) (width 0.1))
(fp_line (start 0 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.1))
(pad 6 thru_hole oval (at 2.54 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 2 GND))
(pad 5 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 6 RST))
(pad 4 thru_hole oval (at 2.54 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 7 MOSI))
(pad 3 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 8 SCK))
(pad 2 thru_hole oval (at 2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 1 +5V))
(pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 9 MISO))
(model ${KISYS3DMOD}/Pin_Headers.3dshapes/Pin_Header_Straight_2x03_Pitch2.54mm.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Pin_Headers:Pin_Header_Straight_1x04_Pitch2.54mm (layer F.Cu) (tedit 59650532) (tstamp 5D7550F8)
(at 145.034 96.266 180)
(descr "Through hole straight pin header, 1x04, 2.54mm pitch, single row")
(tags "Through hole pin header THT 1x04 2.54mm single row")
(path /5D753B7C)
(fp_text reference J2 (at 0 -2.33 180) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value SSD1306 (at 0 9.95 180) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user %R (at 0 3.81 270) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 1.8 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.8 9.4) (end 1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.8 9.4) (end 1.8 9.4) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.8 -1.8) (end -1.8 9.4) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12))
(fp_line (start 1.33 1.27) (end 1.33 8.95) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end -1.33 8.95) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 8.95) (end 1.33 8.95) (layer F.SilkS) (width 0.12))
(fp_line (start -1.27 -0.635) (end -0.635 -1.27) (layer F.Fab) (width 0.1))
(fp_line (start -1.27 8.89) (end -1.27 -0.635) (layer F.Fab) (width 0.1))
(fp_line (start 1.27 8.89) (end -1.27 8.89) (layer F.Fab) (width 0.1))
(fp_line (start 1.27 -1.27) (end 1.27 8.89) (layer F.Fab) (width 0.1))
(fp_line (start -0.635 -1.27) (end 1.27 -1.27) (layer F.Fab) (width 0.1))
(pad 4 thru_hole oval (at 0 7.62 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 2 GND))
(pad 3 thru_hole oval (at 0 5.08 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 1 +5V))
(pad 2 thru_hole oval (at 0 2.54 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 10 SCL))
(pad 1 thru_hole rect (at 0 0 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 11 SDA))
(model ${KISYS3DMOD}/Pin_Headers.3dshapes/Pin_Header_Straight_1x04_Pitch2.54mm.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Pin_Headers:Pin_Header_Straight_1x04_Pitch2.54mm (layer F.Cu) (tedit 59650532) (tstamp 5D755110)
(at 128.27 75.946 270)
(descr "Through hole straight pin header, 1x04, 2.54mm pitch, single row")
(tags "Through hole pin header THT 1x04 2.54mm single row")
(path /5D7651C5)
(fp_text reference J3 (at 0 -2.33 270) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value L298 (at 0 9.95 270) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -0.635 -1.27) (end 1.27 -1.27) (layer F.Fab) (width 0.1))
(fp_line (start 1.27 -1.27) (end 1.27 8.89) (layer F.Fab) (width 0.1))
(fp_line (start 1.27 8.89) (end -1.27 8.89) (layer F.Fab) (width 0.1))
(fp_line (start -1.27 8.89) (end -1.27 -0.635) (layer F.Fab) (width 0.1))
(fp_line (start -1.27 -0.635) (end -0.635 -1.27) (layer F.Fab) (width 0.1))
(fp_line (start -1.33 8.95) (end 1.33 8.95) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end -1.33 8.95) (layer F.SilkS) (width 0.12))
(fp_line (start 1.33 1.27) (end 1.33 8.95) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.8 -1.8) (end -1.8 9.4) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.8 9.4) (end 1.8 9.4) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.8 9.4) (end 1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.8 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_text user %R (at 0 3.81) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 1 thru_hole rect (at 0 0 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 12 "Net-(J3-Pad1)"))
(pad 2 thru_hole oval (at 0 2.54 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 13 "Net-(J3-Pad2)"))
(pad 3 thru_hole oval (at 0 5.08 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 1 +5V))
(pad 4 thru_hole oval (at 0 7.62 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 2 GND))
(model ${KISYS3DMOD}/Pin_Headers.3dshapes/Pin_Header_Straight_1x04_Pitch2.54mm.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Resistors_SMD:R_0603 (layer F.Cu) (tedit 58E0A804) (tstamp 5D755121)
(at 122.936 85.852)
(descr "Resistor SMD 0603, reflow soldering, Vishay (see dcrcw.pdf)")
(tags "resistor 0603")
(path /5D758534)
(attr smd)
(fp_text reference R1 (at 0 -1.45) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 10k (at 0 1.5) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 1.25 0.7) (end -1.25 0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.25 0.7) (end 1.25 -0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.25 -0.7) (end -1.25 0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.25 -0.7) (end 1.25 -0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start -0.5 -0.68) (end 0.5 -0.68) (layer F.SilkS) (width 0.12))
(fp_line (start 0.5 0.68) (end -0.5 0.68) (layer F.SilkS) (width 0.12))
(fp_line (start -0.8 -0.4) (end 0.8 -0.4) (layer F.Fab) (width 0.1))
(fp_line (start 0.8 -0.4) (end 0.8 0.4) (layer F.Fab) (width 0.1))
(fp_line (start 0.8 0.4) (end -0.8 0.4) (layer F.Fab) (width 0.1))
(fp_line (start -0.8 0.4) (end -0.8 -0.4) (layer F.Fab) (width 0.1))
(fp_text user %R (at 0 0) (layer F.Fab)
(effects (font (size 0.4 0.4) (thickness 0.075)))
)
(pad 2 smd rect (at 0.75 0) (size 0.5 0.9) (layers F.Cu F.Paste F.Mask)
(net 6 RST))
(pad 1 smd rect (at -0.75 0) (size 0.5 0.9) (layers F.Cu F.Paste F.Mask)
(net 1 +5V))
(model ${KISYS3DMOD}/Resistors_SMD.3dshapes/R_0603.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM (layer F.Cu) (tedit 5C236DB7) (tstamp 5D755136)
(at 118.618 106.68)
(path /5D759C24)
(attr smd)
(fp_text reference SW1 (at 0 0) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value SW_Push (at -0.112861 -0.218191) (layer F.SilkS) hide
(effects (font (size 0.501589 0.501589) (thickness 0.05)))
)
(fp_line (start 2.6 1.46863) (end 1.46863 2.6) (layer Dwgs.User) (width 0.127))
(fp_line (start 1.5 2.6) (end -1.1 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -1.1 2.6) (end -1.45982 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -1.45982 2.6) (end -2.6 1.45982) (layer Dwgs.User) (width 0.127))
(fp_line (start -2.6 -1.39584) (end -1.39584 -2.6) (layer Dwgs.User) (width 0.127))
(fp_line (start -1.4 -2.6) (end 1.5 -2.6) (layer F.SilkS) (width 0.127))
(fp_line (start 1.43381 -2.6) (end 2.6 -1.43381) (layer Dwgs.User) (width 0.127))
(fp_poly (pts (xy -2.50464 -2.6) (xy 2.6 -2.6) (xy 2.6 2.60484) (xy -2.50464 2.60484)) (layer Eco1.User) (width 0))
(fp_line (start -1.4 -2.6) (end -2.4 -1.6) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 -2.6) (end 2.4 -1.7) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 2.6) (end 2.4 1.7) (layer F.SilkS) (width 0.127))
(fp_line (start -1.45982 2.6) (end -1.5 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -1.5 2.6) (end -2.4 1.7) (layer F.SilkS) (width 0.127))
(pad 1 smd rect (at -3 -1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask)
(net 14 "Net-(SW1-Pad1)"))
(pad 3 smd rect (at 3 -1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at -3 1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 4 smd rect (at 3 1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask))
(model ${KISYS3DMOD}/Button_Switch_SMD.3dshapes/SW_SPST_TL3342.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM (layer F.Cu) (tedit 5C236DB7) (tstamp 5D75514B)
(at 132.08 106.68)
(path /5D759CB0)
(attr smd)
(fp_text reference SW2 (at 0 0) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value SW_Push (at -0.112861 -0.218191) (layer F.SilkS) hide
(effects (font (size 0.501589 0.501589) (thickness 0.05)))
)
(fp_line (start -1.5 2.6) (end -2.4 1.7) (layer F.SilkS) (width 0.127))
(fp_line (start -1.45982 2.6) (end -1.5 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 2.6) (end 2.4 1.7) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 -2.6) (end 2.4 -1.7) (layer F.SilkS) (width 0.127))
(fp_line (start -1.4 -2.6) (end -2.4 -1.6) (layer F.SilkS) (width 0.127))
(fp_poly (pts (xy -2.50464 -2.6) (xy 2.6 -2.6) (xy 2.6 2.60484) (xy -2.50464 2.60484)) (layer Eco1.User) (width 0))
(fp_line (start 1.43381 -2.6) (end 2.6 -1.43381) (layer Dwgs.User) (width 0.127))
(fp_line (start -1.4 -2.6) (end 1.5 -2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -2.6 -1.39584) (end -1.39584 -2.6) (layer Dwgs.User) (width 0.127))
(fp_line (start -1.45982 2.6) (end -2.6 1.45982) (layer Dwgs.User) (width 0.127))
(fp_line (start -1.1 2.6) (end -1.45982 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 2.6) (end -1.1 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start 2.6 1.46863) (end 1.46863 2.6) (layer Dwgs.User) (width 0.127))
(pad 4 smd rect (at 3 1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at -3 1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 3 smd rect (at 3 -1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask))
(pad 1 smd rect (at -3 -1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask)
(net 15 "Net-(SW2-Pad1)"))
(model ${KISYS3DMOD}/Button_Switch_SMD.3dshapes/SW_SPST_TL3342.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM (layer F.Cu) (tedit 5C236DB7) (tstamp 5D755160)
(at 144.78 106.68)
(path /5D759CF0)
(attr smd)
(fp_text reference SW3 (at 0 0) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value SW_Push (at -0.112861 -0.218191) (layer F.SilkS) hide
(effects (font (size 0.501589 0.501589) (thickness 0.05)))
)
(fp_line (start 2.6 1.46863) (end 1.46863 2.6) (layer Dwgs.User) (width 0.127))
(fp_line (start 1.5 2.6) (end -1.1 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -1.1 2.6) (end -1.45982 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -1.45982 2.6) (end -2.6 1.45982) (layer Dwgs.User) (width 0.127))
(fp_line (start -2.6 -1.39584) (end -1.39584 -2.6) (layer Dwgs.User) (width 0.127))
(fp_line (start -1.4 -2.6) (end 1.5 -2.6) (layer F.SilkS) (width 0.127))
(fp_line (start 1.43381 -2.6) (end 2.6 -1.43381) (layer Dwgs.User) (width 0.127))
(fp_poly (pts (xy -2.50464 -2.6) (xy 2.6 -2.6) (xy 2.6 2.60484) (xy -2.50464 2.60484)) (layer Eco1.User) (width 0))
(fp_line (start -1.4 -2.6) (end -2.4 -1.6) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 -2.6) (end 2.4 -1.7) (layer F.SilkS) (width 0.127))
(fp_line (start 1.5 2.6) (end 2.4 1.7) (layer F.SilkS) (width 0.127))
(fp_line (start -1.45982 2.6) (end -1.5 2.6) (layer F.SilkS) (width 0.127))
(fp_line (start -1.5 2.6) (end -2.4 1.7) (layer F.SilkS) (width 0.127))
(pad 1 smd rect (at -3 -1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask)
(net 16 "Net-(SW3-Pad1)"))
(pad 3 smd rect (at 3 -1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at -3 1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 4 smd rect (at 3 1.85) (size 1 0.7) (layers F.Cu F.Paste F.Mask))
(model ${KISYS3DMOD}/Button_Switch_SMD.3dshapes/SW_SPST_TL3342.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Crystals:Crystal_HC49-U_Vertical (layer F.Cu) (tedit 58CD2E9C) (tstamp 5D755177)
(at 108.966 94.996 90)
(descr "Crystal THT HC-49/U http://5hertz.com/pdfs/04404_D.pdf")
(tags "THT crystalHC-49/U")
(path /5D756FAB)
(fp_text reference XTAL1 (at 2.44 -3.525 90) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value "16 Mhz" (at 2.44 3.525 90) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_arc (start 5.565 0) (end 5.565 -2.525) (angle 180) (layer F.SilkS) (width 0.12))
(fp_arc (start -0.685 0) (end -0.685 -2.525) (angle -180) (layer F.SilkS) (width 0.12))
(fp_arc (start 5.44 0) (end 5.44 -2) (angle 180) (layer F.Fab) (width 0.1))
(fp_arc (start -0.56 0) (end -0.56 -2) (angle -180) (layer F.Fab) (width 0.1))
(fp_arc (start 5.565 0) (end 5.565 -2.325) (angle 180) (layer F.Fab) (width 0.1))
(fp_arc (start -0.685 0) (end -0.685 -2.325) (angle -180) (layer F.Fab) (width 0.1))
(fp_line (start 8.4 -2.8) (end -3.5 -2.8) (layer F.CrtYd) (width 0.05))
(fp_line (start 8.4 2.8) (end 8.4 -2.8) (layer F.CrtYd) (width 0.05))
(fp_line (start -3.5 2.8) (end 8.4 2.8) (layer F.CrtYd) (width 0.05))
(fp_line (start -3.5 -2.8) (end -3.5 2.8) (layer F.CrtYd) (width 0.05))
(fp_line (start -0.685 2.525) (end 5.565 2.525) (layer F.SilkS) (width 0.12))
(fp_line (start -0.685 -2.525) (end 5.565 -2.525) (layer F.SilkS) (width 0.12))
(fp_line (start -0.56 2) (end 5.44 2) (layer F.Fab) (width 0.1))
(fp_line (start -0.56 -2) (end 5.44 -2) (layer F.Fab) (width 0.1))
(fp_line (start -0.685 2.325) (end 5.565 2.325) (layer F.Fab) (width 0.1))
(fp_line (start -0.685 -2.325) (end 5.565 -2.325) (layer F.Fab) (width 0.1))
(fp_text user %R (at 2.44 0 90) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 2 thru_hole circle (at 4.88 0 90) (size 1.5 1.5) (drill 0.8) (layers *.Cu *.Mask)
(net 4 "Net-(C4-Pad1)"))
(pad 1 thru_hole circle (at 0 0 90) (size 1.5 1.5) (drill 0.8) (layers *.Cu *.Mask)
(net 5 "Net-(C5-Pad1)"))
(model ${KISYS3DMOD}/Crystals.3dshapes/Crystal_HC49-U_Vertical.wrl
(at (xyz 0 0 0))
(scale (xyz 0.393701 0.393701 0.393701))
(rotate (xyz 0 0 0))
)
)
(module Housings_QFP:TQFP-32_7x7mm_Pitch0.8mm (layer F.Cu) (tedit 58CC9A48) (tstamp 5D7558F7)
(at 124.206 92.456)
(descr "32-Lead Plastic Thin Quad Flatpack (PT) - 7x7x1.0 mm Body, 2.00 mm [TQFP] (see Microchip Packaging Specification 00000049BS.pdf)")
(tags "QFP 0.8")
(path /5D753A97)
(attr smd)
(fp_text reference U1 (at 0 -6.05) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value ATmega328-AU (at 0 6.05) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -3.625 -3.4) (end -5.05 -3.4) (layer F.SilkS) (width 0.15))
(fp_line (start 3.625 -3.625) (end 3.3 -3.625) (layer F.SilkS) (width 0.15))
(fp_line (start 3.625 3.625) (end 3.3 3.625) (layer F.SilkS) (width 0.15))
(fp_line (start -3.625 3.625) (end -3.3 3.625) (layer F.SilkS) (width 0.15))
(fp_line (start -3.625 -3.625) (end -3.3 -3.625) (layer F.SilkS) (width 0.15))
(fp_line (start -3.625 3.625) (end -3.625 3.3) (layer F.SilkS) (width 0.15))
(fp_line (start 3.625 3.625) (end 3.625 3.3) (layer F.SilkS) (width 0.15))
(fp_line (start 3.625 -3.625) (end 3.625 -3.3) (layer F.SilkS) (width 0.15))
(fp_line (start -3.625 -3.625) (end -3.625 -3.4) (layer F.SilkS) (width 0.15))
(fp_line (start -5.3 5.3) (end 5.3 5.3) (layer F.CrtYd) (width 0.05))
(fp_line (start -5.3 -5.3) (end 5.3 -5.3) (layer F.CrtYd) (width 0.05))
(fp_line (start 5.3 -5.3) (end 5.3 5.3) (layer F.CrtYd) (width 0.05))
(fp_line (start -5.3 -5.3) (end -5.3 5.3) (layer F.CrtYd) (width 0.05))
(fp_line (start -3.5 -2.5) (end -2.5 -3.5) (layer F.Fab) (width 0.15))
(fp_line (start -3.5 3.5) (end -3.5 -2.5) (layer F.Fab) (width 0.15))
(fp_line (start 3.5 3.5) (end -3.5 3.5) (layer F.Fab) (width 0.15))
(fp_line (start 3.5 -3.5) (end 3.5 3.5) (layer F.Fab) (width 0.15))
(fp_line (start -2.5 -3.5) (end 3.5 -3.5) (layer F.Fab) (width 0.15))
(fp_text user %R (at 0 0) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 32 smd rect (at -2.8 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 31 smd rect (at -2 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 13 "Net-(J3-Pad2)"))
(pad 30 smd rect (at -1.2 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 12 "Net-(J3-Pad1)"))
(pad 29 smd rect (at -0.4 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 6 RST))
(pad 28 smd rect (at 0.4 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 10 SCL))
(pad 27 smd rect (at 1.2 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 11 SDA))
(pad 26 smd rect (at 2 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 25 smd rect (at 2.8 -4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 24 smd rect (at 4.25 -2.8) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 23 smd rect (at 4.25 -2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 22 smd rect (at 4.25 -1.2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 21 smd rect (at 4.25 -0.4) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 20 smd rect (at 4.25 0.4) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 3 "Net-(C3-Pad2)"))
(pad 19 smd rect (at 4.25 1.2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 18 smd rect (at 4.25 2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 1 +5V))
(pad 17 smd rect (at 4.25 2.8) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 8 SCK))
(pad 16 smd rect (at 2.8 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 9 MISO))
(pad 15 smd rect (at 2 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 7 MOSI))
(pad 14 smd rect (at 1.2 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 16 "Net-(SW3-Pad1)"))
(pad 13 smd rect (at 0.4 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 15 "Net-(SW2-Pad1)"))
(pad 12 smd rect (at -0.4 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 14 "Net-(SW1-Pad1)"))
(pad 11 smd rect (at -1.2 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 10 smd rect (at -2 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 9 smd rect (at -2.8 4.25 90) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 8 smd rect (at -4.25 2.8) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 5 "Net-(C5-Pad1)"))
(pad 7 smd rect (at -4.25 2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 4 "Net-(C4-Pad1)"))
(pad 6 smd rect (at -4.25 1.2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 1 +5V))
(pad 5 smd rect (at -4.25 0.4) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 4 smd rect (at -4.25 -0.4) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 1 +5V))
(pad 3 smd rect (at -4.25 -1.2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask)
(net 2 GND))
(pad 2 smd rect (at -4.25 -2) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(pad 1 smd rect (at -4.25 -2.8) (size 1.6 0.55) (layers F.Cu F.Paste F.Mask))
(model ${KISYS3DMOD}/Housings_QFP.3dshapes/TQFP-32_7x7mm_Pitch0.8mm.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
)

33
pcb/DeskControl.pro

@ -1,33 +0,0 @@
update=22/05/2015 07:44:53
version=1
last_client=kicad
[general]
version=1
RootSch=
BoardNm=
[pcbnew]
version=1
LastNetListRead=
UseCmpFile=1
PadDrill=0.600000000000
PadDrillOvalY=0.600000000000
PadSizeH=1.500000000000
PadSizeV=1.500000000000
PcbTextSizeV=1.500000000000
PcbTextSizeH=1.500000000000
PcbTextThickness=0.300000000000
ModuleTextSizeV=1.000000000000
ModuleTextSizeH=1.000000000000
ModuleTextSizeThickness=0.150000000000
SolderMaskClearance=0.000000000000
SolderMaskMinWidth=0.000000000000
DrawSegmentWidth=0.200000000000
BoardOutlineThickness=0.100000000000
ModuleOutlineThickness=0.150000000000
[cvpcb]
version=1
NetIExt=net
[eeschema]
version=1
LibDir=
[eeschema/libraries]

91
pcb/display/DeskControlDisplay-cache.lib

@ -0,0 +1,91 @@
EESchema-LIBRARY Version 2.4
#encoding utf-8
#
# Connector_Conn_01x07_Female
#
DEF Connector_Conn_01x07_Female J 0 40 Y N 1 F N
F0 "J" 0 400 50 H V C CNN
F1 "Connector_Conn_01x07_Female" 0 -400 50 H V C CNN
F2 "" 0 0 50 H I C CNN
F3 "" 0 0 50 H I C CNN
$FPLIST
Connector*:*_1x??_*
$ENDFPLIST
DRAW
A 0 -300 20 901 -901 1 1 6 N 0 -280 0 -320
A 0 -200 20 901 -901 1 1 6 N 0 -180 0 -220
A 0 -100 20 901 -901 1 1 6 N 0 -80 0 -120
A 0 0 20 901 -901 1 1 6 N 0 20 0 -20
A 0 100 20 901 -901 1 1 6 N 0 120 0 80
A 0 200 20 901 -901 1 1 6 N 0 220 0 180
A 0 300 20 901 -901 1 1 6 N 0 320 0 280
P 2 1 1 6 -50 -300 -20 -300 N
P 2 1 1 6 -50 -200 -20 -200 N
P 2 1 1 6 -50 -100 -20 -100 N
P 2 1 1 6 -50 0 -20 0 N
P 2 1 1 6 -50 100 -20 100 N
P 2 1 1 6 -50 200 -20 200 N
P 2 1 1 6 -50 300 -20 300 N
X Pin_1 1 -200 300 150 R 50 50 1 1 P
X Pin_2 2 -200 200 150 R 50 50 1 1 P
X Pin_3 3 -200 100 150 R 50 50 1 1 P
X Pin_4 4 -200 0 150 R 50 50 1 1 P
X Pin_5 5 -200 -100 150 R 50 50 1 1 P
X Pin_6 6 -200 -200 150 R 50 50 1 1 P
X Pin_7 7 -200 -300 150 R 50 50 1 1 P
ENDDRAW
ENDDEF
#
# Connector_Generic_Conn_02x05_Counter_Clockwise
#
DEF Connector_Generic_Conn_02x05_Counter_Clockwise J 0 40 Y N 1 F N
F0 "J" 50 300 50 H V C CNN
F1 "Connector_Generic_Conn_02x05_Counter_Clockwise" 50 -300 50 H V C CNN
F2 "" 0 0 50 H I C CNN
F3 "" 0 0 50 H I C CNN
$FPLIST
Connector*:*_2x??_*
$ENDFPLIST
DRAW
S -50 -195 0 -205 1 1 6 N
S -50 -95 0 -105 1 1 6 N
S -50 5 0 -5 1 1 6 N
S -50 105 0 95 1 1 6 N
S -50 205 0 195 1 1 6 N
S -50 250 150 -250 1 1 10 f
S 150 -195 100 -205 1 1 6 N
S 150 -95 100 -105 1 1 6 N
S 150 5 100 -5 1 1 6 N
S 150 105 100 95 1 1 6 N
S 150 205 100 195 1 1 6 N
X Pin_1 1 -200 200 150 R 50 50 1 1 P
X Pin_10 10 300 200 150 L 50 50 1 1 P
X Pin_2 2 -200 100 150 R 50 50 1 1 P
X Pin_3 3 -200 0 150 R 50 50 1 1 P
X Pin_4 4 -200 -100 150 R 50 50 1 1 P
X Pin_5 5 -200 -200 150 R 50 50 1 1 P
X Pin_6 6 300 -200 150 L 50 50 1 1 P
X Pin_7 7 300 -100 150 L 50 50 1 1 P
X Pin_8 8 300 0 150 L 50 50 1 1 P
X Pin_9 9 300 100 150 L 50 50 1 1 P
ENDDRAW
ENDDEF
#
# Switch_SW_Push
#
DEF Switch_SW_Push SW 0 40 N N 1 F N
F0 "SW" 50 100 50 H V L CNN
F1 "Switch_SW_Push" 0 -60 50 H V C CNN
F2 "" 0 200 50 H I C CNN
F3 "" 0 200 50 H I C CNN
DRAW
C -80 0 20 0 1 0 N
C 80 0 20 0 1 0 N
P 2 0 1 0 0 50 0 120 N
P 2 0 1 0 100 50 -100 50 N
X 1 1 -200 0 100 R 50 50 0 1 P
X 2 2 200 0 100 L 50 50 0 1 P
ENDDRAW
ENDDEF
#
#End Library

735
pcb/display/DeskControlDisplay.kicad_pcb

@ -0,0 +1,735 @@
(kicad_pcb (version 20171130) (host pcbnew "(5.1.5)-3")
(general
(thickness 1.6)
(drawings 4)
(tracks 33)
(zones 0)
(modules 9)
(nets 11)
)
(page A4)
(layers
(0 F.Cu signal)
(31 B.Cu signal)
(32 B.Adhes user)
(33 F.Adhes user)
(34 B.Paste user)
(35 F.Paste user)
(36 B.SilkS user)
(37 F.SilkS user)
(38 B.Mask user)
(39 F.Mask user)
(40 Dwgs.User user)
(41 Cmts.User user)
(42 Eco1.User user)
(43 Eco2.User user)
(44 Edge.Cuts user)
(45 Margin user)
(46 B.CrtYd user)
(47 F.CrtYd user)
(48 B.Fab user)
(49 F.Fab user)
)
(setup
(last_trace_width 0.25)
(user_trace_width 0.5)
(trace_clearance 0.2)
(zone_clearance 0.508)
(zone_45_only yes)
(trace_min 0)
(via_size 0.8)
(via_drill 0.4)
(via_min_size 0.4)
(via_min_drill 0.3)
(uvia_size 0.3)
(uvia_drill 0.1)
(uvias_allowed no)
(uvia_min_size 0.2)
(uvia_min_drill 0.1)
(edge_width 0.15)
(segment_width 0.2)
(pcb_text_width 0.3)
(pcb_text_size 1.5 1.5)
(mod_edge_width 0.15)
(mod_text_size 1 1)
(mod_text_width 0.15)
(pad_size 6 6)
(pad_drill 3)
(pad_to_mask_clearance 0.051)
(solder_mask_min_width 0.25)
(aux_axis_origin 0 0)
(visible_elements 7FFFFFFF)
(pcbplotparams
(layerselection 0x010f0_ffffffff)
(usegerberextensions false)
(usegerberattributes false)
(usegerberadvancedattributes false)
(creategerberjobfile false)
(excludeedgelayer true)
(linewidth 0.100000)
(plotframeref false)
(viasonmask false)
(mode 1)
(useauxorigin false)
(hpglpennumber 1)
(hpglpenspeed 20)
(hpglpendiameter 15.000000)
(psnegative false)
(psa4output false)
(plotreference true)
(plotvalue true)
(plotinvisibletext false)
(padsonsilk false)
(subtractmaskfromsilk false)
(outputformat 1)
(mirror false)
(drillshape 0)
(scaleselection 1)
(outputdirectory "../plot/"))
)
(net 0 "")
(net 1 "Net-(J6-Pad1)")
(net 2 "Net-(J6-Pad2)")
(net 3 "Net-(J6-Pad3)")
(net 4 DM_LCD-BL)
(net 5 DM_LCD-DC)
(net 6 DM_LCD-RST)
(net 7 DM_MOSI)
(net 8 DM_GND)
(net 9 DM_3v3)
(net 10 DM_SCK)
(net_class Default "This is the default net class."
(clearance 0.2)
(trace_width 0.25)
(via_dia 0.8)
(via_drill 0.4)
(uvia_dia 0.3)
(uvia_drill 0.1)
(add_net DM_3v3)
(add_net DM_GND)
(add_net DM_LCD-BL)
(add_net DM_LCD-DC)
(add_net DM_LCD-RST)
(add_net DM_MOSI)
(add_net DM_SCK)
(add_net "Net-(J6-Pad1)")
(add_net "Net-(J6-Pad2)")
(add_net "Net-(J6-Pad3)")
)
(module Mounting_Holes:MountingHole_3mm_Pad (layer F.Cu) (tedit 56D1B4CB) (tstamp 5E3023ED)
(at 30.226 46.736)
(descr "Mounting Hole 3mm")
(tags "mounting hole 3mm")
(attr virtual)
(fp_text reference REF** (at 0 -4) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value - (at 0 4) (layer F.Fab) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user %R (at 0.3 0) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_circle (center 0 0) (end 3 0) (layer Cmts.User) (width 0.15))
(fp_circle (center 0 0) (end 3.25 0) (layer F.CrtYd) (width 0.05))
(pad 1 thru_hole circle (at 0 0) (size 6 6) (drill 3) (layers *.Cu *.Mask))
)
(module Mounting_Holes:MountingHole_3mm_Pad (layer F.Cu) (tedit 56D1B4CB) (tstamp 5E3023DF)
(at 30.226 34.544)
(descr "Mounting Hole 3mm")
(tags "mounting hole 3mm")
(attr virtual)
(fp_text reference REF** (at 0 -4) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value - (at 0.254 4) (layer F.Fab) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_circle (center 0 0) (end 3.25 0) (layer F.CrtYd) (width 0.05))
(fp_circle (center 0 0) (end 3 0) (layer Cmts.User) (width 0.15))
(fp_text user %R (at 0.3 0) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 1 thru_hole circle (at 0 0) (size 6 6) (drill 3) (layers *.Cu *.Mask))
)
(module Mounting_Holes:MountingHole_3mm_Pad (layer F.Cu) (tedit 56D1B4CB) (tstamp 5E3022E1)
(at 45.212 46.736)
(descr "Mounting Hole 3mm")
(tags "mounting hole 3mm")
(attr virtual)
(fp_text reference REF** (at 0 -4) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value - (at 0 4) (layer F.Fab) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_circle (center 0 0) (end 3.25 0) (layer F.CrtYd) (width 0.05))
(fp_circle (center 0 0) (end 3 0) (layer Cmts.User) (width 0.15))
(fp_text user %R (at 0.3 0) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 1 thru_hole circle (at 0 0) (size 6 6) (drill 3) (layers *.Cu *.Mask))
)
(module Mounting_Holes:MountingHole_3mm_Pad (layer F.Cu) (tedit 56D1B4CB) (tstamp 5E3022DA)
(at 45.212 34.544)
(descr "Mounting Hole 3mm")
(tags "mounting hole 3mm")
(attr virtual)
(fp_text reference REF** (at 0 -4) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value - (at 0 4) (layer F.Fab) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user %R (at 0.3 0) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_circle (center 0 0) (end 3 0) (layer Cmts.User) (width 0.15))
(fp_circle (center 0 0) (end 3.25 0) (layer F.CrtYd) (width 0.05))
(pad 1 thru_hole circle (at 0 0) (size 6 6) (drill 3) (layers *.Cu *.Mask))
)
(module Pin_Headers:Pin_Header_Straight_1x07_Pitch2.54mm (layer F.Cu) (tedit 59650532) (tstamp 5E300FEC)
(at 55.372 23.114 90)
(descr "Through hole straight pin header, 1x07, 2.54mm pitch, single row")
(tags "Through hole pin header THT 1x07 2.54mm single row")
(path /5E37279C)
(fp_text reference J7 (at 0 -2.33 90) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value ST7789 (at 0 17.57 90) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -0.635 -1.27) (end 1.27 -1.27) (layer F.Fab) (width 0.1))
(fp_line (start 1.27 -1.27) (end 1.27 16.51) (layer F.Fab) (width 0.1))
(fp_line (start 1.27 16.51) (end -1.27 16.51) (layer F.Fab) (width 0.1))
(fp_line (start -1.27 16.51) (end -1.27 -0.635) (layer F.Fab) (width 0.1))
(fp_line (start -1.27 -0.635) (end -0.635 -1.27) (layer F.Fab) (width 0.1))
(fp_line (start -1.33 16.57) (end 1.33 16.57) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end -1.33 16.57) (layer F.SilkS) (width 0.12))
(fp_line (start 1.33 1.27) (end 1.33 16.57) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12))
(fp_line (start -1.8 -1.8) (end -1.8 17.05) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.8 17.05) (end 1.8 17.05) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.8 17.05) (end 1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.8 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05))
(fp_text user %R (at 0 7.62) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 1 thru_hole rect (at 0 0 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 8 DM_GND))
(pad 2 thru_hole oval (at 0 2.54 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 9 DM_3v3))
(pad 3 thru_hole oval (at 0 5.08 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 10 DM_SCK))
(pad 4 thru_hole oval (at 0 7.62 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 7 DM_MOSI))
(pad 5 thru_hole oval (at 0 10.16 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 6 DM_LCD-RST))
(pad 6 thru_hole oval (at 0 12.7 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 5 DM_LCD-DC))
(pad 7 thru_hole oval (at 0 15.24 90) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 4 DM_LCD-BL))
(model ${KISYS3DMOD}/Pin_Headers.3dshapes/Pin_Header_Straight_1x07_Pitch2.54mm.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)
(module Pin_Headers:Pin_Header_Straight_2x05_Pitch2.54mm (layer B.Cu) (tedit 59650532) (tstamp 5E300FE9)
(at 55.372 54.61)
(descr "Through hole straight pin header, 2x05, 2.54mm pitch, double rows")
(tags "Through hole pin header THT 2x05 2.54mm double row")
(path /5E3531D6)
(fp_text reference J6 (at 1.27 2.33) (layer B.SilkS)
(effects (font (size 1 1) (thickness 0.15)) (justify mirror))
)
(fp_text value DM-Slave (at 1.27 -12.49) (layer B.Fab)
(effects (font (size 1 1) (thickness 0.15)) (justify mirror))
)
(fp_line (start 0 1.27) (end 3.81 1.27) (layer B.Fab) (width 0.1))
(fp_line (start 3.81 1.27) (end 3.81 -11.43) (layer B.Fab) (width 0.1))
(fp_line (start 3.81 -11.43) (end -1.27 -11.43) (layer B.Fab) (width 0.1))
(fp_line (start -1.27 -11.43) (end -1.27 0) (layer B.Fab) (width 0.1))
(fp_line (start -1.27 0) (end 0 1.27) (layer B.Fab) (width 0.1))
(fp_line (start -1.33 -11.49) (end 3.87 -11.49) (layer B.SilkS) (width 0.12))
(fp_line (start -1.33 -1.27) (end -1.33 -11.49) (layer B.SilkS) (width 0.12))
(fp_line (start 3.87 1.33) (end 3.87 -11.49) (layer B.SilkS) (width 0.12))
(fp_line (start -1.33 -1.27) (end 1.27 -1.27) (layer B.SilkS) (width 0.12))
(fp_line (start 1.27 -1.27) (end 1.27 1.33) (layer B.SilkS) (width 0.12))
(fp_line (start 1.27 1.33) (end 3.87 1.33) (layer B.SilkS) (width 0.12))
(fp_line (start -1.33 0) (end -1.33 1.33) (layer B.SilkS) (width 0.12))
(fp_line (start -1.33 1.33) (end 0 1.33) (layer B.SilkS) (width 0.12))
(fp_line (start -1.8 1.8) (end -1.8 -11.95) (layer B.CrtYd) (width 0.05))
(fp_line (start -1.8 -11.95) (end 4.35 -11.95) (layer B.CrtYd) (width 0.05))
(fp_line (start 4.35 -11.95) (end 4.35 1.8) (layer B.CrtYd) (width 0.05))
(fp_line (start 4.35 1.8) (end -1.8 1.8) (layer B.CrtYd) (width 0.05))
(fp_text user %R (at 1.27 -5.08 270) (layer B.Fab)
(effects (font (size 1 1) (thickness 0.15)) (justify mirror))
)
(pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 1 "Net-(J6-Pad1)"))
(pad 2 thru_hole oval (at 2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 2 "Net-(J6-Pad2)"))
(pad 3 thru_hole oval (at 0 -2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 3 "Net-(J6-Pad3)"))
(pad 4 thru_hole oval (at 2.54 -2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 4 DM_LCD-BL))
(pad 5 thru_hole oval (at 0 -5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
(net 5 DM_LCD-DC))