├── .gitignore
├── .vscode
├── c_cpp_properties.json
├── launch.json
└── settings.json
├── README.md
├── hardware
├── LH154Q01.kicad_sch
├── SSD2828.kicad_sch
├── SSD2828.kicad_sch-bak
├── VS035ZSM.kicad_sch
├── bom
│ └── ibom.html
├── fp-info-cache
├── fp-lib-table
├── gerbers.zip
├── gerbers
│ ├── ssd2828_board-B_Cu.gbl
│ ├── ssd2828_board-B_Mask.gbs
│ ├── ssd2828_board-B_Paste.gbp
│ ├── ssd2828_board-B_Silkscreen.gbo
│ ├── ssd2828_board-Edge_Cuts.gm1
│ ├── ssd2828_board-F_Cu.gtl
│ ├── ssd2828_board-F_Mask.gts
│ ├── ssd2828_board-F_Paste.gtp
│ ├── ssd2828_board-F_Silkscreen.gto
│ ├── ssd2828_board-In1_Cu.g2
│ ├── ssd2828_board-In2_Cu.g3
│ ├── ssd2828_board-NPTH-drl_map.gbr
│ ├── ssd2828_board-NPTH.drl
│ ├── ssd2828_board-PTH-drl_map.gbr
│ └── ssd2828_board-PTH.drl
├── libs
│ ├── C2797218
│ │ ├── C2797218.3dshapes
│ │ │ └── FPC-SMD_KH-FG0.5-H2.0-34PIN.wrl
│ │ ├── C2797218.kicad_sym
│ │ └── C2797218.pretty
│ │ │ └── FPC-SMD_KH-FG0.5-H2.0-34PIN.kicad_mod
│ ├── C602016
│ │ ├── C602016.3dshapes
│ │ │ └── IND-SMD_L2.5-W2.0_FHD252012S-6R8MT.wrl
│ │ ├── C602016.kicad_sym
│ │ └── C602016.pretty
│ │ │ └── IND-SMD_L2.5-W2.0_FHD252012S-6R8MT.kicad_mod
│ ├── C98354
│ │ ├── C98354.3dshapes
│ │ │ └── IND-SMD_L2.5-W2.0-H1.2-252012.wrl
│ │ ├── C98354.kicad_sym
│ │ └── C98354.pretty
│ │ │ └── IND-SMD_L2.5-W2.0_WPN252012H.kicad_mod
│ ├── SamacSys
│ │ ├── SamacSys_Parts.3dshapes
│ │ │ ├── 105162-0001.stp
│ │ │ ├── 19705-4001.stp
│ │ │ ├── 205863050104.igs
│ │ │ ├── 205863050104.stp
│ │ │ ├── 205863050104_new.iges
│ │ │ ├── 205863050104_new.step
│ │ │ ├── 245863050104829+.stp
│ │ │ ├── 503548-1220.stp
│ │ │ ├── 503548-1220_new.step
│ │ │ ├── AD5227BUJZ10-RL7.stp
│ │ │ ├── ADC081S021CIMF_NOPB.stp
│ │ │ ├── ASPI-0312FS-100M-T2.stp
│ │ │ ├── ASPI-0628-4R7M-T1.stp
│ │ │ ├── BTA24-600BWRG.stp
│ │ │ ├── CUS10S40,H3F.stp
│ │ │ ├── ES1D-13-F.stp
│ │ │ ├── FH35C-25S-0.3SHW_50_.stp
│ │ │ ├── INA180A3IDBVR.stp
│ │ │ ├── MIC5501-3.0YM5-TR.stp
│ │ │ ├── MP2315GJ-Z.stp
│ │ │ ├── NE555DR.stp
│ │ │ ├── NRH2410T2R2MN.stp
│ │ │ ├── NRS2012T4R7MGJ.stp
│ │ │ ├── S380.stp
│ │ │ ├── S8411-45R.stp
│ │ │ ├── TLV62568DBVR.stp
│ │ │ ├── TPS65131TRGERQ1.stp
│ │ │ └── XT30PW-F.stp
│ │ ├── SamacSys_Parts.dcm
│ │ ├── SamacSys_Parts.kicad_sym
│ │ ├── SamacSys_Parts.lib
│ │ └── SamacSys_Parts.pretty
│ │ │ ├── 105162-0001.kicad_mod
│ │ │ ├── 245863050104829.kicad_mod
│ │ │ ├── 5035481220.kicad_mod
│ │ │ ├── ASPI0312FS100MT2.kicad_mod
│ │ │ ├── ASPI06284R7MT1.kicad_mod
│ │ │ ├── CUS10S40H3F.kicad_mod
│ │ │ ├── DIOM5226X240N.kicad_mod
│ │ │ ├── FH35C25S03SHW50.kicad_mod
│ │ │ ├── NE555DR.kicad_mod
│ │ │ ├── NRH2410T2R2MN.kicad_mod
│ │ │ ├── NRS2012T4R7MGJ.kicad_mod
│ │ │ ├── QFN50P400X400X100-25N-D.kicad_mod
│ │ │ ├── S8411-45R_1.kicad_mod
│ │ │ ├── SOP254P650X170-4N.kicad_mod
│ │ │ ├── SOT65P280X100-8L.kicad_mod
│ │ │ ├── SOT65P280X100-8N.kicad_mod
│ │ │ ├── SOT95P280X145-5N.kicad_mod
│ │ │ ├── SOT95P280X145-6N.kicad_mod
│ │ │ ├── TO255P460X1020X2005-3P.kicad_mod
│ │ │ └── XT30PWF.kicad_mod
│ ├── mylib
│ │ └── mylib.pretty
│ │ │ ├── FPC_34.kicad_mod
│ │ │ └── myTestpoint.kicad_mod
│ └── ssd2828
│ │ └── ssd2828.kicad_sym
├── schematics.pdf
├── ssd2828_board.kicad_dru
├── ssd2828_board.kicad_pcb
├── ssd2828_board.kicad_prl
├── ssd2828_board.kicad_pro
├── ssd2828_board.kicad_sch
├── sym-lib-table
└── untitled.kicad_sch
├── imgs
├── 3D.png
├── IMG_5381.JPG
├── IMG_5384.JPG
└── IMG_5390.JPG
└── software
├── Makefile
├── STM32F401.svd
├── libs
├── delay.c
├── delay.h
├── spi.c
└── spi.h
├── src
├── DCS.h
├── LH154Q01.c
├── LH154Q01.h
├── VS035ZSM.c
├── VS035ZSM.h
├── clk.c
├── clk.h
├── main.c
├── ssd2828.c
└── ssd2828.h
└── system
├── STM32F401CCUX_FLASH.ld
├── cachel1_armv7.h
├── cmsis_armcc.h
├── cmsis_armclang.h
├── cmsis_armclang_ltm.h
├── cmsis_compiler.h
├── cmsis_gcc.h
├── cmsis_iccarm.h
├── cmsis_version.h
├── core_armv81mml.h
├── core_armv8mbl.h
├── core_armv8mml.h
├── core_cm0.h
├── core_cm0plus.h
├── core_cm1.h
├── core_cm23.h
├── core_cm3.h
├── core_cm33.h
├── core_cm35p.h
├── core_cm4.h
├── core_cm55.h
├── core_cm7.h
├── core_cm85.h
├── core_sc000.h
├── core_sc300.h
├── core_starmc1.h
├── mpu_armv7.h
├── mpu_armv8.h
├── pac_armv81.h
├── pmu_armv8.h
├── startup_stm32f401xc.s
├── stm32f401xc.h
├── stm32f4xx.h
├── system_stm32f4xx.c
├── system_stm32f4xx.h
└── tz_context.h
/.gitignore:
--------------------------------------------------------------------------------
1 | #kicad files
2 | # export files for BOM
3 | *.csv
4 | *.tsv
5 | *.xml
6 | # backup files
7 | *.bak
8 | /hardware/ssd2828_board-backups/*
9 |
10 | # Temporary files
11 | *.000
12 | *.bak
13 | *.bck
14 | *.kicad_pcb-bak
15 | *.kicad_sch-bak
16 | *-backups
17 | *.kicad_prl
18 | *.sch-bak
19 | *~
20 | _autosave-*
21 | *.tmp
22 | *-save.pro
23 | *-save.kicad_pcb
24 | fp-info-cache
25 |
26 | # Netlist files (exported from Eeschema)
27 | *.net
28 |
29 | # Autorouter files (exported from Pcbnew)
30 | *.dsn
31 | *.ses
32 |
33 | # Exported BOM files
34 | *.xml
35 | *.csv
36 |
37 | software/build/*.o
38 | software/build/*.bin
39 | software/build/*.elf
40 | datasheets/*
41 |
--------------------------------------------------------------------------------
/.vscode/c_cpp_properties.json:
--------------------------------------------------------------------------------
1 | {
2 | "configurations": [
3 | {
4 | "name": "Linux",
5 | "includePath": [
6 | "${workspaceFolder}/**"
7 | ],
8 | "defines": [],
9 | "compilerPath": "/usr/bin/clang",
10 | "cStandard": "c17",
11 | "cppStandard": "c++14",
12 | "intelliSenseMode": "linux-clang-x64"
13 | },
14 | {
15 | "name": "ARM32",
16 | "includePath": [
17 | "${workspaceFolder}/**"
18 | ],
19 | "defines": [],
20 | "compilerPath": "/opt/gcc-arm-none-eabi/bin/arm-none-eabi-gcc",
21 | "cStandard": "c17",
22 | "cppStandard": "c++14",
23 | "intelliSenseMode": "linux-gcc-arm"
24 | }
25 | ],
26 | "version": 4
27 | }
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 | {
8 | "name": "Cortex Debug",
9 | "cwd": "${workspaceRoot}/software",
10 | "executable": "${workspaceRoot}/software/build/main.elf",
11 | "request": "launch",
12 | "type": "cortex-debug",
13 | "servertype": "openocd",
14 | "device": "STM32F401CC",
15 | "configFiles": [
16 | "interface/stlink.cfg",
17 | "target/stm32f4x.cfg"
18 | ],
19 | "svdFile": "${workspaceRoot}/software/STM32F401.svd",
20 | "showDevDebugOutput": "raw"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "files.associations": {
3 | "stm32f4xx.h": "c",
4 | "stm32f401xc.h": "c",
5 | "core_cm4.h": "c",
6 | "cmsis_compiler.h": "c",
7 | "stdint.h": "c",
8 | "vs035zsm.h": "c",
9 | "ssd2828.h": "c",
10 | "lh154q01.h": "c",
11 | "spi.h": "c",
12 | "stddef.h": "c"
13 | },
14 | "cortex-debug.variableUseNaturalFormat": false
15 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # SSD2828-DEV
2 | A collection of boards to test the SSD2828 RGB to MIPI Converter with the LH154Q01 panel by AUO and the VS035ZSM by BOE. The boards are meant to be ordered as a single unit and then be separated using a box cutter ( the dust generated by cutting cutting FR4 is carcenogenic PLEASE be carefull! ).
3 |
4 |
5 |
6 |
7 | # The pcb
8 | The pcb is designed using the JLC04161H-7628 stackup by JLCPCB. The MIPI DSI protool requires controlled impedance traces to function properly (100Ω differental, 50Ω single ended), depending on the provided pcb stackup different trace widths and spacings need to be selected. Additionally the signals must be kept away from noise sources such as inductors and other signals. When switching layers with MIPI signals, GND vias need to be placed near the signal vias.
9 |
10 |
11 | # LH154Q01 panel
12 | The LH154Q01 panel has been tested and is working correctly.
13 |
14 | The panel does not support packed pixel stream packets, the only way to send pixel data to the display, is through DCS commands. in this demo, a STM32f401 is sending the the write_memory_continue(0x3C) DCS command containing pixel data, through SPI to the SSD2828.
15 |
16 |
17 |
18 |
19 | # VS035ZSM panel
20 | The VS035ZSM panel has been tested and is working correctly.
21 |
22 | The panel gets initialized on MIPI LP mode and the video is transmitted MIPI HS mode @912Mbps per lane. The ssd2828 is generating the test video signal called BIST. The panel has 8-bit color depth, reaning each pixel requires 24bits. The resolution of the panel is 1400x1600, including the porch values the total resoution is 1470 x 167. To operate at 60fps, 1470 x 1670 x 24 x 60 = 3.53Gbps are required resulting at 883Mbps per lane. The panel also suppors VESA DSC making 90fps operation possible. Unfortunately the SSD2828 does not include a DSC encoder.
23 |
24 |
25 |
26 |
27 | # Resources
28 | ### PCB
29 | - [jlcpcb capabilities](https://jlcpcb.com/capabilities/pcb-capabilities).
30 | - [jlcpcb impedance calculator](https://jlcpcb.com/pcb-impedance-calculator).
31 | - [Jacinto 7 High-Speed Interface Layout Guidelines](https://www.ti.com/lit/an/spracp4/spracp4.pdf?ts=1708080453311&ref_url=https%253A%252F%252Fwww.google.com%252F).
32 | - [MIPI DSI guidelines]( https://electronics.stackexchange.com/questions/610671/mipi-dsi-differential-pair-layout-guidance).
33 | - [High-Speed PCB Design Tips - Phil's Lab](https://www.youtube.com/watch?v=VRJI0X-6yTg).
34 | - [Differential Pairs - PCB Design Basics - Phil's Lab](https://www.youtube.com/watch?v=xwrdvhm4vgw).
35 |
36 | ### SSD2828
37 | - [SSD2828 RGB转MIPI转换板制作(1)](https://blog.csdn.net/weixin_37214729/article/details/123339267).
38 | - [SSD2828 RGB转MIPI转换板制作(2)](https://blog.csdn.net/weixin_37214729/article/details/127710648).
39 | - [SSD2828调试记录](https://blog.csdn.net/luoqindong/article/details/39349333).
40 | - [project-display](https://github.com/jlywxy/project-display).
41 | - [Index of /lcd/ssd2828/](http://www.internetsomething.com/lcd/ssd2828/).
42 |
43 | ### LH154Q01
44 | - [Driving IPOD Nano 6 MIPI LCD Using FPGA](https://www.circuitvalley.com/2020/01spi-mipi-bridge-fpga-verilog-hdl-ipod-nano-nano-lcd-iphone-mipi-lcd.html).
45 | - [SSD2805 w/ LH154Q01](https://github.com/techtoys/SSD2805/blob/master/Microchip/Graphics/Drivers/SSD2805.c).
46 | ### VS035ZSM
47 | - [Project North Star](https://github.com/leapmotion/ProjectNorthStar).
48 |
49 |
50 |
--------------------------------------------------------------------------------
/hardware/fp-lib-table:
--------------------------------------------------------------------------------
1 | (fp_lib_table
2 | (version 7)
3 | (lib (name "SamacSys_Parts")(type "KiCad")(uri "${KIPRJMOD}/libs/SamacSys/SamacSys_Parts.pretty")(options "")(descr ""))
4 | (lib (name "C2797218")(type "KiCad")(uri "${KIPRJMOD}/libs/C2797218/C2797218.pretty")(options "")(descr ""))
5 | (lib (name "C602016")(type "KiCad")(uri "${KIPRJMOD}/libs/C602016/C602016.pretty")(options "")(descr ""))
6 | (lib (name "C98354")(type "KiCad")(uri "${KIPRJMOD}/libs/C98354/C98354.pretty")(options "")(descr ""))
7 | (lib (name "mylib")(type "KiCad")(uri "${KIPRJMOD}/libs/mylib/mylib.pretty")(options "")(descr ""))
8 | )
9 |
--------------------------------------------------------------------------------
/hardware/gerbers.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/hardware/gerbers.zip
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-B_Mask.gbs:
--------------------------------------------------------------------------------
1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,7.0.8*
2 | G04 #@! TF.CreationDate,2023-11-03T17:47:37+02:00*
3 | G04 #@! TF.ProjectId,ssd2828_board,73736432-3832-4385-9f62-6f6172642e6b,rev?*
4 | G04 #@! TF.SameCoordinates,Original*
5 | G04 #@! TF.FileFunction,Soldermask,Bot*
6 | G04 #@! TF.FilePolarity,Negative*
7 | %FSLAX46Y46*%
8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
9 | G04 Created by KiCad (PCBNEW 7.0.8) date 2023-11-03 17:47:37*
10 | %MOMM*%
11 | %LPD*%
12 | G01*
13 | G04 APERTURE LIST*
14 | G04 Aperture macros list*
15 | %AMRoundRect*
16 | 0 Rectangle with rounded corners*
17 | 0 $1 Rounding radius*
18 | 0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
19 | 0 Add a 4 corners polygon primitive as box body*
20 | 4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
21 | 0 Add four circle primitives for the rounded corners*
22 | 1,1,$1+$1,$2,$3*
23 | 1,1,$1+$1,$4,$5*
24 | 1,1,$1+$1,$6,$7*
25 | 1,1,$1+$1,$8,$9*
26 | 0 Add four rect primitives between the rounded corners*
27 | 20,1,$1+$1,$2,$3,$4,$5,0*
28 | 20,1,$1+$1,$4,$5,$6,$7,0*
29 | 20,1,$1+$1,$6,$7,$8,$9,0*
30 | 20,1,$1+$1,$8,$9,$2,$3,0*%
31 | G04 Aperture macros list end*
32 | %ADD10RoundRect,0.225000X-0.017678X0.335876X-0.335876X0.017678X0.017678X-0.335876X0.335876X-0.017678X0*%
33 | %ADD11RoundRect,0.225000X-0.225000X-0.250000X0.225000X-0.250000X0.225000X0.250000X-0.225000X0.250000X0*%
34 | %ADD12RoundRect,0.225000X0.017678X-0.335876X0.335876X-0.017678X-0.017678X0.335876X-0.335876X0.017678X0*%
35 | %ADD13RoundRect,0.225000X0.225000X0.250000X-0.225000X0.250000X-0.225000X-0.250000X0.225000X-0.250000X0*%
36 | G04 APERTURE END LIST*
37 | D10*
38 | X74385808Y-70380992D03*
39 | X73289792Y-71477008D03*
40 | D11*
41 | X126606000Y-59715400D03*
42 | X128156000Y-59715400D03*
43 | X126606000Y-61264799D03*
44 | X128156000Y-61264799D03*
45 | D12*
46 | X75778992Y-55005608D03*
47 | X76875008Y-53909592D03*
48 | X77912592Y-57139208D03*
49 | X79008608Y-56043192D03*
50 | X80848200Y-60096400D03*
51 | X81944216Y-59000384D03*
52 | D13*
53 | X118808800Y-60528200D03*
54 | X117258800Y-60528200D03*
55 | D12*
56 | X81925792Y-61164608D03*
57 | X83021808Y-60068592D03*
58 | D13*
59 | X118808800Y-62103000D03*
60 | X117258800Y-62103000D03*
61 | D10*
62 | X70575808Y-66418592D03*
63 | X69479792Y-67514608D03*
64 | X73268208Y-69263392D03*
65 | X72172192Y-70359408D03*
66 | D12*
67 | X76845792Y-56084608D03*
68 | X77941808Y-54988592D03*
69 | D10*
70 | X69458208Y-65300992D03*
71 | X68362192Y-66397008D03*
72 | D12*
73 | X79792192Y-59018808D03*
74 | X80888208Y-57922792D03*
75 | M02*
76 |
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-B_Paste.gbp:
--------------------------------------------------------------------------------
1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,7.0.8*
2 | G04 #@! TF.CreationDate,2023-11-03T17:47:37+02:00*
3 | G04 #@! TF.ProjectId,ssd2828_board,73736432-3832-4385-9f62-6f6172642e6b,rev?*
4 | G04 #@! TF.SameCoordinates,Original*
5 | G04 #@! TF.FileFunction,Paste,Bot*
6 | G04 #@! TF.FilePolarity,Positive*
7 | %FSLAX46Y46*%
8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
9 | G04 Created by KiCad (PCBNEW 7.0.8) date 2023-11-03 17:47:37*
10 | %MOMM*%
11 | %LPD*%
12 | G01*
13 | G04 APERTURE LIST*
14 | G04 Aperture macros list*
15 | %AMRoundRect*
16 | 0 Rectangle with rounded corners*
17 | 0 $1 Rounding radius*
18 | 0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
19 | 0 Add a 4 corners polygon primitive as box body*
20 | 4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
21 | 0 Add four circle primitives for the rounded corners*
22 | 1,1,$1+$1,$2,$3*
23 | 1,1,$1+$1,$4,$5*
24 | 1,1,$1+$1,$6,$7*
25 | 1,1,$1+$1,$8,$9*
26 | 0 Add four rect primitives between the rounded corners*
27 | 20,1,$1+$1,$2,$3,$4,$5,0*
28 | 20,1,$1+$1,$4,$5,$6,$7,0*
29 | 20,1,$1+$1,$6,$7,$8,$9,0*
30 | 20,1,$1+$1,$8,$9,$2,$3,0*%
31 | G04 Aperture macros list end*
32 | %ADD10RoundRect,0.225000X-0.017678X0.335876X-0.335876X0.017678X0.017678X-0.335876X0.335876X-0.017678X0*%
33 | %ADD11RoundRect,0.225000X-0.225000X-0.250000X0.225000X-0.250000X0.225000X0.250000X-0.225000X0.250000X0*%
34 | %ADD12RoundRect,0.225000X0.017678X-0.335876X0.335876X-0.017678X-0.017678X0.335876X-0.335876X0.017678X0*%
35 | %ADD13RoundRect,0.225000X0.225000X0.250000X-0.225000X0.250000X-0.225000X-0.250000X0.225000X-0.250000X0*%
36 | G04 APERTURE END LIST*
37 | D10*
38 | X74385808Y-70380992D03*
39 | X73289792Y-71477008D03*
40 | D11*
41 | X126606000Y-59715400D03*
42 | X128156000Y-59715400D03*
43 | X126606000Y-61264799D03*
44 | X128156000Y-61264799D03*
45 | D12*
46 | X75778992Y-55005608D03*
47 | X76875008Y-53909592D03*
48 | X77912592Y-57139208D03*
49 | X79008608Y-56043192D03*
50 | X80848200Y-60096400D03*
51 | X81944216Y-59000384D03*
52 | D13*
53 | X118808800Y-60528200D03*
54 | X117258800Y-60528200D03*
55 | D12*
56 | X81925792Y-61164608D03*
57 | X83021808Y-60068592D03*
58 | D13*
59 | X118808800Y-62103000D03*
60 | X117258800Y-62103000D03*
61 | D10*
62 | X70575808Y-66418592D03*
63 | X69479792Y-67514608D03*
64 | X73268208Y-69263392D03*
65 | X72172192Y-70359408D03*
66 | D12*
67 | X76845792Y-56084608D03*
68 | X77941808Y-54988592D03*
69 | D10*
70 | X69458208Y-65300992D03*
71 | X68362192Y-66397008D03*
72 | D12*
73 | X79792192Y-59018808D03*
74 | X80888208Y-57922792D03*
75 | M02*
76 |
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-B_Silkscreen.gbo:
--------------------------------------------------------------------------------
1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,7.0.8*
2 | G04 #@! TF.CreationDate,2023-11-03T17:47:37+02:00*
3 | G04 #@! TF.ProjectId,ssd2828_board,73736432-3832-4385-9f62-6f6172642e6b,rev?*
4 | G04 #@! TF.SameCoordinates,Original*
5 | G04 #@! TF.FileFunction,Legend,Bot*
6 | G04 #@! TF.FilePolarity,Positive*
7 | %FSLAX46Y46*%
8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
9 | G04 Created by KiCad (PCBNEW 7.0.8) date 2023-11-03 17:47:37*
10 | %MOMM*%
11 | %LPD*%
12 | G01*
13 | G04 APERTURE LIST*
14 | G04 Aperture macros list*
15 | %AMRoundRect*
16 | 0 Rectangle with rounded corners*
17 | 0 $1 Rounding radius*
18 | 0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
19 | 0 Add a 4 corners polygon primitive as box body*
20 | 4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
21 | 0 Add four circle primitives for the rounded corners*
22 | 1,1,$1+$1,$2,$3*
23 | 1,1,$1+$1,$4,$5*
24 | 1,1,$1+$1,$6,$7*
25 | 1,1,$1+$1,$8,$9*
26 | 0 Add four rect primitives between the rounded corners*
27 | 20,1,$1+$1,$2,$3,$4,$5,0*
28 | 20,1,$1+$1,$4,$5,$6,$7,0*
29 | 20,1,$1+$1,$6,$7,$8,$9,0*
30 | 20,1,$1+$1,$8,$9,$2,$3,0*%
31 | G04 Aperture macros list end*
32 | %ADD10C,0.150000*%
33 | %ADD11C,0.120000*%
34 | %ADD12RoundRect,0.225000X-0.017678X0.335876X-0.335876X0.017678X0.017678X-0.335876X0.335876X-0.017678X0*%
35 | %ADD13RoundRect,0.225000X-0.225000X-0.250000X0.225000X-0.250000X0.225000X0.250000X-0.225000X0.250000X0*%
36 | %ADD14RoundRect,0.225000X0.017678X-0.335876X0.335876X-0.017678X-0.017678X0.335876X-0.335876X0.017678X0*%
37 | %ADD15RoundRect,0.225000X0.225000X0.250000X-0.225000X0.250000X-0.225000X-0.250000X0.225000X-0.250000X0*%
38 | G04 APERTURE END LIST*
39 | D10*
40 | X94234000Y-51269400D02*
41 | X94234000Y-86372200D01*
42 | X113665000Y-86372200D02*
43 | X113665000Y-51269400D01*
44 | X51841400Y-86969600D02*
45 | X79527400Y-86969600D01*
46 | D11*
47 | X74297830Y-71190219D02*
48 | X74099019Y-71389030D01*
49 | X73576581Y-70468970D02*
50 | X73377770Y-70667781D01*
51 | X127240420Y-59205400D02*
52 | X127521580Y-59205400D01*
53 | X127240420Y-60225400D02*
54 | X127521580Y-60225400D01*
55 | X127240420Y-60754799D02*
56 | X127521580Y-60754799D01*
57 | X127240420Y-61774799D02*
58 | X127521580Y-61774799D01*
59 | X75866970Y-54196381D02*
60 | X76065781Y-53997570D01*
61 | X76588219Y-54917630D02*
62 | X76787030Y-54718819D01*
63 | X78000570Y-56329981D02*
64 | X78199381Y-56131170D01*
65 | X78721819Y-57051230D02*
66 | X78920630Y-56852419D01*
67 | X80936178Y-59287173D02*
68 | X81134989Y-59088362D01*
69 | X81657427Y-60008422D02*
70 | X81856238Y-59809611D01*
71 | X118174380Y-61038200D02*
72 | X117893220Y-61038200D01*
73 | X118174380Y-60018200D02*
74 | X117893220Y-60018200D01*
75 | X82013770Y-60355381D02*
76 | X82212581Y-60156570D01*
77 | X82735019Y-61076630D02*
78 | X82933830Y-60877819D01*
79 | X118174380Y-62613000D02*
80 | X117893220Y-62613000D01*
81 | X118174380Y-61593000D02*
82 | X117893220Y-61593000D01*
83 | X70487830Y-67227819D02*
84 | X70289019Y-67426630D01*
85 | X69766581Y-66506570D02*
86 | X69567770Y-66705381D01*
87 | X73180230Y-70072619D02*
88 | X72981419Y-70271430D01*
89 | X72458981Y-69351370D02*
90 | X72260170Y-69550181D01*
91 | X76933770Y-55275381D02*
92 | X77132581Y-55076570D01*
93 | X77655019Y-55996630D02*
94 | X77853830Y-55797819D01*
95 | X69370230Y-66110219D02*
96 | X69171419Y-66309030D01*
97 | X68648981Y-65388970D02*
98 | X68450170Y-65587781D01*
99 | X79880170Y-58209581D02*
100 | X80078981Y-58010770D01*
101 | X80601419Y-58930830D02*
102 | X80800230Y-58732019D01*
103 | %LPC*%
104 | D12*
105 | X74385808Y-70380992D03*
106 | X73289792Y-71477008D03*
107 | D13*
108 | X126606000Y-59715400D03*
109 | X128156000Y-59715400D03*
110 | X126606000Y-61264799D03*
111 | X128156000Y-61264799D03*
112 | D14*
113 | X75778992Y-55005608D03*
114 | X76875008Y-53909592D03*
115 | X77912592Y-57139208D03*
116 | X79008608Y-56043192D03*
117 | X80848200Y-60096400D03*
118 | X81944216Y-59000384D03*
119 | D15*
120 | X118808800Y-60528200D03*
121 | X117258800Y-60528200D03*
122 | D14*
123 | X81925792Y-61164608D03*
124 | X83021808Y-60068592D03*
125 | D15*
126 | X118808800Y-62103000D03*
127 | X117258800Y-62103000D03*
128 | D12*
129 | X70575808Y-66418592D03*
130 | X69479792Y-67514608D03*
131 | X73268208Y-69263392D03*
132 | X72172192Y-70359408D03*
133 | D14*
134 | X76845792Y-56084608D03*
135 | X77941808Y-54988592D03*
136 | D12*
137 | X69458208Y-65300992D03*
138 | X68362192Y-66397008D03*
139 | D14*
140 | X79792192Y-59018808D03*
141 | X80888208Y-57922792D03*
142 | %LPD*%
143 | M02*
144 |
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-Edge_Cuts.gm1:
--------------------------------------------------------------------------------
1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,7.0.8*
2 | G04 #@! TF.CreationDate,2023-11-03T17:47:37+02:00*
3 | G04 #@! TF.ProjectId,ssd2828_board,73736432-3832-4385-9f62-6f6172642e6b,rev?*
4 | G04 #@! TF.SameCoordinates,Original*
5 | G04 #@! TF.FileFunction,Profile,NP*
6 | %FSLAX46Y46*%
7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
8 | G04 Created by KiCad (PCBNEW 7.0.8) date 2023-11-03 17:47:37*
9 | %MOMM*%
10 | %LPD*%
11 | G01*
12 | G04 APERTURE LIST*
13 | G04 #@! TA.AperFunction,Profile*
14 | %ADD10C,0.100000*%
15 | G04 #@! TD*
16 | G04 APERTURE END LIST*
17 | D10*
18 | X142001800Y-86566500D02*
19 | G75*
20 | G03*
21 | X142967000Y-85601301I0J965200D01*
22 | G01*
23 | X52676299Y-104622600D02*
24 | X78689200Y-104622600D01*
25 | X52676299Y-51116999D02*
26 | G75*
27 | G03*
28 | X51711099Y-52082200I1J-965201D01*
29 | G01*
30 | X51711100Y-103657400D02*
31 | G75*
32 | G03*
33 | X52676299Y-104622600I965200J0D01*
34 | G01*
35 | X51711099Y-85581701D02*
36 | X51711099Y-103657400D01*
37 | X79654400Y-103657400D02*
38 | X79654400Y-86563200D01*
39 | X142967000Y-52078899D02*
40 | X142967000Y-85598000D01*
41 | X78689201Y-104622600D02*
42 | G75*
43 | G03*
44 | X79654400Y-103657400I-1J965200D01*
45 | G01*
46 | X142001800Y-86563200D02*
47 | X79654400Y-86563200D01*
48 | X52676299Y-51117000D02*
49 | X142001800Y-51113699D01*
50 | X51711099Y-85581701D02*
51 | X51711099Y-52082200D01*
52 | X142967001Y-52078899D02*
53 | G75*
54 | G03*
55 | X142001800Y-51113699I-965201J-1D01*
56 | G01*
57 | M02*
58 |
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-NPTH-drl_map.gbr:
--------------------------------------------------------------------------------
1 | %TF.GenerationSoftware,KiCad,Pcbnew,7.0.8*%
2 | %TF.CreationDate,2023-11-03T17:47:42+02:00*%
3 | %TF.ProjectId,ssd2828_board,73736432-3832-4385-9f62-6f6172642e6b,rev?*%
4 | %TF.SameCoordinates,Original*%
5 | %TF.FileFunction,Drillmap*%
6 | %TF.FilePolarity,Positive*%
7 | %FSLAX45Y45*%
8 | G04 Gerber Fmt 4.5, Leading zero omitted, Abs format (unit mm)*
9 | G04 Created by KiCad (PCBNEW 7.0.8) date 2023-11-03 17:47:42*
10 | %MOMM*%
11 | %LPD*%
12 | G01*
13 | G04 APERTURE LIST*
14 | %ADD10C,0.100000*%
15 | %ADD11C,0.200000*%
16 | G04 APERTURE END LIST*
17 | D10*
18 | X14200180Y-8656650D02*
19 | G75*
20 | G03*
21 | X14296700Y-8560130I0J96520D01*
22 | G01*
23 | X5267630Y-10462260D02*
24 | X7868920Y-10462260D01*
25 | X5267630Y-5111700D02*
26 | G75*
27 | G03*
28 | X5171110Y-5208220I0J-96520D01*
29 | G01*
30 | X5171110Y-10365740D02*
31 | G75*
32 | G03*
33 | X5267630Y-10462260I96520J0D01*
34 | G01*
35 | X5171110Y-8558170D02*
36 | X5171110Y-10365740D01*
37 | X7965440Y-10365740D02*
38 | X7965440Y-8656320D01*
39 | X14296700Y-5207890D02*
40 | X14296700Y-8559800D01*
41 | X7868920Y-10462260D02*
42 | G75*
43 | G03*
44 | X7965440Y-10365740I0J96520D01*
45 | G01*
46 | X14200180Y-8656320D02*
47 | X7965440Y-8656320D01*
48 | X5267630Y-5111700D02*
49 | X14200180Y-5111370D01*
50 | X5171110Y-8558170D02*
51 | X5171110Y-5208220D01*
52 | X14296700Y-5207890D02*
53 | G75*
54 | G03*
55 | X14200180Y-5111370I-96520J0D01*
56 | G01*
57 | D11*
58 | X5426887Y-10778744D02*
59 | X5426887Y-10578744D01*
60 | X5426887Y-10578744D02*
61 | X5474506Y-10578744D01*
62 | X5474506Y-10578744D02*
63 | X5503077Y-10588268D01*
64 | X5503077Y-10588268D02*
65 | X5522125Y-10607315D01*
66 | X5522125Y-10607315D02*
67 | X5531649Y-10626363D01*
68 | X5531649Y-10626363D02*
69 | X5541172Y-10664458D01*
70 | X5541172Y-10664458D02*
71 | X5541172Y-10693030D01*
72 | X5541172Y-10693030D02*
73 | X5531649Y-10731125D01*
74 | X5531649Y-10731125D02*
75 | X5522125Y-10750172D01*
76 | X5522125Y-10750172D02*
77 | X5503077Y-10769220D01*
78 | X5503077Y-10769220D02*
79 | X5474506Y-10778744D01*
80 | X5474506Y-10778744D02*
81 | X5426887Y-10778744D01*
82 | X5626887Y-10778744D02*
83 | X5626887Y-10645410D01*
84 | X5626887Y-10683506D02*
85 | X5636410Y-10664458D01*
86 | X5636410Y-10664458D02*
87 | X5645934Y-10654934D01*
88 | X5645934Y-10654934D02*
89 | X5664982Y-10645410D01*
90 | X5664982Y-10645410D02*
91 | X5684030Y-10645410D01*
92 | X5750696Y-10778744D02*
93 | X5750696Y-10645410D01*
94 | X5750696Y-10578744D02*
95 | X5741172Y-10588268D01*
96 | X5741172Y-10588268D02*
97 | X5750696Y-10597791D01*
98 | X5750696Y-10597791D02*
99 | X5760220Y-10588268D01*
100 | X5760220Y-10588268D02*
101 | X5750696Y-10578744D01*
102 | X5750696Y-10578744D02*
103 | X5750696Y-10597791D01*
104 | X5874506Y-10778744D02*
105 | X5855458Y-10769220D01*
106 | X5855458Y-10769220D02*
107 | X5845934Y-10750172D01*
108 | X5845934Y-10750172D02*
109 | X5845934Y-10578744D01*
110 | X5979268Y-10778744D02*
111 | X5960220Y-10769220D01*
112 | X5960220Y-10769220D02*
113 | X5950696Y-10750172D01*
114 | X5950696Y-10750172D02*
115 | X5950696Y-10578744D01*
116 | X6207839Y-10778744D02*
117 | X6207839Y-10578744D01*
118 | X6207839Y-10578744D02*
119 | X6274506Y-10721601D01*
120 | X6274506Y-10721601D02*
121 | X6341172Y-10578744D01*
122 | X6341172Y-10578744D02*
123 | X6341172Y-10778744D01*
124 | X6522125Y-10778744D02*
125 | X6522125Y-10673982D01*
126 | X6522125Y-10673982D02*
127 | X6512601Y-10654934D01*
128 | X6512601Y-10654934D02*
129 | X6493553Y-10645410D01*
130 | X6493553Y-10645410D02*
131 | X6455458Y-10645410D01*
132 | X6455458Y-10645410D02*
133 | X6436410Y-10654934D01*
134 | X6522125Y-10769220D02*
135 | X6503077Y-10778744D01*
136 | X6503077Y-10778744D02*
137 | X6455458Y-10778744D01*
138 | X6455458Y-10778744D02*
139 | X6436410Y-10769220D01*
140 | X6436410Y-10769220D02*
141 | X6426887Y-10750172D01*
142 | X6426887Y-10750172D02*
143 | X6426887Y-10731125D01*
144 | X6426887Y-10731125D02*
145 | X6436410Y-10712077D01*
146 | X6436410Y-10712077D02*
147 | X6455458Y-10702553D01*
148 | X6455458Y-10702553D02*
149 | X6503077Y-10702553D01*
150 | X6503077Y-10702553D02*
151 | X6522125Y-10693030D01*
152 | X6617363Y-10645410D02*
153 | X6617363Y-10845410D01*
154 | X6617363Y-10654934D02*
155 | X6636410Y-10645410D01*
156 | X6636410Y-10645410D02*
157 | X6674506Y-10645410D01*
158 | X6674506Y-10645410D02*
159 | X6693553Y-10654934D01*
160 | X6693553Y-10654934D02*
161 | X6703077Y-10664458D01*
162 | X6703077Y-10664458D02*
163 | X6712601Y-10683506D01*
164 | X6712601Y-10683506D02*
165 | X6712601Y-10740649D01*
166 | X6712601Y-10740649D02*
167 | X6703077Y-10759696D01*
168 | X6703077Y-10759696D02*
169 | X6693553Y-10769220D01*
170 | X6693553Y-10769220D02*
171 | X6674506Y-10778744D01*
172 | X6674506Y-10778744D02*
173 | X6636410Y-10778744D01*
174 | X6636410Y-10778744D02*
175 | X6617363Y-10769220D01*
176 | X6798315Y-10759696D02*
177 | X6807839Y-10769220D01*
178 | X6807839Y-10769220D02*
179 | X6798315Y-10778744D01*
180 | X6798315Y-10778744D02*
181 | X6788791Y-10769220D01*
182 | X6788791Y-10769220D02*
183 | X6798315Y-10759696D01*
184 | X6798315Y-10759696D02*
185 | X6798315Y-10778744D01*
186 | X6798315Y-10654934D02*
187 | X6807839Y-10664458D01*
188 | X6807839Y-10664458D02*
189 | X6798315Y-10673982D01*
190 | X6798315Y-10673982D02*
191 | X6788791Y-10664458D01*
192 | X6788791Y-10664458D02*
193 | X6798315Y-10654934D01*
194 | X6798315Y-10654934D02*
195 | X6798315Y-10673982D01*
196 | M02*
197 |
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-NPTH.drl:
--------------------------------------------------------------------------------
1 | M48
2 | ; DRILL file {KiCad 7.0.8} date Fri Nov 3 17:47:41 2023
3 | ; FORMAT={-:-/ absolute / metric / decimal}
4 | ; #@! TF.CreationDate,2023-11-03T17:47:41+02:00
5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.8
6 | ; #@! TF.FileFunction,NonPlated,1,4,NPTH
7 | FMAT,2
8 | METRIC
9 | %
10 | G90
11 | G05
12 | T0
13 | M30
14 |
--------------------------------------------------------------------------------
/hardware/gerbers/ssd2828_board-PTH.drl:
--------------------------------------------------------------------------------
1 | M48
2 | ; DRILL file {KiCad 7.0.8} date Fri Nov 3 17:47:41 2023
3 | ; FORMAT={-:-/ absolute / metric / decimal}
4 | ; #@! TF.CreationDate,2023-11-03T17:47:41+02:00
5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.8
6 | ; #@! TF.FileFunction,Plated,1,4,PTH
7 | FMAT,2
8 | METRIC
9 | ; #@! TA.AperFunction,Plated,PTH,ViaDrill
10 | T1C0.200
11 | ; #@! TA.AperFunction,Plated,PTH,ViaDrill
12 | T2C0.250
13 | ; #@! TA.AperFunction,Plated,PTH,ViaDrill
14 | T3C0.300
15 | %
16 | G90
17 | G05
18 | T1
19 | X102.616Y-63.246
20 | X102.718Y-62.459
21 | X104.318Y-61.57
22 | X116.789Y-59.284
23 | X123.622Y-75.438
24 | X123.876Y-74.651
25 | X124.333Y-75.844
26 | X130.302Y-56.794
27 | X132.41Y-61.011
28 | X135.026Y-68.656
29 | X135.052Y-66.599
30 | X136.779Y-64.948
31 | X137.49Y-64.465
32 | X138.201Y-65.075
33 | T2
34 | X54.686Y-100.203
35 | X54.712Y-58.242
36 | X54.737Y-93.167
37 | X54.788Y-95.199
38 | X54.864Y-56.871
39 | X54.889Y-55.245
40 | X54.889Y-91.516
41 | X54.915Y-59.461
42 | X54.94Y-96.317
43 | X54.94Y-97.561
44 | X54.966Y-60.985
45 | X55.216Y-93.808
46 | X55.216Y-94.558
47 | X55.296Y-98.863
48 | X55.296Y-99.613
49 | X55.499Y-92.208
50 | X55.499Y-92.958
51 | X55.499Y-53.993
52 | X55.499Y-54.743
53 | X55.564Y-57.295
54 | X55.564Y-58.045
55 | X55.671Y-60.597
56 | X55.671Y-61.347
57 | X55.677Y-95.408
58 | X55.677Y-96.158
59 | X55.677Y-97.136
60 | X55.677Y-97.886
61 | X55.702Y-55.644
62 | X55.702Y-56.394
63 | X55.702Y-62.103
64 | X55.753Y-58.946
65 | X55.753Y-59.696
66 | X55.905Y-100.051
67 | X56.159Y-53.543
68 | X56.286Y-91.618
69 | X58.268Y-93.269
70 | X58.293Y-94.971
71 | X58.293Y-98.374
72 | X58.344Y-55.169
73 | X58.344Y-56.871
74 | X58.344Y-58.395
75 | X58.344Y-60.147
76 | X58.369Y-96.622
77 | X58.877Y-100.406
78 | X58.953Y-92.208
79 | X58.953Y-92.958
80 | X58.953Y-93.808
81 | X58.953Y-94.558
82 | X58.979Y-95.408
83 | X58.979Y-96.158
84 | X58.979Y-97.136
85 | X58.979Y-97.886
86 | X59.03Y-98.863
87 | X59.03Y-99.613
88 | X59.036Y-53.993
89 | X59.036Y-54.743
90 | X59.066Y-60.597
91 | X59.066Y-61.347
92 | X59.078Y-58.946
93 | X59.078Y-59.696
94 | X59.082Y-55.644
95 | X59.082Y-56.394
96 | X59.142Y-57.295
97 | X59.142Y-58.045
98 | X59.309Y-91.313
99 | X59.461Y-53.162
100 | X59.487Y-62.001
101 | X59.588Y-94.971
102 | X59.614Y-96.622
103 | X59.665Y-93.294
104 | X59.665Y-98.349
105 | X59.69Y-60.173
106 | X59.766Y-55.22
107 | X59.766Y-56.82
108 | X59.893Y-58.522
109 | X71.882Y-98.755
110 | X71.933Y-95.301
111 | X71.984Y-97.053
112 | X72.212Y-93.497
113 | X72.314Y-91.465
114 | X72.339Y-100.686
115 | X72.572Y-99.167
116 | X72.572Y-99.917
117 | X72.603Y-97.498
118 | X72.603Y-98.248
119 | X72.644Y-95.764
120 | X72.644Y-96.514
121 | X72.72Y-92.132
122 | X72.72Y-92.882
123 | X72.72Y-94.062
124 | X72.72Y-94.812
125 | X73.228Y-97.053
126 | X73.254Y-91.592
127 | X73.279Y-93.497
128 | X73.279Y-98.781
129 | X73.304Y-95.301
130 | X74.14Y-65.814
131 | X74.295Y-64.77
132 | X74.803Y-66.536
133 | X74.93Y-64.135
134 | X75.286Y-96.901
135 | X75.311Y-91.542
136 | X75.336Y-95.326
137 | X75.565Y-63.5
138 | X75.565Y-64.77
139 | X75.616Y-101.575
140 | X75.768Y-97.498
141 | X75.768Y-98.248
142 | X75.794Y-100.686
143 | X75.87Y-99.167
144 | X75.87Y-99.917
145 | X75.921Y-92.132
146 | X75.921Y-92.882
147 | X75.971Y-95.764
148 | X75.971Y-96.514
149 | X75.997Y-94.062
150 | X75.997Y-94.812
151 | X76.073Y-67.666
152 | X76.2Y-64.135
153 | X76.302Y-63.144
154 | X76.53Y-91.669
155 | X76.53Y-98.069
156 | X76.556Y-93.497
157 | X76.581Y-95.326
158 | X76.606Y-100.279
159 | X79.375Y-63.5
160 | X85.369Y-72.39
161 | X85.979Y-72.923
162 | X89.332Y-71.653
163 | X103.264Y-80.01
164 | X104.419Y-80.01
165 | X105.131Y-78.486
166 | X105.131Y-81.991
167 | X105.613Y-80.01
168 | X105.924Y-78.775
169 | X105.924Y-82.169
170 | X106.674Y-78.775
171 | X106.674Y-82.169
172 | X107.366Y-81.763
173 | X107.366Y-82.652
174 | X107.391Y-78.308
175 | X107.391Y-79.273
176 | X108.134Y-78.698
177 | X108.134Y-82.169
178 | X108.884Y-78.698
179 | X108.884Y-82.169
180 | X109.423Y-80.01
181 | X109.652Y-82.347
182 | X109.728Y-78.689
183 | X128.753Y-82.677
184 | X129.235Y-81.94
185 | X129.286Y-79.832
186 | X129.413Y-69.698
187 | X129.527Y-79.09
188 | X129.527Y-82.666
189 | X130.088Y-69.305
190 | X130.277Y-79.09
191 | X130.277Y-82.666
192 | X130.607Y-79.807
193 | X130.618Y-69.836
194 | X131.013Y-82.931
195 | X131.102Y-82.042
196 | X131.166Y-67.92
197 | X131.369Y-69.723
198 | X131.852Y-82.042
199 | X131.858Y-67.477
200 | X132.334Y-82.677
201 | X132.385Y-80.086
202 | X132.388Y-66.946
203 | X132.854Y-82.042
204 | X133.147Y-66.929
205 | X133.604Y-82.042
206 | X134.061Y-82.677
207 | X134.112Y-79.858
208 | X134.609Y-82.107
209 | X134.722Y-70.815
210 | X134.747Y-71.958
211 | X134.976Y-62.84
212 | X135.001Y-63.729
213 | X135.077Y-69.545
214 | X135.139Y-82.637
215 | X135.839Y-82.956
216 | X136.017Y-80.137
217 | X136.042Y-73.381
218 | X136.042Y-78.232
219 | X136.133Y-82.132
220 | X136.506Y-78.867
221 | X136.663Y-82.663
222 | X136.804Y-72.136
223 | X137.256Y-78.867
224 | X137.439Y-82.702
225 | X137.566Y-81.483
226 | X137.897Y-78.461
227 | X139.43Y-69.869
228 | X139.573Y-70.688
229 | X139.96Y-69.338
230 | X140.767Y-69.418
231 | T3
232 | X52.705Y-54.61
233 | X52.705Y-57.15
234 | X52.705Y-60.325
235 | X52.705Y-63.5
236 | X52.705Y-66.04
237 | X52.705Y-69.215
238 | X52.705Y-71.755
239 | X52.705Y-74.93
240 | X52.705Y-78.105
241 | X52.705Y-81.28
242 | X52.705Y-84.455
243 | X52.705Y-88.265
244 | X52.705Y-89.535
245 | X52.705Y-92.075
246 | X52.705Y-94.615
247 | X52.705Y-97.155
248 | X52.705Y-100.33
249 | X53.34Y-102.87
250 | X53.975Y-85.725
251 | X54.229Y-62.547
252 | X54.229Y-63.512
253 | X54.432Y-101.067
254 | X54.61Y-52.07
255 | X55.093Y-101.727
256 | X55.245Y-88.265
257 | X55.245Y-103.505
258 | X56.567Y-63.764
259 | X56.896Y-80.708
260 | X57.125Y-79.895
261 | X57.175Y-79.071
262 | X57.683Y-81.038
263 | X57.785Y-85.725
264 | X57.81Y-76.492
265 | X57.887Y-77.406
266 | X57.937Y-62.801
267 | X57.937Y-63.614
268 | X57.937Y-100.99
269 | X58.42Y-52.07
270 | X58.674Y-101.575
271 | X58.699Y-80.987
272 | X59.055Y-88.265
273 | X59.055Y-103.505
274 | X59.868Y-75.806
275 | X60.122Y-81.089
276 | X60.147Y-71.679
277 | X60.325Y-73.025
278 | X60.858Y-67.412
279 | X61.087Y-80.886
280 | X61.189Y-71.704
281 | X61.62Y-74.663
282 | X61.697Y-77.787
283 | X61.747Y-69.774
284 | X61.747Y-78.854
285 | X62.23Y-52.07
286 | X62.23Y-85.725
287 | X62.511Y-75.755
288 | X62.865Y-88.265
289 | X62.865Y-103.505
290 | X63.246Y-79.311
291 | X64.135Y-73.025
292 | X64.465Y-70.612
293 | X64.795Y-75.247
294 | X65.913Y-84.112
295 | X66.04Y-52.07
296 | X66.04Y-85.725
297 | X66.573Y-77.495
298 | X66.624Y-71.793
299 | X66.675Y-103.505
300 | X67.259Y-78.207
301 | X67.31Y-88.265
302 | X67.894Y-82.994
303 | X68.656Y-69.761
304 | X68.834Y-68.199
305 | X69.215Y-85.725
306 | X69.723Y-69.913
307 | X69.85Y-52.07
308 | X69.85Y-77.47
309 | X70.028Y-82.144
310 | X70.079Y-63.817
311 | X70.307Y-63.03
312 | X70.358Y-64.745
313 | X70.485Y-103.505
314 | X71.044Y-65.507
315 | X71.12Y-88.265
316 | X71.476Y-69.608
317 | X71.907Y-63.538
318 | X72.161Y-82.105
319 | X72.339Y-101.6
320 | X72.466Y-62.75
321 | X72.974Y-67.513
322 | X73.025Y-64.833
323 | X73.025Y-85.725
324 | X73.228Y-62.014
325 | X73.279Y-101.219
326 | X73.66Y-52.07
327 | X73.685Y-68.313
328 | X73.894Y-61.297
329 | X73.965Y-81.089
330 | X74.701Y-60.49
331 | X74.752Y-69.253
332 | X74.752Y-81.686
333 | X74.93Y-103.505
334 | X75.387Y-59.753
335 | X75.413Y-81.089
336 | X75.565Y-78.105
337 | X75.819Y-88.316
338 | X76.2Y-71.12
339 | X76.556Y-101.829
340 | X76.632Y-59.792
341 | X76.657Y-57.365
342 | X76.835Y-85.725
343 | X77.178Y-101.206
344 | X77.445Y-58.102
345 | X77.47Y-52.07
346 | X77.978Y-61.011
347 | X78.08Y-55.956
348 | X78.105Y-53.34
349 | X78.105Y-89.535
350 | X78.105Y-103.505
351 | X78.13Y-58.559
352 | X78.588Y-61.646
353 | X78.74Y-92.71
354 | X78.74Y-95.885
355 | X78.74Y-98.425
356 | X78.74Y-101.6
357 | X79.527Y-60.058
358 | X79.578Y-74.739
359 | X80.086Y-83.185
360 | X80.543Y-82.22
361 | X80.645Y-85.725
362 | X81.051Y-83.109
363 | X81.28Y-52.07
364 | X83.185Y-54.61
365 | X83.312Y-58.903
366 | X84.455Y-56.515
367 | X84.455Y-85.725
368 | X84.861Y-53.01
369 | X85.192Y-82.956
370 | X85.217Y-80.022
371 | X85.217Y-80.937
372 | X85.344Y-75.438
373 | X85.725Y-56.236
374 | X85.75Y-57.175
375 | X86.411Y-56.693
376 | X87.63Y-52.07
377 | X87.63Y-74.93
378 | X87.63Y-85.725
379 | X88.443Y-83.769
380 | X88.468Y-82.613
381 | X89.154Y-83.146
382 | X91.44Y-85.725
383 | X92.71Y-53.975
384 | X92.71Y-57.15
385 | X92.71Y-60.325
386 | X92.71Y-63.5
387 | X92.71Y-66.675
388 | X92.71Y-69.85
389 | X92.71Y-73.66
390 | X92.71Y-76.835
391 | X92.71Y-80.01
392 | X92.71Y-83.82
393 | X95.25Y-52.07
394 | X95.25Y-55.245
395 | X95.25Y-58.42
396 | X95.25Y-62.23
397 | X95.25Y-65.405
398 | X95.25Y-69.215
399 | X95.25Y-73.025
400 | X95.25Y-76.2
401 | X95.25Y-80.01
402 | X95.25Y-83.82
403 | X95.885Y-85.725
404 | X97.206Y-69.151
405 | X97.714Y-81.292
406 | X97.79Y-62.23
407 | X98.067Y-55.964
408 | X98.654Y-61.366
409 | X99.035Y-81.382
410 | X99.695Y-85.725
411 | X100.0Y-71.056
412 | X100.432Y-77.445
413 | X100.578Y-68.422
414 | X100.667Y-63.064
415 | X100.711Y-56.197
416 | X100.736Y-84.01
417 | X100.965Y-59.499
418 | X101.321Y-82.017
419 | X101.575Y-70.053
420 | X101.625Y-84.023
421 | X102.87Y-73.025
422 | X103.505Y-63.983
423 | X103.505Y-85.725
424 | X104.14Y-56.515
425 | X104.14Y-60.325
426 | X106.147Y-63.043
427 | X106.35Y-60.452
428 | X106.655Y-64.122
429 | X106.673Y-66.154
430 | X107.051Y-58.635
431 | X107.315Y-85.725
432 | X107.975Y-65.722
433 | X108.179Y-66.751
434 | X108.585Y-56.515
435 | X108.712Y-64.237
436 | X108.839Y-65.747
437 | X109.322Y-66.751
438 | X110.173Y-66.154
439 | X110.592Y-54.635
440 | X111.76Y-85.725
441 | X112.395Y-52.07
442 | X112.395Y-54.61
443 | X112.395Y-57.785
444 | X112.395Y-61.595
445 | X112.395Y-64.77
446 | X112.395Y-67.945
447 | X112.395Y-70.485
448 | X112.395Y-73.025
449 | X112.395Y-76.2
450 | X112.395Y-79.375
451 | X112.395Y-82.55
452 | X114.935Y-52.07
453 | X114.935Y-54.61
454 | X114.935Y-57.785
455 | X114.935Y-61.595
456 | X114.935Y-64.77
457 | X114.935Y-67.945
458 | X114.935Y-70.485
459 | X114.935Y-73.025
460 | X114.935Y-76.2
461 | X114.935Y-79.375
462 | X114.935Y-82.55
463 | X115.57Y-85.725
464 | X116.459Y-71.552
465 | X116.713Y-70.256
466 | X117.17Y-70.917
467 | X118.11Y-83.185
468 | X118.339Y-53.416
469 | X118.745Y-85.725
470 | X118.77Y-80.01
471 | X118.809Y-63.284
472 | X120.421Y-53.619
473 | X120.421Y-76.251
474 | X121.209Y-65.71
475 | X121.488Y-76.733
476 | X121.768Y-80.479
477 | X121.869Y-65.024
478 | X121.92Y-70.485
479 | X121.92Y-85.725
480 | X122.174Y-65.938
481 | X122.555Y-83.185
482 | X124.384Y-58.28
483 | X124.384Y-64.008
484 | X124.409Y-53.95
485 | X125.12Y-64.338
486 | X125.73Y-85.725
487 | X126.771Y-80.493
488 | X126.797Y-53.365
489 | X126.949Y-79.4
490 | X127.0Y-67.945
491 | X127.0Y-76.2
492 | X127.203Y-62.916
493 | X127.279Y-81.597
494 | X127.559Y-83.896
495 | X128.27Y-52.07
496 | X128.473Y-83.922
497 | X129.286Y-61.925
498 | X129.54Y-85.725
499 | X130.048Y-63.652
500 | X132.486Y-59.03
501 | X132.715Y-85.725
502 | X134.798Y-54.825
503 | X136.093Y-55.169
504 | X136.525Y-85.725
505 | X136.576Y-60.249
506 | X137.008Y-63.119
507 | X138.43Y-61.595
508 | X139.7Y-85.725
509 | X141.605Y-52.07
510 | X141.707Y-63.83
511 | X142.24Y-53.975
512 | X142.24Y-56.515
513 | X142.24Y-59.055
514 | X142.24Y-61.595
515 | X142.24Y-64.77
516 | X142.24Y-67.31
517 | X142.24Y-69.85
518 | X142.24Y-73.025
519 | X142.24Y-76.2
520 | X142.24Y-79.375
521 | X142.24Y-81.915
522 | X142.24Y-84.455
523 | T0
524 | M30
525 |
--------------------------------------------------------------------------------
/hardware/libs/C2797218/C2797218.kicad_sym:
--------------------------------------------------------------------------------
1 | (kicad_symbol_lib
2 | (version 20211014)
3 | (generator https://github.com/uPesy/easyeda2kicad.py)
4 | (symbol "KH-FG0.5-H2.0-34PIN"
5 | (in_bom yes)
6 | (on_board yes)
7 | (property
8 | "Reference"
9 | "CN"
10 | (id 0)
11 | (at 0 53.34 0)
12 | (effects (font (size 1.27 1.27) ) )
13 | )
14 | (property
15 | "Value"
16 | "KH-FG0.5-H2.0-34PIN"
17 | (id 1)
18 | (at 0 -50.80 0)
19 | (effects (font (size 1.27 1.27) ) )
20 | )
21 | (property
22 | "Footprint"
23 | "C2797218:FPC-SMD_KH-FG0.5-H2.0-34PIN"
24 | (id 2)
25 | (at 0 -53.34 0)
26 | (effects (font (size 1.27 1.27) ) hide)
27 | )
28 | (property
29 | "LCSC Part"
30 | "C2797218"
31 | (id 5)
32 | (at 0 -55.88 0)
33 | (effects (font (size 1.27 1.27) ) hide)
34 | )
35 | (symbol "KH-FG0.5-H2.0-34PIN_0_1"
36 | (rectangle
37 | (start -2.54 45.72)
38 | (end 7.62 -43.18)
39 | (stroke (width 0) (type default) (color 0 0 0 0))
40 | (fill (type background))
41 | )
42 | (circle
43 | (center -1.27 44.45)
44 | (radius 0.38)
45 | (stroke (width 0) (type default) (color 0 0 0 0))
46 | (fill (type none))
47 | )
48 | (pin unspecified line
49 | (at 5.08 48.26 270)
50 | (length 2.54)
51 | (name "36" (effects (font (size 1.27 1.27))))
52 | (number "36" (effects (font (size 1.27 1.27))))
53 | )
54 | (pin unspecified line
55 | (at 5.08 -45.72 90)
56 | (length 2.54)
57 | (name "35" (effects (font (size 1.27 1.27))))
58 | (number "35" (effects (font (size 1.27 1.27))))
59 | )
60 | (pin unspecified line
61 | (at -5.08 -40.64 0)
62 | (length 2.54)
63 | (name "34" (effects (font (size 1.27 1.27))))
64 | (number "34" (effects (font (size 1.27 1.27))))
65 | )
66 | (pin unspecified line
67 | (at -5.08 -38.10 0)
68 | (length 2.54)
69 | (name "33" (effects (font (size 1.27 1.27))))
70 | (number "33" (effects (font (size 1.27 1.27))))
71 | )
72 | (pin unspecified line
73 | (at -5.08 -35.56 0)
74 | (length 2.54)
75 | (name "32" (effects (font (size 1.27 1.27))))
76 | (number "32" (effects (font (size 1.27 1.27))))
77 | )
78 | (pin unspecified line
79 | (at -5.08 -33.02 0)
80 | (length 2.54)
81 | (name "31" (effects (font (size 1.27 1.27))))
82 | (number "31" (effects (font (size 1.27 1.27))))
83 | )
84 | (pin unspecified line
85 | (at -5.08 -30.48 0)
86 | (length 2.54)
87 | (name "30" (effects (font (size 1.27 1.27))))
88 | (number "30" (effects (font (size 1.27 1.27))))
89 | )
90 | (pin unspecified line
91 | (at -5.08 -27.94 0)
92 | (length 2.54)
93 | (name "29" (effects (font (size 1.27 1.27))))
94 | (number "29" (effects (font (size 1.27 1.27))))
95 | )
96 | (pin unspecified line
97 | (at -5.08 -25.40 0)
98 | (length 2.54)
99 | (name "28" (effects (font (size 1.27 1.27))))
100 | (number "28" (effects (font (size 1.27 1.27))))
101 | )
102 | (pin unspecified line
103 | (at -5.08 -22.86 0)
104 | (length 2.54)
105 | (name "27" (effects (font (size 1.27 1.27))))
106 | (number "27" (effects (font (size 1.27 1.27))))
107 | )
108 | (pin unspecified line
109 | (at -5.08 -20.32 0)
110 | (length 2.54)
111 | (name "26" (effects (font (size 1.27 1.27))))
112 | (number "26" (effects (font (size 1.27 1.27))))
113 | )
114 | (pin unspecified line
115 | (at -5.08 -17.78 0)
116 | (length 2.54)
117 | (name "25" (effects (font (size 1.27 1.27))))
118 | (number "25" (effects (font (size 1.27 1.27))))
119 | )
120 | (pin unspecified line
121 | (at -5.08 -15.24 0)
122 | (length 2.54)
123 | (name "24" (effects (font (size 1.27 1.27))))
124 | (number "24" (effects (font (size 1.27 1.27))))
125 | )
126 | (pin unspecified line
127 | (at -5.08 -12.70 0)
128 | (length 2.54)
129 | (name "23" (effects (font (size 1.27 1.27))))
130 | (number "23" (effects (font (size 1.27 1.27))))
131 | )
132 | (pin unspecified line
133 | (at -5.08 -10.16 0)
134 | (length 2.54)
135 | (name "22" (effects (font (size 1.27 1.27))))
136 | (number "22" (effects (font (size 1.27 1.27))))
137 | )
138 | (pin unspecified line
139 | (at -5.08 -7.62 0)
140 | (length 2.54)
141 | (name "21" (effects (font (size 1.27 1.27))))
142 | (number "21" (effects (font (size 1.27 1.27))))
143 | )
144 | (pin unspecified line
145 | (at -5.08 -5.08 0)
146 | (length 2.54)
147 | (name "20" (effects (font (size 1.27 1.27))))
148 | (number "20" (effects (font (size 1.27 1.27))))
149 | )
150 | (pin unspecified line
151 | (at -5.08 -2.54 0)
152 | (length 2.54)
153 | (name "19" (effects (font (size 1.27 1.27))))
154 | (number "19" (effects (font (size 1.27 1.27))))
155 | )
156 | (pin unspecified line
157 | (at -5.08 -0.00 0)
158 | (length 2.54)
159 | (name "18" (effects (font (size 1.27 1.27))))
160 | (number "18" (effects (font (size 1.27 1.27))))
161 | )
162 | (pin unspecified line
163 | (at -5.08 2.54 0)
164 | (length 2.54)
165 | (name "17" (effects (font (size 1.27 1.27))))
166 | (number "17" (effects (font (size 1.27 1.27))))
167 | )
168 | (pin unspecified line
169 | (at -5.08 5.08 0)
170 | (length 2.54)
171 | (name "16" (effects (font (size 1.27 1.27))))
172 | (number "16" (effects (font (size 1.27 1.27))))
173 | )
174 | (pin unspecified line
175 | (at -5.08 7.62 0)
176 | (length 2.54)
177 | (name "15" (effects (font (size 1.27 1.27))))
178 | (number "15" (effects (font (size 1.27 1.27))))
179 | )
180 | (pin unspecified line
181 | (at -5.08 10.16 0)
182 | (length 2.54)
183 | (name "14" (effects (font (size 1.27 1.27))))
184 | (number "14" (effects (font (size 1.27 1.27))))
185 | )
186 | (pin unspecified line
187 | (at -5.08 12.70 0)
188 | (length 2.54)
189 | (name "13" (effects (font (size 1.27 1.27))))
190 | (number "13" (effects (font (size 1.27 1.27))))
191 | )
192 | (pin unspecified line
193 | (at -5.08 15.24 0)
194 | (length 2.54)
195 | (name "12" (effects (font (size 1.27 1.27))))
196 | (number "12" (effects (font (size 1.27 1.27))))
197 | )
198 | (pin unspecified line
199 | (at -5.08 17.78 0)
200 | (length 2.54)
201 | (name "11" (effects (font (size 1.27 1.27))))
202 | (number "11" (effects (font (size 1.27 1.27))))
203 | )
204 | (pin unspecified line
205 | (at -5.08 20.32 0)
206 | (length 2.54)
207 | (name "10" (effects (font (size 1.27 1.27))))
208 | (number "10" (effects (font (size 1.27 1.27))))
209 | )
210 | (pin unspecified line
211 | (at -5.08 22.86 0)
212 | (length 2.54)
213 | (name "9" (effects (font (size 1.27 1.27))))
214 | (number "9" (effects (font (size 1.27 1.27))))
215 | )
216 | (pin unspecified line
217 | (at -5.08 25.40 0)
218 | (length 2.54)
219 | (name "8" (effects (font (size 1.27 1.27))))
220 | (number "8" (effects (font (size 1.27 1.27))))
221 | )
222 | (pin unspecified line
223 | (at -5.08 27.94 0)
224 | (length 2.54)
225 | (name "7" (effects (font (size 1.27 1.27))))
226 | (number "7" (effects (font (size 1.27 1.27))))
227 | )
228 | (pin unspecified line
229 | (at -5.08 30.48 0)
230 | (length 2.54)
231 | (name "6" (effects (font (size 1.27 1.27))))
232 | (number "6" (effects (font (size 1.27 1.27))))
233 | )
234 | (pin unspecified line
235 | (at -5.08 33.02 0)
236 | (length 2.54)
237 | (name "5" (effects (font (size 1.27 1.27))))
238 | (number "5" (effects (font (size 1.27 1.27))))
239 | )
240 | (pin unspecified line
241 | (at -5.08 35.56 0)
242 | (length 2.54)
243 | (name "4" (effects (font (size 1.27 1.27))))
244 | (number "4" (effects (font (size 1.27 1.27))))
245 | )
246 | (pin unspecified line
247 | (at -5.08 38.10 0)
248 | (length 2.54)
249 | (name "3" (effects (font (size 1.27 1.27))))
250 | (number "3" (effects (font (size 1.27 1.27))))
251 | )
252 | (pin unspecified line
253 | (at -5.08 40.64 0)
254 | (length 2.54)
255 | (name "2" (effects (font (size 1.27 1.27))))
256 | (number "2" (effects (font (size 1.27 1.27))))
257 | )
258 | (pin unspecified line
259 | (at -5.08 43.18 0)
260 | (length 2.54)
261 | (name "1" (effects (font (size 1.27 1.27))))
262 | (number "1" (effects (font (size 1.27 1.27))))
263 | )
264 | )
265 | )
266 | )
--------------------------------------------------------------------------------
/hardware/libs/C2797218/C2797218.pretty/FPC-SMD_KH-FG0.5-H2.0-34PIN.kicad_mod:
--------------------------------------------------------------------------------
1 | (module easyeda2kicad:FPC-SMD_KH-FG0.5-H2.0-34PIN (layer F.Cu) (tedit 5DC5F6A4)
2 | (attr smd)
3 | (fp_text reference REF** (at 0 -5.22) (layer F.SilkS)
4 | (effects (font (size 1 1) (thickness 0.15)))
5 | )
6 | (fp_text value FPC-SMD_KH-FG0.5-H2.0-34PIN (at 0 5.22) (layer F.Fab)
7 | (effects (font (size 1 1) (thickness 0.15)))
8 | )
9 | (fp_text user %R (at 0 0) (layer F.Fab)
10 | (effects (font (size 1 1) (thickness 0.15)))
11 | )
12 | (fp_line (start -8.63 -0.63) (end -10.70 -0.63) (layer F.SilkS) (width 0.25))
13 | (fp_line (start 10.70 -0.63) (end 8.63 -0.63) (layer F.SilkS) (width 0.25))
14 | (fp_line (start 10.70 0.24) (end 10.70 -0.63) (layer F.SilkS) (width 0.25))
15 | (fp_line (start -10.70 0.24) (end -10.70 -0.63) (layer F.SilkS) (width 0.25))
16 | (fp_line (start 10.70 4.38) (end -10.70 4.38) (layer F.SilkS) (width 0.25))
17 | (fp_line (start 10.70 4.38) (end 10.70 2.21) (layer F.SilkS) (width 0.25))
18 | (fp_line (start -10.70 4.38) (end -10.70 2.21) (layer F.SilkS) (width 0.25))
19 | (pad 34 smd rect (at -8.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
20 | (pad 33 smd rect (at -7.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
21 | (pad 32 smd rect (at -7.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
22 | (pad 31 smd rect (at -6.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
23 | (pad 30 smd rect (at -6.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
24 | (pad 29 smd rect (at -5.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
25 | (pad 28 smd rect (at -5.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
26 | (pad 27 smd rect (at -4.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
27 | (pad 26 smd rect (at -4.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
28 | (pad 25 smd rect (at -3.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
29 | (pad 24 smd rect (at -3.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
30 | (pad 23 smd rect (at -2.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
31 | (pad 22 smd rect (at -2.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
32 | (pad 21 smd rect (at -1.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
33 | (pad 20 smd rect (at -1.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
34 | (pad 19 smd rect (at -0.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
35 | (pad 18 smd rect (at -0.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
36 | (pad 17 smd rect (at 0.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
37 | (pad 16 smd rect (at 0.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
38 | (pad 15 smd rect (at 1.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
39 | (pad 14 smd rect (at 1.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
40 | (pad 13 smd rect (at 2.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
41 | (pad 36 smd rect (at 9.95 1.22 180.00) (size 2.00 1.50) (layers F.Cu F.Paste F.Mask))
42 | (pad 35 smd rect (at -9.95 1.22 180.00) (size 2.00 1.50) (layers F.Cu F.Paste F.Mask))
43 | (pad 12 smd rect (at 2.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
44 | (pad 11 smd rect (at 3.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
45 | (pad 10 smd rect (at 3.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
46 | (pad 9 smd rect (at 4.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
47 | (pad 8 smd rect (at 4.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
48 | (pad 7 smd rect (at 5.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
49 | (pad 6 smd rect (at 5.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
50 | (pad 5 smd rect (at 6.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
51 | (pad 4 smd rect (at 6.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
52 | (pad 3 smd rect (at 7.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
53 | (pad 2 smd rect (at 7.75 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
54 | (pad 1 smd rect (at 8.25 -1.22 180.00) (size 0.30 1.80) (layers F.Cu F.Paste F.Mask))
55 | (fp_circle (center 8.89 -1.65) (end 9.02 -1.65) (layer F.SilkS) (width 0.25))
56 | (fp_circle (center 10.70 -1.62) (end 10.73 -1.62) (layer F.Fab) (width 0.06))
57 | (fp_circle (center 8.64 -1.27) (end 8.77 -1.27) (layer Cmts.User) (width 0.25))
58 | (model "/C2797218/C2797218.3dshapes/FPC-SMD_KH-FG0.5-H2.0-34PIN.wrl"
59 | (offset (xyz 0.000 -1.350 -0.000))
60 | (scale (xyz 1 1 1))
61 | (rotate (xyz 0 0 0))
62 | )
63 | )
--------------------------------------------------------------------------------
/hardware/libs/C602016/C602016.kicad_sym:
--------------------------------------------------------------------------------
1 | (kicad_symbol_lib
2 | (version 20211014)
3 | (generator https://github.com/uPesy/easyeda2kicad.py)
4 | (symbol "FHD252012S-4R7MT"
5 | (in_bom yes)
6 | (on_board yes)
7 | (property
8 | "Reference"
9 | "L"
10 | (id 0)
11 | (at 0 5.08 0)
12 | (effects (font (size 1.27 1.27) ) )
13 | )
14 | (property
15 | "Value"
16 | "FHD252012S-4R7MT"
17 | (id 1)
18 | (at 0 -5.08 0)
19 | (effects (font (size 1.27 1.27) ) )
20 | )
21 | (property
22 | "Footprint"
23 | "C602016:IND-SMD_L2.5-W2.0_FHD252012S-6R8MT"
24 | (id 2)
25 | (at 0 -7.62 0)
26 | (effects (font (size 1.27 1.27) ) hide)
27 | )
28 | (property
29 | "Datasheet"
30 | "https://lcsc.com/product-detail/Power-Inductors_cjiang-Changjiang-Microelectronics-Tech-FHD252012S-4R7MT_C602016.html"
31 | (id 3)
32 | (at 0 -10.16 0)
33 | (effects (font (size 1.27 1.27) ) hide)
34 | )
35 | (property
36 | "LCSC Part"
37 | "C602016"
38 | (id 5)
39 | (at 0 -12.70 0)
40 | (effects (font (size 1.27 1.27) ) hide)
41 | )
42 | (symbol "FHD252012S-4R7MT_0_1"
43 | (arc
44 | (start 2.21 -0.02)
45 | (mid 3.68 -1.01)
46 | (end 4.23 -0.02)
47 | (stroke (width 0) (type default) (color 0 0 0 0))
48 | (fill (type none))
49 | )
50 | (arc
51 | (start 0.02 -0.02)
52 | (mid 1.49 -1.01)
53 | (end 2.04 -0.02)
54 | (stroke (width 0) (type default) (color 0 0 0 0))
55 | (fill (type none))
56 | )
57 | (arc
58 | (start -2.13 -0.02)
59 | (mid -0.66 -1.01)
60 | (end -0.11 -0.02)
61 | (stroke (width 0) (type default) (color 0 0 0 0))
62 | (fill (type none))
63 | )
64 | (arc
65 | (start -4.29 -0.02)
66 | (mid -2.81 -1.01)
67 | (end -2.27 -0.02)
68 | (stroke (width 0) (type default) (color 0 0 0 0))
69 | (fill (type none))
70 | )
71 | (pin unspecified line
72 | (at -5.08 -0.00 0)
73 | (length 0.762)
74 | (name "1" (effects (font (size 1.27 1.27))))
75 | (number "1" (effects (font (size 1.27 1.27))))
76 | )
77 | (pin unspecified line
78 | (at 5.08 -0.00 180)
79 | (length 0.762)
80 | (name "2" (effects (font (size 1.27 1.27))))
81 | (number "2" (effects (font (size 1.27 1.27))))
82 | )
83 | )
84 | )
85 | )
--------------------------------------------------------------------------------
/hardware/libs/C602016/C602016.pretty/IND-SMD_L2.5-W2.0_FHD252012S-6R8MT.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "IND-SMD_L2.5-W2.0_FHD252012S-6R8MT" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (attr smd)
4 | (fp_text reference "REF**" (at 0 -2.2) (layer "F.SilkS")
5 | (effects (font (size 1 1) (thickness 0.15)))
6 | (tstamp abd60af0-d9c6-4105-901c-7c73be9c8db7)
7 | )
8 | (fp_text value "IND-SMD_L2.5-W2.0_FHD252012S-6R8MT" (at 0 4) (layer "F.Fab")
9 | (effects (font (size 1 1) (thickness 0.15)))
10 | (tstamp 3ff28f45-c798-456a-b8ef-bab42e0e56ac)
11 | )
12 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
13 | (effects (font (size 1 1) (thickness 0.15)))
14 | (tstamp 13e0aac9-e639-4b4d-bf0a-f51355d28c45)
15 | )
16 | (fp_line (start -1.25 -1.32) (end 1.25 -1.32)
17 | (stroke (width 0.25) (type solid)) (layer "F.SilkS") (tstamp 24581f10-7b48-471b-9b4f-79ec8cca6480))
18 | (fp_line (start -1.25 1.3) (end 1.25 1.3)
19 | (stroke (width 0.25) (type solid)) (layer "F.SilkS") (tstamp 135f6ee2-ed45-4d54-959a-c2f0c7e63988))
20 | (fp_circle (center -1.25 1) (end -1.22 1)
21 | (stroke (width 0.06) (type solid)) (fill none) (layer "F.Fab") (tstamp 8bbd0766-6393-4a8f-87a5-e700d0e03848))
22 | (pad "1" smd rect (at -0.95 0) (size 1 2.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp bd67f8b6-0a83-4fd1-ac1d-2cfd08b7c4c9))
23 | (pad "2" smd rect (at 0.95 0) (size 1 2.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 6d3821e3-58df-4611-bc4b-d1bc5f5eff56))
24 | (model "${KIPRJMOD}/libs/C602016/C602016.3dshapes/IND-SMD_L2.5-W2.0_FHD252012S-6R8MT.wrl"
25 | (offset (xyz 0 -0 -0))
26 | (scale (xyz 1 1 1))
27 | (rotate (xyz 0 0 270))
28 | )
29 | )
30 |
--------------------------------------------------------------------------------
/hardware/libs/C98354/C98354.kicad_sym:
--------------------------------------------------------------------------------
1 | (kicad_symbol_lib
2 | (version 20211014)
3 | (generator https://github.com/uPesy/easyeda2kicad.py)
4 | (symbol "WPN252012H4R7MT"
5 | (in_bom yes)
6 | (on_board yes)
7 | (property
8 | "Reference"
9 | "L"
10 | (id 0)
11 | (at 0 5.08 0)
12 | (effects (font (size 1.27 1.27) ) )
13 | )
14 | (property
15 | "Value"
16 | "WPN252012H4R7MT"
17 | (id 1)
18 | (at 0 -5.08 0)
19 | (effects (font (size 1.27 1.27) ) )
20 | )
21 | (property
22 | "Footprint"
23 | "C98354:IND-SMD_L2.5-W2.0_WPN252012H"
24 | (id 2)
25 | (at 0 -7.62 0)
26 | (effects (font (size 1.27 1.27) ) hide)
27 | )
28 | (property
29 | "Datasheet"
30 | "https://lcsc.com/product-detail/Power-Inductors_4-7uH-20_C98354.html"
31 | (id 3)
32 | (at 0 -10.16 0)
33 | (effects (font (size 1.27 1.27) ) hide)
34 | )
35 | (property
36 | "LCSC Part"
37 | "C98354"
38 | (id 5)
39 | (at 0 -12.70 0)
40 | (effects (font (size 1.27 1.27) ) hide)
41 | )
42 | (symbol "WPN252012H4R7MT_0_1"
43 | (arc
44 | (start -4.29 -0.02)
45 | (mid -2.81 -1.01)
46 | (end -2.27 -0.02)
47 | (stroke (width 0) (type default) (color 0 0 0 0))
48 | (fill (type none))
49 | )
50 | (arc
51 | (start -2.13 -0.02)
52 | (mid -0.66 -1.01)
53 | (end -0.11 -0.02)
54 | (stroke (width 0) (type default) (color 0 0 0 0))
55 | (fill (type none))
56 | )
57 | (arc
58 | (start 0.02 -0.02)
59 | (mid 1.49 -1.01)
60 | (end 2.04 -0.02)
61 | (stroke (width 0) (type default) (color 0 0 0 0))
62 | (fill (type none))
63 | )
64 | (arc
65 | (start 2.21 -0.02)
66 | (mid 3.68 -1.01)
67 | (end 4.23 -0.02)
68 | (stroke (width 0) (type default) (color 0 0 0 0))
69 | (fill (type none))
70 | )
71 | (pin unspecified line
72 | (at 5.08 -0.00 180)
73 | (length 0.762)
74 | (name "2" (effects (font (size 1.27 1.27))))
75 | (number "2" (effects (font (size 1.27 1.27))))
76 | )
77 | (pin unspecified line
78 | (at -5.08 -0.00 0)
79 | (length 0.762)
80 | (name "1" (effects (font (size 1.27 1.27))))
81 | (number "1" (effects (font (size 1.27 1.27))))
82 | )
83 | )
84 | )
85 | )
--------------------------------------------------------------------------------
/hardware/libs/C98354/C98354.pretty/IND-SMD_L2.5-W2.0_WPN252012H.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "IND-SMD_L2.5-W2.0_WPN252012H" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (attr smd)
4 | (fp_text reference "REF**" (at 0 -1.9) (layer "F.SilkS")
5 | (effects (font (size 1 1) (thickness 0.15)))
6 | (tstamp 54806605-a3fd-47c0-9eee-36d66017b442)
7 | )
8 | (fp_text value "IND-SMD_L2.5-W2.0_WPN252012H" (at 0 4) (layer "F.Fab")
9 | (effects (font (size 1 1) (thickness 0.15)))
10 | (tstamp d66b6b74-0378-44c3-886b-d3dcade5c69d)
11 | )
12 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
13 | (effects (font (size 1 1) (thickness 0.15)))
14 | (tstamp 7d4dad07-ea1b-4923-8573-8e337063d613)
15 | )
16 | (fp_line (start -1.33 -1.09) (end -1.33 -1.08)
17 | (stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 695643b2-ece5-40d8-8603-1a8c284b5075))
18 | (fp_line (start -1.33 -1.08) (end 1.33 -1.08)
19 | (stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp ef9844d2-4d16-4716-b2bf-40294f9e1a11))
20 | (fp_line (start -1.33 1.08) (end 1.33 1.08)
21 | (stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 11a9a7e5-9840-42e1-ae1c-e3d661fcb631))
22 | (fp_line (start -1.33 1.09) (end -1.33 1.08)
23 | (stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp f8a061ef-5b13-429b-ab2c-b8e91e7e9b6d))
24 | (fp_line (start 1.33 -1.08) (end 1.33 -1.09)
25 | (stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 8779b5ee-5695-4e1d-b723-d0107fbdd5f5))
26 | (fp_line (start 1.33 1.08) (end 1.33 1.09)
27 | (stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp a79f7145-96b7-49a6-8bbe-04b11867f849))
28 | (fp_circle (center -1.25 1) (end -1.22 1)
29 | (stroke (width 0.06) (type solid)) (fill none) (layer "F.Fab") (tstamp 12b8af3d-6a52-4f88-bc29-a309592ef32c))
30 | (pad "1" smd rect (at 1.23 0) (size 1.72 1.87) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2ba78fb5-2bfe-4d7e-8d6d-f478dbae1c00))
31 | (pad "2" smd rect (at -1.23 0) (size 1.72 1.87) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 05a9f821-3a72-4ce2-9eda-df9a9145a798))
32 | (model "${KIPRJMOD}/libs/C98354/C98354.3dshapes/IND-SMD_L2.5-W2.0-H1.2-252012.wrl"
33 | (offset (xyz 0 0 -0))
34 | (scale (xyz 1 1 1))
35 | (rotate (xyz 0 0 -90))
36 | )
37 | )
38 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.3dshapes/205863050104.stp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/hardware/libs/SamacSys/SamacSys_Parts.3dshapes/205863050104.stp
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.dcm:
--------------------------------------------------------------------------------
1 | EESchema-DOCLIB Version 2.0
2 | #
3 | $CMP NE555DR
4 | D Single Precision Timer
5 | K
6 | F http://www.ti.com/lit/ds/symlink/ne555.pdf
7 | $ENDCMP
8 | #
9 | $CMP FH35C-25S-0.3SHW_50_
10 | D HIROSE(HRS) - FH35C-25S-0.3SHW(50) - CONNECTOR, FPC, RCPT, 25POS, 1ROW
11 | K
12 | F https://www.hirose.com/product/en/products/FH35C/FH35C-25S-0.3SHW%2850%29/
13 | $ENDCMP
14 | #
15 | $CMP 245863050104829+
16 | D Board to Board & Mezzanine Connectors RECPT 0.35mm Pitch 50pos 8.0mm Height
17 | K
18 | F https://www.mouser.co.uk/datasheet/2/909/5863-1602212.pdf
19 | $ENDCMP
20 | #
21 | $CMP ADC081S021CIMF_NOPB
22 | D Single Channel, 50 to 200 ksps, 8-Bit A/D Converter
23 | K
24 | F http://www.ti.com/lit/gpn/adc081s021
25 | $ENDCMP
26 | #
27 | $CMP ES1D-13-F
28 | D Diodes Inc ES1D-13-F SMT Switching Diode, 200V 1A, 2-Pin DO-214AC
29 | K
30 | F https://www.diodes.com/assets/Datasheets/ds14001.pdf
31 | $ENDCMP
32 | #
33 | $CMP 105162-0001
34 | D Memory Card Connectors 1.45H MICRO SD HEADER WITH D/C PIN
35 | K
36 | F http://www.molex.com/webdocs/datasheets/pdf/en-us//1051620001_MEMORY_CARD_SOCKET.pdf
37 | $ENDCMP
38 | #
39 | $CMP TLV62568DBVR
40 | D 2.5V-5.5V input, 1A high efficiency step-down buck converter in SOT23 and SOT563 package
41 | K
42 | F http://www.ti.com/lit/gpn/tlv62568
43 | $ENDCMP
44 | #
45 | $CMP BTA24-600BWRG
46 | D TRIAC BTA24-600BWRG, 600V, Gate Trigger 1.3V 50mA, TO-220AB Isolated 3-Pin
47 | K
48 | F http://www.st.com/web/en/resource/technical/document/datasheet/CD00002264.pdf
49 | $ENDCMP
50 | #
51 | $CMP 503548-1220
52 | D MOLEX - 503548-1220 - PCB STACKING CONNECTOR, RECEPTACLE, 12 POSITION, 0.4MM
53 | K
54 | F https://componentsearchengine.com/Datasheets/1/503548-1220.pdf
55 | $ENDCMP
56 | #
57 | $CMP S380
58 | D Diode Rectifier Bridge Single 800V 0.8A Automotive 4-Pin Mini-DIP SMD T/R
59 | K
60 | F https://www.arrow.com/en/products/s380/diotec-semiconductor-ag
61 | $ENDCMP
62 | #
63 | $CMP ASPI-0312FS-100M-T2
64 | D 10 H Shielded Drum Core, Wirewound Inductor 630 mA 290mOhm Nonstandard
65 | K
66 | F https://componentsearchengine.com/Datasheets/1/ASPI-0312FS-100M-T2.pdf
67 | $ENDCMP
68 | #
69 | $CMP NRS2012T4R7MGJ
70 | D FIXED IND 4.7UH 910MA 241 MOHM
71 | K
72 | F https://ds.yuden.co.jp/TYCOMPAS/ut/download?pn=NRH2412T4R7MNGH++&fileType=CA
73 | $ENDCMP
74 | #
75 | $CMP ASPI-0628-4R7M-T1
76 | D Low Profile Wirewound Inductor. 4.7uh, 20%, 31mohm. 2.7a, 3.0a, 6.0 x 6.0 x 2.8mm, Smd, t&r, 1k/Reel
77 | K
78 | F https://componentsearchengine.com/Datasheets/1/ASPI-0628-4R7M-T1.pdf
79 | $ENDCMP
80 | #
81 | $CMP NRH2410T2R2MN
82 | D Inductor Power Shielded Wirewound 2.2uH 20% 100KHz Ferrite 0.97A 0.18Ohm DCR T/R
83 | K
84 | F
85 | $ENDCMP
86 | #
87 | $CMP MIC5501-3.0YM5-TR
88 | D MIC5501-3.0YM5-TR, SOT23-5
89 | K
90 | F http://www.microchip.com/mymicrochip/filehandler.aspx?ddocname=en580292
91 | $ENDCMP
92 | #
93 | $CMP TPS65131TRGERQ1
94 | D Automotive Catalog Split-Rail Converter with Dual Positive and Negative Outputs (300mA typ)
95 | K
96 | F http://www.ti.com/lit/gpn/tps65131-q1
97 | $ENDCMP
98 | #
99 | $CMP CUS10S40,H3F
100 | D Schottky Diodes & Rectifiers Single High-speed switching
101 | K
102 | F https://toshiba.semicon-storage.com/ap-en/semiconductor/product/diodes/detail.CUS10S40.html
103 | $ENDCMP
104 | #
105 | $CMP AD5227BUJZ10-RL7
106 | D AD5227BUJZ10-RL7, Digital Potentiometer 10k 64-Position Linear Serial-3 Wire 8 Pin, TSOT
107 | K
108 | F
109 | $ENDCMP
110 | #
111 | $CMP MP2315GJ-Z
112 | D Switching Voltage Regulators 3A 24V 500kHz Sync buck
113 | K
114 | F https://componentsearchengine.com/Datasheets/1/MP2315GJ-Z.pdf
115 | $ENDCMP
116 | #
117 | $CMP INA180A3IDBVR
118 | D 26-V, low-/high-side, voltage output current sense amplifier
119 | K
120 | F http://www.ti.com/lit/gpn/INA180
121 | $ENDCMP
122 | #
123 | $CMP XT30PW-F
124 | D Socket; DC supply; XT30; female; PIN:2; on PCBs; THT; Colour: yellow
125 | K
126 | F https://www.tme.eu/Document/ce4077e36b79046da520ca73227e15de/XT30PW%20SPEC.pdf
127 | $ENDCMP
128 | #
129 | $CMP S8411-45R
130 | D Coin Cell Battery Retainer, Horizontal SMT, for CR1220 Coin Cell Batteries
131 | K
132 | F https://cdn.harwin.com/pdfs/S8411R.pdf
133 | $ENDCMP
134 | #
135 | #End Doc Library
136 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/105162-0001.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "105162-0001" (layer F.Cu)
2 | (descr "105162-0001")
3 | (tags "Connector")
4 | (attr smd)
5 | (fp_text reference J** (at -0.549 3.399) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at -0.549 3.399) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "105162-0001" (at -0.549 3.399) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -5.65 0) (end 5.65 0) (layer F.Fab) (width 0.2))
15 | (fp_line (start 5.65 0) (end 5.65 6.45) (layer F.Fab) (width 0.2))
16 | (fp_line (start 5.65 6.45) (end -5.65 6.45) (layer F.Fab) (width 0.2))
17 | (fp_line (start -5.65 6.45) (end -5.65 0) (layer F.Fab) (width 0.2))
18 | (fp_line (start -5.65 6.45) (end 5.65 6.45) (layer F.SilkS) (width 0.2))
19 | (fp_line (start 5.65 6.45) (end 5.65 5.355) (layer F.SilkS) (width 0.2))
20 | (fp_line (start -5.65 6.45) (end -5.65 6.028) (layer F.SilkS) (width 0.2))
21 | (fp_circle (center 3.584 8.15) (end 3.584 8.20657) (layer F.SilkS) (width 0.2))
22 | (pad 1 smd rect (at 3.55 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
23 | (pad 2 smd rect (at 2.45 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
24 | (pad 3 smd rect (at 1.35 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
25 | (pad 4 smd rect (at 0.25 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
26 | (pad 5 smd rect (at -0.85 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
27 | (pad 6 smd rect (at -1.95 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
28 | (pad 7 smd rect (at -3.05 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
29 | (pad 8 smd rect (at -4.15 7.34 0) (size 0.5 1) (layers F.Cu F.Paste F.Mask))
30 | (pad 9 smd rect (at 5.31 4.66 0) (size 0.72 0.78) (layers F.Cu F.Paste F.Mask))
31 | (pad 10 smd rect (at 5.325 3.39 0) (size 1.05 1.08) (layers F.Cu F.Paste F.Mask))
32 | (pad 11 smd rect (at 5.325 0.78 0) (size 1.05 1.2) (layers F.Cu F.Paste F.Mask))
33 | (pad 12 smd rect (at -5.325 1.35 0) (size 1.05 1.2) (layers F.Cu F.Paste F.Mask))
34 | (pad 13 smd rect (at -5.325 4.535 0) (size 1.05 2.39) (layers F.Cu F.Paste F.Mask))
35 | (pad 14 smd rect (at 1.986 0.105 90) (size 0.55 2.91) (layers F.Cu F.Paste F.Mask))
36 | (pad 15 smd rect (at -2.204 0.105 90) (size 0.55 2.91) (layers F.Cu F.Paste F.Mask))
37 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\105162-0001.stp"
38 | (at (xyz 0 -0.13582677353085 0.010629921682238))
39 | (scale (xyz 1 1 1))
40 | (rotate (xyz -90 0 0))
41 | )
42 | )
43 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/245863050104829.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "245863050104829" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "245863050104829+-1")
4 | (tags "Connector")
5 | (attr smd)
6 | (fp_text reference "J**" (at 0 0) (layer "F.SilkS")
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp 2671adf9-1aa7-4f95-b77b-b7fcb36f6432)
9 | )
10 | (fp_text value "245863050104829" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp f6e563fc-b67f-41d8-ad5e-3e11a94aaa4d)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp de609fb5-4d54-47cf-b9f3-0ac6d930b3fb)
17 | )
18 | (fp_line (start -5.55 -1.2) (end -5.55 -0.7)
19 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 6f631070-2250-4bab-b4da-425d3e2837dd))
20 | (fp_line (start -5.55 0.6) (end -5.55 1.004)
21 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp a98339d1-b8d9-49ed-8863-7a6657fe021e))
22 | (fp_line (start -5.55 0.935) (end -5.55 1.1)
23 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 50ed4cfc-93f3-466b-afae-7a2eb78a9dfa))
24 | (fp_line (start 5.55 -1.2) (end 5.55 -0.7)
25 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 08c91da2-84e2-410f-9f0c-42986eea2be3))
26 | (fp_line (start 5.55 0.6) (end 5.55 1.004)
27 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 57f635b8-7e3f-4766-b7ff-caea25c131d2))
28 | (fp_line (start 5.55 1.004) (end 5.55 1.1)
29 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 19f55398-a80d-4744-a36b-c60863273598))
30 | (fp_line (start -6.66 -2.237) (end 6.66 -2.237)
31 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp b5a044d0-6c72-4e58-b317-291db5fcb4aa))
32 | (fp_line (start -6.66 2.237) (end -6.66 -2.237)
33 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp ac2cc3da-f0ac-49d1-83c8-1b6ee621ea33))
34 | (fp_line (start 6.66 -2.237) (end 6.66 2.237)
35 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 1985a376-40d4-4ac4-8378-60fecdad018d))
36 | (fp_line (start 6.66 2.237) (end -6.66 2.237)
37 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp eb93685b-d20b-41ff-9f64-17406ade574d))
38 | (fp_line (start -5.55 -1.1) (end 5.55 -1.1)
39 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 97b326f3-ebdb-4ea4-a718-598030315f52))
40 | (fp_line (start -5.55 1.1) (end -5.55 -1.1)
41 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 296f57e6-e5a3-41b4-9c76-38a11ec7e473))
42 | (fp_line (start 5.55 -1.1) (end 5.55 1.1)
43 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 7e6f5a1a-de3f-4745-8271-f77c4ece969a))
44 | (fp_line (start 5.55 1.1) (end -5.55 1.1)
45 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp dce8b752-2071-4d27-8587-af2267f09486))
46 | (pad "1" smd rect (at -4.2 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 4854bf40-e45b-4e78-8f91-2c71797d5261))
47 | (pad "2" smd rect (at -4.2 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp e8758629-0b48-4b44-ad5e-75b5f252c8e7))
48 | (pad "3" smd rect (at -3.85 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 0690a51f-bb3b-485d-b8e7-7a8199bfca91))
49 | (pad "4" smd rect (at -3.85 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 8726c978-9a0d-4fd4-a01f-534c34635cad))
50 | (pad "5" smd rect (at -3.5 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 082ea70f-ac21-445b-91c6-91ad3ed948e0))
51 | (pad "6" smd rect (at -3.5 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp bd5ed8dc-d74d-4949-9593-162e52e363be))
52 | (pad "7" smd rect (at -3.15 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 5e609ca8-e8ca-4224-860e-c1105bf53747))
53 | (pad "8" smd rect (at -3.15 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 62935025-cc03-4066-a40c-865249bf6eff))
54 | (pad "9" smd rect (at -2.8 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 57279c51-f798-456d-bdd2-5e1bfff845b9))
55 | (pad "10" smd rect (at -2.8 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 1d2bbc25-e941-42f5-8694-7a583c304d1c))
56 | (pad "11" smd rect (at -2.45 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp f14a1f0b-ca76-4f45-abf0-2f4f11ebadef))
57 | (pad "12" smd rect (at -2.45 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 1d65bc84-8262-4963-873f-ab8906b5b913))
58 | (pad "13" smd rect (at -2.1 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp d2ae262c-b002-43d8-968d-b3d1106f7b07))
59 | (pad "14" smd rect (at -2.1 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp a3a903ca-1ab2-4e84-a4fe-eab0981522a5))
60 | (pad "15" smd rect (at -1.75 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 8a87789a-3605-42fb-ab9e-9f5f750d697b))
61 | (pad "16" smd rect (at -1.75 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp a396099d-cc1b-4186-b81f-83488ed2ed0a))
62 | (pad "17" smd rect (at -1.4 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 05f2ff2c-fc55-4e0e-9b9f-0ac3473219d0))
63 | (pad "18" smd rect (at -1.4 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 3cb7620a-a6f9-4be7-a861-eebeced6d604))
64 | (pad "19" smd rect (at -1.05 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 25026f06-3a78-4fc9-831d-4062e5e41c5d))
65 | (pad "20" smd rect (at -1.05 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 879956ee-c3bb-4d23-9712-c947495d7748))
66 | (pad "21" smd rect (at -0.7 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp eb629c40-3746-444c-9fca-68b08167b188))
67 | (pad "22" smd rect (at -0.7 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 6e8762ce-3eb9-465a-a231-0c301fd4e9ad))
68 | (pad "23" smd rect (at -0.35 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp eb2f8283-8412-4f1b-a3c5-d19a0e21c844))
69 | (pad "24" smd rect (at -0.35 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 122da346-82ad-4459-90cd-444c40b2427f))
70 | (pad "25" smd rect (at 0 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp a40f5e1b-2393-4ddd-babc-aec76eedadc9))
71 | (pad "26" smd rect (at 0 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 1b1362c4-82ae-467e-93a8-352275eb90f7))
72 | (pad "27" smd rect (at 0.35 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp bc7be549-6ed4-45dd-889e-680314d69ece))
73 | (pad "28" smd rect (at 0.35 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp ff0d9264-2b0f-4780-a3c4-8dfb4f007591))
74 | (pad "29" smd rect (at 0.7 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 3ca21c79-e001-4fdd-a5d3-ebbb49fba10c))
75 | (pad "30" smd rect (at 0.7 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp c1ad3723-8faf-4b7a-8828-1dce9ec67a7a))
76 | (pad "31" smd rect (at 1.05 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 5ffa4c03-a992-424d-ab15-92f4990afd4a))
77 | (pad "32" smd rect (at 1.05 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2bb578a9-95e6-49a1-8e03-10f8e43e63c0))
78 | (pad "33" smd rect (at 1.4 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 3f925c77-6f79-484c-badf-8706d8aaf5f0))
79 | (pad "34" smd rect (at 1.4 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 83d541e1-4fd5-4340-a9ea-f4e959d23f72))
80 | (pad "35" smd rect (at 1.75 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 7ed700dc-def2-4877-950d-313242cf1593))
81 | (pad "36" smd rect (at 1.75 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 697e0825-3ebf-4391-8dec-8163033a32ad))
82 | (pad "37" smd rect (at 2.1 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp d268f206-1b43-4043-8057-87ac2e58a10c))
83 | (pad "38" smd rect (at 2.1 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 60511a08-d67f-4b58-982d-ab775b0b19ba))
84 | (pad "39" smd rect (at 2.45 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2ff2439b-4a8f-4e5c-bd4f-2680fe2a1eda))
85 | (pad "40" smd rect (at 2.45 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 8c28d16b-4350-446c-a954-d0e59166363d))
86 | (pad "41" smd rect (at 2.8 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2bddf321-ac30-4c4f-9c2b-5b1ca7a5bb5d))
87 | (pad "42" smd rect (at 2.8 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp b0c72cee-e192-4960-ab31-dc9a4ca78311))
88 | (pad "43" smd rect (at 3.15 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp cb0822c1-e6ec-4e3b-b029-608be3b605eb))
89 | (pad "44" smd rect (at 3.15 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp ecef4e1f-6b25-4d0f-9db7-11fe9a8387a7))
90 | (pad "45" smd rect (at 3.5 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2c96f5df-a04a-4c70-b90c-659e6c21aa61))
91 | (pad "46" smd rect (at 3.5 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2f9150a5-889e-4a3b-bf6f-ba36f454ae18))
92 | (pad "47" smd rect (at 3.85 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 3032963a-4620-4603-9fa4-b726d5597029))
93 | (pad "48" smd rect (at 3.85 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 2bd46e0a-a4bf-4d1a-99cc-76854621f079))
94 | (pad "49" smd rect (at 4.2 1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp c85f0a25-25d8-47d4-b72d-bf25b3cf3b59))
95 | (pad "50" smd rect (at 4.2 -1.004) (size 0.18 0.467) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 7b43bacb-13ce-4969-af4c-cdcdaa4532fb))
96 | (pad "MP1" smd rect (at -5.51 0) (size 0.3 1) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 80385780-8383-4704-8504-fd60fbbf00eb))
97 | (pad "MP2" smd rect (at 5.51 0) (size 0.3 1) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp cd588f38-0528-468e-906c-8f3e942eb036))
98 | (pad "MP3" smd rect (at -4.9 -0.935 90) (size 0.35 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp e51e2d19-78a3-43e5-9312-16c85b7de910))
99 | (pad "MP4" smd rect (at 4.9 -0.935 90) (size 0.35 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 0b8227f6-b3dd-4781-b8a8-7d0e5e764d03))
100 | (pad "MP5" smd rect (at 4.9 0.935 90) (size 0.35 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 66f395d4-30a6-43ad-b9d6-44f5345e394a))
101 | (pad "MP6" smd rect (at -4.9 0.935 90) (size 0.35 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp b27797bb-9dea-4d77-ae02-e108aa07da38))
102 | (model "${KIPRJMOD}/libs/SamacSys/SamacSys_Parts.3dshapes/205863050104_new.iges"
103 | (offset (xyz -4.2 0 0))
104 | (scale (xyz 1 1 1))
105 | (rotate (xyz 0 0 90))
106 | )
107 | )
108 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/5035481220.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "5035481220" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "503548-1220-1")
4 | (tags "Connector")
5 | (attr smd)
6 | (fp_text reference "J**" (at 0 0) (layer "F.SilkS")
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp d8cc017b-b60e-4baf-b717-41a2e5817034)
9 | )
10 | (fp_text value "5035481220" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp 9ec5cda0-c963-4594-9488-3799782e2161)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp 0302cfae-a15a-44a6-8a62-4455d44a258e)
17 | )
18 | (fp_line (start -2.55 -1.3) (end -2.55 1.3)
19 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp be093d1c-58d6-4df7-9a79-802d929427ab))
20 | (fp_line (start -2.55 1.3) (end -2.4 1.3)
21 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 6f84d0a9-d66b-4fb4-b518-b5d5209db1c5))
22 | (fp_line (start -2.4 -1.3) (end -2.55 -1.3)
23 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 31bb8124-97c1-4c86-9adc-f9d73694f108))
24 | (fp_line (start 2.4 -1.3) (end 2.55 -1.3)
25 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 729b8fb9-bcd3-4163-9bfe-ef9a172f30fe))
26 | (fp_line (start 2.55 -1.3) (end 2.55 1.3)
27 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 42b145f8-be15-4346-bb82-6eae476a24ee))
28 | (fp_line (start 2.55 1.3) (end 2.4 1.3)
29 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp fe5e9008-71bd-4479-9827-83daf6a979af))
30 | (fp_line (start -3.55 -2.45) (end 3.55 -2.45)
31 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp bbcf6ce6-8d9f-4d46-95f8-e0c4a1c6a11f))
32 | (fp_line (start -3.55 2.45) (end -3.55 -2.45)
33 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 9bf9f647-5a91-41c0-88cd-98a929553306))
34 | (fp_line (start 3.55 -2.45) (end 3.55 2.45)
35 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 5c2806b3-44d8-4c7e-8177-4179c206a452))
36 | (fp_line (start 3.55 2.45) (end -3.55 2.45)
37 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 4118a090-829f-46fd-9779-4f9941d800ec))
38 | (fp_line (start -2.55 -1.3) (end 2.55 -1.3)
39 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 11e68210-d6d7-4dd3-bd21-7d4682d04a3a))
40 | (fp_line (start -2.55 1.3) (end -2.55 -1.3)
41 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 4bf30e32-dee6-4a5b-abc5-5a6def434abd))
42 | (fp_line (start 2.55 -1.3) (end 2.55 1.3)
43 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 882c4633-22d8-4b56-b0ff-402a1b8cfdfe))
44 | (fp_line (start 2.55 1.3) (end -2.55 1.3)
45 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 7bb262c3-06d2-4d80-8212-bbe24d8b0321))
46 | (pad "1" smd rect (at -1 1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp e432c4f2-2ca7-4d5a-8597-9734a9c8d5e8))
47 | (pad "2" smd rect (at -1 -1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 08c86b37-c90c-44c2-a1b7-a69412fa74c8))
48 | (pad "3" smd rect (at -0.6 1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 4efda02b-917d-4be7-ab49-dd8775ae183e))
49 | (pad "4" smd rect (at -0.6 -1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp a262c86d-2a5d-4c30-b1a1-e844cef30df7))
50 | (pad "5" smd rect (at -0.2 1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp c0de603b-eb5b-4e18-b823-04cd4aaee487))
51 | (pad "6" smd rect (at -0.2 -1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 4314b410-f62a-4127-8df5-759af267a991))
52 | (pad "7" smd rect (at 0.2 1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 34f66b35-24a3-4593-bcf3-30c2faffdd8f))
53 | (pad "8" smd rect (at 0.2 -1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 32b21658-4646-422a-89ea-3fad2fa91d2f))
54 | (pad "9" smd rect (at 0.6 1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp ce20726c-7300-45e0-9304-3f29a62453e1))
55 | (pad "10" smd rect (at 0.6 -1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 7d384508-5ce3-4435-a6ef-caf5ddec8a2f))
56 | (pad "11" smd rect (at 1 1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 0c764b60-989c-4a25-839d-5e8a0282e335))
57 | (pad "12" smd rect (at 1 -1.225) (size 0.24 0.45) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp c5c85329-9aaf-40a7-9ee7-0de3bbf76696))
58 | (pad "MP1" smd rect (at -1.75 1.195 90) (size 0.47 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 5590f43e-1455-4ec6-866b-0f97cb14cbdb))
59 | (pad "MP2" smd rect (at -1.75 -1.195 90) (size 0.47 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 7a8e253e-c7d4-49a0-a456-e740087c8107))
60 | (pad "MP3" smd rect (at 1.75 1.195 90) (size 0.47 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 95e230d5-1fa1-49c7-979a-d410b5206f2a))
61 | (pad "MP4" smd rect (at 1.75 -1.195 90) (size 0.47 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 9fd3eed7-49c8-49b1-b25a-16a4cd95b722))
62 | (model "${KIPRJMOD}/libs/SamacSys/SamacSys_Parts.3dshapes/503548-1220_new.step"
63 | (offset (xyz 0 0 0))
64 | (scale (xyz 1 1 1))
65 | (rotate (xyz -90 0 0))
66 | )
67 | )
68 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/ASPI0312FS100MT2.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "ASPI0312FS100MT2" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "ASPI-0312FS-100M-T2-2")
4 | (tags "Inductor")
5 | (attr smd)
6 | (fp_text reference "L**" (at 0 0) (layer "F.SilkS") hide
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp a4f6ea27-d46c-4272-a7f2-c921625694c7)
9 | )
10 | (fp_text value "ASPI0312FS100MT2" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp 6c228c15-4890-4f1c-952f-03dc6d943796)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp b92a5884-fb57-4515-84cf-4c1106183642)
17 | )
18 | (fp_line (start -1.9558 -1.8542) (end 1.9558 -1.8542)
19 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp e15a2406-4d79-45a6-8dab-5800f5a1c5f9))
20 | (fp_line (start -1.9558 1.8542) (end -1.9558 -1.8542)
21 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 2a6dd525-6fc7-499a-b4be-2dd0de14cb76))
22 | (fp_line (start 1.9558 -1.8542) (end 1.9558 1.8542)
23 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 8b53f555-9527-450b-b20e-203a90f4b01a))
24 | (fp_line (start 1.9558 1.8542) (end -1.9558 1.8542)
25 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 34511b81-b2a4-4493-a6f8-f16bfadc61fc))
26 | (fp_line (start -1.5 -1.5) (end -1.5 1.5)
27 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 529c41fb-3976-42fe-8381-db92cce703cd))
28 | (fp_line (start -1.5 1.5) (end 1.5 1.5)
29 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp c81b3917-48ec-4548-812f-eca01a60f9f5))
30 | (fp_line (start 1.5 -1.5) (end -1.5 -1.5)
31 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 703a80e8-6861-43ba-90d3-db99eb54e862))
32 | (fp_line (start 1.5 1.5) (end 1.5 -1.5)
33 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp e200df2a-e825-468c-a5e6-5af32c9d79fb))
34 | (pad "1" smd rect (at -1.15 0) (size 0.8 2.7) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 8d8cb1a8-c12d-45af-8287-34546304c44d))
35 | (pad "2" smd rect (at 1.15 0) (size 0.8 2.7) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 0d01122a-4537-46dd-9c96-e48089ea6db1))
36 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\ASPI-0312FS-100M-T2.stp"
37 | (offset (xyz 0 0 0))
38 | (scale (xyz 1 1 1))
39 | (rotate (xyz 0 0 0))
40 | )
41 | )
42 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/ASPI06284R7MT1.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "ASPI06284R7MT1" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "ASPI-0628-4R7M-T1")
4 | (tags "Inductor")
5 | (attr smd)
6 | (fp_text reference "L**" (at 0 0) (layer "F.SilkS") hide
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp c5637ffe-0cb9-4e6c-b764-b15dc6dfad9c)
9 | )
10 | (fp_text value "ASPI06284R7MT1" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp a0e7806e-0a61-43ae-bc5a-12d145d58afe)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp c8350414-3912-42f3-9595-6f69b40d2341)
17 | )
18 | (fp_line (start -0.8 -3) (end 0.8 -3)
19 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp b6834e2c-e6f3-4efc-b87d-0d4d97a4dafa))
20 | (fp_line (start -0.8 3) (end 0.8 3)
21 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 0067ee74-a2ad-4458-827a-dabb13c386d6))
22 | (fp_line (start -3.6322 -3.4036) (end 3.6322 -3.4036)
23 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 8ca52d0b-c519-4915-a110-01b8d46cc535))
24 | (fp_line (start -3.6322 3.4036) (end -3.6322 -3.4036)
25 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 73cf2ffc-ab03-40f7-93fd-57927ccf4608))
26 | (fp_line (start 3.6322 -3.4036) (end 3.6322 3.4036)
27 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp c07ee9ea-dffb-4c6d-96fb-7728b0d91591))
28 | (fp_line (start 3.6322 3.4036) (end -3.6322 3.4036)
29 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp ccd0e751-9b44-45a8-b618-60204849a638))
30 | (fp_line (start -3 -3) (end -3 3)
31 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 01e074a4-221b-4362-9e8b-15c614cda8d4))
32 | (fp_line (start -3 3) (end 3 3)
33 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp b44aa553-67a1-4825-98c4-6dc9d3267802))
34 | (fp_line (start 3 -3) (end -3 -3)
35 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 3c5b9203-0be8-4654-a108-a48683c1eb77))
36 | (fp_line (start 3 3) (end 3 -3)
37 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 0fcef882-8437-452e-bde1-628832a25ba2))
38 | (pad "1" smd rect (at -2.15 0) (size 2 5.7) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 294446a2-3687-4506-9dfb-ab60b8da551d))
39 | (pad "2" smd rect (at 2.15 0) (size 2 5.7) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 590ad902-8834-4688-adb0-c57c230b1c14))
40 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\ASPI-0628-4R7M-T1.stp"
41 | (offset (xyz 0 0 0))
42 | (scale (xyz 1 1 1))
43 | (rotate (xyz 0 0 0))
44 | )
45 | )
46 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/CUS10S40H3F.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "CUS10S40H3F" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "USC(T=1.15mm)")
4 | (tags "Schottky Diode")
5 | (attr smd)
6 | (fp_text reference "D**" (at 0 -1.9) (layer "F.SilkS")
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp a6ca29fd-327a-4edc-9bcc-921acdd1c8d3)
9 | )
10 | (fp_text value "CUS10S40H3F" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp 34c4a29e-24a3-4012-ab6f-22e75db5b140)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0.075 2.8) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp fc0923bf-3801-4f5f-9258-89eeb7c46b27)
17 | )
18 | (fp_line (start -1.575 -0.675) (end -1.575 -0.675)
19 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 519a067a-aaec-44bc-bbe1-da3aa3deae11))
20 | (fp_line (start -1.475 -0.675) (end -1.475 -0.675)
21 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 463fc7f0-733e-404e-bf3a-06c920767fe8))
22 | (fp_line (start -0.4 -0.625) (end 0.4 -0.625)
23 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 7d26dc60-9555-46ca-b5ac-03281bb36e07))
24 | (fp_line (start -0.4 0.625) (end 0.4 0.625)
25 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 9715e703-c0b0-4560-962d-cbb08f75b142))
26 | (fp_arc (start -1.575 -0.675) (mid -1.525 -0.725) (end -1.475 -0.675)
27 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 2e81f522-b00c-4310-b038-5b3eb59e773e))
28 | (fp_arc (start -1.475 -0.675) (mid -1.525 -0.625) (end -1.575 -0.675)
29 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 4e64a926-f469-4128-a85a-aaa65002ad9e))
30 | (fp_rect (start -1.7 -0.875) (end 1.7 0.875)
31 | (stroke (width 0.05) (type default)) (fill none) (layer "F.CrtYd") (tstamp 38d07ab2-7125-4c16-b9d0-84610f39a254))
32 | (fp_line (start -0.85 -0.625) (end 0.85 -0.625)
33 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp a0f3cd86-b289-4e68-9fae-faae6eca92ff))
34 | (fp_line (start -0.85 0.625) (end -0.85 -0.625)
35 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 4742070e-b15f-4f20-87bb-ee354e03b7d0))
36 | (fp_line (start 0.85 -0.625) (end 0.85 0.625)
37 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 3efe61b7-ec31-4d2b-b637-8762047e9336))
38 | (fp_line (start 0.85 0.625) (end -0.85 0.625)
39 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 421fa490-ce85-4a27-a750-39fbfc0f957a))
40 | (pad "1" smd rect (at -1.15 0) (size 0.8 0.9) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 6ca7a425-9ceb-4be5-8b0b-0625712956b4))
41 | (pad "2" smd rect (at 1.15 0) (size 0.8 0.9) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 94bd0557-d5e1-4720-9781-73a894fc544f))
42 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\CUS10S40,H3F.stp"
43 | (offset (xyz 0 0 0))
44 | (scale (xyz 1 1 1))
45 | (rotate (xyz 0 0 0))
46 | )
47 | )
48 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/DIOM5226X240N.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "DIOM5226X240N" (layer F.Cu)
2 | (descr "ES1D-13-F-1")
3 | (tags "Diode")
4 | (attr smd)
5 | (fp_text reference D** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at 0 0) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "DIOM5226X240N" (at 0 0) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -3.575 -1.71) (end 3.575 -1.71) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 3.575 -1.71) (end 3.575 1.71) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start 3.575 1.71) (end -3.575 1.71) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -3.575 1.71) (end -3.575 -1.71) (layer F.CrtYd) (width 0.05))
18 | (fp_line (start -2.598 -1.302) (end 2.598 -1.302) (layer F.Fab) (width 0.1))
19 | (fp_line (start 2.598 -1.302) (end 2.598 1.302) (layer F.Fab) (width 0.1))
20 | (fp_line (start 2.598 1.302) (end -2.598 1.302) (layer F.Fab) (width 0.1))
21 | (fp_line (start -2.598 1.302) (end -2.598 -1.302) (layer F.Fab) (width 0.1))
22 | (fp_line (start -2.598 -0.528) (end -1.822 -1.302) (layer F.Fab) (width 0.1))
23 | (fp_line (start 2.598 -1.302) (end -2.925 -1.302) (layer F.SilkS) (width 0.2))
24 | (fp_line (start -2.598 1.302) (end 2.598 1.302) (layer F.SilkS) (width 0.2))
25 | (pad 1 smd rect (at -2.15 0 90) (size 1.55 2.35) (layers F.Cu F.Paste F.Mask))
26 | (pad 2 smd rect (at 2.15 0 90) (size 1.55 2.35) (layers F.Cu F.Paste F.Mask))
27 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\ES1D-13-F.stp"
28 | (at (xyz 0 0 0))
29 | (scale (xyz 1 1 1))
30 | (rotate (xyz 0 0 0))
31 | )
32 | )
33 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/FH35C25S03SHW50.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "FH35C25S03SHW50" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "FH35C-25S-0.3SHW(50)-3")
4 | (tags "Connector")
5 | (attr smd)
6 | (fp_text reference "J**" (at 0 0.088) (layer "F.SilkS")
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp b86b096a-4fb4-44f0-b743-502daa7e5979)
9 | )
10 | (fp_text value "FH35C25S03SHW50" (at 0 0.088) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp 9405a4db-b5f7-4462-a92d-2bde61913700)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0.088) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp b35412d3-9345-4a91-b860-04e7b0d37f8b)
17 | )
18 | (fp_line (start -4.55 -1.499) (end -3.9 -1.499)
19 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 32be07b7-c498-4e2c-bf92-1bba956caa6f))
20 | (fp_line (start -4.55 0.5) (end -4.55 -1.499)
21 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 1ad3c190-e034-44dc-b3f9-dd10e52d0b08))
22 | (fp_line (start 3.6 1.9) (end 3.6 1.9)
23 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp ef4e8182-6a08-49c3-b81a-fbeee2aa6ece))
24 | (fp_line (start 3.6 2) (end 3.6 2)
25 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 4aa6ef9e-5c2c-49ff-9735-a6eedce902e8))
26 | (fp_line (start 3.9 -1.499) (end 4.55 -1.499)
27 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp bf98bd3e-c177-4035-9c55-ec6bfeca7c76))
28 | (fp_line (start 4.55 -1.499) (end 4.55 0.5)
29 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 3c17b0de-8062-424e-8675-fd083e37827d))
30 | (fp_arc (start 3.6 1.9) (mid 3.65 1.95) (end 3.6 2)
31 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 364e756e-a3f6-4d68-90ef-45491e5bf873))
32 | (fp_arc (start 3.6 2) (mid 3.55 1.95) (end 3.6 1.9)
33 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 956afe55-cbd0-47a7-a94d-3a6c072b9ebd))
34 | (fp_line (start -5.55 -2.824) (end 5.55 -2.824)
35 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 2f02d2e8-51ac-4580-8290-71db38ceb293))
36 | (fp_line (start -5.55 3) (end -5.55 -2.824)
37 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 6fd7f6f1-b59b-493d-b9ee-e12f2cde152f))
38 | (fp_line (start 5.55 -2.824) (end 5.55 3)
39 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp bfe22f91-183b-4732-9022-38b3f04b17ee))
40 | (fp_line (start 5.55 3) (end -5.55 3)
41 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 554f417b-f548-4937-a784-7a4ef1c41cf9))
42 | (fp_line (start -4.55 -1.5) (end 4.55 -1.5)
43 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp c71c162b-3638-4560-9733-e2b27cadac05))
44 | (fp_line (start -4.55 1.5) (end -4.55 -1.5)
45 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 11937eb0-5f26-444f-a317-cd40afd00211))
46 | (fp_line (start 4.55 -1.5) (end 4.55 1.5)
47 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 4b908f60-e83c-434b-a68a-29da0a421362))
48 | (fp_line (start 4.55 1.5) (end -4.55 1.5)
49 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp c9f6f37e-5942-454f-9765-10982f35de7b))
50 | (pad "1" smd rect (at 3.6 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 6a8e3194-2bf7-4a31-ba3f-3a9515e8da7b))
51 | (pad "2" smd rect (at 3.3 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 29dde6a5-2666-456a-8075-54fe71e17d30))
52 | (pad "3" smd rect (at 3 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp fcefcd2d-d064-4239-a7ce-1006e2bb2a23))
53 | (pad "4" smd rect (at 2.7 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 141e5ae4-1499-4c51-86f6-050b5cf93a6f))
54 | (pad "5" smd rect (at 2.4 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp e0846c4b-c2a0-4b29-b5fb-10b2a8c1c29a))
55 | (pad "6" smd rect (at 2.1 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 8c9bb7d8-222e-454b-8026-2ca855b3ea6d))
56 | (pad "7" smd rect (at 1.8 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp dd172ce0-cdd9-466d-8ad5-74db1f9eb312))
57 | (pad "8" smd rect (at 1.5 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 4055de75-7a48-4dcb-b982-15ca77394500))
58 | (pad "9" smd rect (at 1.2 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 693b01f9-c8ae-4f15-b8e9-c816bf63aa97))
59 | (pad "10" smd rect (at 0.9 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 0c4b0b85-6e66-45dc-90f3-cb999a5ef386))
60 | (pad "11" smd rect (at 0.6 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp ed1b6b7d-05cd-44a2-a171-0df376aa2d3a))
61 | (pad "12" smd rect (at 0.3 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 65089f6b-75be-46a4-abfb-5ba386e1f7f0))
62 | (pad "13" smd rect (at 0 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp b202cebc-758b-4e9c-b38b-fa7035135344))
63 | (pad "14" smd rect (at -0.3 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp f097aabb-7d73-4818-bf56-c817f914aaed))
64 | (pad "15" smd rect (at -0.6 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 087c4082-8efb-4017-8d41-a27d8cdd0cf2))
65 | (pad "16" smd rect (at -0.9 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 806a77ce-7ce3-43f9-98ca-c8d54e9cc164))
66 | (pad "17" smd rect (at -1.2 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 8bcda064-0daa-4a4f-8995-c08004980771))
67 | (pad "18" smd rect (at -1.5 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 81e10054-d2ae-4a71-8a21-1e8381d2b0bc))
68 | (pad "19" smd rect (at -1.8 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 4abdf045-5899-49c7-a64b-fb4741a1cab1))
69 | (pad "20" smd rect (at -2.1 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp cf5e7fcf-7077-4b6c-9626-9456e8ac1c6d))
70 | (pad "21" smd rect (at -2.4 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 6a2b3171-f401-436b-adeb-2750d6fffb98))
71 | (pad "22" smd rect (at -2.7 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 7590644b-b4c1-4614-bf3e-fbda447214f9))
72 | (pad "23" smd rect (at -3 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp cecfe4be-fc2b-4358-9ef5-df30087d6332))
73 | (pad "24" smd rect (at -3.3 -1.499) (size 0.3 0.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp cec4bedc-188a-4dfd-b61b-80775459f0c5))
74 | (pad "25" smd rect (at -3.6 1.375) (size 0.3 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp dc6399a1-5c83-4d20-8286-7446875e647c))
75 | (pad "MP1" smd rect (at 4.3 1.101) (size 0.4 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp d5561a9a-d439-4f45-864d-01bfaddf4cb6))
76 | (pad "MP2" smd rect (at -4.3 1.101) (size 0.4 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp eae8ae3a-3950-4b3b-ad21-c64e9c124b96))
77 | (model "${KIPRJMOD}/libs/SamacSys/SamacSys_Parts.3dshapes/FH35C-25S-0.3SHW_50_.stp"
78 | (offset (xyz 1.969999999 -0.5299999634 -1.940000028))
79 | (scale (xyz 1 1 1))
80 | (rotate (xyz -90 0 -90))
81 | )
82 | )
83 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/NE555DR.kicad_mod:
--------------------------------------------------------------------------------
1 | (module SOIC127P600X175-8N (layer F.Cu)
2 | (descr "D (R-PDSO-G8)")
3 | (tags "Integrated Circuit")
4 | (attr smd)
5 | (fp_text reference IC** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text value SOIC127P600X175-8N (at 0 0)(layer F.SilkS) hide
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_line (start -3.725 -2.75) (end 3.725 -2.75) (layer Dwgs.User) (width 0.05))
12 | (fp_line (start 3.725 -2.75) (end 3.725 2.75) (layer Dwgs.User) (width 0.05))
13 | (fp_line (start 3.725 2.75) (end -3.725 2.75) (layer Dwgs.User) (width 0.05))
14 | (fp_line (start -3.725 2.75) (end -3.725 -2.75) (layer Dwgs.User) (width 0.05))
15 | (fp_line (start -1.95 -2.45) (end 1.95 -2.45) (layer Dwgs.User) (width 0.1))
16 | (fp_line (start 1.95 -2.45) (end 1.95 2.45) (layer Dwgs.User) (width 0.1))
17 | (fp_line (start 1.95 2.45) (end -1.95 2.45) (layer Dwgs.User) (width 0.1))
18 | (fp_line (start -1.95 2.45) (end -1.95 -2.45) (layer Dwgs.User) (width 0.1))
19 | (fp_line (start -1.95 -1.18) (end -0.68 -2.45) (layer Dwgs.User) (width 0.1))
20 | (fp_line (start -1.6 -2.45) (end 1.6 -2.45) (layer F.SilkS) (width 0.2))
21 | (fp_line (start 1.6 -2.45) (end 1.6 2.45) (layer F.SilkS) (width 0.2))
22 | (fp_line (start 1.6 2.45) (end -1.6 2.45) (layer F.SilkS) (width 0.2))
23 | (fp_line (start -1.6 2.45) (end -1.6 -2.45) (layer F.SilkS) (width 0.2))
24 | (fp_line (start -3.475 -2.58) (end -1.95 -2.58) (layer F.SilkS) (width 0.2))
25 | (pad 1 smd rect (at -2.712 -1.905 90) (size 0.65 1.525) (layers F.Cu F.Paste))
26 | (pad 2 smd rect (at -2.712 -0.635 90) (size 0.65 1.525) (layers F.Cu F.Paste))
27 | (pad 3 smd rect (at -2.712 0.635 90) (size 0.65 1.525) (layers F.Cu F.Paste))
28 | (pad 4 smd rect (at -2.712 1.905 90) (size 0.65 1.525) (layers F.Cu F.Paste))
29 | (pad 5 smd rect (at 2.712 1.905 90) (size 0.65 1.525) (layers F.Cu F.Paste))
30 | (pad 6 smd rect (at 2.712 0.635 90) (size 0.65 1.525) (layers F.Cu F.Paste))
31 | (pad 7 smd rect (at 2.712 -0.635 90) (size 0.65 1.525) (layers F.Cu F.Paste))
32 | (pad 8 smd rect (at 2.712 -1.905 90) (size 0.65 1.525) (layers F.Cu F.Paste))
33 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\NE555DR.stp"
34 | (at(xyz 0 0 0))
35 | (scale (xyz 1 1 1))
36 | (rotate(xyz 0 0 0))
37 | )
38 | )
39 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/NRH2410T2R2MN.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "NRH2410T2R2MN" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "NRH2410T2R2MN-1")
4 | (tags "Inductor")
5 | (attr smd)
6 | (fp_text reference "L**" (at 0 0) (layer "F.SilkS") hide
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp 9c20ff59-f898-4adf-ab05-acdb13bcafee)
9 | )
10 | (fp_text value "NRH2410T2R2MN" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp a309ee39-6bf1-4fdb-a9a4-3c6b0b2e1e8d)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp 38e978e5-6522-4b90-96e4-ac6ea967db81)
17 | )
18 | (fp_line (start -1.4732 -1.4986) (end 1.4732 -1.4986)
19 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 2b9e525e-3333-43f7-b2ea-07b98388f68e))
20 | (fp_line (start -1.4732 1.524) (end -1.4732 -1.4986)
21 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp d2d03070-9667-4f09-88e2-0465aeb3aa03))
22 | (fp_line (start 1.4732 -1.4986) (end 1.4732 1.524)
23 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 01214e76-930f-445d-a13a-fbfb3fee668c))
24 | (fp_line (start 1.4732 1.524) (end -1.4732 1.524)
25 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 49dc8481-2883-40e0-9f31-4f11a37f4b12))
26 | (fp_line (start -1.2 -1.2) (end -1.2 1.2)
27 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp cda13730-8b1b-4f5e-9c30-2e7d4d1ba73a))
28 | (fp_line (start -1.2 1.2) (end 1.2 1.2)
29 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 290a3f4f-49c9-4c4c-8fbf-95629e15c35c))
30 | (fp_line (start 1.2 -1.2) (end -1.2 -1.2)
31 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 6089e878-436f-44a5-8689-50d18bbce470))
32 | (fp_line (start 1.2 1.2) (end 1.2 -1.2)
33 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 579b08f8-97bc-4c84-b317-43eb717dbc90))
34 | (pad "1" smd rect (at -0.725 0) (size 0.7 2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp df594e66-91da-43b5-9702-3c3c4b5316bd))
35 | (pad "2" smd rect (at 0.725 0) (size 0.7 2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 1800f6b8-d4fb-4278-b92c-1ee5fff8b229))
36 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\NRH2410T2R2MN.stp"
37 | (offset (xyz 0 0 0))
38 | (scale (xyz 1 1 1))
39 | (rotate (xyz 0 0 0))
40 | )
41 | )
42 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/NRS2012T4R7MGJ.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "NRS2012T4R7MGJ" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "NRS2012T4R7MGJ-1")
4 | (tags "Inductor")
5 | (attr smd)
6 | (fp_text reference "L**" (at -0.4 0) (layer "F.SilkS") hide
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp e515c18d-cce4-43db-a789-221bcd578e24)
9 | )
10 | (fp_text value "NRS2012T4R7MGJ" (at -0.4 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp 1171b16a-4847-47dd-b742-dac6cda9e9a5)
13 | )
14 | (fp_text user "${REFERENCE}" (at -0.4 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp 41d7a0d2-9c9d-445e-8567-393741479219)
17 | )
18 | (fp_line (start -1.27 -1.2954) (end 1.2446 -1.2954)
19 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 1370833b-38b0-42cf-88d1-ae508932b622))
20 | (fp_line (start -1.27 1.3208) (end -1.27 -1.2954)
21 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp d5ae2334-403d-481b-bafd-d9e7ff6ef0c4))
22 | (fp_line (start 1.2446 -1.2954) (end 1.2446 1.3208)
23 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 13ae0f71-8e52-40d5-b57a-d9ef2c435f1b))
24 | (fp_line (start 1.2446 1.3208) (end -1.27 1.3208)
25 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp bc59f0dd-4369-4f72-8e17-f074986aee15))
26 | (fp_line (start -1 -1) (end -1 1)
27 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp b13c97ef-c0e8-440c-b5b3-6424e611fd91))
28 | (fp_line (start -1 1) (end 1 1)
29 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp debce619-3000-418e-a0df-8ac3b3889678))
30 | (fp_line (start 1 -1) (end -1 -1)
31 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 513690e4-9aa2-41b0-8a3b-aa6ea8142aef))
32 | (fp_line (start 1 1) (end 1 -1)
33 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp d8eab311-44fa-4ad1-9aca-b3f588057d87))
34 | (pad "1" smd rect (at -0.675 0) (size 0.65 2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 80142149-def3-4ea8-8ab8-21a8b323c704))
35 | (pad "2" smd rect (at 0.675 0) (size 0.65 2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 998c1a22-5c5c-41b5-bbb5-5771307d6367))
36 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\NRS2012T4R7MGJ.stp"
37 | (offset (xyz 0 0 0))
38 | (scale (xyz 1 1 1))
39 | (rotate (xyz 0 0 0))
40 | )
41 | )
42 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/QFN50P400X400X100-25N-D.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "QFN50P400X400X100-25N-D" (layer F.Cu)
2 | (descr "RGE0024B")
3 | (tags "Integrated Circuit")
4 | (attr smd)
5 | (fp_text reference IC** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at 0 0) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "QFN50P400X400X100-25N-D" (at 0 0) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -2.625 -2.625) (end 2.625 -2.625) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 2.625 -2.625) (end 2.625 2.625) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start 2.625 2.625) (end -2.625 2.625) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -2.625 2.625) (end -2.625 -2.625) (layer F.CrtYd) (width 0.05))
18 | (fp_line (start -2 -2) (end 2 -2) (layer F.Fab) (width 0.1))
19 | (fp_line (start 2 -2) (end 2 2) (layer F.Fab) (width 0.1))
20 | (fp_line (start 2 2) (end -2 2) (layer F.Fab) (width 0.1))
21 | (fp_line (start -2 2) (end -2 -2) (layer F.Fab) (width 0.1))
22 | (fp_line (start -2 -1.5) (end -1.5 -2) (layer F.Fab) (width 0.1))
23 | (fp_circle (center -2.375 -2) (end -2.375 -1.875) (layer F.SilkS) (width 0.25))
24 | (pad 1 smd rect (at -1.95 -1.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
25 | (pad 2 smd rect (at -1.95 -0.75 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
26 | (pad 3 smd rect (at -1.95 -0.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
27 | (pad 4 smd rect (at -1.95 0.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
28 | (pad 5 smd rect (at -1.95 0.75 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
29 | (pad 6 smd rect (at -1.95 1.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
30 | (pad 7 smd rect (at -1.25 1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
31 | (pad 8 smd rect (at -0.75 1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
32 | (pad 9 smd rect (at -0.25 1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
33 | (pad 10 smd rect (at 0.25 1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
34 | (pad 11 smd rect (at 0.75 1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
35 | (pad 12 smd rect (at 1.25 1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
36 | (pad 13 smd rect (at 1.95 1.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
37 | (pad 14 smd rect (at 1.95 0.75 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
38 | (pad 15 smd rect (at 1.95 0.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
39 | (pad 16 smd rect (at 1.95 -0.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
40 | (pad 17 smd rect (at 1.95 -0.75 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
41 | (pad 18 smd rect (at 1.95 -1.25 90) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
42 | (pad 19 smd rect (at 1.25 -1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
43 | (pad 20 smd rect (at 0.75 -1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
44 | (pad 21 smd rect (at 0.25 -1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
45 | (pad 22 smd rect (at -0.25 -1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
46 | (pad 23 smd rect (at -0.75 -1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
47 | (pad 24 smd rect (at -1.25 -1.95 0) (size 0.3 0.85) (layers F.Cu F.Paste F.Mask))
48 | (pad 25 smd rect (at 0 0 0) (size 2.55 2.55) (layers F.Cu F.Paste F.Mask))
49 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\TPS65131TRGERQ1.stp"
50 | (at (xyz 0 0 0))
51 | (scale (xyz 1 1 1))
52 | (rotate (xyz 0 0 0))
53 | )
54 | )
55 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/S8411-45R_1.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "S8411-45R_1" (layer F.Cu)
2 | (descr "S8411-45R_1")
3 | (tags "Connector")
4 | (fp_text reference J** (at -0.412 -0.096) (layer F.SilkS)
5 | (effects (font (size 1.27 1.27) (thickness 0.254)))
6 | )
7 | (fp_text user %R (at -0.412 -0.096) (layer F.Fab)
8 | (effects (font (size 1.27 1.27) (thickness 0.254)))
9 | )
10 | (fp_text value "S8411-45R_1" (at -0.412 -0.096) (layer F.SilkS) hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | )
13 | (fp_line (start -6.832 8.307) (end 6.832 8.307) (layer F.Fab) (width 0.2))
14 | (fp_line (start -6.832 8.307) (end -6.832 6.625) (layer F.SilkS) (width 0.1))
15 | (fp_line (start 6.832 8.307) (end 6.832 6.625) (layer F.Fab) (width 0.2))
16 | (fp_line (start -6.832 6.625) (end -3.27 6.625) (layer F.SilkS) (width 0.1))
17 | (fp_line (start 6.832 6.625) (end 3.27 6.625) (layer F.Fab) (width 0.2))
18 | (fp_line (start -3.29687 6.625) (end -6.832 6.625) (layer F.Fab) (width 0.2))
19 | (fp_line (start -6.832 6.625) (end -6.832 8.307) (layer F.Fab) (width 0.2))
20 | (fp_line (start 6.832 8.307) (end 6.832 6.625) (layer F.SilkS) (width 0.1))
21 | (fp_line (start 6.832 6.625) (end 3.296 6.625) (layer F.SilkS) (width 0.1))
22 | (fp_line (start -6.832 8.307) (end -1.553 8.307) (layer F.SilkS) (width 0.1))
23 | (fp_line (start 6.832 8.307) (end 1.49 8.307) (layer F.SilkS) (width 0.1))
24 | (fp_circle (center 0 0) (end 0 7.4) (layer F.Fab) (width 0.2))
25 | (fp_arc (start 0 -0) (end -3.29687 -6.625) (angle -127.1) (layer F.SilkS) (width 0.1))
26 | (fp_arc (start -4.9999999998107E-6 -0) (end 3.29687 6.625) (angle -127.1) (layer F.SilkS) (width 0.1))
27 | (pad 1 smd rect (at 0 8.2 0) (size 2.3 4.5) (layers F.Cu F.Paste F.Mask))
28 | (pad MP1 np_thru_hole circle (at 0 3.725) (size 1.3 1.3) (drill 1.3) (layers *.Cu *.Mask))
29 | (pad MP2 np_thru_hole circle (at 0 -3.725) (size 1.05 1.05) (drill 1.05) (layers *.Cu *.Mask))
30 | (pad 2 smd rect (at 0 -8.2 0) (size 2.3 4.5) (layers F.Cu F.Paste F.Mask))
31 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\S8411-45R.stp"
32 | (at (xyz 0 0.027559054648782 0.009055118274501))
33 | (scale (xyz 1 1 1))
34 | (rotate (xyz -90 0 0))
35 | )
36 | )
37 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/SOP254P650X170-4N.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "SOP254P650X170-4N" (layer F.Cu)
2 | (descr "TO-269AA")
3 | (tags "Diode")
4 | (attr smd)
5 | (fp_text reference D** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at 0 0) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "SOP254P650X170-4N" (at 0 0) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -4.025 -2.65) (end 4.025 -2.65) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 4.025 -2.65) (end 4.025 2.65) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start 4.025 2.65) (end -4.025 2.65) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -4.025 2.65) (end -4.025 -2.65) (layer F.CrtYd) (width 0.05))
18 | (fp_line (start -1.95 -2.35) (end 1.95 -2.35) (layer F.Fab) (width 0.1))
19 | (fp_line (start 1.95 -2.35) (end 1.95 2.35) (layer F.Fab) (width 0.1))
20 | (fp_line (start 1.95 2.35) (end -1.95 2.35) (layer F.Fab) (width 0.1))
21 | (fp_line (start -1.95 2.35) (end -1.95 -2.35) (layer F.Fab) (width 0.1))
22 | (fp_line (start -1.95 0.19) (end 0.59 -2.35) (layer F.Fab) (width 0.1))
23 | (fp_line (start -1.625 -2.35) (end 1.625 -2.35) (layer F.SilkS) (width 0.2))
24 | (fp_line (start 1.625 -2.35) (end 1.625 2.35) (layer F.SilkS) (width 0.2))
25 | (fp_line (start 1.625 2.35) (end -1.625 2.35) (layer F.SilkS) (width 0.2))
26 | (fp_line (start -1.625 2.35) (end -1.625 -2.35) (layer F.SilkS) (width 0.2))
27 | (fp_line (start -3.775 -2.12) (end -1.975 -2.12) (layer F.SilkS) (width 0.2))
28 | (pad 1 smd rect (at -2.875 -1.27 90) (size 1 1.8) (layers F.Cu F.Paste F.Mask))
29 | (pad 2 smd rect (at -2.875 1.27 90) (size 1 1.8) (layers F.Cu F.Paste F.Mask))
30 | (pad 3 smd rect (at 2.875 1.27 90) (size 1 1.8) (layers F.Cu F.Paste F.Mask))
31 | (pad 4 smd rect (at 2.875 -1.27 90) (size 1 1.8) (layers F.Cu F.Paste F.Mask))
32 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\S380.stp"
33 | (at (xyz 0 0 0))
34 | (scale (xyz 1 1 1))
35 | (rotate (xyz 0 0 0))
36 | )
37 | )
38 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/SOT65P280X100-8L.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "SOT65P280X100-8L" (layer F.Cu)
2 | (descr "UJ-8 (TSOT)")
3 | (tags "Integrated Circuit")
4 | (attr smd)
5 | (fp_text reference IC** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at 0 0) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "SOT65P280X100-8L" (at 0 0) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -1.725 -1.55) (end 1.725 -1.55) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 1.725 -1.55) (end 1.725 1.55) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start 1.725 1.55) (end -1.725 1.55) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -1.725 1.55) (end -1.725 -1.55) (layer F.CrtYd) (width 0.05))
18 | (fp_line (start -0.8 -1.45) (end 0.8 -1.45) (layer F.Fab) (width 0.1))
19 | (fp_line (start 0.8 -1.45) (end 0.8 1.45) (layer F.Fab) (width 0.1))
20 | (fp_line (start 0.8 1.45) (end -0.8 1.45) (layer F.Fab) (width 0.1))
21 | (fp_line (start -0.8 1.45) (end -0.8 -1.45) (layer F.Fab) (width 0.1))
22 | (fp_line (start -0.8 -0.8) (end -0.15 -1.45) (layer F.Fab) (width 0.1))
23 | (fp_line (start -0.425 -1.45) (end 0.425 -1.45) (layer F.SilkS) (width 0.2))
24 | (fp_line (start 0.425 -1.45) (end 0.425 1.45) (layer F.SilkS) (width 0.2))
25 | (fp_line (start 0.425 1.45) (end -0.425 1.45) (layer F.SilkS) (width 0.2))
26 | (fp_line (start -0.425 1.45) (end -0.425 -1.45) (layer F.SilkS) (width 0.2))
27 | (fp_line (start -1.625 -1.55) (end -0.775 -1.55) (layer F.SilkS) (width 0.2))
28 | (pad 1 smd rect (at -1.2 -0.975 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
29 | (pad 2 smd rect (at -1.2 -0.325 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
30 | (pad 3 smd rect (at -1.2 0.325 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
31 | (pad 4 smd rect (at -1.2 0.975 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
32 | (pad 5 smd rect (at 1.2 0.975 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
33 | (pad 6 smd rect (at 1.2 0.325 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
34 | (pad 7 smd rect (at 1.2 -0.325 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
35 | (pad 8 smd rect (at 1.2 -0.975 90) (size 0.45 0.85) (layers F.Cu F.Paste F.Mask))
36 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\AD5227BUJZ10-RL7.stp"
37 | (at (xyz 0 0 0))
38 | (scale (xyz 1 1 1))
39 | (rotate (xyz 0 0 0))
40 | )
41 | )
42 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/SOT65P280X100-8N.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "SOT65P280X100-8N" (layer F.Cu)
2 | (descr "TSOT23-8")
3 | (tags "Integrated Circuit")
4 | (attr smd)
5 | (fp_text reference IC** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at 0 0) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "SOT65P280X100-8N" (at 0 0) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -2.125 -1.75) (end 2.125 -1.75) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 2.125 -1.75) (end 2.125 1.75) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start 2.125 1.75) (end -2.125 1.75) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -2.125 1.75) (end -2.125 -1.75) (layer F.CrtYd) (width 0.05))
18 | (fp_line (start -0.8 -1.45) (end 0.8 -1.45) (layer F.Fab) (width 0.1))
19 | (fp_line (start 0.8 -1.45) (end 0.8 1.45) (layer F.Fab) (width 0.1))
20 | (fp_line (start 0.8 1.45) (end -0.8 1.45) (layer F.Fab) (width 0.1))
21 | (fp_line (start -0.8 1.45) (end -0.8 -1.45) (layer F.Fab) (width 0.1))
22 | (fp_line (start -0.8 -0.8) (end -0.15 -1.45) (layer F.Fab) (width 0.1))
23 | (fp_line (start -0.375 -1.45) (end 0.375 -1.45) (layer F.SilkS) (width 0.2))
24 | (fp_line (start 0.375 -1.45) (end 0.375 1.45) (layer F.SilkS) (width 0.2))
25 | (fp_line (start 0.375 1.45) (end -0.375 1.45) (layer F.SilkS) (width 0.2))
26 | (fp_line (start -0.375 1.45) (end -0.375 -1.45) (layer F.SilkS) (width 0.2))
27 | (fp_line (start -1.875 -1.55) (end -0.725 -1.55) (layer F.SilkS) (width 0.2))
28 | (pad 1 smd rect (at -1.3 -0.975 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
29 | (pad 2 smd rect (at -1.3 -0.325 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
30 | (pad 3 smd rect (at -1.3 0.325 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
31 | (pad 4 smd rect (at -1.3 0.975 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
32 | (pad 5 smd rect (at 1.3 0.975 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
33 | (pad 6 smd rect (at 1.3 0.325 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
34 | (pad 7 smd rect (at 1.3 -0.325 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
35 | (pad 8 smd rect (at 1.3 -0.975 90) (size 0.45 1.15) (layers F.Cu F.Paste F.Mask))
36 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\MP2315GJ-Z.stp"
37 | (at (xyz 0 0 0))
38 | (scale (xyz 1 1 1))
39 | (rotate (xyz 0 0 0))
40 | )
41 | )
42 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/SOT95P280X145-5N.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "SOT95P280X145-5N" (layer F.Cu)
2 | (descr "DBV0005A")
3 | (tags "Filter")
4 | (attr smd)
5 | (fp_text reference FL** (at 0 0) (layer F.SilkS)
6 | (effects (font (size 1.27 1.27) (thickness 0.254)))
7 | )
8 | (fp_text user %R (at 0 0) (layer F.Fab)
9 | (effects (font (size 1.27 1.27) (thickness 0.254)))
10 | )
11 | (fp_text value "SOT95P280X145-5N" (at 0 0) (layer F.SilkS) hide
12 | (effects (font (size 1.27 1.27) (thickness 0.254)))
13 | )
14 | (fp_line (start -2.1 -1.775) (end 2.1 -1.775) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 2.1 -1.775) (end 2.1 1.775) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start 2.1 1.775) (end -2.1 1.775) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -2.1 1.775) (end -2.1 -1.775) (layer F.CrtYd) (width 0.05))
18 | (fp_line (start -0.8 -1.45) (end 0.8 -1.45) (layer F.Fab) (width 0.1))
19 | (fp_line (start 0.8 -1.45) (end 0.8 1.45) (layer F.Fab) (width 0.1))
20 | (fp_line (start 0.8 1.45) (end -0.8 1.45) (layer F.Fab) (width 0.1))
21 | (fp_line (start -0.8 1.45) (end -0.8 -1.45) (layer F.Fab) (width 0.1))
22 | (fp_line (start -0.8 -0.5) (end 0.15 -1.45) (layer F.Fab) (width 0.1))
23 | (fp_line (start -0.3 -1.45) (end 0.3 -1.45) (layer F.SilkS) (width 0.2))
24 | (fp_line (start 0.3 -1.45) (end 0.3 1.45) (layer F.SilkS) (width 0.2))
25 | (fp_line (start 0.3 1.45) (end -0.3 1.45) (layer F.SilkS) (width 0.2))
26 | (fp_line (start -0.3 1.45) (end -0.3 -1.45) (layer F.SilkS) (width 0.2))
27 | (fp_line (start -1.85 -1.5) (end -0.65 -1.5) (layer F.SilkS) (width 0.2))
28 | (pad 1 smd rect (at -1.25 -0.95 90) (size 0.6 1.2) (layers F.Cu F.Paste F.Mask))
29 | (pad 2 smd rect (at -1.25 0 90) (size 0.6 1.2) (layers F.Cu F.Paste F.Mask))
30 | (pad 3 smd rect (at -1.25 0.95 90) (size 0.6 1.2) (layers F.Cu F.Paste F.Mask))
31 | (pad 4 smd rect (at 1.25 0.95 90) (size 0.6 1.2) (layers F.Cu F.Paste F.Mask))
32 | (pad 5 smd rect (at 1.25 -0.95 90) (size 0.6 1.2) (layers F.Cu F.Paste F.Mask))
33 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\INA180A3IDBVR.stp"
34 | (at (xyz 0 0 0))
35 | (scale (xyz 1 1 1))
36 | (rotate (xyz 0 0 0))
37 | )
38 | )
39 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/SOT95P280X145-6N.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "SOT95P280X145-6N" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "DBV (R-PDSO-G6)")
4 | (tags "Integrated Circuit")
5 | (attr smd)
6 | (fp_text reference "IC**" (at 0 0) (layer "F.SilkS") hide
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp d8d5a372-b5d0-4e24-a901-b876f799d655)
9 | )
10 | (fp_text value "SOT95P280X145-6N" (at 0 0) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp c0135be5-d018-42b3-af24-fc14a1967dfa)
13 | )
14 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp bc22d848-ac13-4b3b-a1f0-1e5156f9d78f)
17 | )
18 | (fp_line (start -1.85 -1.6) (end -0.65 -1.6)
19 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp a0e96e7a-c7b4-4921-a5d3-18cf4c7fc840))
20 | (fp_line (start -0.3 -1.45) (end 0.3 -1.45)
21 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 80911275-960a-456f-90c3-a1761e2421f7))
22 | (fp_line (start -0.3 1.45) (end -0.3 -1.45)
23 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 4d6e24e0-ddd6-4c36-8f1d-34446166ce4e))
24 | (fp_line (start 0.3 -1.45) (end 0.3 1.45)
25 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp 9266e86a-3cf4-4525-b133-864dbed2e3d6))
26 | (fp_line (start 0.3 1.45) (end -0.3 1.45)
27 | (stroke (width 0.2) (type solid)) (layer "F.SilkS") (tstamp ddf2c532-841b-4da3-9182-26fe7ab02e19))
28 | (fp_line (start -2.1 -1.775) (end 2.1 -1.775)
29 | (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 307ab8fd-e706-4116-b4e8-3fcf63955d45))
30 | (fp_line (start -2.1 1.775) (end -2.1 -1.775)
31 | (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 9c0915a2-94dc-49fe-97c8-9b71c514652a))
32 | (fp_line (start 2.1 -1.775) (end 2.1 1.775)
33 | (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 185574f5-f68f-4fa0-9326-b7fd3b3bfa82))
34 | (fp_line (start 2.1 1.775) (end -2.1 1.775)
35 | (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 24607248-7a6f-4735-a3c6-0b8f277f15f7))
36 | (fp_line (start -0.8 -1.45) (end 0.8 -1.45)
37 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp aad949e6-71c6-48ab-a0f4-d082c97e20bb))
38 | (fp_line (start -0.8 -0.5) (end 0.15 -1.45)
39 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 7bd699cd-446b-4fb1-8b13-cf26e75d2d43))
40 | (fp_line (start -0.8 1.45) (end -0.8 -1.45)
41 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 3d1a8650-cc45-43f9-98b2-500edabe0f1d))
42 | (fp_line (start 0.8 -1.45) (end 0.8 1.45)
43 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 0f0b2634-8141-46c6-980c-edbf43c972d5))
44 | (fp_line (start 0.8 1.45) (end -0.8 1.45)
45 | (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 4d9edfd5-65e7-4c24-b355-539c807d110a))
46 | (pad "1" smd rect (at -1.25 -0.95 90) (size 0.6 1.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 31cf3753-aa1d-4850-8177-23e0dac36133))
47 | (pad "2" smd rect (at -1.25 0 90) (size 0.6 1.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 5143a72a-27c1-45d8-aca9-20d8126f9160))
48 | (pad "3" smd rect (at -1.25 0.95 90) (size 0.6 1.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 6c6b24c6-668d-4b3c-a417-7c6ae60da228))
49 | (pad "4" smd rect (at 1.25 0.95 90) (size 0.6 1.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 0d00dd07-1d67-4ed9-82d6-c75b8f095ab2))
50 | (pad "5" smd rect (at 1.25 0 90) (size 0.6 1.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 7efe4652-ad90-4729-ba1c-f083607797d2))
51 | (pad "6" smd rect (at 1.25 -0.95 90) (size 0.6 1.2) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 642d8335-7998-4df7-bc39-6d7ea34cf7da))
52 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\ADC081S021CIMF_NOPB.stp"
53 | (offset (xyz 0 0 0))
54 | (scale (xyz 1 1 1))
55 | (rotate (xyz 0 0 0))
56 | )
57 | )
58 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/TO255P460X1020X2005-3P.kicad_mod:
--------------------------------------------------------------------------------
1 | (module "TO255P460X1020X2005-3P" (layer F.Cu)
2 | (descr "TO-220AB")
3 | (tags "Triac")
4 | (fp_text reference Q** (at 0 0) (layer F.SilkS)
5 | (effects (font (size 1.27 1.27) (thickness 0.254)))
6 | )
7 | (fp_text user %R (at 0 0) (layer F.Fab)
8 | (effects (font (size 1.27 1.27) (thickness 0.254)))
9 | )
10 | (fp_text value "TO255P460X1020X2005-3P" (at 0 0) (layer F.SilkS) hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | )
13 | (fp_line (start -2.9 -3.2) (end 8 -3.2) (layer F.CrtYd) (width 0.05))
14 | (fp_line (start 8 -3.2) (end 8 1.9) (layer F.CrtYd) (width 0.05))
15 | (fp_line (start 8 1.9) (end -2.9 1.9) (layer F.CrtYd) (width 0.05))
16 | (fp_line (start -2.9 1.9) (end -2.9 -3.2) (layer F.CrtYd) (width 0.05))
17 | (fp_line (start -2.65 -2.95) (end 7.75 -2.95) (layer F.Fab) (width 0.1))
18 | (fp_line (start 7.75 -2.95) (end 7.75 1.65) (layer F.Fab) (width 0.1))
19 | (fp_line (start 7.75 1.65) (end -2.65 1.65) (layer F.Fab) (width 0.1))
20 | (fp_line (start -2.65 1.65) (end -2.65 -2.95) (layer F.Fab) (width 0.1))
21 | (fp_line (start -2.65 -1.675) (end -1.375 -2.95) (layer F.Fab) (width 0.1))
22 | (fp_line (start 7.75 1.65) (end 7.75 -2.95) (layer F.SilkS) (width 0.2))
23 | (fp_line (start 7.75 -2.95) (end -2.65 -2.95) (layer F.SilkS) (width 0.2))
24 | (fp_line (start -2.65 -2.95) (end -2.65 0) (layer F.SilkS) (width 0.2))
25 | (pad 1 thru_hole rect (at 0 0) (size 1.98 1.98) (drill 1.32) (layers *.Cu *.Mask))
26 | (pad 2 thru_hole circle (at 2.55 0) (size 1.98 1.98) (drill 1.32) (layers *.Cu *.Mask))
27 | (pad 3 thru_hole circle (at 5.1 0) (size 1.98 1.98) (drill 1.32) (layers *.Cu *.Mask))
28 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\BTA24-600BWRG.stp"
29 | (at (xyz 0 0 0))
30 | (scale (xyz 1 1 1))
31 | (rotate (xyz 0 0 0))
32 | )
33 | )
34 |
--------------------------------------------------------------------------------
/hardware/libs/SamacSys/SamacSys_Parts.pretty/XT30PWF.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "XT30PWF" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (descr "XT30PW-F-2")
4 | (tags "Connector")
5 | (attr through_hole)
6 | (fp_text reference "J**" (at 2.5 -6.862) (layer "F.SilkS")
7 | (effects (font (size 1.27 1.27) (thickness 0.254)))
8 | (tstamp bf16f86e-b0d0-45f7-aafa-88e63780cbd6)
9 | )
10 | (fp_text value "XT30PWF" (at 2.5 -6.862) (layer "F.SilkS") hide
11 | (effects (font (size 1.27 1.27) (thickness 0.254)))
12 | (tstamp 75c2a536-3650-45a7-8c32-5685a5d7e0e5)
13 | )
14 | (fp_text user "${REFERENCE}" (at 2.5 -6.862) (layer "F.Fab")
15 | (effects (font (size 1.27 1.27) (thickness 0.254)))
16 | (tstamp 5462702d-d6eb-4aaf-a66e-3d3de849d512)
17 | )
18 | (fp_line (start -4.15 -15) (end 9.15 -15)
19 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp b9da3e5e-2071-4daf-a6db-ce3328517acf))
20 | (fp_line (start -4.15 -3) (end -4.15 -15)
21 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 658c3e5c-b9a7-4ea9-bb69-cee52f6e4b72))
22 | (fp_line (start 9.15 -15) (end 9.15 -3)
23 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp a381f647-5810-4f74-ad24-f016cba6a57a))
24 | (fp_line (start 9.15 -3) (end -4.15 -3)
25 | (stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 74f061db-a37c-4a54-b843-c1c386258da5))
26 | (fp_line (start -5.15 -16) (end 10.15 -16)
27 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp eaff6598-b62d-429e-a726-2fcd2df8af99))
28 | (fp_line (start -5.15 2.275) (end -5.15 -16)
29 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp a7879817-d4df-4aef-84de-e56c1f3f13c8))
30 | (fp_line (start 10.15 -16) (end 10.15 2.275)
31 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 03237c49-1a7f-4c64-8124-aaefa664ec1b))
32 | (fp_line (start 10.15 2.275) (end -5.15 2.275)
33 | (stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 8f40437c-15aa-4db0-a18b-1a7f7d27dbda))
34 | (fp_line (start -4.15 -15) (end 9.15 -15)
35 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 058d618b-1896-4482-b686-bc611f9677b1))
36 | (fp_line (start -4.15 -3) (end -4.15 -15)
37 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp ec1069dd-7ca4-4f76-b50f-d558a379ddd9))
38 | (fp_line (start 9.15 -15) (end 9.15 -3)
39 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp b72f9d07-359f-4bf8-8688-6a38d9d62437))
40 | (fp_line (start 9.15 -3) (end -4.15 -3)
41 | (stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 0fbbcbea-0ba7-4a2a-b8a0-310c6b5e6763))
42 | (pad "" thru_hole circle (at -3 -5) (size 1.5 1.5) (drill 1) (layers "*.Cu" "*.Mask") (tstamp fa32bbce-2c59-40de-88e6-a80e7a63ff90))
43 | (pad "" thru_hole circle (at 8 -5) (size 1.5 1.5) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 80b2f111-6e1b-4ef6-b6a8-c6f33a63d112))
44 | (pad "1" thru_hole circle (at 0 0) (size 2.55 2.55) (drill 1.7) (layers "*.Cu" "*.Mask") (tstamp 741682ba-6655-4360-a4da-67de77da47ff))
45 | (pad "2" thru_hole circle (at 5 0) (size 2.55 2.55) (drill 1.7) (layers "*.Cu" "*.Mask") (tstamp 362f31d6-6a9e-4c0b-b31a-053304b8bc03))
46 | (model "D:\\SamacSys\\Kicad\\SamacSys_Parts.3dshapes\\XT30PW-F.stp"
47 | (offset (xyz 2.499999962 7.929999709 0.2099999903))
48 | (scale (xyz 1 1 1))
49 | (rotate (xyz 0 0 -180))
50 | )
51 | )
52 |
--------------------------------------------------------------------------------
/hardware/libs/mylib/mylib.pretty/FPC_34.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "FPC_34" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (property "Sheetfile" "SSD2828.kicad_sch")
4 | (property "Sheetname" "SSD2828")
5 | (property "ki_description" "Generic connector, single row, 01x34, script generated (kicad-library-utils/schlib/autogen/connector/)")
6 | (property "ki_keywords" "connector")
7 | (attr through_hole)
8 | (fp_text reference "J3" (at 0 1.85) (layer "F.SilkS") hide
9 | (effects (font (size 1 1) (thickness 0.15)))
10 | (tstamp 722cf3bb-a1bf-44fd-99a0-b6ca5884cfdf)
11 | )
12 | (fp_text value "Conn_01x34" (at 0 3) (layer "F.Fab")
13 | (effects (font (size 1 1) (thickness 0.15)))
14 | (tstamp 7632d71d-9a30-401e-b0a9-06a68ee21de3)
15 | )
16 | (fp_line (start -11.41 1.575) (end -8.5 1.575)
17 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 4db1a0ad-e0c4-4527-b590-f52710589bef))
18 | (fp_line (start -11.41 3.735) (end -11.41 1.575)
19 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp d4047a48-47ae-43bc-9ca0-164f87340331))
20 | (fp_line (start -8.5 -0.88) (end 8.5 -0.88)
21 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 76fe3fa6-3c7f-46f4-94db-c1d85dfbe32f))
22 | (fp_line (start -8.5 0.88) (end -8.5 3.735)
23 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 3571367b-1cb7-47fd-b2f2-5c2ab5f26fb4))
24 | (fp_line (start -8.5 0.88) (end 8.5 0.88)
25 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 50dcdc09-31c4-478e-a283-a1de22e9d4a3))
26 | (fp_line (start -8.5 1.575) (end -8.5 -0.88)
27 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 59b85dee-0be1-4317-9b4a-7b5885a9de29))
28 | (fp_line (start -8.5 3.735) (end -11.41 3.735)
29 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp b8dcfbd3-4a41-47d1-a8e8-bae0629b56a7))
30 | (fp_line (start 8.5 0.88) (end 8.5 3.735)
31 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp f3886383-8e10-4289-9faf-059068aef1f4))
32 | (fp_line (start 8.5 1.575) (end 8.5 -0.88)
33 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 9f45ed7e-646e-4ea2-90c8-9164aa8c3dec))
34 | (fp_line (start 8.5 3.735) (end 11.41 3.735)
35 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 8cb3a1d0-ea17-46c0-af10-ce750357d863))
36 | (fp_line (start 11.41 1.575) (end 8.5 1.575)
37 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 5c19d238-623d-4b58-b9b5-975077df06c2))
38 | (fp_line (start 11.41 3.735) (end 11.41 1.575)
39 | (stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp cad19315-c1f6-49e9-b358-00002c42c6f1))
40 | (fp_line (start -11.65 -1.1) (end -11.65 4)
41 | (stroke (width 0.05) (type default)) (layer "F.CrtYd") (tstamp e7409ebd-8797-4a26-bca7-be69acec3b56))
42 | (fp_line (start -11.65 -1.1) (end 11.65 -1.1)
43 | (stroke (width 0.05) (type default)) (layer "F.CrtYd") (tstamp c0f8a1ab-794f-43e6-a668-673aaff7f1c9))
44 | (fp_line (start -11.65 4) (end 11.65 4)
45 | (stroke (width 0.05) (type default)) (layer "F.CrtYd") (tstamp aa04ef46-e3ac-4324-8291-77324688b5e5))
46 | (fp_line (start 11.65 -1.1) (end 11.65 4)
47 | (stroke (width 0.05) (type default)) (layer "F.CrtYd") (tstamp 53307144-370e-45ed-84b9-d84016049840))
48 | (pad "0" smd rect (at -9.95 2.715) (size 2.2 1.8) (layers "F.Cu" "F.Paste" "F.Mask")
49 | (thermal_bridge_angle 45) (tstamp e11bc023-37ca-44d5-8ebb-7f1e4710135c))
50 | (pad "0" smd rect (at 9.95 2.715) (size 2.2 1.8) (layers "F.Cu" "F.Paste" "F.Mask")
51 | (thermal_bridge_angle 45) (tstamp a9127df8-bae3-477d-8c87-c2778e279f08))
52 | (pad "1" smd rect (at -8.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
53 | (thermal_bridge_angle 45) (tstamp 539f5e86-a8d9-4fca-a055-0554a1b0f4d2))
54 | (pad "2" smd rect (at -7.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
55 | (thermal_bridge_angle 45) (tstamp 6ee01752-a09a-4d4d-a61d-1724c4e6b757))
56 | (pad "3" smd rect (at -7.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
57 | (thermal_bridge_angle 45) (tstamp e95e3886-b32e-4562-b8a9-5a5a5bf49011))
58 | (pad "4" smd rect (at -6.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
59 | (thermal_bridge_angle 45) (tstamp 13abd59f-1ebd-4709-b2c8-05e425df9eb0))
60 | (pad "5" smd rect (at -6.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
61 | (thermal_bridge_angle 45) (tstamp 68cbc436-bbfa-4f2b-8b69-01b0d1465859))
62 | (pad "6" smd rect (at -5.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
63 | (thermal_bridge_angle 45) (tstamp d2ba00ba-6c41-4172-b4dc-4a0b57b07ec7))
64 | (pad "7" smd rect (at -5.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
65 | (thermal_bridge_angle 45) (tstamp c45ad497-81a8-42d4-bc2f-8be62ced08b4))
66 | (pad "8" smd rect (at -4.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
67 | (thermal_bridge_angle 45) (tstamp 9ca1f0e9-7b34-4e54-9fef-05a843b3e1d3))
68 | (pad "9" smd rect (at -4.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
69 | (thermal_bridge_angle 45) (tstamp c83aeda8-964c-412d-80a0-519ac36ae484))
70 | (pad "10" smd rect (at -3.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
71 | (thermal_bridge_angle 45) (tstamp 918658e4-44b8-46d3-8bf3-13334d4ae45b))
72 | (pad "11" smd rect (at -3.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
73 | (thermal_bridge_angle 45) (tstamp 24316a17-db0a-40c7-b5d2-e38cd6b72530))
74 | (pad "12" smd rect (at -2.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
75 | (thermal_bridge_angle 45) (tstamp d4e729cb-6c5f-4d07-9bdc-e593aa843865))
76 | (pad "13" smd rect (at -2.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
77 | (thermal_bridge_angle 45) (tstamp 95384bc1-b35b-4ddd-b085-f8537ae0fb09))
78 | (pad "14" smd rect (at -1.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
79 | (thermal_bridge_angle 45) (tstamp db35ac58-09ca-45c6-8a1f-b181df7b0250))
80 | (pad "15" smd rect (at -1.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
81 | (thermal_bridge_angle 45) (tstamp 0e1cd376-4a66-4ef2-849f-6a84038352d6))
82 | (pad "16" smd rect (at -0.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
83 | (thermal_bridge_angle 45) (tstamp 8044fe19-fb61-40c7-9033-1757b15720b7))
84 | (pad "17" smd rect (at -0.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
85 | (thermal_bridge_angle 45) (tstamp c9e53f07-0f35-4beb-9539-938dc69a58f2))
86 | (pad "18" smd rect (at 0.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
87 | (thermal_bridge_angle 45) (tstamp bfb6c14a-42fd-4bd2-9e83-3db8dcbc9e69))
88 | (pad "19" smd rect (at 0.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
89 | (thermal_bridge_angle 45) (tstamp c7d1d151-26b6-449f-9663-3e57bf88e15a))
90 | (pad "20" smd rect (at 1.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
91 | (thermal_bridge_angle 45) (tstamp 1378f58a-4682-49d3-a503-48c6779b6dd2))
92 | (pad "21" smd rect (at 1.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
93 | (thermal_bridge_angle 45) (tstamp 6aaab818-f218-4fc3-b818-dbdf9dcc8292))
94 | (pad "22" smd rect (at 2.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
95 | (thermal_bridge_angle 45) (tstamp f87d30cb-d5ea-414f-a764-303a243f6f48))
96 | (pad "23" smd rect (at 2.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
97 | (thermal_bridge_angle 45) (tstamp 190b229a-f765-471f-b16e-660d41175450))
98 | (pad "24" smd rect (at 3.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
99 | (thermal_bridge_angle 45) (tstamp 65175a80-a4f2-45bd-a43d-c7239db99659))
100 | (pad "25" smd rect (at 3.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
101 | (thermal_bridge_angle 45) (tstamp 2a956a07-c63c-40b1-9da4-3d20b03ae142))
102 | (pad "26" smd rect (at 4.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
103 | (thermal_bridge_angle 45) (tstamp e02a34ed-0145-47b4-8b56-605487b6b40b))
104 | (pad "27" smd rect (at 4.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
105 | (thermal_bridge_angle 45) (tstamp fac600a0-d764-42d4-bba1-62c580380e32))
106 | (pad "28" smd rect (at 5.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
107 | (thermal_bridge_angle 45) (tstamp 8ff879c3-3027-42e7-a18a-2c4a172521ca))
108 | (pad "29" smd rect (at 5.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
109 | (thermal_bridge_angle 45) (tstamp 6ba327cd-f16f-44e0-beff-32cfb5b4ce1b))
110 | (pad "30" smd rect (at 6.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
111 | (thermal_bridge_angle 45) (tstamp 6029c857-4083-49fb-942a-3d3527d2628f))
112 | (pad "31" smd rect (at 6.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
113 | (thermal_bridge_angle 45) (tstamp a89b8910-8ce6-4a56-aae1-462408f163a1))
114 | (pad "32" smd rect (at 7.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
115 | (thermal_bridge_angle 45) (tstamp d023f764-ab66-41eb-8f7f-297b6891346f))
116 | (pad "33" smd rect (at 7.75 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
117 | (thermal_bridge_angle 45) (tstamp 2190bf4d-c728-48d1-b981-8f6d410c8adc))
118 | (pad "34" smd rect (at 8.25 0) (size 0.3 1.4) (layers "F.Cu" "F.Paste" "F.Mask")
119 | (thermal_bridge_angle 45) (tstamp 94dbf582-9e74-4290-a5c8-5e7b73675d2c))
120 | (model "${KIPRJMOD}/libs/C2797218/C2797218.3dshapes/FPC-SMD_KH-FG0.5-H2.0-34PIN.wrl"
121 | (offset (xyz 0 0 0))
122 | (scale (xyz 1 1 1))
123 | (rotate (xyz 0 0 0))
124 | )
125 | )
126 |
--------------------------------------------------------------------------------
/hardware/libs/mylib/mylib.pretty/myTestpoint.kicad_mod:
--------------------------------------------------------------------------------
1 | (footprint "myTestpoint" (version 20221018) (generator pcbnew)
2 | (layer "F.Cu")
3 | (attr smd)
4 | (fp_text reference "REF**" (at 0 -9.3 unlocked) (layer "F.SilkS")
5 | (effects (font (size 1 1) (thickness 0.15)))
6 | (tstamp 73867bf5-3c79-43e4-a151-79768442e738)
7 | )
8 | (fp_text value "myTestpoint" (at 0 -7.8 unlocked) (layer "F.Fab")
9 | (effects (font (size 1 1) (thickness 0.15)))
10 | (tstamp 593de9e1-3aa6-4847-a066-52701c3da19f)
11 | )
12 | (fp_text user "${REFERENCE}" (at 0 -6.3 unlocked) (layer "F.Fab")
13 | (effects (font (size 1 1) (thickness 0.15)))
14 | (tstamp 67f96569-0218-4c94-b0fe-9b455e90282f)
15 | )
16 | (fp_rect (start -0.5 -0.5) (end 0.5 0.5)
17 | (stroke (width 0.12) (type default)) (fill none) (layer "F.SilkS") (tstamp f7302489-7cea-426f-9e1a-f33de54facab))
18 | (fp_rect (start -0.4 -0.4) (end 0.4 0.4)
19 | (stroke (width 0.05) (type default)) (fill none) (layer "F.CrtYd") (tstamp cb673e8c-0f6d-482f-8f31-d11845d74389))
20 | (pad "1" smd roundrect (at 0 0) (size 0.7 0.7) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25)
21 | (thermal_bridge_angle 45) (tstamp 58fd93af-eb4a-4baf-adc7-1901acc750af))
22 | )
23 |
--------------------------------------------------------------------------------
/hardware/schematics.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/hardware/schematics.pdf
--------------------------------------------------------------------------------
/hardware/ssd2828_board.kicad_dru:
--------------------------------------------------------------------------------
1 | (version 1)
2 |
3 | # clearance
4 | (rule "via to track clearance"
5 | (constraint hole_clearance (min 0.254mm))
6 | (condition "A.Type == 'via' && B.Type == 'track'"))
7 |
8 | (rule "via to via clearance (same nets)"
9 | (constraint hole_clearance (min 0.254mm))
10 | (condition "A.Type == 'via' && B.Type == 'via' && A.Net == B.Net"))
11 |
12 | (rule "pad to pad clearance (with hole, different nets)"
13 | (constraint hole_clearance (min 0.5mm))
14 | (condition "A.Type == 'through-hole' && B.Type == A.Type && A.Net != B.Net"))
--------------------------------------------------------------------------------
/hardware/ssd2828_board.kicad_prl:
--------------------------------------------------------------------------------
1 | {
2 | "board": {
3 | "active_layer": 0,
4 | "active_layer_preset": "",
5 | "auto_track_width": true,
6 | "hidden_netclasses": [],
7 | "hidden_nets": [],
8 | "high_contrast_mode": 1,
9 | "net_color_mode": 2,
10 | "opacity": {
11 | "images": 0.6,
12 | "pads": 1.0,
13 | "tracks": 1.0,
14 | "vias": 1.0,
15 | "zones": 0.3199999928474426
16 | },
17 | "ratsnest_display_mode": 0,
18 | "selection_filter": {
19 | "dimensions": true,
20 | "footprints": true,
21 | "graphics": true,
22 | "keepouts": true,
23 | "lockedItems": true,
24 | "otherItems": true,
25 | "pads": true,
26 | "text": true,
27 | "tracks": true,
28 | "vias": true,
29 | "zones": true
30 | },
31 | "visible_items": [
32 | 0,
33 | 1,
34 | 2,
35 | 3,
36 | 4,
37 | 5,
38 | 8,
39 | 9,
40 | 10,
41 | 11,
42 | 12,
43 | 13,
44 | 15,
45 | 16,
46 | 17,
47 | 18,
48 | 19,
49 | 20,
50 | 21,
51 | 22,
52 | 23,
53 | 24,
54 | 25,
55 | 26,
56 | 27,
57 | 28,
58 | 29,
59 | 30,
60 | 32,
61 | 33,
62 | 34,
63 | 35,
64 | 36,
65 | 39,
66 | 40
67 | ],
68 | "visible_layers": "004d0fc_80000007",
69 | "zone_display_mode": 0
70 | },
71 | "git": {
72 | "repo_password": "",
73 | "repo_type": "",
74 | "repo_username": "",
75 | "ssh_key": ""
76 | },
77 | "meta": {
78 | "filename": "ssd2828_board.kicad_prl",
79 | "version": 3
80 | },
81 | "project": {
82 | "files": []
83 | }
84 | }
85 |
--------------------------------------------------------------------------------
/hardware/ssd2828_board.kicad_sch:
--------------------------------------------------------------------------------
1 | (kicad_sch (version 20230121) (generator eeschema)
2 |
3 | (uuid e63e39d7-6ac0-4ffd-8aa3-1841a4541b55)
4 |
5 | (paper "A4")
6 |
7 | (lib_symbols
8 | )
9 |
10 |
11 | (sheet (at 175.26 81.28) (size 46.99 27.94) (fields_autoplaced)
12 | (stroke (width 0.1524) (type solid))
13 | (fill (color 0 0 0 0.0000))
14 | (uuid aa1c650f-a854-42b3-a05e-cf0d26468eda)
15 | (property "Sheetname" "VS035ZSM" (at 175.26 80.5684 0)
16 | (effects (font (size 1.27 1.27)) (justify left bottom))
17 | )
18 | (property "Sheetfile" "VS035ZSM.kicad_sch" (at 175.26 109.8046 0)
19 | (effects (font (size 1.27 1.27)) (justify left top))
20 | )
21 | (property "Field2" "" (at 175.26 81.28 0)
22 | (effects (font (size 1.27 1.27)) hide)
23 | )
24 | (instances
25 | (project "ssd2828_board"
26 | (path "/e63e39d7-6ac0-4ffd-8aa3-1841a4541b55" (page "3"))
27 | )
28 | )
29 | )
30 |
31 | (sheet (at 125.73 81.28) (size 46.99 27.94) (fields_autoplaced)
32 | (stroke (width 0.1524) (type solid))
33 | (fill (color 0 0 0 0.0000))
34 | (uuid d0befddb-c525-47aa-a36b-f999bfb6acb2)
35 | (property "Sheetname" "LH154Q01" (at 125.73 80.5684 0)
36 | (effects (font (size 1.27 1.27)) (justify left bottom))
37 | )
38 | (property "Sheetfile" "LH154Q01.kicad_sch" (at 125.73 109.8046 0)
39 | (effects (font (size 1.27 1.27)) (justify left top))
40 | )
41 | (instances
42 | (project "ssd2828_board"
43 | (path "/e63e39d7-6ac0-4ffd-8aa3-1841a4541b55" (page "4"))
44 | )
45 | )
46 | )
47 |
48 | (sheet (at 76.2 115.57) (size 46.99 25.4) (fields_autoplaced)
49 | (stroke (width 0.1524) (type solid))
50 | (fill (color 0 0 0 0.0000))
51 | (uuid d447bd0b-01e9-4cd7-8213-bcef244ac24b)
52 | (property "Sheetname" "debug" (at 76.2 114.8584 0)
53 | (effects (font (size 1.27 1.27)) (justify left bottom))
54 | )
55 | (property "Sheetfile" "untitled.kicad_sch" (at 76.2 141.5546 0)
56 | (effects (font (size 1.27 1.27)) (justify left top))
57 | )
58 | (instances
59 | (project "ssd2828_board"
60 | (path "/e63e39d7-6ac0-4ffd-8aa3-1841a4541b55" (page "5"))
61 | )
62 | )
63 | )
64 |
65 | (sheet (at 76.2 81.28) (size 46.99 27.94) (fields_autoplaced)
66 | (stroke (width 0.1524) (type solid))
67 | (fill (color 0 0 0 0.0000))
68 | (uuid eadf4466-e824-4ab1-a46a-9025d68137a1)
69 | (property "Sheetname" "SSD2828" (at 76.2 80.5684 0)
70 | (effects (font (size 1.27 1.27)) (justify left bottom))
71 | )
72 | (property "Sheetfile" "SSD2828.kicad_sch" (at 76.2 109.8046 0)
73 | (effects (font (size 1.27 1.27)) (justify left top))
74 | )
75 | (instances
76 | (project "ssd2828_board"
77 | (path "/e63e39d7-6ac0-4ffd-8aa3-1841a4541b55" (page "2"))
78 | )
79 | )
80 | )
81 |
82 | (sheet_instances
83 | (path "/" (page "1"))
84 | )
85 | )
86 |
--------------------------------------------------------------------------------
/hardware/sym-lib-table:
--------------------------------------------------------------------------------
1 | (sym_lib_table
2 | (version 7)
3 | (lib (name "SamacSys_Parts")(type "KiCad")(uri "${KIPRJMOD}/libs/SamacSys/SamacSys_Parts.kicad_sym")(options "")(descr ""))
4 | (lib (name "ssd2828")(type "KiCad")(uri "${KIPRJMOD}/libs/ssd2828/ssd2828.kicad_sym")(options "")(descr ""))
5 | )
6 |
--------------------------------------------------------------------------------
/imgs/3D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/imgs/3D.png
--------------------------------------------------------------------------------
/imgs/IMG_5381.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/imgs/IMG_5381.JPG
--------------------------------------------------------------------------------
/imgs/IMG_5384.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/imgs/IMG_5384.JPG
--------------------------------------------------------------------------------
/imgs/IMG_5390.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dartcom/ssd2828-dev/d9958e7049fa86391073ed8e13d35fab8647275b/imgs/IMG_5390.JPG
--------------------------------------------------------------------------------
/software/Makefile:
--------------------------------------------------------------------------------
1 | PROGRAMMING_PORT = ...
2 |
3 | BUILD_DIR = build
4 | SRC_DIR = src
5 | LIBS_DIR = libs
6 | SYSTEM_DIR = system
7 |
8 |
9 | CPU = cortex-m4
10 | FPU = fpv4-sp-d16
11 |
12 |
13 | START_SCRIPT = startup_stm32f401xc.s
14 | INIT_SCRIPT = system_stm32f4xx.c
15 | LD_SCRIPT = STM32F401CCUX_FLASH.ld
16 | TARGET = main
17 |
18 | ASFLAGS += -c
19 | ASFLAGS += -O0
20 | ASFLAGS += -mcpu=$(CPU)
21 | ASFLAGS += -mthumb
22 | ASFLAGS += -mfpu=$(FPU)
23 | ASFLAGS += -mfloat-abi=hard
24 | ASFLAGS += -fmessage-length=0
25 |
26 | CFLAGS += -mcpu=$(CPU)
27 | CFLAGS += -mthumb
28 | CFLAGS += -mfpu=$(FPU)
29 | CFLAGS += -mfloat-abi=hard
30 | CFLAGS += -Wall
31 | CFLAGS += -g3 -gdwarf-2
32 | CFLAGS += -fmessage-length=0
33 | CFLAGS += -specs=nosys.specs
34 |
35 | LSCRIPT = $(SYSTEM_DIR)/$(LD_SCRIPT)
36 | LFLAGS += -mcpu=$(CPU)
37 | LFLAGS += -mthumb
38 | LFLAGS += -mfpu=$(FPU)
39 | LFLAGS += -mfloat-abi=hard
40 | LFLAGS += -Wall
41 | LFLAGS += -specs=nosys.specs
42 | LFLAGS += -lgcc
43 | LFLAGS += -T$(LSCRIPT)
44 | LFLAGS += -lc
45 | LFLAGS += -lm
46 | LFLAGS += -lnosys
47 |
48 |
49 |
50 | CC = arm-none-eabi-gcc
51 | AS = arm-none-eabi-as
52 | LD = arm-none-eabi-ld
53 | OC = arm-none-eabi-objcopy
54 | OD = arm-none-eabi-objdump
55 | OS = arm-none-eabi-size
56 |
57 |
58 |
59 | AS_SRC = $(START_SCRIPT)
60 | C_SRC = $(INIT_SCRIPT) main.c delay.c spi.c ssd2828.c clk.c LH154Q01.c VS035ZSM.c
61 |
62 | OBJS = $(AS_SRC:%.s=$(BUILD_DIR)/%.o)
63 | OBJS += $(C_SRC:%.c=$(BUILD_DIR)/%.o)
64 |
65 | all: $(BUILD_DIR)/$(TARGET).bin
66 |
67 |
68 | $(BUILD_DIR)/$(TARGET).bin: $(BUILD_DIR)/$(TARGET).elf
69 | $(OC) -S -O binary $^ $@
70 | $(OS) $^
71 |
72 | $(BUILD_DIR)/$(TARGET).elf: $(OBJS)
73 | $(CC) $^ $(LFLAGS) -o $@
74 |
75 |
76 | $(BUILD_DIR)/%.o: $(SYSTEM_DIR)/%.s
77 | $(CC) -x assembler-with-cpp $(ASFLAGS) $^ -o $@
78 |
79 | $(BUILD_DIR)/%.o: $(SRC_DIR)/%.s
80 | $(CC) -x assembler-with-cpp $(ASFLAGS) $^ -o $@
81 |
82 | $(BUILD_DIR)/%.o: $(LIBS_DIR)/%.s
83 | $(CC) -x assembler-with-cpp $(ASFLAGS) $^ -o $@
84 |
85 | $(BUILD_DIR)/%.o: $(SYSTEM_DIR)/%.c
86 | $(CC) -c $(CFLAGS) $(INCLUDE) $< -o $@
87 |
88 | $(BUILD_DIR)/%.o: $(SRC_DIR)/%.c
89 | $(CC) -c $(CFLAGS) $(INCLUDE) $< -o $@
90 |
91 | $(BUILD_DIR)/%.o: $(LIBS_DIR)/%.c
92 | $(CC) -c $(CFLAGS) $(INCLUDE) $< -o $@
93 |
94 | clean: $(BUILD_DIR)/$(TARGET).bin
95 | -rm -fR $(BUILD_DIR)/*.o
96 |
97 | flash_cmsis_dap: $(BUILD_DIR)/$(TARGET).elf
98 | openocd -f interface/cmsis-dap.cfg -f board/atmel_sam3x_ek.cfg -c "program $< verify reset exit"
99 |
100 | flash: $(BUILD_DIR)/$(TARGET).elf
101 | openocd -f interface/stlink.cfg -f target/stm32f4x.cfg -c "program $(BUILD_DIR)/$(TARGET).elf verify reset exit"
--------------------------------------------------------------------------------
/software/libs/delay.c:
--------------------------------------------------------------------------------
1 | #include "delay.h"
2 |
3 |
4 | volatile uint64_t ms_ticks;
5 | volatile uint64_t us_ticks;
6 |
7 | void delay_ms(uint32_t delay_ms){
8 | ms_ticks = 0;
9 | while (delay_ms > ms_ticks){
10 | __NOP();
11 | }
12 | }
13 |
14 | void delay_us(uint32_t delay_us){
15 | us_ticks = 0;
16 | while (delay_us > us_ticks){
17 | __NOP();
18 | }
19 | }
20 |
21 | void delay_init(){
22 | SysTick->CTRL |= (1 << SysTick_CTRL_TICKINT_Pos) | (1 << SysTick_CTRL_CLKSOURCE_Pos);
23 | //set for 1us
24 | SysTick->LOAD = SystemCoreClock / 1000000;
25 | SysTick->VAL = 0x00000000;
26 |
27 |
28 | SysTick->CTRL |= (1 << SysTick_CTRL_ENABLE_Pos);
29 | NVIC_SetPriority(SysTick_IRQn, 0x25);
30 | NVIC_EnableIRQ(SysTick_IRQn);
31 | }
32 |
33 | void SysTick_Handler(){
34 | us_ticks++;
35 | if((us_ticks == 1000)){
36 | ms_ticks++;
37 |
38 | us_ticks = 0;
39 | }
40 |
41 | }
--------------------------------------------------------------------------------
/software/libs/delay.h:
--------------------------------------------------------------------------------
1 | #ifndef DELAY_H
2 | #define DELAY_H
3 |
4 | #include
5 | #include
6 | #include "../system/stm32f4xx.h"
7 |
8 |
9 |
10 | void delay_ms(uint32_t delay);
11 |
12 | void delay_us(uint32_t delay);
13 |
14 | void delay_init();
15 |
16 | #endif
--------------------------------------------------------------------------------
/software/libs/spi.c:
--------------------------------------------------------------------------------
1 | #include "spi.h"
2 |
3 |
4 |
5 | void spi_gpio_init(){
6 | //enable GPIOA
7 | RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;
8 | //set A4 A5 A6 A7 alternate function
9 | GPIOA->MODER |= (0x2<OTYPER &= ~GPIO_OTYPER_OT4 & ~GPIO_OTYPER_OT5 & ~GPIO_OTYPER_OT6 & ~GPIO_OTYPER_OT7;
12 | //set A4 A5 A6 A7 speed high
13 | GPIOA->OSPEEDR |= GPIO_OSPEEDER_OSPEEDR4_1 | GPIO_OSPEEDER_OSPEEDR5_1 | GPIO_OSPEEDER_OSPEEDR5_1 | GPIO_OSPEEDER_OSPEEDR6_1;
14 | //set A4 to AF0
15 | GPIOA->AFR[0] |= (5<AFR[0] |= (5<AFR[0] |= (5<AFR[0] |= (5<APB2ENR |= RCC_APB2ENR_SPI1EN;
28 | //set baudrate to fclk/64
29 | SPI1->CR1 |= (0b101 << SPI_CR1_BR_Pos) | SPI_CR1_MSTR;
30 | //set CPOL CPHA to 0
31 | SPI1->CR1 &= ~SPI_CR1_CPHA & ~SPI_CR1_CPOL;
32 | //set 8-bit data frame
33 | SPI1->CR1 &= ~SPI_CR1_DFF;
34 | //set MSB first
35 | SPI1->CR1 &= ~SPI_CR1_LSBFIRST;
36 | //enable the SS pin
37 | SPI1->CR2 |= SPI_CR2_SSOE;
38 |
39 | }
40 |
41 |
42 | void spi_exchange_8(uint8_t data_in, uint8_t *data_out){
43 | uint8_t tmp;
44 | SPI1->CR1 |= SPI_CR1_SPE ;
45 | //wait for SPI1 to be available
46 | while((SPI1->SR & SPI_SR_BSY_Msk) != 0){
47 | __NOP();
48 | }
49 | //write data on TX register
50 | SPI1->DR = data_in;
51 | //wait for TX buffer to get empty and RX to fill up
52 | while( ((SPI1->SR & SPI_SR_RXNE_Msk) == 0)){
53 | __NOP();
54 | }
55 | tmp = SPI1->DR;
56 | if(data_out != NULL){
57 | *data_out = tmp;
58 | }
59 | SPI1->CR1 &= ~SPI_CR1_SPE ;
60 | }
61 |
--------------------------------------------------------------------------------
/software/libs/spi.h:
--------------------------------------------------------------------------------
1 | #ifndef SPI_H
2 | #define SPI_H
3 |
4 | #include
5 | #include
6 | #include "../system/stm32f4xx.h"
7 |
8 |
9 | void spi_init();
10 |
11 | void spi_exchange_8(uint8_t data_in, uint8_t *data_out);
12 |
13 | #endif
--------------------------------------------------------------------------------
/software/src/DCS.h:
--------------------------------------------------------------------------------
1 | #ifndef DCS_H
2 | #define DCS_H
3 |
4 |
5 | #define DCS_enter_idle_mode 0x39
6 | #define DCS_enter_invert_mode 0x21
7 | #define DCS_enter_normal_mode 0x13
8 | #define DCS_enter_partial_mode 0x12
9 | #define DCS_enter_sleep_mode 0x10
10 | #define DCS_exit_idle_mode 0x38
11 | #define DCS_exit_invert_mode 0x20
12 | #define DCS_exit_sleep_mode 0x11
13 | #define DCS_get_address_mode 0x0B
14 | #define DCS_get_blue_channel 0x08
15 | #define DCS_get_diagnostic_result 0x0F
16 | #define DCS_get_display_mode 0x0D
17 | #define DCS_get_green_channel 0x07
18 | #define DCS_get_pixel_format 0x0C
19 | #define DCS_get_power_mode 0x0A
20 | #define DCS_get_red_channel 0x06
21 | #define DCS_get_scanline 0x45
22 | #define DCS_get_signal_mode 0x0E
23 | #define DCS_nop 0x00
24 | #define DCS_read_DDB_continue 0xA8
25 | #define DCS_read_DDB_start 0xA1
26 | #define DCS_read_memory_continue 0x3E
27 | #define DCS_read_memory_start 0x2E
28 | #define DCS_set_address_mode 0x36
29 | #define DCS_set_column_address 0x2A
30 | #define DCS_set_display_off 0x28
31 | #define DCS_set_display_on 0x29
32 | #define DCS_set_gamma_curve 0x26
33 | #define DCS_set_page_address 0x2B
34 | #define DCS_set_partial_columns 0x31
35 | #define DCS_set_partial_rows 0x30
36 | #define DCS_set_pixel_format 0x3A
37 | #define DCS_set_scroll_area 0x33
38 | #define DCS_set_scroll_start 0x37
39 | #define DCS_set_tear_off 0x34
40 | #define DCS_set_tear_on 0x35
41 | #define DCS_set_tear_scanline 0x44
42 | #define DCS_soft_reset 0x01
43 | #define DCS_write_LUT 0x2D
44 | #define DCS_write_memory_continue 0x3C
45 | #define DCS_write_memory_start 0x2C
46 |
47 |
48 | #endif
--------------------------------------------------------------------------------
/software/src/LH154Q01.c:
--------------------------------------------------------------------------------
1 | #include "LH154Q01.h"
2 |
3 | void LH154Q01_SSD2828_write_cfg(){
4 | //set lanes number to 1
5 | ssd2828_SPI_write_reg(LCFR_REG, 0x0000);
6 | //disable the PLL
7 | ssd2828_SPI_write_reg(PCR_REG, 0x0000);
8 | //set PLL freq to 336MHZ
9 | ssd2828_SPI_write_reg(PLCR_REG, 0x0000|(1U << PLCR_FR_POS) | (1U << PLCR_MS_POS) | (14U << PLCR_NS_POS));
10 | //enable the PLL
11 | ssd2828_SPI_write_reg(PCR_REG, 0x0000|(1U << PCR_PEN_POS));
12 | //wait 2 ms to stabilize
13 | delay_ms(2);
14 | //set divider for low speed to 8MHZ
15 | ssd2828_SPI_write_reg(CCR_REG, 0x0000|(4U << CCR_LPD_POS));
16 | //set MIPI packet format
17 | //enable EOT DCS HS
18 | //disable Read Video
19 | ssd2828_SPI_write_reg(CFGR_REG, 0x0000 | (1U << CFGR_EOT_POS) | (1U << CFGR_DCS_POS) | (1U << CFGR_HS_POS) );
20 | //set virtual channel 0x0000
21 | ssd2828_SPI_write_reg(VCR_REG, 0x0000);
22 | }
23 |
24 | void LH154Q01_init(){
25 | LH154Q01_init_GPIO();
26 |
27 | //enable 1V8
28 | LH154Q01_V_PORT->ODR |= (1U << LH154Q01_1V8);
29 | //pull rst high
30 | LH154Q01_C_PORT->ODR |= (1U << LH154Q01_RST);
31 | //wait 250ms
32 | delay_ms(300);
33 | //pull rst low
34 | LH154Q01_C_PORT->ODR &= ~(1U << LH154Q01_RST);
35 | //wait 10ms
36 | delay_ms(10);
37 | //pull rst high
38 | LH154Q01_C_PORT->ODR |= (1U << LH154Q01_RST);
39 | //wait 10ms
40 | delay_ms(10);
41 | //enable 3V0
42 | LH154Q01_V_PORT->ODR |= (1U << LH154Q01_3V0);
43 | //wait 10ms
44 | delay_ms(10);
45 | }
46 |
47 | void LH154Q01_start(){
48 | const uint8_t SLPOUT[]={1,0x11};
49 | const uint8_t DISPOFF[]={1,0x28};
50 | const uint8_t INV[]={1,0x21};
51 | const uint8_t DISPON[]={1,0x29};
52 | const uint8_t RGB[]={2,0x3A ,0x77};//24bit
53 | const uint8_t FLIP[]={2,0x36 ,0x08};//COLOR
54 |
55 |
56 |
57 | //SSD_WritePacket(SLPOUT);
58 | ssd2828_MIPI_write_DCS_short_np(0x11);
59 | delay_ms(100);
60 | //SSD_WritePacket(RGB);
61 | ssd2828_MIPI_write_DCS_short_p(0x3A, 0x77);
62 | //SSD_WritePacket(DISPON);
63 | ssd2828_MIPI_write_DCS_short_np(0x29);
64 |
65 | }
66 |
67 |
68 |
69 | void LH154Q01_init_GPIO(){
70 | //enable GPIOB
71 | RCC->AHB1ENR |= RCC_AHB1ENR_GPIOBEN;
72 |
73 | //set 1V8 3V0 as outputs
74 | LH154Q01_V_PORT->MODER |= (1U << (LH154Q01_1V8*2)) | (1U << (LH154Q01_3V0*2));
75 | //set to push pull
76 | LH154Q01_V_PORT->OTYPER &= ~(1U << (LH154Q01_1V8*2)) & ~(1U << (LH154Q01_3V0*2));
77 | //set speed to low
78 | LH154Q01_V_PORT->OSPEEDR &= ~(3U << (LH154Q01_1V8*2)) & ~(3U << (LH154Q01_3V0*2));
79 | //set LOW
80 | LH154Q01_V_PORT->ODR &= ~(1U << LH154Q01_1V8) & ~(1U << LH154Q01_3V0);
81 |
82 |
83 | //set RST BACKLIGHT as outputs
84 | LH154Q01_C_PORT->MODER |= (1U << (LH154Q01_BACKLIGHT*2)) | (1U << (LH154Q01_RST*2));
85 | //set to push pull
86 | LH154Q01_C_PORT->OTYPER &= ~(1U << (LH154Q01_BACKLIGHT*2)) & ~(1U << (LH154Q01_RST*2));
87 | //set speed to low
88 | LH154Q01_C_PORT->OSPEEDR &= ~(3U << (LH154Q01_BACKLIGHT*2)) & ~(3U << (LH154Q01_RST*2));
89 | //set LOW
90 | LH154Q01_C_PORT->ODR &= ~(1U << LH154Q01_BACKLIGHT) & ~(1U << LH154Q01_RST);
91 | }
92 |
93 |
94 | void LH154Q01_backlight(uint8_t i){
95 | if(i == 1){
96 | LH154Q01_V_PORT->ODR |= (1U << LH154Q01_BACKLIGHT);
97 | }else{
98 | LH154Q01_V_PORT->ODR &= ~(1U << LH154Q01_BACKLIGHT);
99 | }
100 | }
101 |
102 |
--------------------------------------------------------------------------------
/software/src/LH154Q01.h:
--------------------------------------------------------------------------------
1 | #ifndef LH154Q01_H
2 | #define LH154Q01_H
3 |
4 | #include
5 | #include
6 | #include "../system/stm32f4xx.h"
7 |
8 | #include "../libs/delay.h"
9 | #include "../libs/spi.h"
10 | #include "ssd2828.h"
11 |
12 | #include "DCS.h"
13 |
14 | #define LH154Q01_V_PORT GPIOB
15 | #define LH154Q01_3V0 12U
16 | #define LH154Q01_1V8 1U
17 |
18 | #define LH154Q01_C_PORT GPIOB
19 | #define LH154Q01_BACKLIGHT 13U
20 | #define LH154Q01_RST 14U
21 |
22 |
23 | void LH154Q01_SSD2828_write_cfg();
24 |
25 | void LH154Q01_init();
26 |
27 | void LH154Q01_start();
28 |
29 | void LH154Q01_init_GPIO();
30 |
31 | void LH154Q01_backlight(uint8_t i);
32 |
33 | #endif
--------------------------------------------------------------------------------
/software/src/VS035ZSM.h:
--------------------------------------------------------------------------------
1 | #ifndef VS035ZSM_H
2 | #define VS035ZSM_H
3 |
4 | #include
5 | #include
6 | #include "../system/stm32f4xx.h"
7 |
8 | #include "../libs/delay.h"
9 | #include "../libs/spi.h"
10 | #include "ssd2828.h"
11 |
12 | #include "DCS.h"
13 |
14 |
15 | #define VS035ZSM_V_PORT GPIOB
16 | #define VS035ZSM_BIAS 15U
17 | #define VS035ZSM_1V8 1U
18 |
19 | #define VS035ZSM_C_PORT GPIOA
20 | #define VS035ZSM_BACKLIGHT 8U
21 | #define VS035ZSM_RST 9U
22 |
23 | #define VS035ZSM_H_ACTIVE 1440U
24 | #define VS035ZSM_V_ACTIVE 1600U
25 |
26 | #define VS035ZSM_HSYNC 40U
27 | #define VS035ZSM_VSYNC 40U
28 | #define VS035ZSM_HFP 80U
29 | #define VS035ZSM_HBP 80U
30 | #define VS035ZSM_VFP 40U
31 | #define VS035ZSM_VBP 40U
32 |
33 |
34 | #define VS035ZSM_PARTIAL_HSYNC 10U
35 | #define VS035ZSM_PARTIAL_VSYNC 10U
36 | #define VS035ZSM_PARTIAL_HFP 80U
37 | #define VS035ZSM_PARTIAL_HBP 90U
38 | #define VS035ZSM_PARTIAL_VFP 30U
39 | #define VS035ZSM_PARTIAL_VBP 40U
40 | #define VS035ZSM_PARTIAL_HACT 1440U
41 | #define VS035ZSM_PARTIAL_VACT 864U
42 |
43 | #define VS035ZSM_PARTIAL_RES_X 1440U
44 | #define VS035ZSM_PARTIAL_RES_Y 864U
45 |
46 | //#define VS035ZSM_PARTIAL_RES_X (VS035ZSM_PARTIAL_HSYNC + VS035ZSM_PARTIAL_HFP + VS035ZSM_PARTIAL_HBP + VS035ZSM_PARTIAL_HACT)
47 | //#define VS035ZSM_PARTIAL_RES_Y (VS035ZSM_PARTIAL_VSYNC + VS035ZSM_PARTIAL_VFP + VS035ZSM_PARTIAL_VBP + VS035ZSM_PARTIAL_VACT)
48 |
49 | void VS035ZSM_SSD2828_write_cfg();
50 |
51 | void VS035ZSM_init();
52 |
53 | void VS035ZSM_start();
54 |
55 | void VS035ZSM_init_GPIO();
56 |
57 | void VS035ZSM_init_BACKLIGHT();
58 |
59 | void VS035ZSM_backlight(uint8_t i);
60 |
61 | void VS035ZSM_set_partial();
62 |
63 | #endif
64 |
--------------------------------------------------------------------------------
/software/src/clk.c:
--------------------------------------------------------------------------------
1 | #include "clk.h"
2 |
3 |
4 |
5 | uint32_t HAL_RCC_GetSysClockFreq(){
6 | uint32_t pllm = 0U, pllvco = 0U, pllp = 0U;
7 | uint32_t sysclockfreq = 0U;
8 |
9 | /* Get SYSCLK source -------------------------------------------------------*/
10 | switch (RCC->CFGR & RCC_CFGR_SWS)
11 | {
12 | case RCC_CFGR_SWS_HSI: /* HSI used as system clock source */
13 | {
14 | sysclockfreq = ((uint32_t)16000000);
15 | break;
16 | }
17 | case RCC_CFGR_SWS_HSE: /* HSE used as system clock source */
18 | {
19 | sysclockfreq = ((uint32_t)25000000);
20 | break;
21 | }
22 | case RCC_CFGR_SWS_PLL: /* PLL used as system clock source */
23 | {
24 | /* PLL_VCO = (HSE_VALUE or HSI_VALUE / PLLM) * PLLN
25 | SYSCLK = PLL_VCO / PLLP */
26 | pllm = RCC->PLLCFGR & RCC_PLLCFGR_PLLM;
27 | if(((uint32_t)(RCC->PLLCFGR & RCC_PLLCFGR_PLLSRC)) != RCC_PLLCFGR_PLLSRC_HSI)
28 | {
29 | /* HSE used as PLL clock source */
30 | pllvco = (uint32_t) ((((uint64_t) ((uint32_t)25000000) * ((uint64_t) ((RCC->PLLCFGR & RCC_PLLCFGR_PLLN) >> RCC_PLLCFGR_PLLN_Pos)))) / (uint64_t)pllm);
31 | }
32 | else
33 | {
34 | /* HSI used as PLL clock source */
35 | pllvco = (uint32_t) ((((uint64_t) ((uint32_t)16000000) * ((uint64_t) ((RCC->PLLCFGR & RCC_PLLCFGR_PLLN) >> RCC_PLLCFGR_PLLN_Pos)))) / (uint64_t)pllm);
36 | }
37 | pllp = ((((RCC->PLLCFGR & RCC_PLLCFGR_PLLP) >> RCC_PLLCFGR_PLLP_Pos) + 1U) *2U);
38 |
39 | sysclockfreq = pllvco/pllp;
40 | break;
41 | }
42 | default:
43 | {
44 | sysclockfreq = ((uint32_t)16000000);
45 | break;
46 | }
47 | }
48 | return sysclockfreq;
49 | }
50 |
51 | uint32_t SystemClock_Config(){
52 | uint32_t i, tmp;
53 | RCC->AHB1ENR |= RCC_APB1ENR_PWREN;
54 | PWR->CR |= PWR_CR_VOS_1;
55 |
56 | //set HSE oscillator ON
57 | RCC->CR |= RCC_CR_HSEON;
58 | //wait for HSE to get ready
59 | i = 0;
60 | while((RCC->CR & RCC_CR_HSERDY) == 0){
61 | i++;
62 | if(i == TIMEOUT){return 1;}
63 | }
64 |
65 | //disable main PLL
66 | RCC->CR &= ~RCC_CR_PLLON;
67 | //wait to get ready
68 | i = 0;
69 | while((RCC->CR & RCC_CR_PLLRDY) != 0){
70 | i++;
71 | if(i == TIMEOUT){return 1;}
72 | }
73 | //configure main PLL
74 | //set HSE as main PLL source
75 | RCC->PLLCFGR |= RCC_PLLCFGR_PLLSRC;
76 | RCC->PLLCFGR &= ~RCC_PLLCFGR_PLLM_Msk & ~RCC_PLLCFGR_PLLN_Msk & ~RCC_PLLCFGR_PLLP_Msk & ~RCC_PLLCFGR_PLLQ_Msk;
77 | //set main PLL M divider to 25
78 | RCC->PLLCFGR |= (25U << RCC_PLLCFGR_PLLM_Pos);
79 | //set main PLL N multiplier to 336
80 | RCC->PLLCFGR |= (336U << RCC_PLLCFGR_PLLN_Pos);
81 | //set main PLL P divider to 4
82 | RCC->PLLCFGR |= (1U << RCC_PLLCFGR_PLLP_Pos);
83 | //set main PLL Q divider to 4
84 | RCC->PLLCFGR |= (4U << RCC_PLLCFGR_PLLQ_Pos);
85 |
86 | //enable main PLL
87 | RCC->CR |= RCC_CR_PLLON;
88 | //wait for PLL to get ready
89 | i = 0;
90 | while((RCC->CR & RCC_CR_PLLRDY) == 0){
91 | i++;
92 | if(i == TIMEOUT){return 1;}
93 | }
94 |
95 |
96 | if((FLASH->ACR & FLASH_ACR_LATENCY) < 2U){
97 | tmp = FLASH->ACR;
98 | tmp &= ~FLASH_ACR_LATENCY_Msk;
99 | tmp |= (2U << FLASH_ACR_LATENCY_Pos);
100 | FLASH->ACR = tmp;
101 | if((FLASH->ACR & FLASH_ACR_LATENCY) != 2){
102 | return 1;
103 | }
104 | }
105 |
106 |
107 | //set APBx dividers to their maximum
108 | RCC->CFGR |= (0x1C00U << RCC_CFGR_PPRE1_Pos);
109 | RCC->CFGR |= (0x1C00U << RCC_CFGR_PPRE2_Pos);
110 | //set HCLK divider
111 | RCC->CFGR &= ~RCC_CFGR_HPRE_Msk;
112 |
113 | //check if PLL is ready
114 | if((RCC->CR & RCC_CR_PLLRDY) == 0){
115 | return 1;
116 | }
117 | //set PLL as source for SYSCLK
118 | RCC->CFGR |= (2U << RCC_CFGR_SW_Pos);
119 | //wait for the PLL source to apply
120 | i = 0;
121 | while(((RCC->CFGR & RCC_CFGR_SWS_Msk) >> RCC_CFGR_SWS_Pos) != 2U){
122 | i++;
123 | if(i == TIMEOUT){return 1;}
124 | }
125 | if((FLASH->ACR & FLASH_ACR_LATENCY) > 2U){
126 | tmp = FLASH->ACR;
127 | tmp &= ~FLASH_ACR_LATENCY_Msk;
128 | tmp |= (2U << FLASH_ACR_LATENCY_Pos);
129 | FLASH->ACR = tmp;
130 | if((FLASH->ACR & FLASH_ACR_LATENCY) != 2){
131 | return 1;
132 | }
133 | }
134 |
135 | //set PCLK1
136 | tmp = (uint32_t)RCC->CFGR;
137 | tmp &= ~RCC_CFGR_PPRE1_Msk;
138 | tmp |= (RCC_CFGR_PPRE1_DIV2 << RCC_CFGR_PPRE1_Pos);
139 | RCC->CFGR = tmp;
140 |
141 | //set PCLK2
142 | tmp = (uint32_t)RCC->CFGR;
143 | tmp &= ~RCC_CFGR_PPRE2_Msk;
144 | tmp |= (RCC_CFGR_PPRE1_DIV1 << RCC_CFGR_PPRE2_Pos);
145 | RCC->CFGR = tmp;
146 |
147 | SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE)>> RCC_CFGR_HPRE_Pos];
148 |
149 | return 0;
150 | }
151 |
--------------------------------------------------------------------------------
/software/src/clk.h:
--------------------------------------------------------------------------------
1 | #ifndef CLK_H
2 | #define CLK_H
3 |
4 | #include
5 | #include "../system/stm32f4xx.h"
6 |
7 | #define TIMEOUT 15000
8 |
9 | uint32_t SystemClock_Config();
10 |
11 | uint32_t HAL_RCC_GetSysClockFreq();
12 |
13 |
14 | #endif
--------------------------------------------------------------------------------
/software/src/main.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include "../system/stm32f4xx.h"
7 |
8 | #include "../libs/delay.h"
9 | #include "../libs/spi.h"
10 |
11 | #include "ssd2828.h"
12 | #include "LH154Q01.h"
13 | #include "VS035ZSM.h"
14 | #include "clk.h"
15 |
16 |
17 |
18 | void gpio_init(){
19 | //enable GPIOC and GPIOA GPIOB GPIOC
20 | RCC->AHB1ENR |= RCC_AHB1ENR_GPIOCEN | RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOBEN;
21 | //set C13 to output
22 | GPIOC->MODER |= (0x1<OTYPER &= ~GPIO_OTYPER_OT13;
25 | //set C13 speed to low
26 | GPIOC->OSPEEDR &= ~GPIO_OSPEEDER_OSPEEDR13;
27 | //set C13 to LOW
28 | GPIOC->ODR |= GPIO_ODR_OD13;
29 |
30 | }
31 |
32 |
33 | void fill_line(uint8_t r, uint8_t g, uint8_t b){
34 | uint32_t i;
35 | ssd2828_SPI_write_reg(PSCR1_REG, ((240*3)+1)&0x0FFF);
36 | ssd2828_SPI_write_cmd(PDR_REG);//0xBF
37 | ssd2828_SPI_write_data(0x3C);
38 | for(i = 0; i < 240; i++){
39 | ssd2828_SPI_write_data(r);
40 | ssd2828_SPI_write_data(g);
41 | ssd2828_SPI_write_data(b);
42 | }
43 | }
44 |
45 | void fill_screen(uint8_t r, uint8_t g, uint8_t b){
46 | uint32_t i;
47 | for(i = 0; i < 240; i++){
48 | fill_line(r,g,b);
49 | }
50 | }
51 |
52 | int main(){
53 | uint16_t i,j = 0;
54 | SystemClock_Config();
55 | gpio_init();
56 | delay_init();
57 | spi_init();
58 | delay_ms(550);
59 |
60 |
61 |
62 | ssd2828_init();
63 | //LH154Q01_init();
64 | //LH154Q01_SSD2828_write_cfg();
65 | //LH154Q01_start();
66 | //LH154Q01_backlight(1);
67 | VS035ZSM_init();
68 | VS035ZSM_init_BACKLIGHT();
69 | VS035ZSM_SSD2828_write_cfg();
70 | ssd2828_set_LP();
71 | VS035ZSM_start();
72 |
73 | VS035ZSM_backlight(1);
74 | ssd2828_set_HS();
75 | ssd2828_BIST_ON();
76 | //VS035ZSM_set_partial();
77 | ssd2828_VID_ON();
78 | GPIOC->ODR ^= GPIO_ODR_OD13;
79 |
80 | while(1){
81 | i = ssd2828_get_id();
82 | if(i == 0x2828){
83 | GPIOC->ODR ^= GPIO_ODR_OD13;
84 | }
85 |
86 |
87 | delay_ms(100);
88 |
89 | }
90 | return 0;
91 | }
--------------------------------------------------------------------------------
/software/src/ssd2828.c:
--------------------------------------------------------------------------------
1 | #include "ssd2828.h"
2 |
3 |
4 | void ssd2828_SHUT_1(){
5 | SSD2828_C_PORT->ODR |= SSD2828_SHUT;
6 | }
7 |
8 | void ssd2828_SHUT_0(){
9 | SSD2828_C_PORT->ODR &= ~SSD2828_SHUT;
10 | }
11 |
12 | void ssd2828_gpio_init(){
13 | //enable GPIOA GPIOB
14 | RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOBEN;
15 |
16 | //set SHUT RST DC to output
17 | SSD2828_C_PORT->MODER |= (0x1 << (SSD2828_SHUT*2)) | (0x1 << (SSD2828_DC*2)) | (0x1 << (SSD2828_RST*2));
18 | //set SHUT RST DC to push pull
19 | SSD2828_C_PORT->OTYPER &= ~(0x1 << (SSD2828_SHUT*2)) & ~(0x1 << (SSD2828_DC*2)) & ~(0x1 << (SSD2828_RST*2));
20 | //set SHUT RST DC speed to low
21 | SSD2828_C_PORT->OSPEEDR &= ~(0x3U << (SSD2828_SHUT*2)) & ~(0x3U << (SSD2828_DC*2)) & ~(0x3U << (SSD2828_RST*2));
22 | //set SHUT DC to LOW
23 | SSD2828_C_PORT->ODR &= ~(1 << SSD2828_SHUT) & ~(1 << SSD2828_DC);
24 | SSD2828_C_PORT->ODR |= (1 << SSD2828_RST);
25 |
26 | //set 1V2 3V3 as outputs
27 | SSD2828_V_PORT->MODER |= (1U << (SSD2828_1V2*2)) | (1U << (SSD2828_3V3*2));
28 | //set to push pull
29 | SSD2828_V_PORT->OTYPER &= ~(1U << (SSD2828_1V2*2)) & ~(1U << (SSD2828_3V3*2));
30 | //set speed to low
31 | SSD2828_V_PORT->OSPEEDR &= ~(3U << (SSD2828_1V2*2)) & ~(3U << (SSD2828_3V3*2));
32 | //set LOW
33 | SSD2828_V_PORT->ODR &= ~(1U << SSD2828_1V2) & ~(1U << SSD2828_3V3);
34 |
35 | }
36 |
37 | void ssd2828_init(){
38 | ssd2828_gpio_init();
39 | ssd2828_SHUT_1();
40 |
41 | //enable 1V2
42 | SSD2828_V_PORT->ODR |= (1 << SSD2828_1V2);
43 | //wait 10ms
44 | delay_ms(10);
45 | //enable 3V3
46 | SSD2828_V_PORT->ODR |= (1 << SSD2828_3V3);
47 | //wait 20ms
48 | delay_ms(20);
49 |
50 | SSD2828_C_PORT->ODR |= (1 << SSD2828_RST);
51 | delay_ms(100);
52 | //hold rst low for 20ms
53 | SSD2828_C_PORT->ODR &= ~(1 << SSD2828_RST);
54 | delay_ms(205);
55 | SSD2828_C_PORT->ODR |= (1 << SSD2828_RST);
56 | delay_ms(200);
57 | }
58 |
59 | void ssd2828_SPI_write_reg(uint8_t reg, uint16_t val){
60 | uint8_t input[3] = {reg, (uint8_t)(val & 0xFF), (uint8_t)(val >> 8U)};
61 |
62 | SSD2828_C_PORT->ODR &= ~(1 << SSD2828_DC);
63 | spi_exchange_8(input[0], NULL);
64 | SSD2828_C_PORT->ODR |= (1 << SSD2828_DC);
65 | spi_exchange_8(input[1], NULL);
66 | spi_exchange_8(input[2], NULL);
67 | }
68 |
69 | void ssd2828_SPI_read_reg(uint8_t reg, uint16_t *val){
70 | uint8_t input[4] = {reg, 0xFA, 0x00, 0x00};
71 | uint8_t output[2];
72 |
73 | SSD2828_C_PORT->ODR &= ~(1 << SSD2828_DC);
74 | spi_exchange_8(input[0], NULL);
75 | spi_exchange_8(input[1], NULL);
76 | SSD2828_C_PORT->ODR |= (1 << SSD2828_DC);
77 | spi_exchange_8(input[2], &output[0]);
78 | spi_exchange_8(input[3], &output[1]);
79 |
80 | *val = (uint16_t)output[0] + (uint16_t)(output[1] << 8U);
81 | }
82 |
83 | uint16_t ssd2828_get_id(){
84 | uint16_t val;
85 | ssd2828_SPI_read_reg(DIR_REG, &val);
86 | return val;
87 | }
88 |
89 | void ssd2828_SPI_write_cmd(uint8_t data){
90 | SSD2828_C_PORT->ODR &= ~(1 << SSD2828_DC);
91 | spi_exchange_8(data, NULL);
92 | SSD2828_C_PORT->ODR |= (1 << SSD2828_DC);
93 | }
94 |
95 | void ssd2828_SPI_write_data(uint8_t data){
96 | spi_exchange_8(data, NULL);
97 | }
98 |
99 | void ssd2828_SPI_read_data(uint8_t *data){
100 | spi_exchange_8(0x00, data);
101 | }
102 |
103 | void ssd2828_MIPI_write_DCS_short_np(uint8_t cmd){
104 | uint16_t tmp = 0;
105 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
106 | tmp |= (1 << CFGR_DCS_POS);
107 | tmp &= ~(1 << CFGR_LPE_POS);
108 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
109 |
110 | //set payload length
111 | ssd2828_SPI_write_reg(PSCR1_REG, 1);
112 | ssd2828_SPI_write_reg(PSCR2_REG, 0x0000);
113 | ssd2828_SPI_write_reg(PSCR3_REG, 1);
114 | //write on PDR
115 | ssd2828_SPI_write_cmd(PDR_REG);
116 | //write reg
117 | ssd2828_SPI_write_data(cmd);
118 | }
119 |
120 | void ssd2828_MIPI_write_DCS_short_p(uint8_t cmd, uint8_t param){
121 | uint16_t tmp = 0;
122 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
123 | tmp |= (1 << CFGR_DCS_POS);
124 | tmp &= ~(1 << CFGR_LPE_POS);
125 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
126 |
127 | //set payload length
128 | ssd2828_SPI_write_reg(PSCR1_REG, 2);
129 | ssd2828_SPI_write_reg(PSCR2_REG, 0x0000);
130 | ssd2828_SPI_write_reg(PSCR3_REG, 2);
131 | //write on PDR
132 | ssd2828_SPI_write_cmd(PDR_REG);
133 | //write reg
134 | ssd2828_SPI_write_data(cmd);
135 | ssd2828_SPI_write_data(param);
136 | }
137 |
138 | void ssd2828_MIPI_write_DCS_long_p(uint8_t cmd, uint8_t *params, uint32_t len){
139 | uint16_t tmp = 0;
140 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
141 | tmp |= (1 << CFGR_DCS_POS) | (1 << CFGR_LPE_POS);
142 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
143 |
144 | //set payload length
145 | ssd2828_SPI_write_reg(PSCR1_REG, len+1);
146 | ssd2828_SPI_write_reg(PSCR2_REG, (len+1) >> 16);
147 | ssd2828_SPI_write_reg(PSCR3_REG, len+1);
148 | //write on PDR
149 | ssd2828_SPI_write_cmd(PDR_REG);
150 | //write reg
151 | ssd2828_SPI_write_data(cmd);
152 | for(uint32_t i = 0; i < len; i++){
153 | ssd2828_SPI_write_data(params[i]);
154 | }
155 | }
156 |
157 | void ssd2828_MIPI_write_generic_short_np(uint8_t cmd){
158 | uint16_t tmp = 0;
159 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
160 | tmp &= ~(1 << CFGR_LPE_POS) & ~(1 << CFGR_DCS_POS);
161 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
162 |
163 | //set payload length
164 | ssd2828_SPI_write_reg(PSCR1_REG, 1);
165 | ssd2828_SPI_write_reg(PSCR2_REG, 0x0000);
166 | ssd2828_SPI_write_reg(PSCR3_REG, 1);
167 | //write on PDR
168 | ssd2828_SPI_write_cmd(PDR_REG);
169 | //write reg
170 | ssd2828_SPI_write_data(cmd);
171 | }
172 |
173 | void ssd2828_MIPI_write_generic_short_p(uint8_t cmd, uint8_t param){
174 | uint16_t tmp = 0;
175 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
176 | tmp &= ~(1 << CFGR_LPE_POS) & ~(1 << CFGR_DCS_POS);
177 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
178 |
179 | //set payload length
180 | ssd2828_SPI_write_reg(PSCR1_REG, 2);
181 | ssd2828_SPI_write_reg(PSCR2_REG, 0x0000);
182 | ssd2828_SPI_write_reg(PSCR3_REG, 2);
183 | //write on PDR
184 | ssd2828_SPI_write_cmd(PDR_REG);
185 | //write reg
186 | ssd2828_SPI_write_data(cmd);
187 | ssd2828_SPI_write_data(param);
188 | }
189 |
190 | void ssd2828_MIPI_write_generic_long_p(uint8_t cmd, uint8_t *params, uint32_t len){
191 | uint16_t tmp = 0;
192 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
193 | tmp |= (1 << CFGR_LPE_POS);
194 | tmp &= ~(1 << CFGR_DCS_POS);
195 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
196 |
197 | //set payload length
198 | ssd2828_SPI_write_reg(PSCR1_REG, len+1);
199 | ssd2828_SPI_write_reg(PSCR2_REG, (len+1) >> 16);
200 | ssd2828_SPI_write_reg(PSCR3_REG, len+1);
201 | //write on PDR
202 | ssd2828_SPI_write_cmd(PDR_REG);
203 | //write reg
204 | ssd2828_SPI_write_data(cmd);
205 | for(uint32_t i = 0; i < len; i++){
206 | ssd2828_SPI_write_data(params[i]);
207 | }
208 | }
209 |
210 | void ssd2828_set_HS(){
211 | uint16_t tmp = 0;
212 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
213 | tmp |= (1 << CFGR_HS_POS);
214 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
215 | }
216 |
217 | void ssd2828_set_LP(){
218 | uint16_t tmp = 0;
219 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
220 | tmp &= ~(1 << CFGR_HS_POS);
221 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
222 | }
223 |
224 |
225 |
226 | void ssd2828_BIST_ON(){
227 | uint16_t tmp;
228 | ssd2828_SPI_read_reg(TMR_REG, &tmp);
229 | tmp |= (1 << TMR_VBIST_EN_POS) | (1 << TMR_VBIST_SRT_POS);
230 | ssd2828_SPI_write_reg(TMR_REG, tmp);
231 | }
232 |
233 | void ssd2828_BIST_OFF(){
234 | uint16_t tmp;
235 | ssd2828_SPI_read_reg(TMR_REG, &tmp);
236 | tmp &= ~(1 << TMR_VBIST_EN_POS) & ~(1 << TMR_VBIST_SRT_POS);
237 | ssd2828_SPI_write_reg(TMR_REG, tmp);
238 | }
239 |
240 | void ssd2828_VID_ON(){
241 | uint16_t tmp;
242 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
243 | tmp |= (1U << CFGR_VEN_POS);
244 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
245 | }
246 |
247 | void ssd2828_VID_OFF(){
248 | uint16_t tmp;
249 | ssd2828_SPI_read_reg(CFGR_REG, &tmp);
250 | tmp &= ~(1U << CFGR_VEN_POS);
251 | ssd2828_SPI_write_reg(CFGR_REG, tmp);
252 | }
--------------------------------------------------------------------------------
/software/system/STM32F401CCUX_FLASH.ld:
--------------------------------------------------------------------------------
1 | /*
2 | ******************************************************************************
3 | **
4 | ** @file : LinkerScript.ld
5 | **
6 | ** @author : Auto-generated by STM32CubeIDE
7 | **
8 | ** @brief : Linker script for STM32F401CCUx Device from STM32F4 series
9 | ** 256Kbytes ROM
10 | ** 64Kbytes RAM
11 | **
12 | ** Set heap size, stack size and stack location according
13 | ** to application requirements.
14 | **
15 | ** Set memory bank area and size if external memory is used
16 | **
17 | ** Target : STMicroelectronics STM32
18 | **
19 | ** Distribution: The file is distributed as is, without any warranty
20 | ** of any kind.
21 | **
22 | ******************************************************************************
23 | ** @attention
24 | **
25 | ** Copyright (c) 2022 STMicroelectronics.
26 | ** All rights reserved.
27 | **
28 | ** This software is licensed under terms that can be found in the LICENSE file
29 | ** in the root directory of this software component.
30 | ** If no LICENSE file comes with this software, it is provided AS-IS.
31 | **
32 | ******************************************************************************
33 | */
34 |
35 | /* Entry Point */
36 | ENTRY(Reset_Handler)
37 |
38 | /* Highest address of the user mode stack */
39 | _estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */
40 |
41 | _Min_Heap_Size = 0x200; /* required amount of heap */
42 | _Min_Stack_Size = 0x400; /* required amount of stack */
43 |
44 | /* Memories definition */
45 | MEMORY
46 | {
47 | RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 64K
48 | ROM (rx) : ORIGIN = 0x08000000, LENGTH = 256K
49 | }
50 |
51 | /* Sections */
52 | SECTIONS
53 | {
54 | /* The startup code into "ROM" Rom type memory */
55 | .isr_vector :
56 | {
57 | . = ALIGN(4);
58 | KEEP(*(.isr_vector)) /* Startup code */
59 | . = ALIGN(4);
60 | } >ROM
61 |
62 | /* The program code and other data into "ROM" Rom type memory */
63 | .text :
64 | {
65 | . = ALIGN(4);
66 | *(.text) /* .text sections (code) */
67 | *(.text*) /* .text* sections (code) */
68 | *(.glue_7) /* glue arm to thumb code */
69 | *(.glue_7t) /* glue thumb to arm code */
70 | *(.eh_frame)
71 |
72 | KEEP (*(.init))
73 | KEEP (*(.fini))
74 |
75 | . = ALIGN(4);
76 | _etext = .; /* define a global symbols at end of code */
77 | } >ROM
78 |
79 | /* Constant data into "ROM" Rom type memory */
80 | .rodata :
81 | {
82 | . = ALIGN(4);
83 | *(.rodata) /* .rodata sections (constants, strings, etc.) */
84 | *(.rodata*) /* .rodata* sections (constants, strings, etc.) */
85 | . = ALIGN(4);
86 | } >ROM
87 |
88 | .ARM.extab : {
89 | . = ALIGN(4);
90 | *(.ARM.extab* .gnu.linkonce.armextab.*)
91 | . = ALIGN(4);
92 | } >ROM
93 |
94 | .ARM : {
95 | . = ALIGN(4);
96 | __exidx_start = .;
97 | *(.ARM.exidx*)
98 | __exidx_end = .;
99 | . = ALIGN(4);
100 | } >ROM
101 |
102 | .preinit_array :
103 | {
104 | . = ALIGN(4);
105 | PROVIDE_HIDDEN (__preinit_array_start = .);
106 | KEEP (*(.preinit_array*))
107 | PROVIDE_HIDDEN (__preinit_array_end = .);
108 | . = ALIGN(4);
109 | } >ROM
110 |
111 | .init_array :
112 | {
113 | . = ALIGN(4);
114 | PROVIDE_HIDDEN (__init_array_start = .);
115 | KEEP (*(SORT(.init_array.*)))
116 | KEEP (*(.init_array*))
117 | PROVIDE_HIDDEN (__init_array_end = .);
118 | . = ALIGN(4);
119 | } >ROM
120 |
121 | .fini_array :
122 | {
123 | . = ALIGN(4);
124 | PROVIDE_HIDDEN (__fini_array_start = .);
125 | KEEP (*(SORT(.fini_array.*)))
126 | KEEP (*(.fini_array*))
127 | PROVIDE_HIDDEN (__fini_array_end = .);
128 | . = ALIGN(4);
129 | } >ROM
130 |
131 | /* Used by the startup to initialize data */
132 | _sidata = LOADADDR(.data);
133 |
134 | /* Initialized data sections into "RAM" Ram type memory */
135 | .data :
136 | {
137 | . = ALIGN(4);
138 | _sdata = .; /* create a global symbol at data start */
139 | *(.data) /* .data sections */
140 | *(.data*) /* .data* sections */
141 | *(.RamFunc) /* .RamFunc sections */
142 | *(.RamFunc*) /* .RamFunc* sections */
143 |
144 | . = ALIGN(4);
145 | _edata = .; /* define a global symbol at data end */
146 |
147 | } >RAM AT> ROM
148 |
149 | /* Uninitialized data section into "RAM" Ram type memory */
150 | . = ALIGN(4);
151 | .bss :
152 | {
153 | /* This is used by the startup in order to initialize the .bss section */
154 | _sbss = .; /* define a global symbol at bss start */
155 | __bss_start__ = _sbss;
156 | *(.bss)
157 | *(.bss*)
158 | *(COMMON)
159 |
160 | . = ALIGN(4);
161 | _ebss = .; /* define a global symbol at bss end */
162 | __bss_end__ = _ebss;
163 | } >RAM
164 |
165 | /* User_heap_stack section, used to check that there is enough "RAM" Ram type memory left */
166 | ._user_heap_stack :
167 | {
168 | . = ALIGN(8);
169 | PROVIDE ( end = . );
170 | PROVIDE ( _end = . );
171 | . = . + _Min_Heap_Size;
172 | . = . + _Min_Stack_Size;
173 | . = ALIGN(8);
174 | } >RAM
175 |
176 | /* Remove information from the compiler libraries */
177 | /DISCARD/ :
178 | {
179 | libc.a ( * )
180 | libm.a ( * )
181 | libgcc.a ( * )
182 | }
183 |
184 | .ARM.attributes 0 : { *(.ARM.attributes) }
185 | }
186 |
--------------------------------------------------------------------------------
/software/system/cmsis_compiler.h:
--------------------------------------------------------------------------------
1 | /**************************************************************************//**
2 | * @file cmsis_compiler.h
3 | * @brief CMSIS compiler generic header file
4 | * @version V5.1.0
5 | * @date 09. October 2018
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2009-2018 Arm Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #ifndef __CMSIS_COMPILER_H
26 | #define __CMSIS_COMPILER_H
27 |
28 | #include
29 |
30 | /*
31 | * Arm Compiler 4/5
32 | */
33 | #if defined ( __CC_ARM )
34 | #include "cmsis_armcc.h"
35 |
36 |
37 | /*
38 | * Arm Compiler 6.6 LTM (armclang)
39 | */
40 | #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) && (__ARMCC_VERSION < 6100100)
41 | #include "cmsis_armclang_ltm.h"
42 |
43 | /*
44 | * Arm Compiler above 6.10.1 (armclang)
45 | */
46 | #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6100100)
47 | #include "cmsis_armclang.h"
48 |
49 |
50 | /*
51 | * GNU Compiler
52 | */
53 | #elif defined ( __GNUC__ )
54 | #include "cmsis_gcc.h"
55 |
56 |
57 | /*
58 | * IAR Compiler
59 | */
60 | #elif defined ( __ICCARM__ )
61 | #include
62 |
63 |
64 | /*
65 | * TI Arm Compiler
66 | */
67 | #elif defined ( __TI_ARM__ )
68 | #include
69 |
70 | #ifndef __ASM
71 | #define __ASM __asm
72 | #endif
73 | #ifndef __INLINE
74 | #define __INLINE inline
75 | #endif
76 | #ifndef __STATIC_INLINE
77 | #define __STATIC_INLINE static inline
78 | #endif
79 | #ifndef __STATIC_FORCEINLINE
80 | #define __STATIC_FORCEINLINE __STATIC_INLINE
81 | #endif
82 | #ifndef __NO_RETURN
83 | #define __NO_RETURN __attribute__((noreturn))
84 | #endif
85 | #ifndef __USED
86 | #define __USED __attribute__((used))
87 | #endif
88 | #ifndef __WEAK
89 | #define __WEAK __attribute__((weak))
90 | #endif
91 | #ifndef __PACKED
92 | #define __PACKED __attribute__((packed))
93 | #endif
94 | #ifndef __PACKED_STRUCT
95 | #define __PACKED_STRUCT struct __attribute__((packed))
96 | #endif
97 | #ifndef __PACKED_UNION
98 | #define __PACKED_UNION union __attribute__((packed))
99 | #endif
100 | #ifndef __UNALIGNED_UINT32 /* deprecated */
101 | struct __attribute__((packed)) T_UINT32 { uint32_t v; };
102 | #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
103 | #endif
104 | #ifndef __UNALIGNED_UINT16_WRITE
105 | __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
106 | #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void*)(addr))->v) = (val))
107 | #endif
108 | #ifndef __UNALIGNED_UINT16_READ
109 | __PACKED_STRUCT T_UINT16_READ { uint16_t v; };
110 | #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v)
111 | #endif
112 | #ifndef __UNALIGNED_UINT32_WRITE
113 | __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
114 | #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
115 | #endif
116 | #ifndef __UNALIGNED_UINT32_READ
117 | __PACKED_STRUCT T_UINT32_READ { uint32_t v; };
118 | #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v)
119 | #endif
120 | #ifndef __ALIGNED
121 | #define __ALIGNED(x) __attribute__((aligned(x)))
122 | #endif
123 | #ifndef __RESTRICT
124 | #define __RESTRICT __restrict
125 | #endif
126 | #ifndef __COMPILER_BARRIER
127 | #warning No compiler specific solution for __COMPILER_BARRIER. __COMPILER_BARRIER is ignored.
128 | #define __COMPILER_BARRIER() (void)0
129 | #endif
130 |
131 |
132 | /*
133 | * TASKING Compiler
134 | */
135 | #elif defined ( __TASKING__ )
136 | /*
137 | * The CMSIS functions have been implemented as intrinsics in the compiler.
138 | * Please use "carm -?i" to get an up to date list of all intrinsics,
139 | * Including the CMSIS ones.
140 | */
141 |
142 | #ifndef __ASM
143 | #define __ASM __asm
144 | #endif
145 | #ifndef __INLINE
146 | #define __INLINE inline
147 | #endif
148 | #ifndef __STATIC_INLINE
149 | #define __STATIC_INLINE static inline
150 | #endif
151 | #ifndef __STATIC_FORCEINLINE
152 | #define __STATIC_FORCEINLINE __STATIC_INLINE
153 | #endif
154 | #ifndef __NO_RETURN
155 | #define __NO_RETURN __attribute__((noreturn))
156 | #endif
157 | #ifndef __USED
158 | #define __USED __attribute__((used))
159 | #endif
160 | #ifndef __WEAK
161 | #define __WEAK __attribute__((weak))
162 | #endif
163 | #ifndef __PACKED
164 | #define __PACKED __packed__
165 | #endif
166 | #ifndef __PACKED_STRUCT
167 | #define __PACKED_STRUCT struct __packed__
168 | #endif
169 | #ifndef __PACKED_UNION
170 | #define __PACKED_UNION union __packed__
171 | #endif
172 | #ifndef __UNALIGNED_UINT32 /* deprecated */
173 | struct __packed__ T_UINT32 { uint32_t v; };
174 | #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
175 | #endif
176 | #ifndef __UNALIGNED_UINT16_WRITE
177 | __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
178 | #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val))
179 | #endif
180 | #ifndef __UNALIGNED_UINT16_READ
181 | __PACKED_STRUCT T_UINT16_READ { uint16_t v; };
182 | #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v)
183 | #endif
184 | #ifndef __UNALIGNED_UINT32_WRITE
185 | __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
186 | #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
187 | #endif
188 | #ifndef __UNALIGNED_UINT32_READ
189 | __PACKED_STRUCT T_UINT32_READ { uint32_t v; };
190 | #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v)
191 | #endif
192 | #ifndef __ALIGNED
193 | #define __ALIGNED(x) __align(x)
194 | #endif
195 | #ifndef __RESTRICT
196 | #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored.
197 | #define __RESTRICT
198 | #endif
199 | #ifndef __COMPILER_BARRIER
200 | #warning No compiler specific solution for __COMPILER_BARRIER. __COMPILER_BARRIER is ignored.
201 | #define __COMPILER_BARRIER() (void)0
202 | #endif
203 |
204 |
205 | /*
206 | * COSMIC Compiler
207 | */
208 | #elif defined ( __CSMC__ )
209 | #include
210 |
211 | #ifndef __ASM
212 | #define __ASM _asm
213 | #endif
214 | #ifndef __INLINE
215 | #define __INLINE inline
216 | #endif
217 | #ifndef __STATIC_INLINE
218 | #define __STATIC_INLINE static inline
219 | #endif
220 | #ifndef __STATIC_FORCEINLINE
221 | #define __STATIC_FORCEINLINE __STATIC_INLINE
222 | #endif
223 | #ifndef __NO_RETURN
224 | // NO RETURN is automatically detected hence no warning here
225 | #define __NO_RETURN
226 | #endif
227 | #ifndef __USED
228 | #warning No compiler specific solution for __USED. __USED is ignored.
229 | #define __USED
230 | #endif
231 | #ifndef __WEAK
232 | #define __WEAK __weak
233 | #endif
234 | #ifndef __PACKED
235 | #define __PACKED @packed
236 | #endif
237 | #ifndef __PACKED_STRUCT
238 | #define __PACKED_STRUCT @packed struct
239 | #endif
240 | #ifndef __PACKED_UNION
241 | #define __PACKED_UNION @packed union
242 | #endif
243 | #ifndef __UNALIGNED_UINT32 /* deprecated */
244 | @packed struct T_UINT32 { uint32_t v; };
245 | #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
246 | #endif
247 | #ifndef __UNALIGNED_UINT16_WRITE
248 | __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
249 | #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val))
250 | #endif
251 | #ifndef __UNALIGNED_UINT16_READ
252 | __PACKED_STRUCT T_UINT16_READ { uint16_t v; };
253 | #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v)
254 | #endif
255 | #ifndef __UNALIGNED_UINT32_WRITE
256 | __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
257 | #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
258 | #endif
259 | #ifndef __UNALIGNED_UINT32_READ
260 | __PACKED_STRUCT T_UINT32_READ { uint32_t v; };
261 | #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v)
262 | #endif
263 | #ifndef __ALIGNED
264 | #warning No compiler specific solution for __ALIGNED. __ALIGNED is ignored.
265 | #define __ALIGNED(x)
266 | #endif
267 | #ifndef __RESTRICT
268 | #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored.
269 | #define __RESTRICT
270 | #endif
271 | #ifndef __COMPILER_BARRIER
272 | #warning No compiler specific solution for __COMPILER_BARRIER. __COMPILER_BARRIER is ignored.
273 | #define __COMPILER_BARRIER() (void)0
274 | #endif
275 |
276 |
277 | #else
278 | #error Unknown compiler.
279 | #endif
280 |
281 |
282 | #endif /* __CMSIS_COMPILER_H */
283 |
284 |
--------------------------------------------------------------------------------
/software/system/cmsis_version.h:
--------------------------------------------------------------------------------
1 | /**************************************************************************//**
2 | * @file cmsis_version.h
3 | * @brief CMSIS Core(M) Version definitions
4 | * @version V5.0.5
5 | * @date 02. February 2022
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2009-2022 ARM Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef __CMSIS_VERSION_H
32 | #define __CMSIS_VERSION_H
33 |
34 | /* CMSIS Version definitions */
35 | #define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */
36 | #define __CM_CMSIS_VERSION_SUB ( 6U) /*!< [15:0] CMSIS Core(M) sub version */
37 | #define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \
38 | __CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */
39 | #endif
40 |
--------------------------------------------------------------------------------
/software/system/mpu_armv7.h:
--------------------------------------------------------------------------------
1 | /******************************************************************************
2 | * @file mpu_armv7.h
3 | * @brief CMSIS MPU API for Armv7-M MPU
4 | * @version V5.1.2
5 | * @date 25. May 2020
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2017-2020 Arm Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef ARM_MPU_ARMV7_H
32 | #define ARM_MPU_ARMV7_H
33 |
34 | #define ARM_MPU_REGION_SIZE_32B ((uint8_t)0x04U) ///!< MPU Region Size 32 Bytes
35 | #define ARM_MPU_REGION_SIZE_64B ((uint8_t)0x05U) ///!< MPU Region Size 64 Bytes
36 | #define ARM_MPU_REGION_SIZE_128B ((uint8_t)0x06U) ///!< MPU Region Size 128 Bytes
37 | #define ARM_MPU_REGION_SIZE_256B ((uint8_t)0x07U) ///!< MPU Region Size 256 Bytes
38 | #define ARM_MPU_REGION_SIZE_512B ((uint8_t)0x08U) ///!< MPU Region Size 512 Bytes
39 | #define ARM_MPU_REGION_SIZE_1KB ((uint8_t)0x09U) ///!< MPU Region Size 1 KByte
40 | #define ARM_MPU_REGION_SIZE_2KB ((uint8_t)0x0AU) ///!< MPU Region Size 2 KBytes
41 | #define ARM_MPU_REGION_SIZE_4KB ((uint8_t)0x0BU) ///!< MPU Region Size 4 KBytes
42 | #define ARM_MPU_REGION_SIZE_8KB ((uint8_t)0x0CU) ///!< MPU Region Size 8 KBytes
43 | #define ARM_MPU_REGION_SIZE_16KB ((uint8_t)0x0DU) ///!< MPU Region Size 16 KBytes
44 | #define ARM_MPU_REGION_SIZE_32KB ((uint8_t)0x0EU) ///!< MPU Region Size 32 KBytes
45 | #define ARM_MPU_REGION_SIZE_64KB ((uint8_t)0x0FU) ///!< MPU Region Size 64 KBytes
46 | #define ARM_MPU_REGION_SIZE_128KB ((uint8_t)0x10U) ///!< MPU Region Size 128 KBytes
47 | #define ARM_MPU_REGION_SIZE_256KB ((uint8_t)0x11U) ///!< MPU Region Size 256 KBytes
48 | #define ARM_MPU_REGION_SIZE_512KB ((uint8_t)0x12U) ///!< MPU Region Size 512 KBytes
49 | #define ARM_MPU_REGION_SIZE_1MB ((uint8_t)0x13U) ///!< MPU Region Size 1 MByte
50 | #define ARM_MPU_REGION_SIZE_2MB ((uint8_t)0x14U) ///!< MPU Region Size 2 MBytes
51 | #define ARM_MPU_REGION_SIZE_4MB ((uint8_t)0x15U) ///!< MPU Region Size 4 MBytes
52 | #define ARM_MPU_REGION_SIZE_8MB ((uint8_t)0x16U) ///!< MPU Region Size 8 MBytes
53 | #define ARM_MPU_REGION_SIZE_16MB ((uint8_t)0x17U) ///!< MPU Region Size 16 MBytes
54 | #define ARM_MPU_REGION_SIZE_32MB ((uint8_t)0x18U) ///!< MPU Region Size 32 MBytes
55 | #define ARM_MPU_REGION_SIZE_64MB ((uint8_t)0x19U) ///!< MPU Region Size 64 MBytes
56 | #define ARM_MPU_REGION_SIZE_128MB ((uint8_t)0x1AU) ///!< MPU Region Size 128 MBytes
57 | #define ARM_MPU_REGION_SIZE_256MB ((uint8_t)0x1BU) ///!< MPU Region Size 256 MBytes
58 | #define ARM_MPU_REGION_SIZE_512MB ((uint8_t)0x1CU) ///!< MPU Region Size 512 MBytes
59 | #define ARM_MPU_REGION_SIZE_1GB ((uint8_t)0x1DU) ///!< MPU Region Size 1 GByte
60 | #define ARM_MPU_REGION_SIZE_2GB ((uint8_t)0x1EU) ///!< MPU Region Size 2 GBytes
61 | #define ARM_MPU_REGION_SIZE_4GB ((uint8_t)0x1FU) ///!< MPU Region Size 4 GBytes
62 |
63 | #define ARM_MPU_AP_NONE 0U ///!< MPU Access Permission no access
64 | #define ARM_MPU_AP_PRIV 1U ///!< MPU Access Permission privileged access only
65 | #define ARM_MPU_AP_URO 2U ///!< MPU Access Permission unprivileged access read-only
66 | #define ARM_MPU_AP_FULL 3U ///!< MPU Access Permission full access
67 | #define ARM_MPU_AP_PRO 5U ///!< MPU Access Permission privileged access read-only
68 | #define ARM_MPU_AP_RO 6U ///!< MPU Access Permission read-only access
69 |
70 | /** MPU Region Base Address Register Value
71 | *
72 | * \param Region The region to be configured, number 0 to 15.
73 | * \param BaseAddress The base address for the region.
74 | */
75 | #define ARM_MPU_RBAR(Region, BaseAddress) \
76 | (((BaseAddress) & MPU_RBAR_ADDR_Msk) | \
77 | ((Region) & MPU_RBAR_REGION_Msk) | \
78 | (MPU_RBAR_VALID_Msk))
79 |
80 | /**
81 | * MPU Memory Access Attributes
82 | *
83 | * \param TypeExtField Type extension field, allows you to configure memory access type, for example strongly ordered, peripheral.
84 | * \param IsShareable Region is shareable between multiple bus masters.
85 | * \param IsCacheable Region is cacheable, i.e. its value may be kept in cache.
86 | * \param IsBufferable Region is bufferable, i.e. using write-back caching. Cacheable but non-bufferable regions use write-through policy.
87 | */
88 | #define ARM_MPU_ACCESS_(TypeExtField, IsShareable, IsCacheable, IsBufferable) \
89 | ((((TypeExtField) << MPU_RASR_TEX_Pos) & MPU_RASR_TEX_Msk) | \
90 | (((IsShareable) << MPU_RASR_S_Pos) & MPU_RASR_S_Msk) | \
91 | (((IsCacheable) << MPU_RASR_C_Pos) & MPU_RASR_C_Msk) | \
92 | (((IsBufferable) << MPU_RASR_B_Pos) & MPU_RASR_B_Msk))
93 |
94 | /**
95 | * MPU Region Attribute and Size Register Value
96 | *
97 | * \param DisableExec Instruction access disable bit, 1= disable instruction fetches.
98 | * \param AccessPermission Data access permissions, allows you to configure read/write access for User and Privileged mode.
99 | * \param AccessAttributes Memory access attribution, see \ref ARM_MPU_ACCESS_.
100 | * \param SubRegionDisable Sub-region disable field.
101 | * \param Size Region size of the region to be configured, for example 4K, 8K.
102 | */
103 | #define ARM_MPU_RASR_EX(DisableExec, AccessPermission, AccessAttributes, SubRegionDisable, Size) \
104 | ((((DisableExec) << MPU_RASR_XN_Pos) & MPU_RASR_XN_Msk) | \
105 | (((AccessPermission) << MPU_RASR_AP_Pos) & MPU_RASR_AP_Msk) | \
106 | (((AccessAttributes) & (MPU_RASR_TEX_Msk | MPU_RASR_S_Msk | MPU_RASR_C_Msk | MPU_RASR_B_Msk))) | \
107 | (((SubRegionDisable) << MPU_RASR_SRD_Pos) & MPU_RASR_SRD_Msk) | \
108 | (((Size) << MPU_RASR_SIZE_Pos) & MPU_RASR_SIZE_Msk) | \
109 | (((MPU_RASR_ENABLE_Msk))))
110 |
111 | /**
112 | * MPU Region Attribute and Size Register Value
113 | *
114 | * \param DisableExec Instruction access disable bit, 1= disable instruction fetches.
115 | * \param AccessPermission Data access permissions, allows you to configure read/write access for User and Privileged mode.
116 | * \param TypeExtField Type extension field, allows you to configure memory access type, for example strongly ordered, peripheral.
117 | * \param IsShareable Region is shareable between multiple bus masters.
118 | * \param IsCacheable Region is cacheable, i.e. its value may be kept in cache.
119 | * \param IsBufferable Region is bufferable, i.e. using write-back caching. Cacheable but non-bufferable regions use write-through policy.
120 | * \param SubRegionDisable Sub-region disable field.
121 | * \param Size Region size of the region to be configured, for example 4K, 8K.
122 | */
123 | #define ARM_MPU_RASR(DisableExec, AccessPermission, TypeExtField, IsShareable, IsCacheable, IsBufferable, SubRegionDisable, Size) \
124 | ARM_MPU_RASR_EX(DisableExec, AccessPermission, ARM_MPU_ACCESS_(TypeExtField, IsShareable, IsCacheable, IsBufferable), SubRegionDisable, Size)
125 |
126 | /**
127 | * MPU Memory Access Attribute for strongly ordered memory.
128 | * - TEX: 000b
129 | * - Shareable
130 | * - Non-cacheable
131 | * - Non-bufferable
132 | */
133 | #define ARM_MPU_ACCESS_ORDERED ARM_MPU_ACCESS_(0U, 1U, 0U, 0U)
134 |
135 | /**
136 | * MPU Memory Access Attribute for device memory.
137 | * - TEX: 000b (if shareable) or 010b (if non-shareable)
138 | * - Shareable or non-shareable
139 | * - Non-cacheable
140 | * - Bufferable (if shareable) or non-bufferable (if non-shareable)
141 | *
142 | * \param IsShareable Configures the device memory as shareable or non-shareable.
143 | */
144 | #define ARM_MPU_ACCESS_DEVICE(IsShareable) ((IsShareable) ? ARM_MPU_ACCESS_(0U, 1U, 0U, 1U) : ARM_MPU_ACCESS_(2U, 0U, 0U, 0U))
145 |
146 | /**
147 | * MPU Memory Access Attribute for normal memory.
148 | * - TEX: 1BBb (reflecting outer cacheability rules)
149 | * - Shareable or non-shareable
150 | * - Cacheable or non-cacheable (reflecting inner cacheability rules)
151 | * - Bufferable or non-bufferable (reflecting inner cacheability rules)
152 | *
153 | * \param OuterCp Configures the outer cache policy.
154 | * \param InnerCp Configures the inner cache policy.
155 | * \param IsShareable Configures the memory as shareable or non-shareable.
156 | */
157 | #define ARM_MPU_ACCESS_NORMAL(OuterCp, InnerCp, IsShareable) ARM_MPU_ACCESS_((4U | (OuterCp)), IsShareable, ((InnerCp) >> 1U), ((InnerCp) & 1U))
158 |
159 | /**
160 | * MPU Memory Access Attribute non-cacheable policy.
161 | */
162 | #define ARM_MPU_CACHEP_NOCACHE 0U
163 |
164 | /**
165 | * MPU Memory Access Attribute write-back, write and read allocate policy.
166 | */
167 | #define ARM_MPU_CACHEP_WB_WRA 1U
168 |
169 | /**
170 | * MPU Memory Access Attribute write-through, no write allocate policy.
171 | */
172 | #define ARM_MPU_CACHEP_WT_NWA 2U
173 |
174 | /**
175 | * MPU Memory Access Attribute write-back, no write allocate policy.
176 | */
177 | #define ARM_MPU_CACHEP_WB_NWA 3U
178 |
179 |
180 | /**
181 | * Struct for a single MPU Region
182 | */
183 | typedef struct {
184 | uint32_t RBAR; //!< The region base address register value (RBAR)
185 | uint32_t RASR; //!< The region attribute and size register value (RASR) \ref MPU_RASR
186 | } ARM_MPU_Region_t;
187 |
188 | /** Enable the MPU.
189 | * \param MPU_Control Default access permissions for unconfigured regions.
190 | */
191 | __STATIC_INLINE void ARM_MPU_Enable(uint32_t MPU_Control)
192 | {
193 | __DMB();
194 | MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk;
195 | #ifdef SCB_SHCSR_MEMFAULTENA_Msk
196 | SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk;
197 | #endif
198 | __DSB();
199 | __ISB();
200 | }
201 |
202 | /** Disable the MPU.
203 | */
204 | __STATIC_INLINE void ARM_MPU_Disable(void)
205 | {
206 | __DMB();
207 | #ifdef SCB_SHCSR_MEMFAULTENA_Msk
208 | SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk;
209 | #endif
210 | MPU->CTRL &= ~MPU_CTRL_ENABLE_Msk;
211 | __DSB();
212 | __ISB();
213 | }
214 |
215 | /** Clear and disable the given MPU region.
216 | * \param rnr Region number to be cleared.
217 | */
218 | __STATIC_INLINE void ARM_MPU_ClrRegion(uint32_t rnr)
219 | {
220 | MPU->RNR = rnr;
221 | MPU->RASR = 0U;
222 | }
223 |
224 | /** Configure an MPU region.
225 | * \param rbar Value for RBAR register.
226 | * \param rasr Value for RASR register.
227 | */
228 | __STATIC_INLINE void ARM_MPU_SetRegion(uint32_t rbar, uint32_t rasr)
229 | {
230 | MPU->RBAR = rbar;
231 | MPU->RASR = rasr;
232 | }
233 |
234 | /** Configure the given MPU region.
235 | * \param rnr Region number to be configured.
236 | * \param rbar Value for RBAR register.
237 | * \param rasr Value for RASR register.
238 | */
239 | __STATIC_INLINE void ARM_MPU_SetRegionEx(uint32_t rnr, uint32_t rbar, uint32_t rasr)
240 | {
241 | MPU->RNR = rnr;
242 | MPU->RBAR = rbar;
243 | MPU->RASR = rasr;
244 | }
245 |
246 | /** Memcpy with strictly ordered memory access, e.g. used by code in ARM_MPU_Load().
247 | * \param dst Destination data is copied to.
248 | * \param src Source data is copied from.
249 | * \param len Amount of data words to be copied.
250 | */
251 | __STATIC_INLINE void ARM_MPU_OrderedMemcpy(volatile uint32_t* dst, const uint32_t* __RESTRICT src, uint32_t len)
252 | {
253 | uint32_t i;
254 | for (i = 0U; i < len; ++i)
255 | {
256 | dst[i] = src[i];
257 | }
258 | }
259 |
260 | /** Load the given number of MPU regions from a table.
261 | * \param table Pointer to the MPU configuration table.
262 | * \param cnt Amount of regions to be configured.
263 | */
264 | __STATIC_INLINE void ARM_MPU_Load(ARM_MPU_Region_t const* table, uint32_t cnt)
265 | {
266 | const uint32_t rowWordSize = sizeof(ARM_MPU_Region_t)/4U;
267 | while (cnt > MPU_TYPE_RALIASES) {
268 | ARM_MPU_OrderedMemcpy(&(MPU->RBAR), &(table->RBAR), MPU_TYPE_RALIASES*rowWordSize);
269 | table += MPU_TYPE_RALIASES;
270 | cnt -= MPU_TYPE_RALIASES;
271 | }
272 | ARM_MPU_OrderedMemcpy(&(MPU->RBAR), &(table->RBAR), cnt*rowWordSize);
273 | }
274 |
275 | #endif
276 |
--------------------------------------------------------------------------------
/software/system/pac_armv81.h:
--------------------------------------------------------------------------------
1 | /******************************************************************************
2 | * @file pac_armv81.h
3 | * @brief CMSIS PAC key functions for Armv8.1-M PAC extension
4 | * @version V1.0.0
5 | * @date 23. March 2022
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2022 Arm Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef PAC_ARMV81_H
32 | #define PAC_ARMV81_H
33 |
34 |
35 | /* ################### PAC Key functions ########################### */
36 | /**
37 | \ingroup CMSIS_Core_FunctionInterface
38 | \defgroup CMSIS_Core_PacKeyFunctions PAC Key functions
39 | \brief Functions that access the PAC keys.
40 | @{
41 | */
42 |
43 | #if (defined (__ARM_FEATURE_PAUTH) && (__ARM_FEATURE_PAUTH == 1))
44 |
45 | /**
46 | \brief read the PAC key used for privileged mode
47 | \details Reads the PAC key stored in the PAC_KEY_P registers.
48 | \param [out] pPacKey 128bit PAC key
49 | */
50 | __STATIC_FORCEINLINE void __get_PAC_KEY_P (uint32_t* pPacKey) {
51 | __ASM volatile (
52 | "mrs r1, pac_key_p_0\n"
53 | "str r1,[%0,#0]\n"
54 | "mrs r1, pac_key_p_1\n"
55 | "str r1,[%0,#4]\n"
56 | "mrs r1, pac_key_p_2\n"
57 | "str r1,[%0,#8]\n"
58 | "mrs r1, pac_key_p_3\n"
59 | "str r1,[%0,#12]\n"
60 | : : "r" (pPacKey) : "memory", "r1"
61 | );
62 | }
63 |
64 | /**
65 | \brief write the PAC key used for privileged mode
66 | \details writes the given PAC key to the PAC_KEY_P registers.
67 | \param [in] pPacKey 128bit PAC key
68 | */
69 | __STATIC_FORCEINLINE void __set_PAC_KEY_P (uint32_t* pPacKey) {
70 | __ASM volatile (
71 | "ldr r1,[%0,#0]\n"
72 | "msr pac_key_p_0, r1\n"
73 | "ldr r1,[%0,#4]\n"
74 | "msr pac_key_p_1, r1\n"
75 | "ldr r1,[%0,#8]\n"
76 | "msr pac_key_p_2, r1\n"
77 | "ldr r1,[%0,#12]\n"
78 | "msr pac_key_p_3, r1\n"
79 | : : "r" (pPacKey) : "memory", "r1"
80 | );
81 | }
82 |
83 | /**
84 | \brief read the PAC key used for unprivileged mode
85 | \details Reads the PAC key stored in the PAC_KEY_U registers.
86 | \param [out] pPacKey 128bit PAC key
87 | */
88 | __STATIC_FORCEINLINE void __get_PAC_KEY_U (uint32_t* pPacKey) {
89 | __ASM volatile (
90 | "mrs r1, pac_key_u_0\n"
91 | "str r1,[%0,#0]\n"
92 | "mrs r1, pac_key_u_1\n"
93 | "str r1,[%0,#4]\n"
94 | "mrs r1, pac_key_u_2\n"
95 | "str r1,[%0,#8]\n"
96 | "mrs r1, pac_key_u_3\n"
97 | "str r1,[%0,#12]\n"
98 | : : "r" (pPacKey) : "memory", "r1"
99 | );
100 | }
101 |
102 | /**
103 | \brief write the PAC key used for unprivileged mode
104 | \details writes the given PAC key to the PAC_KEY_U registers.
105 | \param [in] pPacKey 128bit PAC key
106 | */
107 | __STATIC_FORCEINLINE void __set_PAC_KEY_U (uint32_t* pPacKey) {
108 | __ASM volatile (
109 | "ldr r1,[%0,#0]\n"
110 | "msr pac_key_u_0, r1\n"
111 | "ldr r1,[%0,#4]\n"
112 | "msr pac_key_u_1, r1\n"
113 | "ldr r1,[%0,#8]\n"
114 | "msr pac_key_u_2, r1\n"
115 | "ldr r1,[%0,#12]\n"
116 | "msr pac_key_u_3, r1\n"
117 | : : "r" (pPacKey) : "memory", "r1"
118 | );
119 | }
120 |
121 | #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
122 |
123 | /**
124 | \brief read the PAC key used for privileged mode (non-secure)
125 | \details Reads the PAC key stored in the non-secure PAC_KEY_P registers when in secure mode.
126 | \param [out] pPacKey 128bit PAC key
127 | */
128 | __STATIC_FORCEINLINE void __TZ_get_PAC_KEY_P_NS (uint32_t* pPacKey) {
129 | __ASM volatile (
130 | "mrs r1, pac_key_p_0_ns\n"
131 | "str r1,[%0,#0]\n"
132 | "mrs r1, pac_key_p_1_ns\n"
133 | "str r1,[%0,#4]\n"
134 | "mrs r1, pac_key_p_2_ns\n"
135 | "str r1,[%0,#8]\n"
136 | "mrs r1, pac_key_p_3_ns\n"
137 | "str r1,[%0,#12]\n"
138 | : : "r" (pPacKey) : "memory", "r1"
139 | );
140 | }
141 |
142 | /**
143 | \brief write the PAC key used for privileged mode (non-secure)
144 | \details writes the given PAC key to the non-secure PAC_KEY_P registers when in secure mode.
145 | \param [in] pPacKey 128bit PAC key
146 | */
147 | __STATIC_FORCEINLINE void __TZ_set_PAC_KEY_P_NS (uint32_t* pPacKey) {
148 | __ASM volatile (
149 | "ldr r1,[%0,#0]\n"
150 | "msr pac_key_p_0_ns, r1\n"
151 | "ldr r1,[%0,#4]\n"
152 | "msr pac_key_p_1_ns, r1\n"
153 | "ldr r1,[%0,#8]\n"
154 | "msr pac_key_p_2_ns, r1\n"
155 | "ldr r1,[%0,#12]\n"
156 | "msr pac_key_p_3_ns, r1\n"
157 | : : "r" (pPacKey) : "memory", "r1"
158 | );
159 | }
160 |
161 | /**
162 | \brief read the PAC key used for unprivileged mode (non-secure)
163 | \details Reads the PAC key stored in the non-secure PAC_KEY_U registers when in secure mode.
164 | \param [out] pPacKey 128bit PAC key
165 | */
166 | __STATIC_FORCEINLINE void __TZ_get_PAC_KEY_U_NS (uint32_t* pPacKey) {
167 | __ASM volatile (
168 | "mrs r1, pac_key_u_0_ns\n"
169 | "str r1,[%0,#0]\n"
170 | "mrs r1, pac_key_u_1_ns\n"
171 | "str r1,[%0,#4]\n"
172 | "mrs r1, pac_key_u_2_ns\n"
173 | "str r1,[%0,#8]\n"
174 | "mrs r1, pac_key_u_3_ns\n"
175 | "str r1,[%0,#12]\n"
176 | : : "r" (pPacKey) : "memory", "r1"
177 | );
178 | }
179 |
180 | /**
181 | \brief write the PAC key used for unprivileged mode (non-secure)
182 | \details writes the given PAC key to the non-secure PAC_KEY_U registers when in secure mode.
183 | \param [in] pPacKey 128bit PAC key
184 | */
185 | __STATIC_FORCEINLINE void __TZ_set_PAC_KEY_U_NS (uint32_t* pPacKey) {
186 | __ASM volatile (
187 | "ldr r1,[%0,#0]\n"
188 | "msr pac_key_u_0_ns, r1\n"
189 | "ldr r1,[%0,#4]\n"
190 | "msr pac_key_u_1_ns, r1\n"
191 | "ldr r1,[%0,#8]\n"
192 | "msr pac_key_u_2_ns, r1\n"
193 | "ldr r1,[%0,#12]\n"
194 | "msr pac_key_u_3_ns, r1\n"
195 | : : "r" (pPacKey) : "memory", "r1"
196 | );
197 | }
198 |
199 | #endif /* (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) */
200 |
201 | #endif /* (defined (__ARM_FEATURE_PAUTH) && (__ARM_FEATURE_PAUTH == 1)) */
202 |
203 | /*@} end of CMSIS_Core_PacKeyFunctions */
204 |
205 |
206 | #endif /* PAC_ARMV81_H */
207 |
--------------------------------------------------------------------------------
/software/system/system_stm32f4xx.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file system_stm32f4xx.h
4 | * @author MCD Application Team
5 | * @brief CMSIS Cortex-M4 Device System Source File for STM32F4xx devices.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * Copyright (c) 2017 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software is licensed under terms that can be found in the LICENSE file
13 | * in the root directory of this software component.
14 | * If no LICENSE file comes with this software, it is provided AS-IS.
15 | *
16 | ******************************************************************************
17 | */
18 |
19 | /** @addtogroup CMSIS
20 | * @{
21 | */
22 |
23 | /** @addtogroup stm32f4xx_system
24 | * @{
25 | */
26 |
27 | /**
28 | * @brief Define to prevent recursive inclusion
29 | */
30 | #ifndef __SYSTEM_STM32F4XX_H
31 | #define __SYSTEM_STM32F4XX_H
32 |
33 | #ifdef __cplusplus
34 | extern "C" {
35 | #endif
36 |
37 | /** @addtogroup STM32F4xx_System_Includes
38 | * @{
39 | */
40 |
41 | /**
42 | * @}
43 | */
44 |
45 |
46 | /** @addtogroup STM32F4xx_System_Exported_types
47 | * @{
48 | */
49 | /* This variable is updated in three ways:
50 | 1) by calling CMSIS function SystemCoreClockUpdate()
51 | 2) by calling HAL API function HAL_RCC_GetSysClockFreq()
52 | 3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency
53 | Note: If you use this function to configure the system clock; then there
54 | is no need to call the 2 first functions listed above, since SystemCoreClock
55 | variable is updated automatically.
56 | */
57 | extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */
58 |
59 | extern const uint8_t AHBPrescTable[16]; /*!< AHB prescalers table values */
60 | extern const uint8_t APBPrescTable[8]; /*!< APB prescalers table values */
61 |
62 | /**
63 | * @}
64 | */
65 |
66 | /** @addtogroup STM32F4xx_System_Exported_Constants
67 | * @{
68 | */
69 |
70 | /**
71 | * @}
72 | */
73 |
74 | /** @addtogroup STM32F4xx_System_Exported_Macros
75 | * @{
76 | */
77 |
78 | /**
79 | * @}
80 | */
81 |
82 | /** @addtogroup STM32F4xx_System_Exported_Functions
83 | * @{
84 | */
85 |
86 | extern void SystemInit(void);
87 | extern void SystemCoreClockUpdate(void);
88 | /**
89 | * @}
90 | */
91 |
92 | #ifdef __cplusplus
93 | }
94 | #endif
95 |
96 | #endif /*__SYSTEM_STM32F4XX_H */
97 |
98 | /**
99 | * @}
100 | */
101 |
102 | /**
103 | * @}
104 | */
105 |
--------------------------------------------------------------------------------
/software/system/tz_context.h:
--------------------------------------------------------------------------------
1 | /******************************************************************************
2 | * @file tz_context.h
3 | * @brief Context Management for Armv8-M TrustZone
4 | * @version V1.0.1
5 | * @date 10. January 2018
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2017-2018 Arm Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef TZ_CONTEXT_H
32 | #define TZ_CONTEXT_H
33 |
34 | #include
35 |
36 | #ifndef TZ_MODULEID_T
37 | #define TZ_MODULEID_T
38 | /// \details Data type that identifies secure software modules called by a process.
39 | typedef uint32_t TZ_ModuleId_t;
40 | #endif
41 |
42 | /// \details TZ Memory ID identifies an allocated memory slot.
43 | typedef uint32_t TZ_MemoryId_t;
44 |
45 | /// Initialize secure context memory system
46 | /// \return execution status (1: success, 0: error)
47 | uint32_t TZ_InitContextSystem_S (void);
48 |
49 | /// Allocate context memory for calling secure software modules in TrustZone
50 | /// \param[in] module identifies software modules called from non-secure mode
51 | /// \return value != 0 id TrustZone memory slot identifier
52 | /// \return value 0 no memory available or internal error
53 | TZ_MemoryId_t TZ_AllocModuleContext_S (TZ_ModuleId_t module);
54 |
55 | /// Free context memory that was previously allocated with \ref TZ_AllocModuleContext_S
56 | /// \param[in] id TrustZone memory slot identifier
57 | /// \return execution status (1: success, 0: error)
58 | uint32_t TZ_FreeModuleContext_S (TZ_MemoryId_t id);
59 |
60 | /// Load secure context (called on RTOS thread context switch)
61 | /// \param[in] id TrustZone memory slot identifier
62 | /// \return execution status (1: success, 0: error)
63 | uint32_t TZ_LoadContext_S (TZ_MemoryId_t id);
64 |
65 | /// Store secure context (called on RTOS thread context switch)
66 | /// \param[in] id TrustZone memory slot identifier
67 | /// \return execution status (1: success, 0: error)
68 | uint32_t TZ_StoreContext_S (TZ_MemoryId_t id);
69 |
70 | #endif // TZ_CONTEXT_H
71 |
--------------------------------------------------------------------------------