├── .gitignore ├── example_project ├── example.kicad_pcb ├── README.md ├── example.pro ├── usb_protection.sch ├── example-cache.lib └── example.sch ├── eeschema ├── default.png ├── base16_nord.png ├── base16_dracula.png ├── base16_onedark.png ├── base16_rebecca.png ├── handpicked_nord.png ├── base16_oceanicnext.png ├── handpicked_onedark.png ├── default.cfg ├── handpicked_nord.txt ├── handpicked_onedark.txt ├── handpicked_nord.cfg ├── handpicked_onedark.cfg ├── base16_dracula.cfg ├── base16_nord.cfg ├── base16_onedark.cfg ├── base16_oceanicnext.cfg └── base16_rebecca.cfg ├── Makefile ├── generate-from-pywal.py └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | *.DS_Store 2 | *.bak 3 | *.bck 4 | *.kicad_pcb-bak 5 | -------------------------------------------------------------------------------- /example_project/example.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 4) (host kicad "dummy file") ) 2 | -------------------------------------------------------------------------------- /eeschema/default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/default.png -------------------------------------------------------------------------------- /eeschema/base16_nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/base16_nord.png -------------------------------------------------------------------------------- /eeschema/base16_dracula.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/base16_dracula.png -------------------------------------------------------------------------------- /eeschema/base16_onedark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/base16_onedark.png -------------------------------------------------------------------------------- /eeschema/base16_rebecca.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/base16_rebecca.png -------------------------------------------------------------------------------- /eeschema/handpicked_nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/handpicked_nord.png -------------------------------------------------------------------------------- /eeschema/base16_oceanicnext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/base16_oceanicnext.png -------------------------------------------------------------------------------- /eeschema/handpicked_onedark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/easyw/kicad-colors/master/eeschema/handpicked_onedark.png -------------------------------------------------------------------------------- /example_project/README.md: -------------------------------------------------------------------------------- 1 | # Standardizing Color Previews 2 | 3 | eeschema: 4 | 5 | - Run ERC 6 | 7 | - Make window fullscreen (probably unnecessary) 8 | 9 | - View > Zoom to Fit (probably unnecessary) 10 | 11 | - File > Export > Drawing to Clipboard 12 | 13 | commandline: 14 | 15 | - `pngpaste saved.png` 16 | 17 | - `convert saved.png -alpha off -crop 1200x900+250+250 saved_preview.png` 18 | 19 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | ifeq ($(shell uname -s),Darwin) 2 | EESCHEMA_CFG_PATH=~/Library/Preferences/kicad/eeschema 3 | SED_IN_PLACE=sed -i '' 4 | else 5 | ifeq ($(shell uname -s),Linux) 6 | EESCHEMA_CFG_PATH=~/.config/kicad/eeschema 7 | SED_IN_PLACE=sed -i'' 8 | endif 9 | endif 10 | 11 | .PHONY: get_current_eeschema 12 | get_current_eeschema: 13 | @echo "Reading current configuration from $(EESCHEMA_CFG_PATH):\n" 14 | @grep Color4D $(EESCHEMA_CFG_PATH) 15 | 16 | .PHONY: show_eeschema_options 17 | show_eeschema_options: 18 | @ls eeschema/*.cfg \ 19 | | sed "s/\//_/" \ 20 | | sed "s/^/set_/" \ 21 | | sed "s/\.cfg//" \ 22 | | sort 23 | 24 | set_eeschema_%: ./eeschema/%.cfg 25 | @$(SED_IN_PLACE) "/Color4D/d" $(EESCHEMA_CFG_PATH) 26 | @grep -v \# $< >> $(EESCHEMA_CFG_PATH) 27 | 28 | -------------------------------------------------------------------------------- /example_project/example.pro: -------------------------------------------------------------------------------- 1 | update=22/05/2015 07:44:53 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [pcbnew] 9 | version=1 10 | LastNetListRead= 11 | UseCmpFile=1 12 | PadDrill=0.600000000000 13 | PadDrillOvalY=0.600000000000 14 | PadSizeH=1.500000000000 15 | PadSizeV=1.500000000000 16 | PcbTextSizeV=1.500000000000 17 | PcbTextSizeH=1.500000000000 18 | PcbTextThickness=0.300000000000 19 | ModuleTextSizeV=1.000000000000 20 | ModuleTextSizeH=1.000000000000 21 | ModuleTextSizeThickness=0.150000000000 22 | SolderMaskClearance=0.000000000000 23 | SolderMaskMinWidth=0.000000000000 24 | DrawSegmentWidth=0.200000000000 25 | BoardOutlineThickness=0.100000000000 26 | ModuleOutlineThickness=0.150000000000 27 | [cvpcb] 28 | version=1 29 | NetIExt=net 30 | [eeschema] 31 | version=1 32 | LibDir= 33 | [eeschema/libraries] 34 | -------------------------------------------------------------------------------- /eeschema/default.cfg: -------------------------------------------------------------------------------- 1 | Color4DWireEx=rgb(0, 132, 0) 2 | Color4DBusEx=rgb(0, 0, 132) 3 | Color4DConnEx=rgb(0, 132, 0) 4 | Color4DLLabelEx=rgb(0, 0, 0) 5 | Color4DHLabelEx=rgb(132, 132, 0) 6 | Color4DGLabelEx=rgb(132, 0, 0) 7 | Color4DPinNumEx=rgb(132, 0, 0) 8 | Color4DPinNameEx=rgb(0, 132, 132) 9 | Color4DFieldEx=rgb(132, 0, 132) 10 | Color4DReferenceEx=rgb(0, 132, 132) 11 | Color4DValueEx=rgb(0, 132, 132) 12 | Color4DNoteEx=rgb(0, 0, 194) 13 | Color4DBodyEx=rgb(132, 0, 0) 14 | Color4DBodyBgEx=rgb(255, 255, 194) 15 | Color4DNetNameEx=rgb(132, 132, 132) 16 | Color4DPinEx=rgb(132, 0, 0) 17 | Color4DSheetEx=rgb(132, 0, 132) 18 | Color4DSheetFileNameEx=rgb(132, 132, 0) 19 | Color4DSheetNameEx=rgb(0, 132, 132) 20 | Color4DSheetLabelEx=rgb(132, 132, 0) 21 | Color4DNoConnectEx=rgb(0, 0, 132) 22 | Color4DErcWEx=rgb(0, 132, 0) 23 | Color4DErcEEx=rgb(132, 0, 0) 24 | Color4DGridEx=rgb(132, 132, 132) 25 | Color4DBgCanvasEx=rgb(255, 255, 255) 26 | Color4DBrighenedEx=rgb(255, 0, 255) 27 | -------------------------------------------------------------------------------- /eeschema/handpicked_nord.txt: -------------------------------------------------------------------------------- 1 | " vim: ft=vim 2 | " Nord Colorscheme Calculations 3 | " values from https://github.com/arcticicestudio/nord-vim/blob/develop/colors/nord.vim 4 | 5 | " black / dark_gray 6 | terminal_color_0 = "#3B4252" => rgb(59, 66, 82) 7 | terminal_color_8 = "#4C566A" => rgb(76, 86, 106) 8 | " red 9 | terminal_color_1 = "#BF616A" => rgb(191, 97, 106) 10 | terminal_color_9 = "#BF616A" 11 | " green 12 | terminal_color_2 = "#A3BE8C" => rgb(163, 190, 140) 13 | terminal_color_10 = "#A3BE8C" 14 | " yellow 15 | terminal_color_3 = "#EBCB8B" => rgb(235, 203, 139) 16 | terminal_color_11 = "#EBCB8B" 17 | " blue 18 | terminal_color_4 = "#81A1C1" => rgb(129, 161, 193) 19 | terminal_color_12 = "#81A1C1" 20 | " magenta 21 | terminal_color_5 = "#B48EAD" => rgb(180, 142, 173) 22 | terminal_color_13 = "#B48EAD" 23 | " aqua / cyan 24 | terminal_color_6 = "#88C0D0" => rgb(136, 192, 208) 25 | terminal_color_14 = "#8FBCBB" => rgb(143, 188, 187) 26 | " light_gray / white 27 | terminal_color_7 = "#E5E9F0" => rgb(229, 233, 240) 28 | terminal_color_15 = "#ECEFF4" => rgb(236, 239, 244) 29 | -------------------------------------------------------------------------------- /eeschema/handpicked_onedark.txt: -------------------------------------------------------------------------------- 1 | " vim: ft=vim 2 | " OneDark Colorscheme Calculations 3 | " values from https://github.com/arcticicestudio/nord-vim/blob/develop/colors/nord.vim 4 | 5 | " black 6 | let g:terminal_color_0 = "#282c34" => rgb(40, 44, 52) 7 | let g:terminal_color_8 = "#282c34" 8 | " red 9 | let g:terminal_color_1 = "#e06c75" => rgb(224, 108, 117) 10 | let g:terminal_color_9 = "#e06c75" 11 | " green 12 | let g:terminal_color_2 = "#98c379" => rgb(152, 195, 121) 13 | let g:terminal_color_10 = "#98c379" 14 | " yellow 15 | let g:terminal_color_3 = "#e5c07b" => rgb(229, 192, 123) 16 | let g:terminal_color_11 = "#e5c07b" 17 | " blue 18 | let g:terminal_color_4 = "#61afef" => rgb(97, 175, 239) 19 | let g:terminal_color_12 = "#61afef" 20 | " purple 21 | let g:terminal_color_5 = "#c678dd" => rgb(198, 120, 221) 22 | let g:terminal_color_13 = "#c678dd" 23 | " cyan 24 | let g:terminal_color_6 = "#56b6c2" => rgb(86, 182, 194) 25 | let g:terminal_color_14 = "#56b6c2" 26 | " white 27 | let g:terminal_color_7 = "#dcdfe4" => rgb(220, 223, 228) 28 | let g:terminal_color_15 = "#dcdfe4" 29 | " cursor_line 30 | let s:cursor_line = "#313640" => rgb(49, 54, 64) 31 | -------------------------------------------------------------------------------- /eeschema/handpicked_nord.cfg: -------------------------------------------------------------------------------- 1 | # nord:black => rgb(59, 66, 82) 2 | Color4DBgCanvasEx=rgb(59, 66, 82) 3 | # nord:dark_gray => rgb(76, 86, 106) 4 | Color4DBodyBgEx=rgb(76, 86, 106) 5 | # nord:red => rgb(191, 97, 106) 6 | Color4DBodyEx=rgb(191, 97, 106) 7 | Color4DPinEx=rgb(191, 97, 106) 8 | Color4DPinNumEx=rgb(191, 97, 106) 9 | Color4DGLabelEx=rgb(191, 97, 106) 10 | # nord:green => rgb(163, 190, 140) 11 | Color4DWireEx=rgb(163, 190, 140) 12 | Color4DConnEx=rgb(163, 190, 140) 13 | Color4DPinNameEx=rgb(163, 190, 140) 14 | # nord:yellow => rgb(235, 203, 139) 15 | Color4DGridEx=rgb(235, 203, 139) 16 | Color4DLLabelEx=rgb(235, 203, 139) 17 | Color4DHLabelEx=rgb(235, 203, 139) 18 | # nord:blue => rgb(129, 161, 193) 19 | Color4DBusEx=rgb(129, 161, 193) 20 | Color4DNoConnectEx=rgb(129, 161, 193) 21 | Color4DNoteEx=rgb(129, 161, 193) 22 | # nord:magenta => rgb(180, 142, 173) 23 | Color4DSheetEx=rgb(180, 142, 173) 24 | Color4DSheetLabelEx=rgb(180, 142, 173) 25 | # nord:cyan => rgb(143, 188, 187) 26 | Color4DFieldEx=rgb(143, 188, 187) 27 | Color4DReferenceEx=rgb(143, 188, 187) 28 | Color4DValueEx=rgb(143, 188, 187) 29 | # error => RED 30 | Color4DErcWEx=rgb(255, 0, 0) 31 | Color4DErcEEx=rgb(255, 0, 0) 32 | # other => default to purple 33 | Color4DNetNameEx=rgb(180, 142, 173) 34 | Color4DSheetFileNameEx=rgb(180, 142, 173) 35 | Color4DSheetNameEx=rgb(180, 142, 173) 36 | Color4DBrighenedEx=rgb(180, 142, 173) 37 | -------------------------------------------------------------------------------- /eeschema/handpicked_onedark.cfg: -------------------------------------------------------------------------------- 1 | # onedark:black => rgb(40, 44, 52) 2 | Color4DBgCanvasEx=rgb(40, 44, 52) 3 | # onedark:cursor_line => rgb(49, 54, 64) 4 | Color4DBodyBgEx=rgb(49, 54, 64) 5 | # onedark:red => rgb(224, 108, 117) 6 | Color4DBodyEx=rgb(224, 108, 117) 7 | Color4DPinEx=rgb(224, 108, 117) 8 | Color4DPinNumEx=rgb(224, 108, 117) 9 | Color4DGLabelEx=rgb(224, 108, 117) 10 | # onedark:green => rgb(152, 195, 121) 11 | Color4DWireEx=rgb(152, 195, 121) 12 | Color4DConnEx=rgb(152, 195, 121) 13 | Color4DPinNameEx=rgb(152, 195, 121) 14 | # onedark:yellow => rgb(229, 192, 123) 15 | Color4DGridEx=rgb(229, 192, 123) 16 | Color4DLLabelEx=rgb(229, 192, 123) 17 | Color4DHLabelEx=rgb(229, 192, 123) 18 | # onedark:blue => rgb(97, 175, 239) 19 | Color4DBusEx=rgb(97, 175, 239) 20 | Color4DNoConnectEx=rgb(97, 175, 239) 21 | Color4DNoteEx=rgb(97, 175, 239) 22 | # onedark:purple => rgb(198, 120, 221) 23 | Color4DSheetEx=rgb(198, 120, 221) 24 | Color4DSheetLabelEx=rgb(198, 120, 221) 25 | # onedark:cyan => rgb(86, 182, 194) 26 | Color4DFieldEx=rgb(86, 182, 194) 27 | Color4DReferenceEx=rgb(86, 182, 194) 28 | Color4DValueEx=rgb(86, 182, 194) 29 | # error => RED 30 | Color4DErcWEx=rgb(255, 0, 0) 31 | Color4DErcEEx=rgb(255, 0, 0) 32 | # other => default to purple 33 | Color4DNetNameEx=rgb(198, 120, 221) 34 | Color4DSheetFileNameEx=rgb(198, 120, 221) 35 | Color4DSheetNameEx=rgb(198, 120, 221) 36 | Color4DBrighenedEx=rgb(198, 120, 221) 37 | -------------------------------------------------------------------------------- /eeschema/base16_dracula.cfg: -------------------------------------------------------------------------------- 1 | ############################### 2 | # GENERATED FROM PYWAL PRESET # 3 | ############################### 4 | # pywal:black => rgb(40, 41, 54) 5 | Color4DBgCanvasEx=rgb(40, 41, 54) 6 | # pywal:dark_gray => rgb(77, 79, 104) 7 | Color4DBodyBgEx=rgb(77, 79, 104) 8 | # onedark:red => rgb(234, 81, 178) 9 | Color4DBodyEx=rgb(234, 81, 178) 10 | Color4DPinEx=rgb(234, 81, 178) 11 | Color4DPinNumEx=rgb(234, 81, 178) 12 | Color4DGLabelEx=rgb(234, 81, 178) 13 | # onedark:green => rgb(0, 247, 105) 14 | Color4DWireEx=rgb(0, 247, 105) 15 | Color4DConnEx=rgb(0, 247, 105) 16 | Color4DPinNameEx=rgb(0, 247, 105) 17 | # onedark:yellow => rgb(235, 255, 135) 18 | Color4DGridEx=rgb(235, 255, 135) 19 | Color4DLLabelEx=rgb(235, 255, 135) 20 | Color4DHLabelEx=rgb(235, 255, 135) 21 | # onedark:blue => rgb(98, 214, 232) 22 | Color4DBusEx=rgb(98, 214, 232) 23 | Color4DNoConnectEx=rgb(98, 214, 232) 24 | Color4DNoteEx=rgb(98, 214, 232) 25 | # onedark:magenta => rgb(180, 91, 207) 26 | Color4DSheetEx=rgb(180, 91, 207) 27 | Color4DSheetLabelEx=rgb(180, 91, 207) 28 | # onedark:cyan => rgb(161, 239, 228) 29 | Color4DFieldEx=rgb(161, 239, 228) 30 | Color4DReferenceEx=rgb(161, 239, 228) 31 | Color4DValueEx=rgb(161, 239, 228) 32 | # error => RED 33 | Color4DErcWEx=rgb(255, 0, 0) 34 | Color4DErcEEx=rgb(255, 0, 0) 35 | # other => default to magenta 36 | Color4DNetNameEx=rgb(180, 91, 207) 37 | Color4DSheetFileNameEx=rgb(180, 91, 207) 38 | Color4DSheetNameEx=rgb(180, 91, 207) 39 | Color4DBrighenedEx=rgb(180, 91, 207) 40 | -------------------------------------------------------------------------------- /eeschema/base16_nord.cfg: -------------------------------------------------------------------------------- 1 | ############################### 2 | # GENERATED FROM PYWAL PRESET # 3 | ############################### 4 | # pywal:black => rgb(46, 52, 64) 5 | Color4DBgCanvasEx=rgb(46, 52, 64) 6 | # pywal:dark_gray => rgb(76, 86, 106) 7 | Color4DBodyBgEx=rgb(76, 86, 106) 8 | # onedark:red => rgb(136, 192, 208) 9 | Color4DBodyEx=rgb(136, 192, 208) 10 | Color4DPinEx=rgb(136, 192, 208) 11 | Color4DPinNumEx=rgb(136, 192, 208) 12 | Color4DGLabelEx=rgb(136, 192, 208) 13 | # onedark:green => rgb(191, 97, 106) 14 | Color4DWireEx=rgb(191, 97, 106) 15 | Color4DConnEx=rgb(191, 97, 106) 16 | Color4DPinNameEx=rgb(191, 97, 106) 17 | # onedark:yellow => rgb(94, 129, 172) 18 | Color4DGridEx=rgb(94, 129, 172) 19 | Color4DLLabelEx=rgb(94, 129, 172) 20 | Color4DHLabelEx=rgb(94, 129, 172) 21 | # onedark:blue => rgb(235, 203, 139) 22 | Color4DBusEx=rgb(235, 203, 139) 23 | Color4DNoConnectEx=rgb(235, 203, 139) 24 | Color4DNoteEx=rgb(235, 203, 139) 25 | # onedark:magenta => rgb(163, 190, 140) 26 | Color4DSheetEx=rgb(163, 190, 140) 27 | Color4DSheetLabelEx=rgb(163, 190, 140) 28 | # onedark:cyan => rgb(208, 135, 112) 29 | Color4DFieldEx=rgb(208, 135, 112) 30 | Color4DReferenceEx=rgb(208, 135, 112) 31 | Color4DValueEx=rgb(208, 135, 112) 32 | # error => RED 33 | Color4DErcWEx=rgb(255, 0, 0) 34 | Color4DErcEEx=rgb(255, 0, 0) 35 | # other => default to magenta 36 | Color4DNetNameEx=rgb(163, 190, 140) 37 | Color4DSheetFileNameEx=rgb(163, 190, 140) 38 | Color4DSheetNameEx=rgb(163, 190, 140) 39 | Color4DBrighenedEx=rgb(163, 190, 140) 40 | -------------------------------------------------------------------------------- /eeschema/base16_onedark.cfg: -------------------------------------------------------------------------------- 1 | ############################### 2 | # GENERATED FROM PYWAL PRESET # 3 | ############################### 4 | # pywal:black => rgb(40, 44, 52) 5 | Color4DBgCanvasEx=rgb(40, 44, 52) 6 | # pywal:dark_gray => rgb(84, 88, 98) 7 | Color4DBodyBgEx=rgb(84, 88, 98) 8 | # onedark:red => rgb(224, 108, 117) 9 | Color4DBodyEx=rgb(224, 108, 117) 10 | Color4DPinEx=rgb(224, 108, 117) 11 | Color4DPinNumEx=rgb(224, 108, 117) 12 | Color4DGLabelEx=rgb(224, 108, 117) 13 | # onedark:green => rgb(152, 195, 121) 14 | Color4DWireEx=rgb(152, 195, 121) 15 | Color4DConnEx=rgb(152, 195, 121) 16 | Color4DPinNameEx=rgb(152, 195, 121) 17 | # onedark:yellow => rgb(229, 192, 123) 18 | Color4DGridEx=rgb(229, 192, 123) 19 | Color4DLLabelEx=rgb(229, 192, 123) 20 | Color4DHLabelEx=rgb(229, 192, 123) 21 | # onedark:blue => rgb(97, 175, 239) 22 | Color4DBusEx=rgb(97, 175, 239) 23 | Color4DNoConnectEx=rgb(97, 175, 239) 24 | Color4DNoteEx=rgb(97, 175, 239) 25 | # onedark:magenta => rgb(198, 120, 221) 26 | Color4DSheetEx=rgb(198, 120, 221) 27 | Color4DSheetLabelEx=rgb(198, 120, 221) 28 | # onedark:cyan => rgb(86, 182, 194) 29 | Color4DFieldEx=rgb(86, 182, 194) 30 | Color4DReferenceEx=rgb(86, 182, 194) 31 | Color4DValueEx=rgb(86, 182, 194) 32 | # error => RED 33 | Color4DErcWEx=rgb(255, 0, 0) 34 | Color4DErcEEx=rgb(255, 0, 0) 35 | # other => default to magenta 36 | Color4DNetNameEx=rgb(198, 120, 221) 37 | Color4DSheetFileNameEx=rgb(198, 120, 221) 38 | Color4DSheetNameEx=rgb(198, 120, 221) 39 | Color4DBrighenedEx=rgb(198, 120, 221) 40 | -------------------------------------------------------------------------------- /eeschema/base16_oceanicnext.cfg: -------------------------------------------------------------------------------- 1 | ############################### 2 | # GENERATED FROM PYWAL PRESET # 3 | ############################### 4 | # pywal:black => rgb(27, 43, 52) 5 | Color4DBgCanvasEx=rgb(27, 43, 52) 6 | # pywal:dark_gray => rgb(101, 115, 126) 7 | Color4DBodyBgEx=rgb(101, 115, 126) 8 | # onedark:red => rgb(236, 95, 103) 9 | Color4DBodyEx=rgb(236, 95, 103) 10 | Color4DPinEx=rgb(236, 95, 103) 11 | Color4DPinNumEx=rgb(236, 95, 103) 12 | Color4DGLabelEx=rgb(236, 95, 103) 13 | # onedark:green => rgb(153, 199, 148) 14 | Color4DWireEx=rgb(153, 199, 148) 15 | Color4DConnEx=rgb(153, 199, 148) 16 | Color4DPinNameEx=rgb(153, 199, 148) 17 | # onedark:yellow => rgb(250, 200, 99) 18 | Color4DGridEx=rgb(250, 200, 99) 19 | Color4DLLabelEx=rgb(250, 200, 99) 20 | Color4DHLabelEx=rgb(250, 200, 99) 21 | # onedark:blue => rgb(102, 153, 204) 22 | Color4DBusEx=rgb(102, 153, 204) 23 | Color4DNoConnectEx=rgb(102, 153, 204) 24 | Color4DNoteEx=rgb(102, 153, 204) 25 | # onedark:magenta => rgb(197, 148, 197) 26 | Color4DSheetEx=rgb(197, 148, 197) 27 | Color4DSheetLabelEx=rgb(197, 148, 197) 28 | # onedark:cyan => rgb(95, 179, 179) 29 | Color4DFieldEx=rgb(95, 179, 179) 30 | Color4DReferenceEx=rgb(95, 179, 179) 31 | Color4DValueEx=rgb(95, 179, 179) 32 | # error => RED 33 | Color4DErcWEx=rgb(255, 0, 0) 34 | Color4DErcEEx=rgb(255, 0, 0) 35 | # other => default to magenta 36 | Color4DNetNameEx=rgb(197, 148, 197) 37 | Color4DSheetFileNameEx=rgb(197, 148, 197) 38 | Color4DSheetNameEx=rgb(197, 148, 197) 39 | Color4DBrighenedEx=rgb(197, 148, 197) 40 | -------------------------------------------------------------------------------- /eeschema/base16_rebecca.cfg: -------------------------------------------------------------------------------- 1 | ############################### 2 | # GENERATED FROM PYWAL PRESET # 3 | ############################### 4 | # pywal:black => rgb(41, 42, 68) 5 | Color4DBgCanvasEx=rgb(41, 42, 68) 6 | # pywal:dark_gray => rgb(102, 102, 153) 7 | Color4DBodyBgEx=rgb(102, 102, 153) 8 | # onedark:red => rgb(160, 160, 197) 9 | Color4DBodyEx=rgb(160, 160, 197) 10 | Color4DPinEx=rgb(160, 160, 197) 11 | Color4DPinNumEx=rgb(160, 160, 197) 12 | Color4DGLabelEx=rgb(160, 160, 197) 13 | # onedark:green => rgb(109, 254, 223) 14 | Color4DWireEx=rgb(109, 254, 223) 15 | Color4DConnEx=rgb(109, 254, 223) 16 | Color4DPinNameEx=rgb(109, 254, 223) 17 | # onedark:yellow => rgb(174, 129, 255) 18 | Color4DGridEx=rgb(174, 129, 255) 19 | Color4DLLabelEx=rgb(174, 129, 255) 20 | Color4DHLabelEx=rgb(174, 129, 255) 21 | # onedark:blue => rgb(45, 224, 167) 22 | Color4DBusEx=rgb(45, 224, 167) 23 | Color4DNoConnectEx=rgb(45, 224, 167) 24 | Color4DNoteEx=rgb(45, 224, 167) 25 | # onedark:magenta => rgb(122, 165, 255) 26 | Color4DSheetEx=rgb(122, 165, 255) 27 | Color4DSheetLabelEx=rgb(122, 165, 255) 28 | # onedark:cyan => rgb(142, 174, 224) 29 | Color4DFieldEx=rgb(142, 174, 224) 30 | Color4DReferenceEx=rgb(142, 174, 224) 31 | Color4DValueEx=rgb(142, 174, 224) 32 | # error => RED 33 | Color4DErcWEx=rgb(255, 0, 0) 34 | Color4DErcEEx=rgb(255, 0, 0) 35 | # other => default to magenta 36 | Color4DNetNameEx=rgb(122, 165, 255) 37 | Color4DSheetFileNameEx=rgb(122, 165, 255) 38 | Color4DSheetNameEx=rgb(122, 165, 255) 39 | Color4DBrighenedEx=rgb(122, 165, 255) 40 | -------------------------------------------------------------------------------- /example_project/usb_protection.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 26 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 2 2 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | Text HLabel 4950 2600 0 50 Input ~ 0 17 | USB_SIG 18 | Text HLabel 5050 2850 2 50 Input ~ 0 19 | FET_EN 20 | Text HLabel 5050 2950 2 50 Input ~ 0 21 | TRIP 22 | Text HLabel 5050 3050 2 50 Input ~ 0 23 | 3A_MODE 24 | Text HLabel 5050 3150 2 50 Input ~ 0 25 | PLUG 26 | Wire Wire Line 27 | 5000 2850 5050 2850 28 | Wire Wire Line 29 | 5000 2950 5050 2950 30 | Wire Wire Line 31 | 5000 3050 5050 3050 32 | Wire Wire Line 33 | 5000 3150 5050 3150 34 | NoConn ~ 5000 2950 35 | NoConn ~ 5000 3050 36 | NoConn ~ 5000 3150 37 | $Comp 38 | L power:PWR_FLAG #FLG0102 39 | U 1 1 5C1AF74F 40 | P 4800 2400 41 | F 0 "#FLG0102" H 4800 2475 50 0001 C CNN 42 | F 1 "PWR_FLAG" H 4800 2574 50 0000 C CNN 43 | F 2 "" H 4800 2400 50 0001 C CNN 44 | F 3 "~" H 4800 2400 50 0001 C CNN 45 | 1 4800 2400 46 | 1 0 0 -1 47 | $EndComp 48 | $Comp 49 | L power:+5V #PWR0104 50 | U 1 1 5C1AF794 51 | P 5100 2400 52 | F 0 "#PWR0104" H 5100 2250 50 0001 C CNN 53 | F 1 "+5V" H 5115 2573 50 0000 C CNN 54 | F 2 "" H 5100 2400 50 0001 C CNN 55 | F 3 "" H 5100 2400 50 0001 C CNN 56 | 1 5100 2400 57 | 1 0 0 -1 58 | $EndComp 59 | Wire Wire Line 60 | 4800 2400 5100 2400 61 | $Comp 62 | L power:PWR_FLAG #FLG0103 63 | U 1 1 5C1AF7D6 64 | P 4400 2400 65 | F 0 "#FLG0103" H 4400 2475 50 0001 C CNN 66 | F 1 "PWR_FLAG" H 4400 2574 50 0000 C CNN 67 | F 2 "" H 4400 2400 50 0001 C CNN 68 | F 3 "~" H 4400 2400 50 0001 C CNN 69 | 1 4400 2400 70 | 1 0 0 -1 71 | $EndComp 72 | $Comp 73 | L power:GND #PWR0105 74 | U 1 1 5C1AF837 75 | P 4400 2500 76 | F 0 "#PWR0105" H 4400 2250 50 0001 C CNN 77 | F 1 "GND" H 4405 2327 50 0000 C CNN 78 | F 2 "" H 4400 2500 50 0001 C CNN 79 | F 3 "" H 4400 2500 50 0001 C CNN 80 | 1 4400 2500 81 | 1 0 0 -1 82 | $EndComp 83 | Wire Wire Line 84 | 4400 2400 4400 2500 85 | Entry Wire Line 86 | 5050 2600 5150 2700 87 | Entry Wire Line 88 | 5250 2600 5350 2700 89 | Text Label 5150 2700 0 50 ~ 0 90 | D- 91 | Text Label 5350 2700 0 50 ~ 0 92 | D+ 93 | Wire Bus Line 94 | 4950 2600 5250 2600 95 | $EndSCHEMATC 96 | -------------------------------------------------------------------------------- /generate-from-pywal.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import json 4 | import pathlib 5 | 6 | def hex2rgb(hv): 7 | hv = hv[-6:] 8 | r = int(hv[0:2], 16) 9 | g = int(hv[2:4], 16) 10 | b = int(hv[4:6], 16) 11 | return "rgb(%d, %d, %d)" % (r, g, b) 12 | 13 | colors_json_path = pathlib.PosixPath("~/.cache/wal/colors.json").expanduser() 14 | with open(colors_json_path, "r") as f: 15 | colors = json.loads(f.read()) 16 | 17 | # TODO: intelligent dark_gray selection with HSL ? 18 | black = hex2rgb(colors["colors"]["color0"]) 19 | dark_gray = hex2rgb(colors["colors"]["color8"]) 20 | #dark_gray = hex2rgb(colors["special"]["cursor"]) 21 | red = hex2rgb(colors["colors"]["color9"]) 22 | green = hex2rgb(colors["colors"]["color10"]) 23 | yellow = hex2rgb(colors["colors"]["color11"]) 24 | blue = hex2rgb(colors["colors"]["color12"]) 25 | magenta = hex2rgb(colors["colors"]["color13"]) 26 | cyan = hex2rgb(colors["colors"]["color14"]) 27 | 28 | generated = [ 29 | "###################################", 30 | "# GENERATED FROM IMAGE WITH PYWAL #", 31 | "###################################", 32 | "# pywal:black => " + black, 33 | "Color4DBgCanvasEx=" + black, 34 | "# pywal:dark_gray => " + dark_gray, 35 | "Color4DBodyBgEx=" + dark_gray, 36 | "# onedark:red => " + red, 37 | "Color4DBodyEx=" + red, 38 | "Color4DPinEx=" + red, 39 | "Color4DPinNumEx=" + red, 40 | "Color4DGLabelEx=" + red, 41 | "# onedark:green => " + green, 42 | "Color4DWireEx=" + green, 43 | "Color4DConnEx=" + green, 44 | "Color4DPinNameEx=" + green, 45 | "# onedark:yellow => " + yellow, 46 | "Color4DGridEx=" + yellow, 47 | "Color4DLLabelEx=" + yellow, 48 | "Color4DHLabelEx=" + yellow, 49 | "# onedark:blue => " + blue, 50 | "Color4DBusEx=" + blue, 51 | "Color4DNoConnectEx=" + blue, 52 | "Color4DNoteEx=" + blue, 53 | "# onedark:magenta => " + magenta, 54 | "Color4DSheetEx=" + magenta, 55 | "Color4DSheetLabelEx=" + magenta, 56 | "# onedark:cyan => " + cyan, 57 | "Color4DFieldEx=" + cyan, 58 | "Color4DReferenceEx=" + cyan, 59 | "Color4DValueEx=" + cyan, 60 | "# error => RED", 61 | "Color4DErcWEx=rgb(255, 0, 0)", 62 | "Color4DErcEEx=rgb(255, 0, 0)", 63 | "# other => default to magenta", 64 | "Color4DNetNameEx=" + magenta, 65 | "Color4DSheetFileNameEx=" + magenta, 66 | "Color4DSheetNameEx=" + magenta, 67 | "Color4DBrighenedEx=" + magenta, 68 | ] 69 | 70 | print("\n".join(generated)) 71 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # KiCad Colors 2 | 3 | Quickly swap KiCad themes/colorschemes. 4 | 5 | KiCad's default colors appear to be chosen from the values [0, 132, 194, 255] 6 | for each value of the R, G, and B components. We can modify these colors for a 7 | more aesthetically pleasing outcome. 8 | 9 | Original idea & inspiration from https://github.com/pointhi/kicad-color-schemes 10 | 11 | ## Usage 12 | 13 | :exclamation: 14 | **Invoking the Makefile will modify your current configuration files in-place** 15 | :exclamation: 16 | * macOS: `~/Library/Preferences/kicad/eeschema` 17 | * Linux: `~/.config/kicad/eeschema` 18 | 19 | :exclamation: 20 | **MAKE A BACKUP** 21 | :exclamation: 22 | 23 | ```bash 24 | # list available themes for eeschema 25 | $ make show_eeschema_options 26 | set_eeschema_base16_dracula 27 | set_eeschema_base16_nord 28 | set_eeschema_base16_oceanicnext 29 | set_eeschema_base16_onedark 30 | set_eeschema_base16_rebecca 31 | set_eeschema_default 32 | set_eeschema_handpicked_nord 33 | set_eeschema_handpicked_onedark 34 | 35 | # select specific theme for eeschema 36 | $ make set_eeschema_base16_nord 37 | 38 | # switch back to original eeschema colors 39 | $ make set_eeschema_default 40 | ``` 41 | 42 | ## eeschema 43 | 44 | Colors in `eeschema` can be treated as a form of syntax highlighting since all 45 | objects on the canvas are drawn on top of a generic background. Therefore, we 46 | can get reasonable results by generating themes based on existing terminal 47 | colorschemes. They are displayed below. 48 | 49 | color-scheme | screenshot 50 | -----------------------------------|--------------------------------------------------- 51 | **default** | ![default][default_png_link] 52 | [handpicked_onedark][onedark_link] | ![handpicked_onedark][handpicked_onedark_png_link] 53 | [handpicked_nord][nord_link] | ![handpicked_nord][handpicked_nord_png_link] 54 | **base16_onedark** | ![base16_onedark][base16_onedark_png_link] 55 | **base16_nord** | ![base16_nord][base16_nord_png_link] 56 | **base16_rebecca** | ![base16_rebecca][base16_rebecca_png_link] 57 | **base16_dracula** | ![base16_dracula][base16_dracula_png_link] 58 | **base16_oceanicnext** | ![base16_oceanicnext][base16_oceanicnext_png_link] 59 | 60 | [default_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/default.png 61 | [onedark_link]: https://github.com/sonph/onehalf/blob/master/vim/colors/onehalfdark.vim 62 | [handpicked_onedark_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/handpicked_onedark.png 63 | [nord_link]: https://github.com/arcticicestudio/nord-vim/blob/develop/colors/nord.vim 64 | [handpicked_nord_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/handpicked_nord.png 65 | [base16_onedark_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/base16_onedark.png 66 | [base16_nord_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/base16_nord.png 67 | [base16_rebecca_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/base16_rebecca.png 68 | [base16_dracula_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/base16_dracula.png 69 | [base16_oceanicnext_png_link]: https://raw.githubusercontent.com/skalidindi3/kicad-colors/master/eeschema/base16_oceanicnext.png 70 | 71 | ## pcbnew (TODO) 72 | 73 | Coloring `pcbnew` is a harder task because layers allow for overlapping 74 | information. It is no longer sufficient for an object to have a color with 75 | passable contrast to a single background. Each object must now contrast its 76 | color against all objects it in the visible stackup. Doing so in an 77 | aesthetically pleasing way is difficult. 78 | 79 | Since I am not even an "armchair expert" in optics or the color gamut, 80 | the task as defined above is beyond what I care to put effort into. 81 | Instead, I will restrict my problem space by aiming to have high contrast 82 | only on specific layers. This makes aesthetics my de facto priority. Since 83 | the `Makefile` makes it easy to switch between themes, this won't be a deal 84 | breaker for me. I can choose a theme well suited for each specific subtask 85 | and switch back to the default for final review. 86 | 87 | -------------------------------------------------------------------------------- /example_project/example-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # Amplifier_Current_INA138 5 | # 6 | DEF Amplifier_Current_INA138 U 0 5 Y Y 1 F N 7 | F0 "U" 150 200 50 H V L CNN 8 | F1 "Amplifier_Current_INA138" 150 100 50 H V L CNN 9 | F2 "Package_TO_SOT_SMD:SOT-23-5" 0 0 50 H I C CNN 10 | F3 "" 0 5 50 H I C CNN 11 | ALIAS INA168 12 | $FPLIST 13 | *SOT*23* 14 | $ENDFPLIST 15 | DRAW 16 | P 4 0 1 10 -200 200 200 0 -200 -200 -200 200 f 17 | X ~ 1 300 0 100 L 50 50 1 1 O 18 | X GND 2 -100 -300 150 U 50 50 1 1 W 19 | X + 3 -300 100 100 R 50 50 1 1 I 20 | X - 4 -300 -100 100 R 50 50 1 1 I 21 | X V+ 5 -100 300 150 D 50 50 1 1 W 22 | ENDDRAW 23 | ENDDEF 24 | # 25 | # Connector_USB_C_Receptacle_USB2.0 26 | # 27 | DEF Connector_USB_C_Receptacle_USB2.0 J 0 40 Y Y 1 F N 28 | F0 "J" -400 750 50 H V L CNN 29 | F1 "Connector_USB_C_Receptacle_USB2.0" 750 750 50 H V R CNN 30 | F2 "" 150 0 50 H I C CNN 31 | F3 "" 150 0 50 H I C CNN 32 | $FPLIST 33 | USB*C*Receptacle* 34 | $ENDFPLIST 35 | DRAW 36 | A -275 -150 75 -1799 -1 0 1 20 N -350 -150 -200 -150 37 | A -275 -150 25 -1799 -1 0 1 10 N -300 -150 -250 -150 38 | A -275 -150 25 -1799 -1 0 1 10 F -300 -150 -250 -150 39 | A -275 150 25 1 1799 0 1 10 F -250 150 -300 150 40 | A -275 150 25 1 1799 0 1 10 N -250 150 -300 150 41 | A -275 150 75 1 1799 0 1 20 N -200 150 -350 150 42 | C -100 45 25 0 1 10 F 43 | C 0 -230 50 0 1 0 F 44 | S -10 -700 10 -660 0 0 0 N 45 | S 400 -590 360 -610 0 0 0 N 46 | S 400 -490 360 -510 0 0 0 N 47 | S 400 -190 360 -210 0 0 0 N 48 | S 400 -90 360 -110 0 0 0 N 49 | S 400 10 360 -10 0 0 0 N 50 | S 400 110 360 90 0 0 0 N 51 | S 400 310 360 290 0 0 0 N 52 | S 400 410 360 390 0 0 0 N 53 | S 400 610 360 590 0 0 0 N 54 | S -400 700 400 -700 0 1 10 f 55 | S -300 -150 -250 150 0 1 10 F 56 | S 75 70 125 120 0 1 10 F 57 | P 2 0 1 20 -350 -150 -350 150 N 58 | P 2 0 1 20 -200 150 -200 -150 N 59 | P 2 0 1 20 0 -230 0 170 N 60 | P 3 0 1 20 0 -130 -100 -30 -100 20 N 61 | P 3 0 1 20 0 -80 100 20 100 70 N 62 | P 4 0 1 10 -50 170 0 270 50 170 -50 170 F 63 | X GND A1 0 -900 200 U 50 50 1 1 W 64 | X GND A12 0 -900 200 U 50 50 1 1 W N 65 | X VBUS A4 600 600 200 L 50 50 1 1 W 66 | X CC1 A5 600 400 200 L 50 50 1 1 B 67 | X D+ A6 600 -100 200 L 50 50 1 1 B 68 | X D- A7 600 100 200 L 50 50 1 1 B 69 | X SBU1 A8 600 -500 200 L 50 50 1 1 B 70 | X VBUS A9 600 600 200 L 50 50 1 1 W N 71 | X GND B1 0 -900 200 U 50 50 1 1 W N 72 | X GND B12 0 -900 200 U 50 50 1 1 W N 73 | X VBUS B4 600 600 200 L 50 50 1 1 W N 74 | X CC2 B5 600 300 200 L 50 50 1 1 B 75 | X D+ B6 600 -200 200 L 50 50 1 1 B 76 | X D- B7 600 0 200 L 50 50 1 1 B 77 | X SBU2 B8 600 -600 200 L 50 50 1 1 B 78 | X VBUS B9 600 600 200 L 50 50 1 1 W N 79 | X SHIELD S1 -300 -900 200 U 50 50 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | # Device_C 84 | # 85 | DEF Device_C C 0 10 N Y 1 F N 86 | F0 "C" 25 100 50 H V L CNN 87 | F1 "Device_C" 25 -100 50 H V L CNN 88 | F2 "" 38 -150 50 H I C CNN 89 | F3 "" 0 0 50 H I C CNN 90 | $FPLIST 91 | C_* 92 | $ENDFPLIST 93 | DRAW 94 | P 2 0 1 20 -80 -30 80 -30 N 95 | P 2 0 1 20 -80 30 80 30 N 96 | X ~ 1 0 150 110 D 50 50 1 1 P 97 | X ~ 2 0 -150 110 U 50 50 1 1 P 98 | ENDDRAW 99 | ENDDEF 100 | # 101 | # Device_R 102 | # 103 | DEF Device_R R 0 0 N Y 1 F N 104 | F0 "R" 80 0 50 V V C CNN 105 | F1 "Device_R" 0 0 50 V V C CNN 106 | F2 "" -70 0 50 V I C CNN 107 | F3 "" 0 0 50 H I C CNN 108 | $FPLIST 109 | R_* 110 | $ENDFPLIST 111 | DRAW 112 | S -40 -100 40 100 0 1 10 N 113 | X ~ 1 0 150 50 D 50 50 1 1 P 114 | X ~ 2 0 -150 50 U 50 50 1 1 P 115 | ENDDRAW 116 | ENDDEF 117 | # 118 | # Transistor_FET_NTR2101P 119 | # 120 | DEF Transistor_FET_NTR2101P Q 0 0 Y N 1 F N 121 | F0 "Q" 200 75 50 H V L CNN 122 | F1 "Transistor_FET_NTR2101P" 200 0 50 H V L CNN 123 | F2 "Package_TO_SOT_SMD:SOT-23" 200 -75 50 H I L CIN 124 | F3 "" 0 0 50 H I L CNN 125 | ALIAS VP0610T BSS84 NTR2101P BSS83P Si2319CDS IRLML6402 126 | $FPLIST 127 | SOT?23* 128 | $ENDFPLIST 129 | DRAW 130 | C 65 0 111 0 1 10 N 131 | C 100 -70 11 0 1 0 F 132 | C 100 70 11 0 1 0 F 133 | P 2 0 1 0 -100 0 10 0 N 134 | P 2 0 1 0 30 -70 100 -70 N 135 | P 2 0 1 10 30 -50 30 -90 N 136 | P 2 0 1 0 30 0 100 0 N 137 | P 2 0 1 10 30 20 30 -20 N 138 | P 2 0 1 0 30 70 100 70 N 139 | P 2 0 1 10 30 90 30 50 N 140 | P 2 0 1 0 100 -70 100 -100 N 141 | P 2 0 1 0 100 -70 100 0 N 142 | P 2 0 1 0 100 100 100 70 N 143 | P 3 0 1 10 10 75 10 -75 10 -75 N 144 | P 4 0 1 0 90 0 50 -15 50 15 90 0 F 145 | P 4 0 1 0 100 -70 130 -70 130 70 100 70 N 146 | P 4 0 1 0 110 -20 115 -15 145 -15 150 -10 N 147 | P 4 0 1 0 130 -15 115 10 145 10 130 -15 N 148 | X G 1 -200 0 100 R 50 50 1 1 I 149 | X S 2 100 -200 100 U 50 50 1 1 P 150 | X D 3 100 200 100 D 50 50 1 1 P 151 | ENDDRAW 152 | ENDDEF 153 | # 154 | # power_+5V 155 | # 156 | DEF power_+5V #PWR 0 0 Y Y 1 F P 157 | F0 "#PWR" 0 -150 50 H I C CNN 158 | F1 "power_+5V" 0 140 50 H V C CNN 159 | F2 "" 0 0 50 H I C CNN 160 | F3 "" 0 0 50 H I C CNN 161 | DRAW 162 | P 2 0 1 0 -30 50 0 100 N 163 | P 2 0 1 0 0 0 0 100 N 164 | P 2 0 1 0 0 100 30 50 N 165 | X +5V 1 0 0 0 U 50 50 1 1 W N 166 | ENDDRAW 167 | ENDDEF 168 | # 169 | # power_GND 170 | # 171 | DEF power_GND #PWR 0 0 Y Y 1 F P 172 | F0 "#PWR" 0 -250 50 H I C CNN 173 | F1 "power_GND" 0 -150 50 H V C CNN 174 | F2 "" 0 0 50 H I C CNN 175 | F3 "" 0 0 50 H I C CNN 176 | DRAW 177 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 178 | X GND 1 0 0 0 D 50 50 1 1 W N 179 | ENDDRAW 180 | ENDDEF 181 | # 182 | # power_PWR_FLAG 183 | # 184 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 185 | F0 "#FLG" 0 75 50 H I C CNN 186 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 187 | F2 "" 0 0 50 H I C CNN 188 | F3 "" 0 0 50 H I C CNN 189 | DRAW 190 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 191 | X pwr 1 0 0 0 U 50 50 0 0 w 192 | ENDDRAW 193 | ENDDEF 194 | # 195 | #End Library 196 | -------------------------------------------------------------------------------- /example_project/example.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 26 0 3 | EELAYER END 4 | $Descr User 5906 5906 5 | encoding utf-8 6 | Sheet 1 2 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Connector:USB_C_Receptacle_USB2.0 J1 18 | U 1 1 5C1842FB 19 | P 1650 1850 20 | F 0 "J1" H 1755 2717 50 0000 C CNN 21 | F 1 "USB_C_Receptacle_USB2.0" H 1755 2626 50 0000 C CNN 22 | F 2 "" H 1800 1850 50 0001 C CNN 23 | F 3 "https://www.usb.org/sites/default/files/documents/usb_type-c.zip" H 1800 1850 50 0001 C CNN 24 | 1 1650 1850 25 | 1 0 0 -1 26 | $EndComp 27 | $Comp 28 | L Device:R R1 29 | U 1 1 5C184381 30 | P 1450 3100 31 | F 0 "R1" H 1520 3146 50 0000 L CNN 32 | F 1 "R" H 1520 3055 50 0000 L CNN 33 | F 2 "" V 1380 3100 50 0001 C CNN 34 | F 3 "~" H 1450 3100 50 0001 C CNN 35 | 1 1450 3100 36 | 1 0 0 -1 37 | $EndComp 38 | $Comp 39 | L Device:C C1 40 | U 1 1 5C1844C3 41 | P 1250 3100 42 | F 0 "C1" H 1136 3054 50 0000 R CNN 43 | F 1 "C" H 1136 3145 50 0000 R CNN 44 | F 2 "" H 1288 2950 50 0001 C CNN 45 | F 3 "~" H 1250 3100 50 0001 C CNN 46 | 1 1250 3100 47 | 1 0 0 1 48 | $EndComp 49 | Wire Wire Line 50 | 1350 2750 1350 2850 51 | Wire Wire Line 52 | 1350 2850 1250 2850 53 | Wire Wire Line 54 | 1250 2850 1250 2950 55 | Wire Wire Line 56 | 1350 2850 1450 2850 57 | Wire Wire Line 58 | 1450 2850 1450 2950 59 | Connection ~ 1350 2850 60 | Wire Wire Line 61 | 1650 2750 1650 3350 62 | Wire Wire Line 63 | 1650 3350 1450 3350 64 | Wire Wire Line 65 | 1450 3350 1450 3250 66 | Wire Wire Line 67 | 1250 3250 1250 3350 68 | Wire Wire Line 69 | 1250 3350 1450 3350 70 | Connection ~ 1450 3350 71 | $Comp 72 | L power:GND #PWR0101 73 | U 1 1 5C18473A 74 | P 1450 3450 75 | F 0 "#PWR0101" H 1450 3200 50 0001 C CNN 76 | F 1 "GND" H 1455 3277 50 0000 C CNN 77 | F 2 "" H 1450 3450 50 0001 C CNN 78 | F 3 "" H 1450 3450 50 0001 C CNN 79 | 1 1450 3450 80 | 1 0 0 -1 81 | $EndComp 82 | Wire Wire Line 83 | 1450 3450 1450 3350 84 | NoConn ~ 2250 2350 85 | NoConn ~ 2250 2450 86 | $Comp 87 | L Device:R R2 88 | U 1 1 5C184C14 89 | P 2150 3100 90 | F 0 "R2" H 2081 3054 50 0000 R CNN 91 | F 1 "R" H 2081 3145 50 0000 R CNN 92 | F 2 "" V 2080 3100 50 0001 C CNN 93 | F 3 "~" H 2150 3100 50 0001 C CNN 94 | 1 2150 3100 95 | 1 0 0 1 96 | $EndComp 97 | $Comp 98 | L Device:R R3 99 | U 1 1 5C184CB4 100 | P 2350 3100 101 | F 0 "R3" H 2420 3146 50 0000 L CNN 102 | F 1 "R" H 2420 3055 50 0000 L CNN 103 | F 2 "" V 2280 3100 50 0001 C CNN 104 | F 3 "~" H 2350 3100 50 0001 C CNN 105 | 1 2350 3100 106 | 1 0 0 -1 107 | $EndComp 108 | Wire Wire Line 109 | 2150 3250 2150 3350 110 | Wire Wire Line 111 | 2150 3350 1650 3350 112 | Connection ~ 1650 3350 113 | Wire Wire Line 114 | 2350 3250 2350 3350 115 | Wire Wire Line 116 | 2350 3350 2150 3350 117 | Connection ~ 2150 3350 118 | Text GLabel 4250 2650 0 50 Input ~ 0 119 | 3A_MODE 120 | Wire Wire Line 121 | 2250 1750 2300 1750 122 | Wire Wire Line 123 | 2300 1850 2250 1850 124 | Wire Wire Line 125 | 2250 2050 2300 2050 126 | Wire Wire Line 127 | 2300 1950 2250 1950 128 | $Comp 129 | L Transistor_FET:NTR2101P Q1 130 | U 1 1 5C1875C1 131 | P 3650 1350 132 | F 0 "Q1" V 3993 1350 50 0000 C CNN 133 | F 1 "NTR2101P" V 3902 1350 50 0000 C CNN 134 | F 2 "Package_TO_SOT_SMD:SOT-23" H 3850 1275 50 0001 L CIN 135 | F 3 "http://www.onsemi.com/pub/Collateral/NTR2101P-D.PDF" H 3650 1350 50 0001 L CNN 136 | 1 3650 1350 137 | 0 1 -1 0 138 | $EndComp 139 | $Comp 140 | L Device:R R4 141 | U 1 1 5C18857B 142 | P 3350 1500 143 | F 0 "R4" H 3281 1454 50 0000 R CNN 144 | F 1 "R" H 3281 1545 50 0000 R CNN 145 | F 2 "" V 3280 1500 50 0001 C CNN 146 | F 3 "~" H 3350 1500 50 0001 C CNN 147 | 1 3350 1500 148 | 1 0 0 1 149 | $EndComp 150 | Wire Wire Line 151 | 3450 1250 3350 1250 152 | Wire Wire Line 153 | 3350 1250 3350 1350 154 | Wire Wire Line 155 | 3350 1250 2550 1250 156 | Connection ~ 3350 1250 157 | Wire Wire Line 158 | 3650 1550 3650 1750 159 | Wire Wire Line 160 | 3650 1750 3350 1750 161 | Wire Wire Line 162 | 3350 1750 3350 1650 163 | Connection ~ 3650 1750 164 | Wire Wire Line 165 | 3650 1750 3650 2450 166 | Wire Wire Line 167 | 2300 1750 2300 1850 168 | Wire Wire Line 169 | 2300 1950 2300 2050 170 | $Comp 171 | L Amplifier_Current:INA138 U1 172 | U 1 1 5C18C4FE 173 | P 4250 1700 174 | F 0 "U1" V 4350 1850 50 0000 L CNN 175 | F 1 "INA138" V 4450 1750 50 0000 L CNN 176 | F 2 "Package_TO_SOT_SMD:SOT-23-5" H 4250 1700 50 0001 C CNN 177 | F 3 "http://www.ti.com/lit/ds/symlink/ina138.pdf" H 4250 1705 50 0001 C CNN 178 | 1 4250 1700 179 | 0 -1 1 0 180 | $EndComp 181 | Entry Wire Line 182 | 2450 1450 2550 1550 183 | Wire Wire Line 184 | 2250 1450 2450 1450 185 | Entry Wire Line 186 | 2450 1550 2550 1650 187 | Wire Wire Line 188 | 2250 1550 2450 1550 189 | Entry Wire Line 190 | 2450 1850 2550 1950 191 | Entry Wire Line 192 | 2450 2050 2550 2150 193 | Wire Wire Line 194 | 2300 2050 2450 2050 195 | Connection ~ 2300 2050 196 | Wire Wire Line 197 | 2300 1850 2450 1850 198 | Connection ~ 2300 1850 199 | Entry Wire Line 200 | 2450 2850 2550 2750 201 | Wire Wire Line 202 | 2350 2950 2350 2850 203 | Wire Wire Line 204 | 2350 2850 2450 2850 205 | Wire Wire Line 206 | 2450 2650 2150 2650 207 | Wire Wire Line 208 | 2150 2650 2150 2950 209 | $Comp 210 | L Device:R R5 211 | U 1 1 5C193251 212 | P 4250 1250 213 | F 0 "R5" V 4150 1250 50 0000 C CNN 214 | F 1 "R" V 4350 1250 50 0000 C CNN 215 | F 2 "" V 4180 1250 50 0001 C CNN 216 | F 3 "~" H 4250 1250 50 0001 C CNN 217 | 1 4250 1250 218 | 0 1 1 0 219 | $EndComp 220 | Wire Wire Line 221 | 4350 1400 4450 1400 222 | Wire Wire Line 223 | 4100 1250 4050 1250 224 | Wire Wire Line 225 | 4050 1250 4050 1400 226 | Wire Wire Line 227 | 4050 1400 4150 1400 228 | Wire Wire Line 229 | 4450 1400 4450 1250 230 | Wire Wire Line 231 | 4450 1250 4400 1250 232 | Wire Wire Line 233 | 4050 1250 3900 1250 234 | Connection ~ 4050 1250 235 | Entry Bus Bus 236 | 2550 2350 2650 2450 237 | Entry Wire Line 238 | 2450 2650 2550 2550 239 | $Sheet 240 | S 2750 2350 800 550 241 | U 5C185A01 242 | F0 "USBProtection" 50 243 | F1 "usb_protection.sch" 50 244 | F2 "USB_SIG" I L 2750 2450 50 245 | F3 "FET_EN" I R 3550 2450 50 246 | F4 "TRIP" I R 3550 2550 50 247 | F5 "3A_MODE" I R 3550 2650 50 248 | F6 "PLUG" I R 3550 2800 50 249 | $EndSheet 250 | Wire Bus Line 251 | 2750 2450 2650 2450 252 | Wire Wire Line 253 | 4250 2000 4250 2550 254 | Wire Wire Line 255 | 4250 2550 3550 2550 256 | $Comp 257 | L power:GND #PWR0102 258 | U 1 1 5C1A19BC 259 | P 4550 1700 260 | F 0 "#PWR0102" H 4550 1450 50 0001 C CNN 261 | F 1 "GND" H 4555 1527 50 0000 C CNN 262 | F 2 "" H 4550 1700 50 0001 C CNN 263 | F 3 "" H 4550 1700 50 0001 C CNN 264 | 1 4550 1700 265 | 1 0 0 -1 266 | $EndComp 267 | Wire Wire Line 268 | 4550 1600 4550 1700 269 | Wire Wire Line 270 | 3900 1250 3900 1600 271 | Wire Wire Line 272 | 3900 1600 3950 1600 273 | Connection ~ 3900 1250 274 | Wire Wire Line 275 | 3900 1250 3850 1250 276 | Wire Wire Line 277 | 3650 2450 3550 2450 278 | Wire Wire Line 279 | 4550 1250 4450 1250 280 | Connection ~ 4450 1250 281 | $Comp 282 | L power:+5V #PWR0103 283 | U 1 1 5C1A994B 284 | P 4550 1250 285 | F 0 "#PWR0103" H 4550 1100 50 0001 C CNN 286 | F 1 "+5V" H 4565 1423 50 0000 C CNN 287 | F 2 "" H 4550 1250 50 0001 C CNN 288 | F 3 "" H 4550 1250 50 0001 C CNN 289 | 1 4550 1250 290 | 1 0 0 -1 291 | $EndComp 292 | Text HLabel 4250 2800 0 50 Input ~ 0 293 | ORIENTATION 294 | Text Notes 2900 3350 0 50 ~ 10 295 | This schematic is incomplete but\nshould serve as a basic example\nfor showing off eeschema colors. 296 | Wire Notes Line 297 | 4250 3050 2850 3050 298 | Wire Notes Line 299 | 2850 3050 2850 3400 300 | Wire Notes Line 301 | 2850 3400 4250 3400 302 | Wire Notes Line 303 | 4250 3400 4250 3050 304 | $Comp 305 | L power:PWR_FLAG #FLG0101 306 | U 1 1 5C1AE40B 307 | P 2550 1250 308 | F 0 "#FLG0101" H 2550 1325 50 0001 C CNN 309 | F 1 "PWR_FLAG" H 2550 1424 50 0000 C CNN 310 | F 2 "" H 2550 1250 50 0001 C CNN 311 | F 3 "~" H 2550 1250 50 0001 C CNN 312 | 1 2550 1250 313 | 1 0 0 -1 314 | $EndComp 315 | Connection ~ 2550 1250 316 | Wire Wire Line 317 | 2550 1250 2250 1250 318 | $Comp 319 | L power:PWR_FLAG #FLG0104 320 | U 1 1 5C1B2A00 321 | P 4050 1250 322 | F 0 "#FLG0104" H 4050 1325 50 0001 C CNN 323 | F 1 "PWR_FLAG" H 4050 1424 50 0000 C CNN 324 | F 2 "" H 4050 1250 50 0001 C CNN 325 | F 3 "~" H 4050 1250 50 0001 C CNN 326 | 1 4050 1250 327 | 1 0 0 -1 328 | $EndComp 329 | Text Label 2450 1450 2 50 ~ 0 330 | CC1 331 | Text Label 2450 1550 2 50 ~ 0 332 | CC2 333 | Text Label 2450 2050 2 50 ~ 0 334 | D+ 335 | Text Label 2450 1850 2 50 ~ 0 336 | D- 337 | Text Label 2450 2850 2 50 ~ 0 338 | CC2 339 | Text Label 2450 2650 2 50 ~ 0 340 | CC1 341 | Wire Bus Line 342 | 2550 1550 2550 2750 343 | $EndSCHEMATC 344 | --------------------------------------------------------------------------------