WIP - hardware and software for motorizing a (very specific) manually controlled standing desk. I doubt it's useful to anyone but me, but it may contain some interesting bits of code.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

336 lines
13 KiB

(export (version D)
(design
(source P:\Electronics\DeskControl\pcb\DeskControl.sch)
(date "8-9-2019 20:52:00")
(tool "Eeschema (5.0.1)-3")
(sheet (number 1) (name /) (tstamps /)
(title_block
(title)
(company)
(rev)
(date)
(source DeskControl.sch)
(comment (number 1) (value ""))
(comment (number 2) (value ""))
(comment (number 3) (value ""))
(comment (number 4) (value "")))))
(components
(comp (ref U1)
(value ATmega328-AU)
(footprint Housings_QFP:TQFP-32_7x7mm_Pitch0.8mm)
(datasheet http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega328_P%20AVR%20MCU%20with%20picoPower%20Technology%20Data%20Sheet%2040001984A.pdf)
(libsource (lib MCU_Microchip_ATmega) (part ATmega328-AU) (description "20MHz, 32kB Flash, 2kB SRAM, 1kB EEPROM, TQFP-32"))
(sheetpath (names /) (tstamps /))
(tstamp 5D753A97))
(comp (ref J2)
(value SSD1306)
(footprint Pin_Headers:Pin_Header_Straight_1x04_Pitch2.54mm)
(datasheet ~)
(libsource (lib Connector_Generic) (part Conn_01x04) (description "Generic connector, single row, 01x04, script generated (kicad-library-utils/schlib/autogen/connector/)"))
(sheetpath (names /) (tstamps /))
(tstamp 5D753B7C))
(comp (ref J1)
(value PROG)
(footprint Pin_Headers:Pin_Header_Straight_2x03_Pitch2.54mm)
(datasheet ~)
(libsource (lib Connector_Generic) (part Conn_02x03_Odd_Even) (description "Generic connector, double row, 02x03, odd/even pin numbering scheme (row 1 odd numbers, row 2 even numbers), script generated (kicad-library-utils/schlib/autogen/connector/)"))
(sheetpath (names /) (tstamps /))
(tstamp 5D753DE7))
(comp (ref C3)
(value 100nF)
(footprint Capacitors_SMD:C_1206)
(datasheet ~)
(libsource (lib Device) (part C) (description "Unpolarized capacitor"))
(sheetpath (names /) (tstamps /))
(tstamp 5D754323))
(comp (ref C2)
(value 100nF)
(footprint Capacitors_SMD:C_1206)
(datasheet ~)
(libsource (lib Device) (part C) (description "Unpolarized capacitor"))
(sheetpath (names /) (tstamps /))
(tstamp 5D7545D2))
(comp (ref C1)
(value 10uF)
(footprint Capacitors_Tantalum_SMD:CP_Tantalum_Case-D_EIA-7343-31_Reflow)
(datasheet ~)
(libsource (lib Device) (part C) (description "Unpolarized capacitor"))
(sheetpath (names /) (tstamps /))
(tstamp 5D75463E))
(comp (ref C4)
(value 33pF)
(footprint Capacitors_SMD:C_1206)
(datasheet ~)
(libsource (lib Device) (part C) (description "Unpolarized capacitor"))
(sheetpath (names /) (tstamps /))
(tstamp 5D75696A))
(comp (ref C5)
(value 33pF)
(footprint Capacitors_SMD:C_1206)
(datasheet ~)
(libsource (lib Device) (part C) (description "Unpolarized capacitor"))
(sheetpath (names /) (tstamps /))
(tstamp 5D756A0E))
(comp (ref XTAL1)
(value "16 Mhz")
(footprint Crystals:Crystal_HC49-U_Vertical)
(datasheet ~)
(libsource (lib Device) (part Crystal) (description "Two pin crystal"))
(sheetpath (names /) (tstamps /))
(tstamp 5D756FAB))
(comp (ref R1)
(value 10k)
(footprint Resistors_SMD:R_0603)
(datasheet ~)
(libsource (lib Device) (part R) (description Resistor))
(sheetpath (names /) (tstamps /))
(tstamp 5D758534))
(comp (ref SW1)
(value SW_Push)
(footprint SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM)
(libsource (lib Switch) (part SW_Push) (description "Push button switch, generic, two pins"))
(sheetpath (names /) (tstamps /))
(tstamp 5D759C24))
(comp (ref SW2)
(value SW_Push)
(footprint SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM)
(libsource (lib Switch) (part SW_Push) (description "Push button switch, generic, two pins"))
(sheetpath (names /) (tstamps /))
(tstamp 5D759CB0))
(comp (ref SW3)
(value SW_Push)
(footprint SMD-BUTTON:SW4-SMD-5.2X5.2X1.5MM)
(libsource (lib Switch) (part SW_Push) (description "Push button switch, generic, two pins"))
(sheetpath (names /) (tstamps /))
(tstamp 5D759CF0))
(comp (ref J3)
(value L298)
(footprint Pin_Headers:Pin_Header_Straight_1x04_Pitch2.54mm)
(datasheet ~)
(libsource (lib Connector_Generic) (part Conn_01x04) (description "Generic connector, single row, 01x04, script generated (kicad-library-utils/schlib/autogen/connector/)"))
(sheetpath (names /) (tstamps /))
(tstamp 5D7651C5)))
(libparts
(libpart (lib Connector_Generic) (part Conn_01x04)
(description "Generic connector, single row, 01x04, script generated (kicad-library-utils/schlib/autogen/connector/)")
(docs ~)
(footprints
(fp Connector*:*_1x??_*))
(fields
(field (name Reference) J)
(field (name Value) Conn_01x04))
(pins
(pin (num 1) (name Pin_1) (type passive))
(pin (num 2) (name Pin_2) (type passive))
(pin (num 3) (name Pin_3) (type passive))
(pin (num 4) (name Pin_4) (type passive))))
(libpart (lib Connector_Generic) (part Conn_02x03_Odd_Even)
(description "Generic connector, double row, 02x03, odd/even pin numbering scheme (row 1 odd numbers, row 2 even numbers), script generated (kicad-library-utils/schlib/autogen/connector/)")
(docs ~)
(footprints
(fp Connector*:*_2x??_*))
(fields
(field (name Reference) J)
(field (name Value) Conn_02x03_Odd_Even))
(pins
(pin (num 1) (name Pin_1) (type passive))
(pin (num 2) (name Pin_2) (type passive))
(pin (num 3) (name Pin_3) (type passive))
(pin (num 4) (name Pin_4) (type passive))
(pin (num 5) (name Pin_5) (type passive))
(pin (num 6) (name Pin_6) (type passive))))
(libpart (lib Device) (part C)
(description "Unpolarized capacitor")
(docs ~)
(footprints
(fp C_*))
(fields
(field (name Reference) C)
(field (name Value) C))
(pins
(pin (num 1) (name ~) (type passive))
(pin (num 2) (name ~) (type passive))))
(libpart (lib Device) (part Crystal)
(description "Two pin crystal")
(docs ~)
(footprints
(fp Crystal*))
(fields
(field (name Reference) Y)
(field (name Value) Crystal))
(pins
(pin (num 1) (name 1) (type passive))
(pin (num 2) (name 2) (type passive))))
(libpart (lib Device) (part R)
(description Resistor)
(docs ~)
(footprints
(fp R_*))
(fields
(field (name Reference) R)
(field (name Value) R))
(pins
(pin (num 1) (name ~) (type passive))
(pin (num 2) (name ~) (type passive))))
(libpart (lib MCU_Microchip_ATmega) (part ATmega48A-AU)
(aliases
(alias ATmega48PA-AU)
(alias ATmega88A-AU)
(alias ATmega88PA-AU)
(alias ATmega168A-AU)
(alias ATmega168PA-AU)
(alias ATmega328-AU)
(alias ATmega328P-AU))
(description "20MHz, 4kB Flash, 512B SRAM, 256B EEPROM, TQFP-32")
(docs http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48A_88A_168A-Data-Sheet-40002007A.pdf)
(footprints
(fp TQFP*7x7mm*P0.8mm*))
(fields
(field (name Reference) U)
(field (name Value) ATmega48A-AU)
(field (name Footprint) Package_QFP:TQFP-32_7x7mm_P0.8mm))
(pins
(pin (num 1) (name PD3) (type 3state))
(pin (num 2) (name PD4) (type 3state))
(pin (num 3) (name GND) (type power_in))
(pin (num 4) (name VCC) (type power_in))
(pin (num 5) (name GND) (type passive))
(pin (num 6) (name VCC) (type passive))
(pin (num 7) (name XTAL1/PB6) (type 3state))
(pin (num 8) (name XTAL2/PB7) (type 3state))
(pin (num 9) (name PD5) (type 3state))
(pin (num 10) (name PD6) (type 3state))
(pin (num 11) (name PD7) (type 3state))
(pin (num 12) (name PB0) (type 3state))
(pin (num 13) (name PB1) (type 3state))
(pin (num 14) (name PB2) (type 3state))
(pin (num 15) (name PB3) (type 3state))
(pin (num 16) (name PB4) (type 3state))
(pin (num 17) (name PB5) (type 3state))
(pin (num 18) (name AVCC) (type power_in))
(pin (num 19) (name ADC6) (type input))
(pin (num 20) (name AREF) (type passive))
(pin (num 21) (name GND) (type passive))
(pin (num 22) (name ADC7) (type input))
(pin (num 23) (name PC0) (type 3state))
(pin (num 24) (name PC1) (type 3state))
(pin (num 25) (name PC2) (type 3state))
(pin (num 26) (name PC3) (type 3state))
(pin (num 27) (name PC4) (type 3state))
(pin (num 28) (name PC5) (type 3state))
(pin (num 29) (name ~RESET~/PC6) (type 3state))
(pin (num 30) (name PD0) (type 3state))
(pin (num 31) (name PD1) (type 3state))
(pin (num 32) (name PD2) (type 3state))))
(libpart (lib Switch) (part SW_Push)
(description "Push button switch, generic, two pins")
(fields
(field (name Reference) SW)
(field (name Value) SW_Push))
(pins
(pin (num 1) (name 1) (type passive))
(pin (num 2) (name 2) (type passive)))))
(libraries
(library (logical Connector_Generic)
(uri "C:\\Program Files\\KiCad\\share\\kicad\\library/Connector_Generic.lib"))
(library (logical Device)
(uri "C:\\Program Files\\KiCad\\share\\kicad\\library/Device.lib"))
(library (logical MCU_Microchip_ATmega)
(uri "C:\\Program Files\\KiCad\\share\\kicad\\library/MCU_Microchip_ATmega.lib"))
(library (logical Switch)
(uri "C:\\Program Files\\KiCad\\share\\kicad\\library/Switch.lib")))
(nets
(net (code 1) (name +5V)
(node (ref U1) (pin 6))
(node (ref C1) (pin 2))
(node (ref C2) (pin 2))
(node (ref J1) (pin 2))
(node (ref U1) (pin 18))
(node (ref J3) (pin 3))
(node (ref U1) (pin 4))
(node (ref R1) (pin 1))
(node (ref J2) (pin 3)))
(net (code 2) (name RST)
(node (ref U1) (pin 29))
(node (ref R1) (pin 2))
(node (ref J1) (pin 5)))
(net (code 3) (name "Net-(U1-Pad19)")
(node (ref U1) (pin 19)))
(net (code 4) (name "Net-(U1-Pad22)")
(node (ref U1) (pin 22)))
(net (code 5) (name GND)
(node (ref J2) (pin 4))
(node (ref J1) (pin 6))
(node (ref U1) (pin 3))
(node (ref U1) (pin 5))
(node (ref C3) (pin 1))
(node (ref U1) (pin 21))
(node (ref C1) (pin 1))
(node (ref C2) (pin 1))
(node (ref J3) (pin 4))
(node (ref C5) (pin 2))
(node (ref C4) (pin 2))
(node (ref SW3) (pin 2))
(node (ref SW1) (pin 2))
(node (ref SW2) (pin 2)))
(net (code 6) (name "Net-(C5-Pad1)")
(node (ref C5) (pin 1))
(node (ref U1) (pin 8))
(node (ref XTAL1) (pin 1)))
(net (code 7) (name "Net-(C4-Pad1)")
(node (ref XTAL1) (pin 2))
(node (ref U1) (pin 7))
(node (ref C4) (pin 1)))
(net (code 8) (name "Net-(J3-Pad2)")
(node (ref U1) (pin 31))
(node (ref J3) (pin 2)))
(net (code 9) (name "Net-(U1-Pad23)")
(node (ref U1) (pin 23)))
(net (code 10) (name "Net-(U1-Pad24)")
(node (ref U1) (pin 24)))
(net (code 11) (name "Net-(U1-Pad25)")
(node (ref U1) (pin 25)))
(net (code 12) (name "Net-(U1-Pad26)")
(node (ref U1) (pin 26)))
(net (code 13) (name "Net-(U1-Pad32)")
(node (ref U1) (pin 32)))
(net (code 14) (name "Net-(U1-Pad1)")
(node (ref U1) (pin 1)))
(net (code 15) (name "Net-(U1-Pad2)")
(node (ref U1) (pin 2)))
(net (code 16) (name "Net-(U1-Pad9)")
(node (ref U1) (pin 9)))
(net (code 17) (name "Net-(U1-Pad10)")
(node (ref U1) (pin 10)))
(net (code 18) (name "Net-(U1-Pad11)")
(node (ref U1) (pin 11)))
(net (code 19) (name "Net-(J3-Pad1)")
(node (ref U1) (pin 30))
(node (ref J3) (pin 1)))
(net (code 20) (name "Net-(SW2-Pad1)")
(node (ref SW2) (pin 1))
(node (ref U1) (pin 13)))
(net (code 21) (name "Net-(SW3-Pad1)")
(node (ref SW3) (pin 1))
(node (ref U1) (pin 14)))
(net (code 22) (name "Net-(SW1-Pad1)")
(node (ref U1) (pin 12))
(node (ref SW1) (pin 1)))
(net (code 23) (name MOSI)
(node (ref J1) (pin 4))
(node (ref U1) (pin 15)))
(net (code 24) (name MISO)
(node (ref J1) (pin 1))
(node (ref U1) (pin 16)))
(net (code 25) (name SCK)
(node (ref U1) (pin 17))
(node (ref J1) (pin 3)))
(net (code 26) (name "Net-(C3-Pad2)")
(node (ref C3) (pin 2))
(node (ref U1) (pin 20)))
(net (code 27) (name SDA)
(node (ref U1) (pin 27))
(node (ref J2) (pin 1)))
(net (code 28) (name SCL)
(node (ref U1) (pin 28))
(node (ref J2) (pin 2)))))