├── .gitignore ├── LICENCE ├── README.md ├── docs ├── build_guide.md ├── essential_files.md ├── flashing_guide.md ├── gallery.md └── img │ ├── build_guide │ ├── assembled.jpg │ ├── assembled_back.jpg │ ├── controller.jpg │ ├── controller_cutout.png │ ├── controller_top.jpg │ ├── diode.svg │ ├── firmware.png │ ├── first_sockets.jpg │ ├── jst.jpg │ ├── jumpers.svg │ ├── pcb.jpg │ ├── pcb_assembled.jpg │ ├── pcb_half.jpg │ ├── pcb_in_enclosure.jpg │ ├── pcb_separated.jpg │ ├── reset.jpg │ ├── usb.jpg │ ├── usb_bottom.jpg │ ├── zmk_layout.png │ ├── zmk_studio.png │ ├── zmk_unlock.png │ └── zmk_usb.png │ ├── col_stagger.svg │ ├── config.svg │ ├── flake-l.jpg │ ├── flake-m.jpg │ ├── flake-s.jpg │ ├── flake_switches.jpg │ ├── flakes.jpg │ ├── gallery │ ├── CaptLynx │ │ ├── img1.webp │ │ ├── img2.webp │ │ └── img3.webp │ ├── caiodelgado │ │ ├── img1.webp │ │ └── img2.webp │ ├── devpew │ │ └── img1.webp │ ├── kurisutofujp │ │ └── img1.webp │ └── peppapighs │ │ ├── img1.webp │ │ └── img2.webp │ ├── plate.jpg │ ├── row_stagger.svg │ ├── stacked.jpg │ ├── table.jpg │ └── thickness.jpg ├── enclosure ├── L │ ├── Enclosure-L-Bottom-Left.step │ ├── Enclosure-L-Bottom-Right.step │ ├── Enclosure-L-Plate-Left.step │ ├── Enclosure-L-Plate-Right.step │ ├── Enclosure-L-Top-Left.step │ ├── Enclosure-L-Top-Right.step │ └── Enclosure-L.FCStd ├── M │ ├── Enclosure-M-Bottom-Left.step │ ├── Enclosure-M-Bottom-Right.step │ ├── Enclosure-M-Plate-Left.step │ ├── Enclosure-M-Plate-Right.step │ ├── Enclosure-M-Top-Left.step │ ├── Enclosure-M-Top-Right.step │ └── Enclosure-M.FCStd └── S │ ├── Enclosure-S-Bottom-Left.step │ ├── Enclosure-S-Bottom-Right.step │ ├── Enclosure-S-Plate-Left.step │ ├── Enclosure-S-Plate-Right.step │ ├── Enclosure-S-Top-Left.step │ ├── Enclosure-S-Top-Right.step │ └── Enclosure-S.FCStd └── pcb ├── L ├── Flake-L.kicad_pcb ├── Flake-L.kicad_pro ├── Flake-L.kicad_sch ├── Flake-L.round-tracks-config ├── fabrication-toolkit-options.json ├── fp-lib-table ├── left.kicad_sch ├── production │ ├── Flake-L.zip │ ├── backups │ │ ├── Flake-L_2024-12-16_19-10-27.zip │ │ └── Flake-L_2025-01-10_16-33-49.zip │ ├── bom.csv │ ├── designators.csv │ ├── netlist.ipc │ └── positions.csv └── right.kicad_sch ├── M,S ├── Flake.kicad_pcb ├── Flake.kicad_pro ├── Flake.kicad_sch ├── fabrication-toolkit-options.json ├── fp-lib-table ├── left.kicad_sch ├── production │ ├── Flake.zip │ ├── backups │ │ ├── Flake_2024-12-04_17-51-21.zip │ │ ├── Flake_2024-12-04_17-51-31.zip │ │ ├── Flake_2024-12-10_12-41-36.zip │ │ ├── Flake_2024-12-10_12-49-14.zip │ │ ├── Flake_2024-12-10_12-54-47.zip │ │ ├── Flake_2024-12-10_12-56-55.zip │ │ ├── Flake_2024-12-11_09-32-57.zip │ │ ├── Flake_2024-12-16_17-43-32.zip │ │ ├── Flake_2024-12-16_19-04-07.zip │ │ ├── Flake_2024-12-16_19-07-40.zip │ │ └── Flake_2025-01-10_16-34-14.zip │ ├── bom.csv │ ├── designators.csv │ ├── netlist.ipc │ └── positions.csv ├── right.kicad_sch └── sym-lib-table └── lib ├── axseem.pretty ├── Hole_0.5mm.kicad_mod ├── JST_1.25mm_mid-mount.kicad_mod ├── ProMicro_SMD.kicad_mod ├── SW_MX_Choc-v1v2_Hotswap.kicad_mod ├── SolderJumper-3_P.kicad_mod ├── TS-1289VE-4.kicad_mod └── USB-C_6Pin_Mid-mount.kicad_mod └── symbols └── kbd.kicad_sym /.gitignore: -------------------------------------------------------------------------------- 1 | pcb/production/backups 2 | 3 | *.bak 4 | *.bck 5 | *.kicad_pcb-bak 6 | *.kicad_sch-bak 7 | *-backups 8 | *.kicad_prl 9 | *.sch-bak 10 | *~ 11 | _autosave-* 12 | *.tmp 13 | *-save.pro 14 | *-save.kicad_pcb 15 | fp-info-cache 16 | ~*.lck 17 | \#auto_saved_files# 18 | 19 | *.FCBak -------------------------------------------------------------------------------- /LICENCE: -------------------------------------------------------------------------------- 1 | CERN Open Hardware Licence Version 2 - Weakly Reciprocal 2 | 3 | 4 | Preamble 5 | 6 | CERN has developed this licence to promote collaboration among 7 | hardware designers and to provide a legal tool which supports the 8 | freedom to use, study, modify, share and distribute hardware designs 9 | and products based on those designs. Version 2 of the CERN Open 10 | Hardware Licence comes in three variants: CERN-OHL-P (permissive); and 11 | two reciprocal licences: this licence, CERN-OHL-W (weakly reciprocal) 12 | and CERN-OHL-S (strongly reciprocal). 13 | 14 | The CERN-OHL-W is copyright CERN 2020. Anyone is welcome to use it, in 15 | unmodified form only. 16 | 17 | Use of this Licence does not imply any endorsement by CERN of any 18 | Licensor or their designs nor does it imply any involvement by CERN in 19 | their development. 20 | 21 | 22 | 1 Definitions 23 | 24 | 1.1 'Licence' means this CERN-OHL-W. 25 | 26 | 1.2 'Compatible Licence' means 27 | 28 | a) any earlier version of the CERN Open Hardware licence, or 29 | 30 | b) any version of the CERN-OHL-S or the CERN-OHL-W, or 31 | 32 | c) any licence which permits You to treat the Source to which 33 | it applies as licensed under CERN-OHL-S or CERN-OHL-W 34 | provided that on Conveyance of any such Source, or any 35 | associated Product You treat the Source in question as being 36 | licensed under CERN-OHL-S or CERN-OHL-W as appropriate. 37 | 38 | 1.3 'Source' means information such as design materials or digital 39 | code which can be applied to Make or test a Product or to 40 | prepare a Product for use, Conveyance or sale, regardless of its 41 | medium or how it is expressed. It may include Notices. 42 | 43 | 1.4 'Covered Source' means Source that is explicitly made available 44 | under this Licence. 45 | 46 | 1.5 'Product' means any device, component, work or physical object, 47 | whether in finished or intermediate form, arising from the use, 48 | application or processing of Covered Source. 49 | 50 | 1.6 'Make' means to create or configure something, whether by 51 | manufacture, assembly, compiling, loading or applying Covered 52 | Source or another Product or otherwise. 53 | 54 | 1.7 'Available Component' means any part, sub-assembly, library or 55 | code which: 56 | 57 | a) is licensed to You as Complete Source under a Compatible 58 | Licence; or 59 | 60 | b) is available, at the time a Product or the Source containing 61 | it is first Conveyed, to You and any other prospective 62 | licensees 63 | 64 | i) with sufficient rights and information (including any 65 | configuration and programming files and information 66 | about its characteristics and interfaces) to enable it 67 | either to be Made itself, or to be sourced and used to 68 | Make the Product; or 69 | ii) as part of the normal distribution of a tool used to 70 | design or Make the Product. 71 | 72 | 1.8 'External Material' means anything (including Source) which: 73 | 74 | a) is only combined with Covered Source in such a way that it 75 | interfaces with the Covered Source using a documented 76 | interface which is described in the Covered Source; and 77 | 78 | b) is not a derivative of or contains Covered Source, or, if it 79 | is, it is solely to the extent necessary to facilitate such 80 | interfacing. 81 | 82 | 1.9 'Complete Source' means the set of all Source necessary to Make 83 | a Product, in the preferred form for making modifications, 84 | including necessary installation and interfacing information 85 | both for the Product, and for any included Available Components. 86 | If the format is proprietary, it must also be made available in 87 | a format (if the proprietary tool can create it) which is 88 | viewable with a tool available to potential licensees and 89 | licensed under a licence approved by the Free Software 90 | Foundation or the Open Source Initiative. Complete Source need 91 | not include the Source of any Available Component, provided that 92 | You include in the Complete Source sufficient information to 93 | enable a recipient to Make or source and use the Available 94 | Component to Make the Product. 95 | 96 | 1.10 'Source Location' means a location where a Licensor has placed 97 | Covered Source, and which that Licensor reasonably believes will 98 | remain easily accessible for at least three years for anyone to 99 | obtain a digital copy. 100 | 101 | 1.11 'Notice' means copyright, acknowledgement and trademark notices, 102 | Source Location references, modification notices (subsection 103 | 3.3(b)) and all notices that refer to this Licence and to the 104 | disclaimer of warranties that are included in the Covered 105 | Source. 106 | 107 | 1.12 'Licensee' or 'You' means any person exercising rights under 108 | this Licence. 109 | 110 | 1.13 'Licensor' means a natural or legal person who creates or 111 | modifies Covered Source. A person may be a Licensee and a 112 | Licensor at the same time. 113 | 114 | 1.14 'Convey' means to communicate to the public or distribute. 115 | 116 | 117 | 2 Applicability 118 | 119 | 2.1 This Licence governs the use, copying, modification, Conveying 120 | of Covered Source and Products, and the Making of Products. By 121 | exercising any right granted under this Licence, You irrevocably 122 | accept these terms and conditions. 123 | 124 | 2.2 This Licence is granted by the Licensor directly to You, and 125 | shall apply worldwide and without limitation in time. 126 | 127 | 2.3 You shall not attempt to restrict by contract or otherwise the 128 | rights granted under this Licence to other Licensees. 129 | 130 | 2.4 This Licence is not intended to restrict fair use, fair dealing, 131 | or any other similar right. 132 | 133 | 134 | 3 Copying, Modifying and Conveying Covered Source 135 | 136 | 3.1 You may copy and Convey verbatim copies of Covered Source, in 137 | any medium, provided You retain all Notices. 138 | 139 | 3.2 You may modify Covered Source, other than Notices, provided that 140 | You irrevocably undertake to make that modified Covered Source 141 | available from a Source Location should You Convey a Product in 142 | circumstances where the recipient does not otherwise receive a 143 | copy of the modified Covered Source. In each case subsection 3.3 144 | shall apply. 145 | 146 | You may only delete Notices if they are no longer applicable to 147 | the corresponding Covered Source as modified by You and You may 148 | add additional Notices applicable to Your modifications. 149 | 150 | 3.3 You may Convey modified Covered Source (with the effect that You 151 | shall also become a Licensor) provided that You: 152 | 153 | a) retain Notices as required in subsection 3.2; 154 | 155 | b) add a Notice to the modified Covered Source stating that You 156 | have modified it, with the date and brief description of how 157 | You have modified it; 158 | 159 | c) add a Source Location Notice for the modified Covered Source 160 | if You Convey in circumstances where the recipient does not 161 | otherwise receive a copy of the modified Covered Source; and 162 | 163 | d) license the modified Covered Source under the terms and 164 | conditions of this Licence (or, as set out in subsection 165 | 8.3, a later version, if permitted by the licence of the 166 | original Covered Source). Such modified Covered Source must 167 | be licensed as a whole, but excluding Available Components 168 | contained in it or External Material to which it is 169 | interfaced, which remain licensed under their own applicable 170 | licences. 171 | 172 | 173 | 4 Making and Conveying Products 174 | 175 | 4.1 You may Make Products, and/or Convey them, provided that You 176 | either provide each recipient with a copy of the Complete Source 177 | or ensure that each recipient is notified of the Source Location 178 | of the Complete Source. That Complete Source includes Covered 179 | Source and You must accordingly satisfy Your obligations set out 180 | in subsection 3.3. If specified in a Notice, the Product must 181 | visibly and securely display the Source Location on it or its 182 | packaging or documentation in the manner specified in that 183 | Notice. 184 | 185 | 4.2 Where You Convey a Product which incorporates External Material, 186 | the Complete Source for that Product which You are required to 187 | provide under subsection 4.1 need not include any Source for the 188 | External Material. 189 | 190 | 4.3 You may license Products under terms of Your choice, provided 191 | that such terms do not restrict or attempt to restrict any 192 | recipients' rights under this Licence to the Covered Source. 193 | 194 | 195 | 5 Research and Development 196 | 197 | You may Convey Covered Source, modified Covered Source or Products to 198 | a legal entity carrying out development, testing or quality assurance 199 | work on Your behalf provided that the work is performed on terms which 200 | prevent the entity from both using the Source or Products for its own 201 | internal purposes and Conveying the Source or Products or any 202 | modifications to them to any person other than You. Any modifications 203 | made by the entity shall be deemed to be made by You pursuant to 204 | subsection 3.2. 205 | 206 | 207 | 6 DISCLAIMER AND LIABILITY 208 | 209 | 6.1 DISCLAIMER OF WARRANTY -- The Covered Source and any Products 210 | are provided 'as is' and any express or implied warranties, 211 | including, but not limited to, implied warranties of 212 | merchantability, of satisfactory quality, non-infringement of 213 | third party rights, and fitness for a particular purpose or use 214 | are disclaimed in respect of any Source or Product to the 215 | maximum extent permitted by law. The Licensor makes no 216 | representation that any Source or Product does not or will not 217 | infringe any patent, copyright, trade secret or other 218 | proprietary right. The entire risk as to the use, quality, and 219 | performance of any Source or Product shall be with You and not 220 | the Licensor. This disclaimer of warranty is an essential part 221 | of this Licence and a condition for the grant of any rights 222 | granted under this Licence. 223 | 224 | 6.2 EXCLUSION AND LIMITATION OF LIABILITY -- The Licensor shall, to 225 | the maximum extent permitted by law, have no liability for 226 | direct, indirect, special, incidental, consequential, exemplary, 227 | punitive or other damages of any character including, without 228 | limitation, procurement of substitute goods or services, loss of 229 | use, data or profits, or business interruption, however caused 230 | and on any theory of contract, warranty, tort (including 231 | negligence), product liability or otherwise, arising in any way 232 | in relation to the Covered Source, modified Covered Source 233 | and/or the Making or Conveyance of a Product, even if advised of 234 | the possibility of such damages, and You shall hold the 235 | Licensor(s) free and harmless from any liability, costs, 236 | damages, fees and expenses, including claims by third parties, 237 | in relation to such use. 238 | 239 | 240 | 7 Patents 241 | 242 | 7.1 Subject to the terms and conditions of this Licence, each 243 | Licensor hereby grants to You a perpetual, worldwide, 244 | non-exclusive, no-charge, royalty-free, irrevocable (except as 245 | stated in subsections 7.2 and 8.4) patent licence to Make, have 246 | Made, use, offer to sell, sell, import, and otherwise transfer 247 | the Covered Source and Products, where such licence applies only 248 | to those patent claims licensable by such Licensor that are 249 | necessarily infringed by exercising rights under the Covered 250 | Source as Conveyed by that Licensor. 251 | 252 | 7.2 If You institute patent litigation against any entity (including 253 | a cross-claim or counterclaim in a lawsuit) alleging that the 254 | Covered Source or a Product constitutes direct or contributory 255 | patent infringement, or You seek any declaration that a patent 256 | licensed to You under this Licence is invalid or unenforceable 257 | then any rights granted to You under this Licence shall 258 | terminate as of the date such process is initiated. 259 | 260 | 261 | 8 General 262 | 263 | 8.1 If any provisions of this Licence are or subsequently become 264 | invalid or unenforceable for any reason, the remaining 265 | provisions shall remain effective. 266 | 267 | 8.2 You shall not use any of the name (including acronyms and 268 | abbreviations), image, or logo by which the Licensor or CERN is 269 | known, except where needed to comply with section 3, or where 270 | the use is otherwise allowed by law. Any such permitted use 271 | shall be factual and shall not be made so as to suggest any kind 272 | of endorsement or implication of involvement by the Licensor or 273 | its personnel. 274 | 275 | 8.3 CERN may publish updated versions and variants of this Licence 276 | which it considers to be in the spirit of this version, but may 277 | differ in detail to address new problems or concerns. New 278 | versions will be published with a unique version number and a 279 | variant identifier specifying the variant. If the Licensor has 280 | specified that a given variant applies to the Covered Source 281 | without specifying a version, You may treat that Covered Source 282 | as being released under any version of the CERN-OHL with that 283 | variant. If no variant is specified, the Covered Source shall be 284 | treated as being released under CERN-OHL-S. The Licensor may 285 | also specify that the Covered Source is subject to a specific 286 | version of the CERN-OHL or any later version in which case You 287 | may apply this or any later version of CERN-OHL with the same 288 | variant identifier published by CERN. 289 | 290 | You may treat Covered Source licensed under CERN-OHL-W as 291 | licensed under CERN-OHL-S if and only if all Available 292 | Components referenced in the Covered Source comply with the 293 | corresponding definition of Available Component for CERN-OHL-S. 294 | 295 | 8.4 This Licence shall terminate with immediate effect if You fail 296 | to comply with any of its terms and conditions. 297 | 298 | 8.5 However, if You cease all breaches of this Licence, then Your 299 | Licence from any Licensor is reinstated unless such Licensor has 300 | terminated this Licence by giving You, while You remain in 301 | breach, a notice specifying the breach and requiring You to cure 302 | it within 30 days, and You have failed to come into compliance 303 | in all material respects by the end of the 30 day period. Should 304 | You repeat the breach after receipt of a cure notice and 305 | subsequent reinstatement, this Licence will terminate 306 | immediately and permanently. Section 6 shall continue to apply 307 | after any termination. 308 | 309 | 8.6 This Licence shall not be enforceable except by a Licensor 310 | acting as such, and third party beneficiary rights are 311 | specifically excluded. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
2 | flake image 3 |

Anywhy Flake

4 |

be productive, stay healthy and enjoy the process.

5 |
6 | 7 | # Why 8 | 9 | By the 19th century, a need for a faster way of writing had emerged, which led to the invention of typewriters. Two centuries later, modern keyboards don't look much different from their predecessors, even though such design has been proven to be quite inefficient and often harmful. 10 | 11 | Addressing these problems leads to huge benefits considering how often people use keyboards in the modern world. 12 | 13 | # How 14 | 15 | ## Split 16 | 17 | Regular keyboards are made in a single monolithic block, and the main problem is that such a form factor requires our forearms to meet in the center. To compensate for this, wrists are bent apart. This position creates an unnatural angle between the forearm and the wrist, which in the long term will likely lead to constant wrist pain. 18 | 19 | flake s image 20 | 21 | Each half of the split keyboard can be rotated and placed in any suitable way so everyone can adapt the setup to their personal preference, avoiding potential damage to the wrists. As a bonus, we get free space right between the halves which can be occupied by a trackpad, coffee, or even a cat =^..^= 22 | 23 | ## Stagger 24 | 25 | If you take your hand and look at the fingers, you can notice that they are positioned horizontally. Now take a look at your keyboard - the keys are grouped in arrays that are shifted vertically, known as row-based stagger. 26 | 27 | row-based stagger keyboard image 28 | 29 | This well-known layout forces your fingers to move in a counterintuitive way. The solution to that problem is simple: we need to rearrange the keys in a more human-friendly way. 30 | 31 | flake stagger image 32 | 33 | As you can see, Flake has what's called a column-based stagger. Because of this, keys are located in the path of natural finger movement, which results in a much more pleasant typing experience and reduced fatigue. 34 | 35 | ## Key switches 36 | 37 | There are a huge amount of various keyboard switches with different feel, size, sound, height and so on. Such variety is awesome, but the problem arrives when you have to chose one. 38 | 39 | flake s image 40 | 41 | To address this issue, Flake utilizes hot-swap sockets. There are two different sockets per key, allowing you to use any Cherry MX and low-profile Kailh Choc switches. This way, you can always experiment with the look and feel of the keyboard and change it according to your mood. 42 | 43 | ## Keys amount 44 | 45 | There's a high chance that some might feel confused seeing such a small number of keys, considering user productivity is one of the priorities for Anywhy. 46 | 47 | flake s image 48 | 49 | Indeed, Flake has fewer keys than most conventional keyboards, and that's not a compromise, but a feature. A large number of keys causes hands to move around to reach further-placed keys. 50 | 51 | Having fewer keys doesn't mean less functionality. In fact, Flake is not only fully input-compatible with regular keyboards but also allows you to add more keys than most keyboards have. All thanks to [ZMK Firmware](https://zmk.dev) and its features such as [layers](https://zmk.dev/docs/keymaps#layers). 52 | 53 | config showcase image 54 | 55 | ### Flake L 56 | 57 | There's a Flake L with 58 keys for those who aren't ready to jump down the rabbit hole yet or just prefer more keys. 58 | 59 | flake l image 60 | 61 | ### Flake S 62 | 63 | For people who strive for absolute comfort and compactness, there is also Flake S with 40 keys. 64 | 65 | flake s image 66 | 67 | ## Thickness 68 | 69 | The keyboard has been designed to be as thin as possible while maintaining a sturdy construction. 70 | 71 | flake s image 72 | 73 | The keyboard body is only ~0.8 cm (without feet), which combined with the low-profile switches and caps, greatly enhances comfort. 74 | 75 | # What 76 | 77 | Flake supports both wired and wireless (Bluetooth) connection, which makes it perfect for both home usage with a PC or portable setup with a laptop, tablet, or even smartphone. 78 | 79 | To achieve both types of connectivity, each half has two USB-C ports, one on the top and one on the inner side. The side port is used to connect the halves together, and then one of them (usually the left one) can be connected to any device using the top port, which is also used to charge the keyboard. 80 | 81 | > Ports on the side are used only to communicate with each other, so they can't be used to charge the keyboard or to flash the new firmware 82 | 83 | The keyboard allows for a maximum battery capacity of 200mah. On a single charge, the left half will last ~1 month and the right half will last over 4 months when used for 6 hours every day. 84 | 85 | > The calculations are done with the nice!nano controller. 86 | 87 | In order to use MX Switches, the special "plate" comes with the Flake which should be placed between the board and the switches. 88 | 89 | # Build 90 | 91 | If you want to build the keyboard yourself, check out [Guide](./docs/build_guide.md), which describes everything you need to build your own Flake. 92 | 93 | Also, make sure to check out the [Gallery ✨](./docs/gallery.md) with awesome Flake builds. 94 | 95 | # Credits 96 | 97 | Huge thanks to: 98 | 99 | - [@foostan](https://github.com/foostan), the author of [Corne Keyboard](https://github.com/foostan/crkbd) which was my introduction to the world of ergonomic keyboards. 100 | 101 | - [@pashutk](https://github.com/pashutk), the author of [Chocofi](https://github.com/pashutk/chocofi), an amazing tiny keyboard I've been using for a while. 102 | 103 | - [@ebastler](https://github.com/ebastler/) for his amazing [marbastlib](https://github.com/ebastler/marbastlib) which is being used as the basis for footprint switches 104 | 105 | - [@josefadamcik](https://github.com/josefadamcik), the author of [Sofle](https://github.com/josefadamcik/SofleKeyboard) which gave huge inspiration for the Flake's key layout. 106 | 107 | - [@petejohanson](https://github.com/petejohanson) for creating [ZMK Firmware](https://github.com/zmkfirmware/zmk) and all the [contributors](https://github.com/zmkfirmware/zmk/graphs/contributors) that make it better each day. 108 | 109 | - Everyone working on [KiCad](https://gitlab.com/kicad/code/kicad) and [FreeCAD](https://github.com/FreeCAD/FreeCAD), for creating such powerful open source tools 110 | 111 | - People from the [ZMK discord server](https://zmk.dev/community/discord/invite) for being so kind while helping me learn how to design PCB and how to debug and solve various problems. 112 | 113 | - Finally, thank you to everyone who explores unpopular technologies, digs into niche topics, and makes amazing things possible. 114 | 115 | ## Stars 116 | 117 | Your stars give motivation to keep improving the project :) 118 | 119 | [![Star History Chart](https://api.star-history.com/svg?repos=anywhy-io/flake&type=Date)](https://star-history.com/#anywhy-io/flake&Date) -------------------------------------------------------------------------------- /docs/build_guide.md: -------------------------------------------------------------------------------- 1 | # How to Build the Flake? 2 | 3 | ## Components 4 | 5 | To build the Flake, you'll need the following materials: 6 | 7 | | Name | Count | Remarks | 8 | |:----------------------|:----------|:-------------------------------------| 9 | | PCB | 1 set | | 10 | | MX hot-swap sockets | 40/46/58 | | 11 | | Choc hot-swap sockets | 40/46/58 | | 12 | | Diodes | 40/46/58 | 1N4148 SOD-323 | 13 | | Switches | 40/46/58 | Choc V1/V2 or MX switches | 14 | | Keycaps | 40/46/58 | Compatible with your switches | 15 | | Controllers | 2 | Any ProMicro-compatible controller | 16 | | USB-C ports | 2 | 6 pins, mid-mount 1.6mm ([example](https://www.lcsc.com/product-detail/USB-Connectors_BXCONN-UC19-0B06F65011_C36936556.html))| 17 | | Reset buttons | 2 | TS-1289VE-4 | 18 | | Enclosure | 1 set | | 19 | | Plates | 1 set | Required for MX switches | 20 | | M2 Screws | 8 | Flat countersunk 8mm (e.g., DIN965) | 21 | | M2 Hex nuts | 8 | DIN439 (thinner than regular) | 22 | | Rubber feet | 8 | 6x2mm | 23 | | Battery sockets | 2 | JST 1.25 with straight pins | 24 | | Batteries | 2 | 402030 (or smaller) with JST 1.25 | 25 | 26 | [Here](essential_files.md) you can read where to find all the files you need for the PCBs and enclosures manufacture. 27 | 28 | > **Note**: MX switch plates and batteries are optional depending on your build: 29 | > - Skip the plates if are going to use only Choc switches 30 | > - Omit batteries if plan to use Flake only by wire 31 | 32 | # Assembly 33 | 34 | > ⚠️ **Important**: The soldering process can be challenging, especially for beginners. This guide is structured to tackle the most difficult parts first to minimize component waste if something goes wrong. I recommend reading the guide completely before starting assembly. For first-time builders, having spare PCBs and parts is advised. 35 | 36 | ## Preparing the PCB 37 | 38 | The PCB consists of two halves connected by breakaway tabs. 39 | 40 | PCB image 41 | 42 | Carefully separate the halves using pliers. Handle the top section with extra care - it remains fragile until the controller is installed. 43 | 44 | PCB image 45 | 46 | Since the assembly process is identical for both halves, this guide will focus on building one half. Simply repeat these steps for the second half. 47 | 48 | Select the PCB half you'll assemble first. 49 | 50 | PCB image 51 | 52 | If you're building the S version with 40 keys, now is the time to remove the outer column. To do this, hold the PCB with the bottom side facing you (as shown in the previous image) and gently fold it toward you until it breaks. 53 | 54 | For M or L versions, keep the PCB as is. 55 | 56 | ## USB Port 57 | 58 | > **Note**: The outer pins and legs are connected to the GND (Ground) net, which contains substantial copper and requires more heat to solder properly. To ensure good connection, use additional flux and slightly increase the iron temperature, but avoid keeping the iron on the pad for too long. 59 | 60 | Place the USB-C port in the appropriate cutout marked as J1 or J2, depending on which half you're working on. Ensure the port's back sits flush against the PCB. 61 | 62 | Apply a small amount of flux over the pins. Touch each of the six pads briefly with your soldering iron tip and solder wick. Use just enough solder to secure the port without creating bridges between pins. 63 | 64 | If bridges occur, apply flux and remove excess solder with your iron. 65 | 66 | PCB image 67 | 68 | After soldering the pins, flip the PCB and solder the legs. Hold the iron over each hole for a few seconds to allow the solder to flow into it. Use a moderate amount of solder so it will not stick out of the PCB surface. 69 | 70 | PCB image 71 | 72 | > **Tip**: A good practice is to test the connections with a multimeter after soldering. The pins are symmetrically connected to the nets: 73 | > 74 | > | Pins | Net | Description | 75 | > |------|-----|-------------| 76 | > | 1, 6 | GND | Ground | 77 | > | 2, 5 | VCC | Power | 78 | > | 3, 4 | RX | Data | 79 | > 80 | > Locate these network names on the controller pads and verify proper connections. 81 | 82 | ## Battery Connector 83 | 84 | Add solder to one of the long connector pads and apply flux. Insert the JST 1.25 socket into the BT1 hole (or BT2 for the other half) with the cutout facing downward. Hold the connector with tweezers, ensuring the legs lay flat on the pads. Apply soldered iron tip to the leg above the pre-soldered pad. Once one leg is secured, solder the second leg. 85 | 86 | Verify the connector sits parallel to the PCB. If needed, reheat the legs to adjust position. Check for any bridges between legs. 87 | 88 | PCB image 89 | 90 | Next, solder jumpers JP1 and JP2 (or JP3 and JP4, depending on the half). First, insert the battery into the socket and note the wire polarity from left to right. Remove the battery and solder the jumpers accordingly. For example, if you noted black (negative) then red (positive), solder the center and bottom pad on the left jumper and the center and top pad on the right jumper. 91 | 92 | > ⚠️ **Warning**: Incorrect polarity can damage both controller and battery. Double-check all connections before proceeding. 93 | 94 | PCB image 95 | 96 | ## Reset Switch 97 | 98 | Position the reset switch at the bottom of the PCB in the RSW1 (or RSW2) location. Apply flux to the pins and carefully solder them using solder wire. Remove the excessive solder. 99 | 100 | > **Note**: Two of the four pins connect to GND, so don't hesitate to use plenty of flux. 101 | 102 | PCB image 103 | 104 | ## Initial Sockets 105 | 106 | Before mounting the controller, solder the sockets adjacent to it. These become difficult to access once the controller is in place. 107 | 108 | PCB image 109 | 110 | ## Per Key Components 111 | 112 | Each key requires one diode and two sockets. Begin with the diode installation: 113 | 114 | 1. Apply solder to one pad 115 | 2. Using tweezers, hold the diode while heating the solder 116 | 3. Place the diode ensuring correct polarity 117 | 4. Once secured, solder the remaining leg 118 | 119 | PCB image 120 | 121 | After the diode is installed, mount the sockets (MX on top, Choc on bottom). Hold the soldering iron at approximately 45° to the table and insert it into the socket's side leg. Feed solder just below the tip to ensure even distribution. Repeat for the other leg and second socket. 122 | 123 | ## Controller Installation 124 | 125 | Position the controller in the cutout labeled U1 (or U2). Use the silkscreen and top holes for proper alignment. 126 | 127 | PCB image 128 | 129 | For optimal results, temporarily insert pins in the top two holes without soldering them. This helps maintain position during soldering. 130 | 131 | Begin by soldering opposite corners, preferably choosing pads with minimal copper (aka not GND or RAW). I prefer B6 followed by TX pad. 132 | 133 | Apply flux generously to the chosen hole. Insert solder wire and touch both the hole ring and solder with the iron tip. Push the wire in until all the solder is absorbed. Melt the joint and press down on the controller with the tweezers. Repeat for the opposite hole. When done correctly, the controller should sit flush against the PCB. 134 | 135 | > Tip: Since direct pad contact is difficult, consider using a hot plate during soldering. Alternative heating methods (like a regular fan) can help. When filling holes, keep the iron in place for several seconds to distribute heat evenly. To avoid controller damage, touch only the solder bubble, not the hole ring. 136 | 137 | After securing the controller, remove the temporary legs and solder all remaining holes. Use plenty of flux. After soldering all connections, apply flux and remove any excess solder with the iron. 138 | 139 | The controller should sit flat with no protruding solder. 140 | 141 | PCB image 142 | 143 | ## Remaining Diodes and Sockets 144 | 145 | Complete the installation of remaining diodes and sockets following [the same process as before](#per-key-components). It's recommended to install all diodes first, then proceed with socket installation. 146 | 147 | PCB image 148 | 149 | ## Enclosure Assembly 150 | 151 | Place the PCB in the enclosure as shown. Carefully connect the battery, avoiding vertical force on the JST connector to prevent damage. Position the battery in its designated cutout and route wires to avoid interference with the lid. 152 | 153 | PCB image 154 | 155 | Place the lid and ensure it sits evenly. Insert hex nuts into the holes, compress the enclosure, and insert screws from the bottom. Add rubber feet, positioning them oppositely on the second half to eliminate gaps when halves are placed back-to-back. 156 | 157 | PCB image 158 | 159 | Repeat the entire process for the second half. 160 | 161 | PCB image 162 | 163 | ## Final Assembly 164 | 165 | Insert your chosen switches into the appropriate sockets (MX in top socket; Choc in bottom socket). Attach keycaps to complete the physical assembly. To make your Flake fully functional, you'll need to flash the firmware - refer to the [flashing guide](flashing_guide.md) for instructions. -------------------------------------------------------------------------------- /docs/essential_files.md: -------------------------------------------------------------------------------- 1 | # Where is the PCB Gerber file? 2 | 3 | You can find these files in their respective directories based on keyboard size: 4 | 5 | ``` 6 | pcb//production/ 7 | ``` 8 | 9 | Download the appropriate Gerber files for your keyboard version: 10 | 11 | - [Flake S/M](https://github.com/anywhy-io/flake/blob/main/pcb/M%2CS/production/Flake.zip) 12 | - [Flake L](https://github.com/anywhy-io/flake/blob/main/pcb/L/production/Flake-L.zip) 13 | 14 | # Where are the Enclosure files? 15 | 16 | Enclosure files are organized by keyboard size in the following directory structure: 17 | 18 | ``` 19 | enclosure// 20 | ``` 21 | 22 | Select the enclosure files matching your keyboard version: 23 | 24 | - [Flake S](https://github.com/anywhy-io/flake/tree/main/enclosure/S) 25 | - [Flake M](https://github.com/anywhy-io/flake/tree/main/enclosure/M) 26 | - [Flake L](https://github.com/anywhy-io/flake/tree/main/enclosure/L) 27 | -------------------------------------------------------------------------------- /docs/flashing_guide.md: -------------------------------------------------------------------------------- 1 | # How to Flash the Flake? 2 | 3 | ## Getting the Firmware 4 | 5 | Before your keyboard can function, you'll need to flash it with the appropriate firmware. The firmware is available in the [GitHub repository](https://github.com/anywhy-io/flake-zmk-module). 6 | 7 | To download the firmware: 8 | 1. Visit the repository's [Actions page](https://github.com/anywhy-io/flake-zmk-module/actions) 9 | 2. Select the most recent successful build (indicated by a green checkmark) 10 | 3. Download the firmware package 11 | 12 | Firmware download page 13 | 14 | ## Flashing Process 15 | 16 | ### Left Half 17 | 1. Connect the left half of your keyboard to your computer via USB 18 | 2. Press the reset button twice quickly to enter bootloader mode 19 | - The keyboard will appear as a storage device in your file manager 20 | 3. Locate the firmware file beginning with "anywhy_flake_left..." (with `.uf2` extension) 21 | 4. Copy this file to the keyboard's storage device 22 | - The device will automatically disconnect once flashing is complete 23 | 24 | ### Right Half 25 | 1. Disconnect the left half and connect the right half 26 | 2. Repeat the same process using the file beginning with "anywhy_flake_right..." 27 | 28 | ## Configuring with ZMK Studio 29 | 30 | ### Initial Connection 31 | 1. Reconnect the left half of the keyboard 32 | 2. Navigate to [ZMK Studio](https://zmk.studio) website 33 | 34 | ZMK Studio USB connection 35 | 36 | 3. Click the USB button and select "Anywhy Flake" from the device list 37 | 38 | ### Unlocking the Keyboard 39 | 40 | To unlock the keyboard's configuration: 41 | 42 | 1. Access the second layer by holding down the leftmost thumb key on the right half 43 | 2. Press the lowest key in the extra index finger column on the left half 44 | 45 | ZMK Studio unlock process 46 | 47 | 48 | This will give you access to the ZMK Studio interface where you can customize your keyboard's settings. 49 | 50 | ZMK Studio interface 51 | 52 | ### Setting the Layout 53 | 1. In the left sidebar, select your keyboard size from the available options 54 | 2. This ensures all configurations match your specific Flake variant 55 | 56 | ZMK Studio layout selection 57 | 58 | ## Final Steps 59 | 60 | Your Flake keyboard is now ready to use! You can: 61 | - Continue using it via USB connection 62 | - Disconnect the USB cable and switch to Bluetooth mode 63 | - Customize your keyboard's layout and functions using ZMK Studio 64 | 65 | Feel free to experiment with different configurations to find the setup that works best for you. -------------------------------------------------------------------------------- /docs/gallery.md: -------------------------------------------------------------------------------- 1 | # Anywhy Flake Gallery 2 | 3 | Welcome to the gallery, here you will find amazing Flake builds made by people. This page will be constantly expanding, so if you have a build you want to share, feel free to contact me and I'll add it here. 4 | 5 | ## by [@peppapighs](https://www.reddit.com/r/ErgoMechKeyboards/comments/1jbw0kt/my_custom_flake/) 6 | 7 | flake image 8 | flake image 9 | 10 | Flake S with modified PCB adding through-holes for MCU mounting 11 | 12 | ## by [@caiodelgado](https://www.reddit.com/r/ErgoMechKeyboards/comments/1iz07kw/anywhy_flake_choc_v1_robinsunset_tenting/) 13 | 14 | Flake with Choc v1 Robin switches, 3d-printed keycaps and tenting legs 15 | 16 | flake image 17 | flake image 18 | 19 | 20 | ## by [@kurisutofujp](https://www.reddit.com/r/ErgoMechKeyboards/comments/1iirgyt/comment/mb9034h/) 21 | 22 | Snow-white Flake L with MX switches 23 | 24 | flake image 25 | 26 | ## by [@devpew](https://www.reddit.com/r/ErgoMechKeyboards/comments/1ieevvh/flake/) 27 | 28 | Clean white Flake M with black keyscaps 29 | 30 | flake image 31 | 32 | 33 | ## by [@CaptLynx](https://www.reddit.com/r/ErgoMechKeyboards/comments/1ic3nkc/caitlynarcane_themed_anywhy_flake/) 34 | 35 | The design is inspired by Caitlin, a character from the Arcane series. 36 | 37 | flake image 38 | 39 | flake image 40 | 41 | flake image 42 | -------------------------------------------------------------------------------- /docs/img/build_guide/assembled.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/assembled.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/assembled_back.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/assembled_back.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/controller.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/controller.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/controller_cutout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/controller_cutout.png -------------------------------------------------------------------------------- /docs/img/build_guide/controller_top.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/controller_top.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/diode.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /docs/img/build_guide/firmware.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/firmware.png -------------------------------------------------------------------------------- /docs/img/build_guide/first_sockets.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/first_sockets.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/jst.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/jst.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/jumpers.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | -------------------------------------------------------------------------------- /docs/img/build_guide/pcb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/pcb.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/pcb_assembled.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/pcb_assembled.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/pcb_half.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/pcb_half.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/pcb_in_enclosure.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/pcb_in_enclosure.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/pcb_separated.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/pcb_separated.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/reset.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/reset.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/usb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/usb.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/usb_bottom.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/usb_bottom.jpg -------------------------------------------------------------------------------- /docs/img/build_guide/zmk_layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/zmk_layout.png -------------------------------------------------------------------------------- /docs/img/build_guide/zmk_studio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/zmk_studio.png -------------------------------------------------------------------------------- /docs/img/build_guide/zmk_unlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/zmk_unlock.png -------------------------------------------------------------------------------- /docs/img/build_guide/zmk_usb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/build_guide/zmk_usb.png -------------------------------------------------------------------------------- /docs/img/col_stagger.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /docs/img/flake-l.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/flake-l.jpg -------------------------------------------------------------------------------- /docs/img/flake-m.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/flake-m.jpg -------------------------------------------------------------------------------- /docs/img/flake-s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/flake-s.jpg -------------------------------------------------------------------------------- /docs/img/flake_switches.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/flake_switches.jpg -------------------------------------------------------------------------------- /docs/img/flakes.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/flakes.jpg -------------------------------------------------------------------------------- /docs/img/gallery/CaptLynx/img1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/CaptLynx/img1.webp -------------------------------------------------------------------------------- /docs/img/gallery/CaptLynx/img2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/CaptLynx/img2.webp -------------------------------------------------------------------------------- /docs/img/gallery/CaptLynx/img3.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/CaptLynx/img3.webp -------------------------------------------------------------------------------- /docs/img/gallery/caiodelgado/img1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/caiodelgado/img1.webp -------------------------------------------------------------------------------- /docs/img/gallery/caiodelgado/img2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/caiodelgado/img2.webp -------------------------------------------------------------------------------- /docs/img/gallery/devpew/img1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/devpew/img1.webp -------------------------------------------------------------------------------- /docs/img/gallery/kurisutofujp/img1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/kurisutofujp/img1.webp -------------------------------------------------------------------------------- /docs/img/gallery/peppapighs/img1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/peppapighs/img1.webp -------------------------------------------------------------------------------- /docs/img/gallery/peppapighs/img2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/gallery/peppapighs/img2.webp -------------------------------------------------------------------------------- /docs/img/plate.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/plate.jpg -------------------------------------------------------------------------------- /docs/img/row_stagger.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | -------------------------------------------------------------------------------- /docs/img/stacked.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/stacked.jpg -------------------------------------------------------------------------------- /docs/img/table.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/table.jpg -------------------------------------------------------------------------------- /docs/img/thickness.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/docs/img/thickness.jpg -------------------------------------------------------------------------------- /enclosure/L/Enclosure-L.FCStd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/enclosure/L/Enclosure-L.FCStd -------------------------------------------------------------------------------- /enclosure/M/Enclosure-M.FCStd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/enclosure/M/Enclosure-M.FCStd -------------------------------------------------------------------------------- /enclosure/S/Enclosure-S.FCStd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/enclosure/S/Enclosure-S.FCStd -------------------------------------------------------------------------------- /pcb/L/Flake-L.kicad_pro: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "3dviewports": [], 4 | "design_settings": { 5 | "defaults": { 6 | "apply_defaults_to_fp_fields": false, 7 | "apply_defaults_to_fp_shapes": false, 8 | "apply_defaults_to_fp_text": false, 9 | "board_outline_line_width": 0.05, 10 | "copper_line_width": 0.2, 11 | "copper_text_italic": false, 12 | "copper_text_size_h": 1.5, 13 | "copper_text_size_v": 1.5, 14 | "copper_text_thickness": 0.3, 15 | "copper_text_upright": false, 16 | "courtyard_line_width": 0.05, 17 | "dimension_precision": 4, 18 | "dimension_units": 3, 19 | "dimensions": { 20 | "arrow_length": 1270000, 21 | "extension_offset": 500000, 22 | "keep_text_aligned": true, 23 | "suppress_zeroes": false, 24 | "text_position": 0, 25 | "units_format": 1 26 | }, 27 | "fab_line_width": 0.1, 28 | "fab_text_italic": false, 29 | "fab_text_size_h": 1.0, 30 | "fab_text_size_v": 1.0, 31 | "fab_text_thickness": 0.15, 32 | "fab_text_upright": false, 33 | "other_line_width": 0.1, 34 | "other_text_italic": false, 35 | "other_text_size_h": 1.0, 36 | "other_text_size_v": 1.0, 37 | "other_text_thickness": 0.15, 38 | "other_text_upright": false, 39 | "pads": { 40 | "drill": 2.2, 41 | "height": 5.2, 42 | "width": 5.2 43 | }, 44 | "silk_line_width": 0.1, 45 | "silk_text_italic": false, 46 | "silk_text_size_h": 1.0, 47 | "silk_text_size_v": 1.0, 48 | "silk_text_thickness": 0.1, 49 | "silk_text_upright": false, 50 | "zones": { 51 | "min_clearance": 0.0 52 | } 53 | }, 54 | "diff_pair_dimensions": [ 55 | { 56 | "gap": 0.0, 57 | "via_gap": 0.0, 58 | "width": 0.0 59 | } 60 | ], 61 | "drc_exclusions": [], 62 | "meta": { 63 | "version": 2 64 | }, 65 | "rule_severities": { 66 | "annular_width": "error", 67 | "clearance": "error", 68 | "connection_width": "warning", 69 | "copper_edge_clearance": "error", 70 | "copper_sliver": "warning", 71 | "courtyards_overlap": "error", 72 | "diff_pair_gap_out_of_range": "error", 73 | "diff_pair_uncoupled_length_too_long": "error", 74 | "drill_out_of_range": "error", 75 | "duplicate_footprints": "warning", 76 | "extra_footprint": "warning", 77 | "footprint": "error", 78 | "footprint_symbol_mismatch": "warning", 79 | "footprint_type_mismatch": "ignore", 80 | "hole_clearance": "error", 81 | "hole_near_hole": "error", 82 | "holes_co_located": "warning", 83 | "invalid_outline": "error", 84 | "isolated_copper": "warning", 85 | "item_on_disabled_layer": "error", 86 | "items_not_allowed": "error", 87 | "length_out_of_range": "error", 88 | "lib_footprint_issues": "warning", 89 | "lib_footprint_mismatch": "warning", 90 | "malformed_courtyard": "error", 91 | "microvia_drill_out_of_range": "error", 92 | "missing_courtyard": "ignore", 93 | "missing_footprint": "warning", 94 | "net_conflict": "warning", 95 | "npth_inside_courtyard": "ignore", 96 | "padstack": "warning", 97 | "pth_inside_courtyard": "ignore", 98 | "shorting_items": "error", 99 | "silk_edge_clearance": "warning", 100 | "silk_over_copper": "warning", 101 | "silk_overlap": "warning", 102 | "skew_out_of_range": "error", 103 | "solder_mask_bridge": "error", 104 | "starved_thermal": "error", 105 | "text_height": "warning", 106 | "text_thickness": "warning", 107 | "through_hole_pad_without_hole": "error", 108 | "too_many_vias": "error", 109 | "track_dangling": "warning", 110 | "track_width": "error", 111 | "tracks_crossing": "error", 112 | "unconnected_items": "error", 113 | "unresolved_variable": "error", 114 | "via_dangling": "warning", 115 | "zones_intersect": "error" 116 | }, 117 | "rules": { 118 | "max_error": 0.005, 119 | "min_clearance": 0.15, 120 | "min_connection": 0.15, 121 | "min_copper_edge_clearance": 0.3, 122 | "min_hole_clearance": 0.3, 123 | "min_hole_to_hole": 0.3, 124 | "min_microvia_diameter": 0.2, 125 | "min_microvia_drill": 0.1, 126 | "min_resolved_spokes": 2, 127 | "min_silk_clearance": 0.0, 128 | "min_text_height": 0.5, 129 | "min_text_thickness": 0.1, 130 | "min_through_hole_diameter": 0.3, 131 | "min_track_width": 0.15, 132 | "min_via_annular_width": 0.15, 133 | "min_via_diameter": 0.3, 134 | "solder_mask_to_copper_clearance": 0.005, 135 | "use_height_for_length_calcs": true 136 | }, 137 | "teardrop_options": [ 138 | { 139 | "td_onpadsmd": true, 140 | "td_onroundshapesonly": false, 141 | "td_ontrackend": false, 142 | "td_onviapad": true 143 | } 144 | ], 145 | "teardrop_parameters": [ 146 | { 147 | "td_allow_use_two_tracks": true, 148 | "td_curve_segcount": 5, 149 | "td_height_ratio": 1.0, 150 | "td_length_ratio": 0.5, 151 | "td_maxheight": 1.0, 152 | "td_maxlen": 0.5, 153 | "td_on_pad_in_zone": false, 154 | "td_target_name": "td_round_shape", 155 | "td_width_to_size_filter_ratio": 0.9 156 | }, 157 | { 158 | "td_allow_use_two_tracks": true, 159 | "td_curve_segcount": 5, 160 | "td_height_ratio": 0.6, 161 | "td_length_ratio": 0.4, 162 | "td_maxheight": 1.0, 163 | "td_maxlen": 0.5, 164 | "td_on_pad_in_zone": false, 165 | "td_target_name": "td_rect_shape", 166 | "td_width_to_size_filter_ratio": 0.9 167 | }, 168 | { 169 | "td_allow_use_two_tracks": true, 170 | "td_curve_segcount": 5, 171 | "td_height_ratio": 1.0, 172 | "td_length_ratio": 0.5, 173 | "td_maxheight": 1.0, 174 | "td_maxlen": 0.5, 175 | "td_on_pad_in_zone": false, 176 | "td_target_name": "td_track_end", 177 | "td_width_to_size_filter_ratio": 0.9 178 | } 179 | ], 180 | "track_widths": [ 181 | 0.0, 182 | 0.15, 183 | 0.3 184 | ], 185 | "tuning_pattern_settings": { 186 | "diff_pair_defaults": { 187 | "corner_radius_percentage": 80, 188 | "corner_style": 1, 189 | "max_amplitude": 1.0, 190 | "min_amplitude": 0.2, 191 | "single_sided": false, 192 | "spacing": 1.0 193 | }, 194 | "diff_pair_skew_defaults": { 195 | "corner_radius_percentage": 80, 196 | "corner_style": 1, 197 | "max_amplitude": 1.0, 198 | "min_amplitude": 0.2, 199 | "single_sided": false, 200 | "spacing": 0.6 201 | }, 202 | "single_track_defaults": { 203 | "corner_radius_percentage": 80, 204 | "corner_style": 1, 205 | "max_amplitude": 1.0, 206 | "min_amplitude": 0.2, 207 | "single_sided": false, 208 | "spacing": 0.6 209 | } 210 | }, 211 | "via_dimensions": [ 212 | { 213 | "diameter": 0.0, 214 | "drill": 0.0 215 | } 216 | ], 217 | "zones_allow_external_fillets": false 218 | }, 219 | "ipc2581": { 220 | "dist": "", 221 | "distpn": "", 222 | "internal_id": "", 223 | "mfg": "", 224 | "mpn": "" 225 | }, 226 | "layer_presets": [], 227 | "viewports": [] 228 | }, 229 | "boards": [], 230 | "cvpcb": { 231 | "equivalence_files": [] 232 | }, 233 | "erc": { 234 | "erc_exclusions": [], 235 | "meta": { 236 | "version": 0 237 | }, 238 | "pin_map": [ 239 | [ 240 | 0, 241 | 0, 242 | 0, 243 | 0, 244 | 0, 245 | 0, 246 | 1, 247 | 0, 248 | 0, 249 | 0, 250 | 0, 251 | 2 252 | ], 253 | [ 254 | 0, 255 | 2, 256 | 0, 257 | 1, 258 | 0, 259 | 0, 260 | 1, 261 | 0, 262 | 2, 263 | 2, 264 | 2, 265 | 2 266 | ], 267 | [ 268 | 0, 269 | 0, 270 | 0, 271 | 0, 272 | 0, 273 | 0, 274 | 1, 275 | 0, 276 | 1, 277 | 0, 278 | 1, 279 | 2 280 | ], 281 | [ 282 | 0, 283 | 1, 284 | 0, 285 | 0, 286 | 0, 287 | 0, 288 | 1, 289 | 1, 290 | 2, 291 | 1, 292 | 1, 293 | 2 294 | ], 295 | [ 296 | 0, 297 | 0, 298 | 0, 299 | 0, 300 | 0, 301 | 0, 302 | 1, 303 | 0, 304 | 0, 305 | 0, 306 | 0, 307 | 2 308 | ], 309 | [ 310 | 0, 311 | 0, 312 | 0, 313 | 0, 314 | 0, 315 | 0, 316 | 0, 317 | 0, 318 | 0, 319 | 0, 320 | 0, 321 | 2 322 | ], 323 | [ 324 | 1, 325 | 1, 326 | 1, 327 | 1, 328 | 1, 329 | 0, 330 | 1, 331 | 1, 332 | 1, 333 | 1, 334 | 1, 335 | 2 336 | ], 337 | [ 338 | 0, 339 | 0, 340 | 0, 341 | 1, 342 | 0, 343 | 0, 344 | 1, 345 | 0, 346 | 0, 347 | 0, 348 | 0, 349 | 2 350 | ], 351 | [ 352 | 0, 353 | 2, 354 | 1, 355 | 2, 356 | 0, 357 | 0, 358 | 1, 359 | 0, 360 | 2, 361 | 2, 362 | 2, 363 | 2 364 | ], 365 | [ 366 | 0, 367 | 2, 368 | 0, 369 | 1, 370 | 0, 371 | 0, 372 | 1, 373 | 0, 374 | 2, 375 | 0, 376 | 0, 377 | 2 378 | ], 379 | [ 380 | 0, 381 | 2, 382 | 1, 383 | 1, 384 | 0, 385 | 0, 386 | 1, 387 | 0, 388 | 2, 389 | 0, 390 | 0, 391 | 2 392 | ], 393 | [ 394 | 2, 395 | 2, 396 | 2, 397 | 2, 398 | 2, 399 | 2, 400 | 2, 401 | 2, 402 | 2, 403 | 2, 404 | 2, 405 | 2 406 | ] 407 | ], 408 | "rule_severities": { 409 | "bus_definition_conflict": "error", 410 | "bus_entry_needed": "error", 411 | "bus_to_bus_conflict": "error", 412 | "bus_to_net_conflict": "error", 413 | "conflicting_netclasses": "error", 414 | "different_unit_footprint": "error", 415 | "different_unit_net": "error", 416 | "duplicate_reference": "error", 417 | "duplicate_sheet_names": "error", 418 | "endpoint_off_grid": "warning", 419 | "extra_units": "error", 420 | "global_label_dangling": "warning", 421 | "hier_label_mismatch": "error", 422 | "label_dangling": "error", 423 | "lib_symbol_issues": "warning", 424 | "missing_bidi_pin": "warning", 425 | "missing_input_pin": "warning", 426 | "missing_power_pin": "error", 427 | "missing_unit": "warning", 428 | "multiple_net_names": "warning", 429 | "net_not_bus_member": "warning", 430 | "no_connect_connected": "warning", 431 | "no_connect_dangling": "warning", 432 | "pin_not_connected": "error", 433 | "pin_not_driven": "error", 434 | "pin_to_pin": "warning", 435 | "power_pin_not_driven": "error", 436 | "similar_labels": "warning", 437 | "simulation_model_issue": "ignore", 438 | "unannotated": "error", 439 | "unit_value_mismatch": "error", 440 | "unresolved_variable": "error", 441 | "wire_dangling": "error" 442 | } 443 | }, 444 | "libraries": { 445 | "pinned_footprint_libs": [], 446 | "pinned_symbol_libs": [] 447 | }, 448 | "meta": { 449 | "filename": "Flake-L.kicad_pro", 450 | "version": 1 451 | }, 452 | "net_settings": { 453 | "classes": [ 454 | { 455 | "bus_width": 12, 456 | "clearance": 0.2, 457 | "diff_pair_gap": 0.25, 458 | "diff_pair_via_gap": 0.25, 459 | "diff_pair_width": 0.2, 460 | "line_style": 0, 461 | "microvia_diameter": 0.3, 462 | "microvia_drill": 0.1, 463 | "name": "Default", 464 | "pcb_color": "rgba(0, 0, 0, 0.000)", 465 | "schematic_color": "rgba(0, 0, 0, 0.000)", 466 | "track_width": 0.2, 467 | "via_diameter": 0.6, 468 | "via_drill": 0.3, 469 | "wire_width": 6 470 | } 471 | ], 472 | "meta": { 473 | "version": 3 474 | }, 475 | "net_colors": null, 476 | "netclass_assignments": null, 477 | "netclass_patterns": [] 478 | }, 479 | "pcbnew": { 480 | "last_paths": { 481 | "gencad": "", 482 | "idf": "", 483 | "netlist": "", 484 | "plot": "", 485 | "pos_files": "", 486 | "specctra_dsn": "", 487 | "step": "Flake.step", 488 | "svg": "", 489 | "vrml": "" 490 | }, 491 | "page_layout_descr_file": "" 492 | }, 493 | "schematic": { 494 | "annotate_start_num": 0, 495 | "bom_export_filename": "", 496 | "bom_fmt_presets": [], 497 | "bom_fmt_settings": { 498 | "field_delimiter": ",", 499 | "keep_line_breaks": false, 500 | "keep_tabs": false, 501 | "name": "CSV", 502 | "ref_delimiter": ",", 503 | "ref_range_delimiter": "", 504 | "string_delimiter": "\"" 505 | }, 506 | "bom_presets": [], 507 | "bom_settings": { 508 | "exclude_dnp": false, 509 | "fields_ordered": [ 510 | { 511 | "group_by": false, 512 | "label": "Reference", 513 | "name": "Reference", 514 | "show": true 515 | }, 516 | { 517 | "group_by": true, 518 | "label": "Value", 519 | "name": "Value", 520 | "show": true 521 | }, 522 | { 523 | "group_by": false, 524 | "label": "Datasheet", 525 | "name": "Datasheet", 526 | "show": true 527 | }, 528 | { 529 | "group_by": false, 530 | "label": "Footprint", 531 | "name": "Footprint", 532 | "show": true 533 | }, 534 | { 535 | "group_by": false, 536 | "label": "Qty", 537 | "name": "${QUANTITY}", 538 | "show": true 539 | }, 540 | { 541 | "group_by": true, 542 | "label": "DNP", 543 | "name": "${DNP}", 544 | "show": true 545 | }, 546 | { 547 | "group_by": false, 548 | "label": "#", 549 | "name": "${ITEM_NUMBER}", 550 | "show": false 551 | }, 552 | { 553 | "group_by": false, 554 | "label": "Sim.Device", 555 | "name": "Sim.Device", 556 | "show": false 557 | }, 558 | { 559 | "group_by": false, 560 | "label": "Sim.Pins", 561 | "name": "Sim.Pins", 562 | "show": false 563 | }, 564 | { 565 | "group_by": false, 566 | "label": "Description", 567 | "name": "Description", 568 | "show": false 569 | } 570 | ], 571 | "filter_string": "", 572 | "group_symbols": true, 573 | "name": "", 574 | "sort_asc": true, 575 | "sort_field": "Reference" 576 | }, 577 | "connection_grid_size": 50.0, 578 | "drawing": { 579 | "dashed_lines_dash_length_ratio": 12.0, 580 | "dashed_lines_gap_length_ratio": 3.0, 581 | "default_line_thickness": 6.0, 582 | "default_text_size": 50.0, 583 | "field_names": [], 584 | "intersheets_ref_own_page": false, 585 | "intersheets_ref_prefix": "", 586 | "intersheets_ref_short": false, 587 | "intersheets_ref_show": false, 588 | "intersheets_ref_suffix": "", 589 | "junction_size_choice": 3, 590 | "label_size_ratio": 0.375, 591 | "operating_point_overlay_i_precision": 3, 592 | "operating_point_overlay_i_range": "~A", 593 | "operating_point_overlay_v_precision": 3, 594 | "operating_point_overlay_v_range": "~V", 595 | "overbar_offset_ratio": 1.23, 596 | "pin_symbol_size": 25.0, 597 | "text_offset_ratio": 0.15 598 | }, 599 | "legacy_lib_dir": "", 600 | "legacy_lib_list": [], 601 | "meta": { 602 | "version": 1 603 | }, 604 | "net_format_name": "", 605 | "ngspice": { 606 | "fix_include_paths": true, 607 | "meta": { 608 | "version": 0 609 | }, 610 | "model_mode": 4, 611 | "workbook_filename": "" 612 | }, 613 | "page_layout_descr_file": "", 614 | "plot_directory": "", 615 | "spice_current_sheet_as_root": false, 616 | "spice_external_command": "spice \"%I\"", 617 | "spice_model_current_sheet_as_root": true, 618 | "spice_save_all_currents": false, 619 | "spice_save_all_dissipations": false, 620 | "spice_save_all_voltages": false, 621 | "subpart_first_id": 65, 622 | "subpart_id_separator": 0 623 | }, 624 | "sheets": [ 625 | [ 626 | "90c8b5ef-2115-4ce5-9f08-3facf16c5dc1", 627 | "Root" 628 | ], 629 | [ 630 | "56cc3e7f-98ec-487b-8cea-9eac8504bc25", 631 | "Left" 632 | ], 633 | [ 634 | "d5bac6f5-3ae0-4cc7-8f72-825f2fad23e6", 635 | "Right" 636 | ] 637 | ], 638 | "text_variables": {} 639 | } 640 | -------------------------------------------------------------------------------- /pcb/L/Flake-L.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch 2 | (version 20231120) 3 | (generator "eeschema") 4 | (generator_version "8.0") 5 | (uuid "90c8b5ef-2115-4ce5-9f08-3facf16c5dc1") 6 | (paper "A4") 7 | (lib_symbols) 8 | (sheet 9 | (at 58.42 74.93) 10 | (size 80.01 54.61) 11 | (fields_autoplaced yes) 12 | (stroke 13 | (width 0.1524) 14 | (type solid) 15 | ) 16 | (fill 17 | (color 0 0 0 0.0000) 18 | ) 19 | (uuid "56cc3e7f-98ec-487b-8cea-9eac8504bc25") 20 | (property "Sheetname" "Left" 21 | (at 58.42 72.3134 0) 22 | (effects 23 | (font 24 | (size 5.08 5.08) 25 | (thickness 0.635) 26 | ) 27 | (justify left bottom) 28 | ) 29 | ) 30 | (property "Sheetfile" "left.kicad_sch" 31 | (at 58.42 130.1246 0) 32 | (effects 33 | (font 34 | (size 1.27 1.27) 35 | ) 36 | (justify left top) 37 | ) 38 | ) 39 | (instances 40 | (project "Flake-L" 41 | (path "/90c8b5ef-2115-4ce5-9f08-3facf16c5dc1" 42 | (page "2") 43 | ) 44 | ) 45 | ) 46 | ) 47 | (sheet 48 | (at 161.29 74.93) 49 | (size 80.01 54.61) 50 | (fields_autoplaced yes) 51 | (stroke 52 | (width 0.1524) 53 | (type solid) 54 | ) 55 | (fill 56 | (color 0 0 0 0.0000) 57 | ) 58 | (uuid "d5bac6f5-3ae0-4cc7-8f72-825f2fad23e6") 59 | (property "Sheetname" "Right" 60 | (at 161.29 72.3134 0) 61 | (effects 62 | (font 63 | (size 5.08 5.08) 64 | (thickness 0.635) 65 | ) 66 | (justify left bottom) 67 | ) 68 | ) 69 | (property "Sheetfile" "right.kicad_sch" 70 | (at 161.29 130.1246 0) 71 | (effects 72 | (font 73 | (size 1.27 1.27) 74 | ) 75 | (justify left top) 76 | ) 77 | ) 78 | (instances 79 | (project "Flake-L" 80 | (path "/90c8b5ef-2115-4ce5-9f08-3facf16c5dc1" 81 | (page "3") 82 | ) 83 | ) 84 | ) 85 | ) 86 | (sheet_instances 87 | (path "/" 88 | (page "1") 89 | ) 90 | ) 91 | ) 92 | -------------------------------------------------------------------------------- /pcb/L/Flake-L.round-tracks-config: -------------------------------------------------------------------------------- 1 | Default True 0.5 0 2 | False True False 3 | -------------------------------------------------------------------------------- /pcb/L/fabrication-toolkit-options.json: -------------------------------------------------------------------------------- 1 | {"EXTRA_LAYERS": "", "EXTEND_EDGE_CUT": false, "ALTERNATIVE_EDGE_CUT": false, "AUTO TRANSLATE": true, "AUTO FILL": true, "EXCLUDE DNP": false} -------------------------------------------------------------------------------- /pcb/L/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (version 7) 3 | (lib (name "axseem")(type "KiCad")(uri "/home/axseem/me/kicad/Anywhy/Flake/pcb/lib/axseem.pretty")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /pcb/L/production/Flake-L.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/L/production/Flake-L.zip -------------------------------------------------------------------------------- /pcb/L/production/backups/Flake-L_2024-12-16_19-10-27.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/L/production/backups/Flake-L_2024-12-16_19-10-27.zip -------------------------------------------------------------------------------- /pcb/L/production/backups/Flake-L_2025-01-10_16-33-49.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/L/production/backups/Flake-L_2025-01-10_16-33-49.zip -------------------------------------------------------------------------------- /pcb/L/production/bom.csv: -------------------------------------------------------------------------------- 1 | Designator,Footprint,Quantity,Value,LCSC Part # 2 | "BT1, BT2",JST_1.25mm_mid-mount,2,Battery, 3 | "D1, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D2, D20, D21, D22, D23, D24, D25, D26, D27, D28, D29, D3, D30, D31, D32, D33, D34, D35, D36, D37, D38, D39, D4, D40, D41, D42, D43, D44, D45, D46, D47, D48, D49, D5, D50, D51, D52, D53, D54, D55, D56, D57, D58, D6, D7, D8, D9",D_SOD-323_HandSoldering,58,D, 4 | "J1, J2",USB-C_6Pin_Mid-mount,2,USB_C_Receptacle_PowerOnly_6P, 5 | "RSW1, RSW2",TS-1289VE-4,2,Reset_SW, 6 | "SW1, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW2, SW20, SW21, SW22, SW23, SW24, SW25, SW26, SW27, SW28, SW29, SW3, SW30, SW31, SW32, SW33, SW34, SW35, SW36, SW37, SW38, SW39, SW4, SW40, SW41, SW42, SW43, SW44, SW45, SW46, SW47, SW48, SW49, SW5, SW50, SW51, SW52, SW53, SW54, SW55, SW56, SW57, SW58, SW6, SW7, SW8, SW9",SW_MX_Choc-v1v2_Hotswap,58,SW_Push, 7 | "U1, U2",ProMicro_SMD,2,ProMicro, 8 | -------------------------------------------------------------------------------- /pcb/L/production/designators.csv: -------------------------------------------------------------------------------- 1 | BT1:1 2 | BT2:1 3 | D1:1 4 | D10:1 5 | D11:1 6 | D12:1 7 | D13:1 8 | D14:1 9 | D15:1 10 | D16:1 11 | D17:1 12 | D18:1 13 | D19:1 14 | D2:1 15 | D20:1 16 | D21:1 17 | D22:1 18 | D23:1 19 | D24:1 20 | D25:1 21 | D26:1 22 | D27:1 23 | D28:1 24 | D29:1 25 | D3:1 26 | D30:1 27 | D31:1 28 | D32:1 29 | D33:1 30 | D34:1 31 | D35:1 32 | D36:1 33 | D37:1 34 | D38:1 35 | D39:1 36 | D4:1 37 | D40:1 38 | D41:1 39 | D42:1 40 | D43:1 41 | D44:1 42 | D45:1 43 | D46:1 44 | D47:1 45 | D48:1 46 | D49:1 47 | D5:1 48 | D50:1 49 | D51:1 50 | D52:1 51 | D53:1 52 | D54:1 53 | D55:1 54 | D56:1 55 | D57:1 56 | D58:1 57 | D6:1 58 | D7:1 59 | D8:1 60 | D9:1 61 | H1:1 62 | H2:1 63 | H3:1 64 | H4:1 65 | H5:1 66 | H6:1 67 | H7:1 68 | H8:1 69 | J1:1 70 | J2:1 71 | JP1:1 72 | JP2:1 73 | JP3:1 74 | JP4:1 75 | REF**:24 76 | RSW1:1 77 | RSW2:1 78 | SW1:1 79 | SW10:1 80 | SW11:1 81 | SW12:1 82 | SW13:1 83 | SW14:1 84 | SW15:1 85 | SW16:1 86 | SW17:1 87 | SW18:1 88 | SW19:1 89 | SW2:1 90 | SW20:1 91 | SW21:1 92 | SW22:1 93 | SW23:1 94 | SW24:1 95 | SW25:1 96 | SW26:1 97 | SW27:1 98 | SW28:1 99 | SW29:1 100 | SW3:1 101 | SW30:1 102 | SW31:1 103 | SW32:1 104 | SW33:1 105 | SW34:1 106 | SW35:1 107 | SW36:1 108 | SW37:1 109 | SW38:1 110 | SW39:1 111 | SW4:1 112 | SW40:1 113 | SW41:1 114 | SW42:1 115 | SW43:1 116 | SW44:1 117 | SW45:1 118 | SW46:1 119 | SW47:1 120 | SW48:1 121 | SW49:1 122 | SW5:1 123 | SW50:1 124 | SW51:1 125 | SW52:1 126 | SW53:1 127 | SW54:1 128 | SW55:1 129 | SW56:1 130 | SW57:1 131 | SW58:1 132 | SW6:1 133 | SW7:1 134 | SW8:1 135 | SW9:1 136 | U1:1 137 | U2:1 138 | -------------------------------------------------------------------------------- /pcb/L/production/positions.csv: -------------------------------------------------------------------------------- 1 | Designator,Mid X,Mid Y,Rotation,Layer 2 | BT1,202.25,-116.0,0.0,bottom 3 | BT2,215.75,-116.0,0.0,bottom 4 | D1,80.5,-116.0,0.0,bottom 5 | D10,137.5,-120.75,0.0,bottom 6 | D11,156.5,-125.5,0.0,bottom 7 | D12,175.5,-125.5,0.0,bottom 8 | D13,80.5,-154.0,0.0,bottom 9 | D14,99.5,-154.0,0.0,bottom 10 | D15,118.5,-144.5,0.0,bottom 11 | D16,137.5,-139.75,0.0,bottom 12 | D17,156.5,-144.5,0.0,bottom 13 | D18,175.5,-144.5,0.0,bottom 14 | D19,80.5,-173.0,0.0,bottom 15 | D2,99.5,-116.0,0.0,bottom 16 | D20,99.5,-173.0,0.0,bottom 17 | D21,118.5,-163.5,0.0,bottom 18 | D22,137.5,-158.75,0.0,bottom 19 | D23,156.5,-163.5,0.0,bottom 20 | D24,175.5,-163.5,0.0,bottom 21 | D25,118.5,-182.5,0.0,bottom 22 | D26,137.5,-177.75,0.0,bottom 23 | D27,156.5,-182.5,0.0,bottom 24 | D28,176.964104,-186.379023,15.0,bottom 25 | D29,195.726946,-195.422372,30.0,bottom 26 | D3,118.5,-106.5,0.0,bottom 27 | D30,346.5,-116.0,0.0,bottom 28 | D31,327.5,-116.0,0.0,bottom 29 | D32,308.5,-106.5,0.0,bottom 30 | D33,289.5,-101.75,0.0,bottom 31 | D34,270.5,-106.5,0.0,bottom 32 | D35,251.5,-106.5,0.0,bottom 33 | D36,346.5,-135.0,0.0,bottom 34 | D37,327.5,-135.0,0.0,bottom 35 | D38,308.5,-125.5,0.0,bottom 36 | D39,289.5,-120.75,0.0,bottom 37 | D4,137.5,-101.75,0.0,bottom 38 | D40,270.5,-125.5,0.0,bottom 39 | D41,251.5,-125.5,0.0,bottom 40 | D42,346.5,-154.0,0.0,bottom 41 | D43,327.5,-154.0,0.0,bottom 42 | D44,308.5,-144.5,0.0,bottom 43 | D45,289.5,-139.75,0.0,bottom 44 | D46,270.5,-144.5,0.0,bottom 45 | D47,251.5,-144.5,0.0,bottom 46 | D48,346.5,-173.0,0.0,bottom 47 | D49,327.5,-173.0,0.0,bottom 48 | D5,156.5,-106.5,0.0,bottom 49 | D50,308.5,-163.5,0.0,bottom 50 | D51,289.5,-158.75,0.0,bottom 51 | D52,270.5,-163.5,0.0,bottom 52 | D53,251.5,-163.5,0.0,bottom 53 | D54,308.5,-182.5,0.0,bottom 54 | D55,289.5,-177.75,0.0,bottom 55 | D56,270.5,-182.5,0.0,bottom 56 | D57,249.729228,-184.049652,345.0,bottom 57 | D58,230.067284,-190.922372,330.0,bottom 58 | D6,175.5,-106.5,0.0,bottom 59 | D7,80.5,-135.0,0.0,bottom 60 | D8,99.5,-135.0,0.0,bottom 61 | D9,118.5,-125.5,0.0,bottom 62 | J1,198.725,-105.0,270.0,bottom 63 | J2,219.275,-105.0,90.0,bottom 64 | JP1,200.0,-113.5,0.0,bottom 65 | JP2,204.5,-113.5,0.0,bottom 66 | JP3,213.5,-113.5,0.0,bottom 67 | JP4,218.0,-113.5,0.0,bottom 68 | RSW1,133.0,-188.6,180.0,bottom 69 | RSW2,285.0,-188.6,180.0,bottom 70 | SW1,74.8975,-114.435,0.0,top 71 | SW10,131.8975,-119.185,0.0,top 72 | SW11,150.8975,-123.935,0.0,top 73 | SW12,169.8975,-123.935,0.0,top 74 | SW13,74.8975,-152.435,0.0,top 75 | SW14,93.8975,-152.435,0.0,top 76 | SW15,112.8975,-142.935,0.0,top 77 | SW16,131.8975,-138.185,0.0,top 78 | SW17,150.8975,-142.935,0.0,top 79 | SW18,169.8975,-142.935,0.0,top 80 | SW19,74.8975,-171.435,0.0,top 81 | SW2,93.8975,-114.435,0.0,top 82 | SW20,93.8975,-171.435,0.0,top 83 | SW21,112.8975,-161.935,0.0,top 84 | SW22,131.8975,-157.185,0.0,top 85 | SW23,150.8975,-161.935,0.0,top 86 | SW24,169.8975,-161.935,0.0,top 87 | SW25,112.8975,-180.935,0.0,top 88 | SW26,131.8975,-176.185,0.0,top 89 | SW27,150.8975,-180.935,0.0,top 90 | SW28,172.23691,-184.3964,345.0,top 91 | SW29,192.196868,-191.920464,330.0,top 92 | SW3,112.8975,-104.935,0.0,top 93 | SW30,340.8975,-114.435,0.0,top 94 | SW31,321.8975,-114.435,0.0,top 95 | SW32,302.8975,-104.935,0.0,top 96 | SW33,283.8975,-100.185,0.0,top 97 | SW34,264.8975,-104.935,0.0,top 98 | SW35,245.8975,-104.935,0.0,top 99 | SW36,340.8975,-133.435,0.0,top 100 | SW37,321.8975,-133.435,0.0,top 101 | SW38,302.8975,-123.935,0.0,top 102 | SW39,283.8975,-119.185,0.0,top 103 | SW4,131.8975,-100.185,0.0,top 104 | SW40,264.8975,-123.935,0.0,top 105 | SW41,245.8975,-123.935,0.0,top 106 | SW42,340.8975,-152.435,0.0,top 107 | SW43,321.8975,-152.435,0.0,top 108 | SW44,302.8975,-142.935,0.0,top 109 | SW45,283.8975,-138.185,0.0,top 110 | SW46,264.8975,-142.935,0.0,top 111 | SW47,245.8975,-142.935,0.0,top 112 | SW48,340.8975,-171.435,0.0,top 113 | SW49,321.8975,-171.435,0.0,top 114 | SW5,150.8975,-104.935,0.0,top 115 | SW50,302.8975,-161.935,0.0,top 116 | SW51,283.8975,-157.185,0.0,top 117 | SW52,264.8975,-161.935,0.0,top 118 | SW53,245.8975,-161.935,0.0,top 119 | SW54,302.8975,-180.935,0.0,top 120 | SW55,283.8975,-176.185,0.0,top 121 | SW56,264.8975,-180.935,0.0,top 122 | SW57,243.348313,-182.998952,15.0,top 123 | SW58,224.273142,-191.435484,30.0,top 124 | SW6,169.8975,-104.935,0.0,top 125 | SW7,74.8975,-133.435,0.0,top 126 | SW8,93.8975,-133.435,0.0,top 127 | SW9,112.8975,-123.935,0.0,top 128 | U1,189.64,-111.61,0.0,top 129 | U2,228.36,-111.61,0.0,top 130 | -------------------------------------------------------------------------------- /pcb/M,S/Flake.kicad_pro: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "3dviewports": [], 4 | "design_settings": { 5 | "defaults": { 6 | "apply_defaults_to_fp_fields": false, 7 | "apply_defaults_to_fp_shapes": false, 8 | "apply_defaults_to_fp_text": false, 9 | "board_outline_line_width": 0.05, 10 | "copper_line_width": 0.2, 11 | "copper_text_italic": false, 12 | "copper_text_size_h": 1.5, 13 | "copper_text_size_v": 1.5, 14 | "copper_text_thickness": 0.3, 15 | "copper_text_upright": false, 16 | "courtyard_line_width": 0.05, 17 | "dimension_precision": 4, 18 | "dimension_units": 3, 19 | "dimensions": { 20 | "arrow_length": 1270000, 21 | "extension_offset": 500000, 22 | "keep_text_aligned": true, 23 | "suppress_zeroes": false, 24 | "text_position": 0, 25 | "units_format": 1 26 | }, 27 | "fab_line_width": 0.1, 28 | "fab_text_italic": false, 29 | "fab_text_size_h": 1.0, 30 | "fab_text_size_v": 1.0, 31 | "fab_text_thickness": 0.15, 32 | "fab_text_upright": false, 33 | "other_line_width": 0.1, 34 | "other_text_italic": false, 35 | "other_text_size_h": 1.0, 36 | "other_text_size_v": 1.0, 37 | "other_text_thickness": 0.15, 38 | "other_text_upright": false, 39 | "pads": { 40 | "drill": 2.2, 41 | "height": 5.2, 42 | "width": 5.2 43 | }, 44 | "silk_line_width": 0.1, 45 | "silk_text_italic": false, 46 | "silk_text_size_h": 1.0, 47 | "silk_text_size_v": 1.0, 48 | "silk_text_thickness": 0.1, 49 | "silk_text_upright": false, 50 | "zones": { 51 | "min_clearance": 0.0 52 | } 53 | }, 54 | "diff_pair_dimensions": [ 55 | { 56 | "gap": 0.0, 57 | "via_gap": 0.0, 58 | "width": 0.0 59 | } 60 | ], 61 | "drc_exclusions": [], 62 | "meta": { 63 | "version": 2 64 | }, 65 | "rule_severities": { 66 | "annular_width": "error", 67 | "clearance": "error", 68 | "connection_width": "warning", 69 | "copper_edge_clearance": "error", 70 | "copper_sliver": "warning", 71 | "courtyards_overlap": "error", 72 | "diff_pair_gap_out_of_range": "error", 73 | "diff_pair_uncoupled_length_too_long": "error", 74 | "drill_out_of_range": "error", 75 | "duplicate_footprints": "warning", 76 | "extra_footprint": "warning", 77 | "footprint": "error", 78 | "footprint_symbol_mismatch": "warning", 79 | "footprint_type_mismatch": "ignore", 80 | "hole_clearance": "error", 81 | "hole_near_hole": "error", 82 | "holes_co_located": "warning", 83 | "invalid_outline": "error", 84 | "isolated_copper": "warning", 85 | "item_on_disabled_layer": "error", 86 | "items_not_allowed": "error", 87 | "length_out_of_range": "error", 88 | "lib_footprint_issues": "warning", 89 | "lib_footprint_mismatch": "warning", 90 | "malformed_courtyard": "error", 91 | "microvia_drill_out_of_range": "error", 92 | "missing_courtyard": "ignore", 93 | "missing_footprint": "warning", 94 | "net_conflict": "warning", 95 | "npth_inside_courtyard": "ignore", 96 | "padstack": "warning", 97 | "pth_inside_courtyard": "ignore", 98 | "shorting_items": "error", 99 | "silk_edge_clearance": "warning", 100 | "silk_over_copper": "warning", 101 | "silk_overlap": "warning", 102 | "skew_out_of_range": "error", 103 | "solder_mask_bridge": "error", 104 | "starved_thermal": "error", 105 | "text_height": "warning", 106 | "text_thickness": "warning", 107 | "through_hole_pad_without_hole": "error", 108 | "too_many_vias": "error", 109 | "track_dangling": "warning", 110 | "track_width": "error", 111 | "tracks_crossing": "error", 112 | "unconnected_items": "error", 113 | "unresolved_variable": "error", 114 | "via_dangling": "warning", 115 | "zones_intersect": "error" 116 | }, 117 | "rules": { 118 | "max_error": 0.005, 119 | "min_clearance": 0.15, 120 | "min_connection": 0.15, 121 | "min_copper_edge_clearance": 0.3, 122 | "min_hole_clearance": 0.3, 123 | "min_hole_to_hole": 0.3, 124 | "min_microvia_diameter": 0.2, 125 | "min_microvia_drill": 0.1, 126 | "min_resolved_spokes": 2, 127 | "min_silk_clearance": 0.0, 128 | "min_text_height": 0.5, 129 | "min_text_thickness": 0.1, 130 | "min_through_hole_diameter": 0.3, 131 | "min_track_width": 0.15, 132 | "min_via_annular_width": 0.15, 133 | "min_via_diameter": 0.3, 134 | "solder_mask_to_copper_clearance": 0.005, 135 | "use_height_for_length_calcs": true 136 | }, 137 | "teardrop_options": [ 138 | { 139 | "td_onpadsmd": true, 140 | "td_onroundshapesonly": false, 141 | "td_ontrackend": false, 142 | "td_onviapad": true 143 | } 144 | ], 145 | "teardrop_parameters": [ 146 | { 147 | "td_allow_use_two_tracks": true, 148 | "td_curve_segcount": 5, 149 | "td_height_ratio": 1.0, 150 | "td_length_ratio": 0.5, 151 | "td_maxheight": 1.0, 152 | "td_maxlen": 0.5, 153 | "td_on_pad_in_zone": false, 154 | "td_target_name": "td_round_shape", 155 | "td_width_to_size_filter_ratio": 0.9 156 | }, 157 | { 158 | "td_allow_use_two_tracks": true, 159 | "td_curve_segcount": 5, 160 | "td_height_ratio": 0.6, 161 | "td_length_ratio": 0.4, 162 | "td_maxheight": 1.0, 163 | "td_maxlen": 0.5, 164 | "td_on_pad_in_zone": false, 165 | "td_target_name": "td_rect_shape", 166 | "td_width_to_size_filter_ratio": 0.9 167 | }, 168 | { 169 | "td_allow_use_two_tracks": true, 170 | "td_curve_segcount": 5, 171 | "td_height_ratio": 1.0, 172 | "td_length_ratio": 0.5, 173 | "td_maxheight": 1.0, 174 | "td_maxlen": 0.5, 175 | "td_on_pad_in_zone": false, 176 | "td_target_name": "td_track_end", 177 | "td_width_to_size_filter_ratio": 0.9 178 | } 179 | ], 180 | "track_widths": [ 181 | 0.0, 182 | 0.15, 183 | 0.3 184 | ], 185 | "tuning_pattern_settings": { 186 | "diff_pair_defaults": { 187 | "corner_radius_percentage": 80, 188 | "corner_style": 1, 189 | "max_amplitude": 1.0, 190 | "min_amplitude": 0.2, 191 | "single_sided": false, 192 | "spacing": 1.0 193 | }, 194 | "diff_pair_skew_defaults": { 195 | "corner_radius_percentage": 80, 196 | "corner_style": 1, 197 | "max_amplitude": 1.0, 198 | "min_amplitude": 0.2, 199 | "single_sided": false, 200 | "spacing": 0.6 201 | }, 202 | "single_track_defaults": { 203 | "corner_radius_percentage": 80, 204 | "corner_style": 1, 205 | "max_amplitude": 1.0, 206 | "min_amplitude": 0.2, 207 | "single_sided": false, 208 | "spacing": 0.6 209 | } 210 | }, 211 | "via_dimensions": [ 212 | { 213 | "diameter": 0.0, 214 | "drill": 0.0 215 | } 216 | ], 217 | "zones_allow_external_fillets": false 218 | }, 219 | "ipc2581": { 220 | "dist": "", 221 | "distpn": "", 222 | "internal_id": "", 223 | "mfg": "", 224 | "mpn": "" 225 | }, 226 | "layer_presets": [], 227 | "viewports": [] 228 | }, 229 | "boards": [], 230 | "cvpcb": { 231 | "equivalence_files": [] 232 | }, 233 | "erc": { 234 | "erc_exclusions": [], 235 | "meta": { 236 | "version": 0 237 | }, 238 | "pin_map": [ 239 | [ 240 | 0, 241 | 0, 242 | 0, 243 | 0, 244 | 0, 245 | 0, 246 | 1, 247 | 0, 248 | 0, 249 | 0, 250 | 0, 251 | 2 252 | ], 253 | [ 254 | 0, 255 | 2, 256 | 0, 257 | 1, 258 | 0, 259 | 0, 260 | 1, 261 | 0, 262 | 2, 263 | 2, 264 | 2, 265 | 2 266 | ], 267 | [ 268 | 0, 269 | 0, 270 | 0, 271 | 0, 272 | 0, 273 | 0, 274 | 1, 275 | 0, 276 | 1, 277 | 0, 278 | 1, 279 | 2 280 | ], 281 | [ 282 | 0, 283 | 1, 284 | 0, 285 | 0, 286 | 0, 287 | 0, 288 | 1, 289 | 1, 290 | 2, 291 | 1, 292 | 1, 293 | 2 294 | ], 295 | [ 296 | 0, 297 | 0, 298 | 0, 299 | 0, 300 | 0, 301 | 0, 302 | 1, 303 | 0, 304 | 0, 305 | 0, 306 | 0, 307 | 2 308 | ], 309 | [ 310 | 0, 311 | 0, 312 | 0, 313 | 0, 314 | 0, 315 | 0, 316 | 0, 317 | 0, 318 | 0, 319 | 0, 320 | 0, 321 | 2 322 | ], 323 | [ 324 | 1, 325 | 1, 326 | 1, 327 | 1, 328 | 1, 329 | 0, 330 | 1, 331 | 1, 332 | 1, 333 | 1, 334 | 1, 335 | 2 336 | ], 337 | [ 338 | 0, 339 | 0, 340 | 0, 341 | 1, 342 | 0, 343 | 0, 344 | 1, 345 | 0, 346 | 0, 347 | 0, 348 | 0, 349 | 2 350 | ], 351 | [ 352 | 0, 353 | 2, 354 | 1, 355 | 2, 356 | 0, 357 | 0, 358 | 1, 359 | 0, 360 | 2, 361 | 2, 362 | 2, 363 | 2 364 | ], 365 | [ 366 | 0, 367 | 2, 368 | 0, 369 | 1, 370 | 0, 371 | 0, 372 | 1, 373 | 0, 374 | 2, 375 | 0, 376 | 0, 377 | 2 378 | ], 379 | [ 380 | 0, 381 | 2, 382 | 1, 383 | 1, 384 | 0, 385 | 0, 386 | 1, 387 | 0, 388 | 2, 389 | 0, 390 | 0, 391 | 2 392 | ], 393 | [ 394 | 2, 395 | 2, 396 | 2, 397 | 2, 398 | 2, 399 | 2, 400 | 2, 401 | 2, 402 | 2, 403 | 2, 404 | 2, 405 | 2 406 | ] 407 | ], 408 | "rule_severities": { 409 | "bus_definition_conflict": "error", 410 | "bus_entry_needed": "error", 411 | "bus_to_bus_conflict": "error", 412 | "bus_to_net_conflict": "error", 413 | "conflicting_netclasses": "error", 414 | "different_unit_footprint": "error", 415 | "different_unit_net": "error", 416 | "duplicate_reference": "error", 417 | "duplicate_sheet_names": "error", 418 | "endpoint_off_grid": "warning", 419 | "extra_units": "error", 420 | "global_label_dangling": "warning", 421 | "hier_label_mismatch": "error", 422 | "label_dangling": "error", 423 | "lib_symbol_issues": "warning", 424 | "missing_bidi_pin": "warning", 425 | "missing_input_pin": "warning", 426 | "missing_power_pin": "error", 427 | "missing_unit": "warning", 428 | "multiple_net_names": "warning", 429 | "net_not_bus_member": "warning", 430 | "no_connect_connected": "warning", 431 | "no_connect_dangling": "warning", 432 | "pin_not_connected": "error", 433 | "pin_not_driven": "error", 434 | "pin_to_pin": "warning", 435 | "power_pin_not_driven": "error", 436 | "similar_labels": "warning", 437 | "simulation_model_issue": "ignore", 438 | "unannotated": "error", 439 | "unit_value_mismatch": "error", 440 | "unresolved_variable": "error", 441 | "wire_dangling": "error" 442 | } 443 | }, 444 | "libraries": { 445 | "pinned_footprint_libs": [], 446 | "pinned_symbol_libs": [] 447 | }, 448 | "meta": { 449 | "filename": "Flake.kicad_pro", 450 | "version": 1 451 | }, 452 | "net_settings": { 453 | "classes": [ 454 | { 455 | "bus_width": 12, 456 | "clearance": 0.2, 457 | "diff_pair_gap": 0.25, 458 | "diff_pair_via_gap": 0.25, 459 | "diff_pair_width": 0.2, 460 | "line_style": 0, 461 | "microvia_diameter": 0.3, 462 | "microvia_drill": 0.1, 463 | "name": "Default", 464 | "pcb_color": "rgba(0, 0, 0, 0.000)", 465 | "schematic_color": "rgba(0, 0, 0, 0.000)", 466 | "track_width": 0.2, 467 | "via_diameter": 0.6, 468 | "via_drill": 0.3, 469 | "wire_width": 6 470 | } 471 | ], 472 | "meta": { 473 | "version": 3 474 | }, 475 | "net_colors": null, 476 | "netclass_assignments": null, 477 | "netclass_patterns": [] 478 | }, 479 | "pcbnew": { 480 | "last_paths": { 481 | "gencad": "", 482 | "idf": "", 483 | "netlist": "", 484 | "plot": "", 485 | "pos_files": "", 486 | "specctra_dsn": "", 487 | "step": "Flake.step", 488 | "svg": "", 489 | "vrml": "" 490 | }, 491 | "page_layout_descr_file": "" 492 | }, 493 | "schematic": { 494 | "annotate_start_num": 0, 495 | "bom_export_filename": "", 496 | "bom_fmt_presets": [], 497 | "bom_fmt_settings": { 498 | "field_delimiter": ",", 499 | "keep_line_breaks": false, 500 | "keep_tabs": false, 501 | "name": "CSV", 502 | "ref_delimiter": ",", 503 | "ref_range_delimiter": "", 504 | "string_delimiter": "\"" 505 | }, 506 | "bom_presets": [], 507 | "bom_settings": { 508 | "exclude_dnp": false, 509 | "fields_ordered": [ 510 | { 511 | "group_by": false, 512 | "label": "Reference", 513 | "name": "Reference", 514 | "show": true 515 | }, 516 | { 517 | "group_by": true, 518 | "label": "Value", 519 | "name": "Value", 520 | "show": true 521 | }, 522 | { 523 | "group_by": false, 524 | "label": "Datasheet", 525 | "name": "Datasheet", 526 | "show": true 527 | }, 528 | { 529 | "group_by": false, 530 | "label": "Footprint", 531 | "name": "Footprint", 532 | "show": true 533 | }, 534 | { 535 | "group_by": false, 536 | "label": "Qty", 537 | "name": "${QUANTITY}", 538 | "show": true 539 | }, 540 | { 541 | "group_by": true, 542 | "label": "DNP", 543 | "name": "${DNP}", 544 | "show": true 545 | }, 546 | { 547 | "group_by": false, 548 | "label": "#", 549 | "name": "${ITEM_NUMBER}", 550 | "show": false 551 | }, 552 | { 553 | "group_by": false, 554 | "label": "Sim.Device", 555 | "name": "Sim.Device", 556 | "show": false 557 | }, 558 | { 559 | "group_by": false, 560 | "label": "Sim.Pins", 561 | "name": "Sim.Pins", 562 | "show": false 563 | }, 564 | { 565 | "group_by": false, 566 | "label": "Description", 567 | "name": "Description", 568 | "show": false 569 | } 570 | ], 571 | "filter_string": "", 572 | "group_symbols": true, 573 | "name": "", 574 | "sort_asc": true, 575 | "sort_field": "Reference" 576 | }, 577 | "connection_grid_size": 50.0, 578 | "drawing": { 579 | "dashed_lines_dash_length_ratio": 12.0, 580 | "dashed_lines_gap_length_ratio": 3.0, 581 | "default_line_thickness": 6.0, 582 | "default_text_size": 50.0, 583 | "field_names": [], 584 | "intersheets_ref_own_page": false, 585 | "intersheets_ref_prefix": "", 586 | "intersheets_ref_short": false, 587 | "intersheets_ref_show": false, 588 | "intersheets_ref_suffix": "", 589 | "junction_size_choice": 3, 590 | "label_size_ratio": 0.375, 591 | "operating_point_overlay_i_precision": 3, 592 | "operating_point_overlay_i_range": "~A", 593 | "operating_point_overlay_v_precision": 3, 594 | "operating_point_overlay_v_range": "~V", 595 | "overbar_offset_ratio": 1.23, 596 | "pin_symbol_size": 25.0, 597 | "text_offset_ratio": 0.15 598 | }, 599 | "legacy_lib_dir": "", 600 | "legacy_lib_list": [], 601 | "meta": { 602 | "version": 1 603 | }, 604 | "net_format_name": "", 605 | "page_layout_descr_file": "", 606 | "plot_directory": "", 607 | "spice_current_sheet_as_root": false, 608 | "spice_external_command": "spice \"%I\"", 609 | "spice_model_current_sheet_as_root": true, 610 | "spice_save_all_currents": false, 611 | "spice_save_all_dissipations": false, 612 | "spice_save_all_voltages": false, 613 | "subpart_first_id": 65, 614 | "subpart_id_separator": 0 615 | }, 616 | "sheets": [ 617 | [ 618 | "90c8b5ef-2115-4ce5-9f08-3facf16c5dc1", 619 | "Root" 620 | ], 621 | [ 622 | "56cc3e7f-98ec-487b-8cea-9eac8504bc25", 623 | "Left" 624 | ], 625 | [ 626 | "d5bac6f5-3ae0-4cc7-8f72-825f2fad23e6", 627 | "Right" 628 | ] 629 | ], 630 | "text_variables": {} 631 | } 632 | -------------------------------------------------------------------------------- /pcb/M,S/Flake.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch 2 | (version 20231120) 3 | (generator "eeschema") 4 | (generator_version "8.0") 5 | (uuid "90c8b5ef-2115-4ce5-9f08-3facf16c5dc1") 6 | (paper "A4") 7 | (lib_symbols) 8 | (sheet 9 | (at 58.42 74.93) 10 | (size 80.01 54.61) 11 | (fields_autoplaced yes) 12 | (stroke 13 | (width 0.1524) 14 | (type solid) 15 | ) 16 | (fill 17 | (color 0 0 0 0.0000) 18 | ) 19 | (uuid "56cc3e7f-98ec-487b-8cea-9eac8504bc25") 20 | (property "Sheetname" "Left" 21 | (at 58.42 72.3134 0) 22 | (effects 23 | (font 24 | (size 5.08 5.08) 25 | (thickness 0.635) 26 | ) 27 | (justify left bottom) 28 | ) 29 | ) 30 | (property "Sheetfile" "left.kicad_sch" 31 | (at 58.42 130.1246 0) 32 | (effects 33 | (font 34 | (size 1.27 1.27) 35 | ) 36 | (justify left top) 37 | ) 38 | ) 39 | (instances 40 | (project "Flake" 41 | (path "/90c8b5ef-2115-4ce5-9f08-3facf16c5dc1" 42 | (page "2") 43 | ) 44 | ) 45 | ) 46 | ) 47 | (sheet 48 | (at 161.29 74.93) 49 | (size 80.01 54.61) 50 | (fields_autoplaced yes) 51 | (stroke 52 | (width 0.1524) 53 | (type solid) 54 | ) 55 | (fill 56 | (color 0 0 0 0.0000) 57 | ) 58 | (uuid "d5bac6f5-3ae0-4cc7-8f72-825f2fad23e6") 59 | (property "Sheetname" "Right" 60 | (at 161.29 72.3134 0) 61 | (effects 62 | (font 63 | (size 5.08 5.08) 64 | (thickness 0.635) 65 | ) 66 | (justify left bottom) 67 | ) 68 | ) 69 | (property "Sheetfile" "right.kicad_sch" 70 | (at 161.29 130.1246 0) 71 | (effects 72 | (font 73 | (size 1.27 1.27) 74 | ) 75 | (justify left top) 76 | ) 77 | ) 78 | (instances 79 | (project "Flake" 80 | (path "/90c8b5ef-2115-4ce5-9f08-3facf16c5dc1" 81 | (page "3") 82 | ) 83 | ) 84 | ) 85 | ) 86 | (sheet_instances 87 | (path "/" 88 | (page "1") 89 | ) 90 | ) 91 | ) 92 | -------------------------------------------------------------------------------- /pcb/M,S/fabrication-toolkit-options.json: -------------------------------------------------------------------------------- 1 | {"EXTRA_LAYERS": "", "EXTEND_EDGE_CUT": false, "ALTERNATIVE_EDGE_CUT": false, "AUTO TRANSLATE": true, "AUTO FILL": true, "EXCLUDE DNP": false} -------------------------------------------------------------------------------- /pcb/M,S/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (version 7) 3 | (lib (name "axseem")(type "KiCad")(uri "${KIPRJMOD}/../lib/axseem.pretty")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /pcb/M,S/production/Flake.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/Flake.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-04_17-51-21.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-04_17-51-21.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-04_17-51-31.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-04_17-51-31.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-10_12-41-36.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-10_12-41-36.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-10_12-49-14.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-10_12-49-14.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-10_12-54-47.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-10_12-54-47.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-10_12-56-55.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-10_12-56-55.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-11_09-32-57.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-11_09-32-57.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-16_17-43-32.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-16_17-43-32.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-16_19-04-07.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-16_19-04-07.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2024-12-16_19-07-40.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2024-12-16_19-07-40.zip -------------------------------------------------------------------------------- /pcb/M,S/production/backups/Flake_2025-01-10_16-34-14.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anywhy-io/flake/0feb55b1dc30a732a556e4077eceb8454f64e6fc/pcb/M,S/production/backups/Flake_2025-01-10_16-34-14.zip -------------------------------------------------------------------------------- /pcb/M,S/production/bom.csv: -------------------------------------------------------------------------------- 1 | Designator,Footprint,Quantity,Value,LCSC Part # 2 | "BT1, BT2",JST_1.25mm_mid-mount,2,Battery, 3 | "D1, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D2, D20, D21, D22, D23, D24, D25, D26, D27, D28, D29, D3, D30, D31, D32, D33, D34, D35, D36, D37, D38, D39, D4, D40, D41, D42, D43, D44, D45, D46, D5, D6, D7, D8, D9",D_SOD-323_HandSoldering,46,D, 4 | "J1, J2",USB-C_6Pin_Mid-mount,2,USB_C_Receptacle_PowerOnly_6P, 5 | "RSW1, RSW2",TS-1289VE-4,2,Reset_SW, 6 | "SW1, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW2, SW20, SW21, SW22, SW23, SW24, SW25, SW26, SW27, SW28, SW29, SW3, SW30, SW31, SW32, SW33, SW34, SW35, SW36, SW37, SW38, SW39, SW4, SW40, SW41, SW42, SW43, SW44, SW45, SW46, SW5, SW6, SW7, SW8, SW9",SW_MX_Choc-v1v2_Hotswap,46,SW_Push, 7 | "U1, U2",ProMicro_SMD,2,ProMicro, 8 | -------------------------------------------------------------------------------- /pcb/M,S/production/designators.csv: -------------------------------------------------------------------------------- 1 | BT1:1 2 | BT2:1 3 | D1:1 4 | D10:1 5 | D11:1 6 | D12:1 7 | D13:1 8 | D14:1 9 | D15:1 10 | D16:1 11 | D17:1 12 | D18:1 13 | D19:1 14 | D2:1 15 | D20:1 16 | D21:1 17 | D22:1 18 | D23:1 19 | D24:1 20 | D25:1 21 | D26:1 22 | D27:1 23 | D28:1 24 | D29:1 25 | D3:1 26 | D30:1 27 | D31:1 28 | D32:1 29 | D33:1 30 | D34:1 31 | D35:1 32 | D36:1 33 | D37:1 34 | D38:1 35 | D39:1 36 | D4:1 37 | D40:1 38 | D41:1 39 | D42:1 40 | D43:1 41 | D44:1 42 | D45:1 43 | D46:1 44 | D5:1 45 | D6:1 46 | D7:1 47 | D8:1 48 | D9:1 49 | H1:1 50 | H10:1 51 | H2:1 52 | H3:1 53 | H4:1 54 | H5:1 55 | H6:1 56 | H7:1 57 | H8:1 58 | H9:1 59 | J1:1 60 | J2:1 61 | JP1:1 62 | JP2:1 63 | JP3:1 64 | JP4:1 65 | REF**:30 66 | RSW1:1 67 | RSW2:1 68 | SW1:1 69 | SW10:1 70 | SW11:1 71 | SW12:1 72 | SW13:1 73 | SW14:1 74 | SW15:1 75 | SW16:1 76 | SW17:1 77 | SW18:1 78 | SW19:1 79 | SW2:1 80 | SW20:1 81 | SW21:1 82 | SW22:1 83 | SW23:1 84 | SW24:1 85 | SW25:1 86 | SW26:1 87 | SW27:1 88 | SW28:1 89 | SW29:1 90 | SW3:1 91 | SW30:1 92 | SW31:1 93 | SW32:1 94 | SW33:1 95 | SW34:1 96 | SW35:1 97 | SW36:1 98 | SW37:1 99 | SW38:1 100 | SW39:1 101 | SW4:1 102 | SW40:1 103 | SW41:1 104 | SW42:1 105 | SW43:1 106 | SW44:1 107 | SW45:1 108 | SW46:1 109 | SW5:1 110 | SW6:1 111 | SW7:1 112 | SW8:1 113 | SW9:1 114 | U1:1 115 | U2:1 116 | -------------------------------------------------------------------------------- /pcb/M,S/production/positions.csv: -------------------------------------------------------------------------------- 1 | Designator,Mid X,Mid Y,Rotation,Layer 2 | BT1,202.25,-125.5,0.0,bottom 3 | BT2,215.75,-125.5,0.0,bottom 4 | D1,80.5,-125.5,0.0,bottom 5 | D10,137.5,-130.25,0.0,bottom 6 | D11,156.5,-135.0,0.0,bottom 7 | D12,175.5,-135.0,0.0,bottom 8 | D13,80.5,-163.5,0.0,bottom 9 | D14,99.5,-163.5,0.0,bottom 10 | D15,118.5,-154.0,0.0,bottom 11 | D16,137.5,-149.25,0.0,bottom 12 | D17,156.5,-154.0,0.0,bottom 13 | D18,175.5,-154.0,0.0,bottom 14 | D19,118.5,-173.0,0.0,bottom 15 | D2,99.5,-125.5,0.0,bottom 16 | D20,137.5,-168.25,0.0,bottom 17 | D21,156.5,-173.0,0.0,bottom 18 | D22,176.964104,-176.879023,15.0,bottom 19 | D23,195.726947,-185.922373,30.0,bottom 20 | D24,346.5,-125.5,0.0,bottom 21 | D25,327.5,-125.5,0.0,bottom 22 | D26,308.5,-116.0,0.0,bottom 23 | D27,289.5,-111.25,0.0,bottom 24 | D28,270.5,-116.0,0.0,bottom 25 | D29,251.5,-116.0,0.0,bottom 26 | D3,118.5,-116.0,0.0,bottom 27 | D30,346.5,-144.5,0.0,bottom 28 | D31,327.5,-144.5,0.0,bottom 29 | D32,308.5,-135.0,0.0,bottom 30 | D33,289.5,-130.25,0.0,bottom 31 | D34,270.5,-135.0,0.0,bottom 32 | D35,251.5,-135.0,0.0,bottom 33 | D36,346.5,-163.5,0.0,bottom 34 | D37,327.5,-163.5,0.0,bottom 35 | D38,308.5,-154.0,0.0,bottom 36 | D39,289.5,-149.25,0.0,bottom 37 | D4,137.5,-111.25,0.0,bottom 38 | D40,270.5,-154.0,0.0,bottom 39 | D41,251.5,-154.0,0.0,bottom 40 | D42,308.5,-173.0,0.0,bottom 41 | D43,289.5,-168.25,0.0,bottom 42 | D44,270.5,-173.0,0.0,bottom 43 | D45,249.729228,-174.549652,345.0,bottom 44 | D46,230.067284,-181.422373,330.0,bottom 45 | D5,156.5,-116.0,0.0,bottom 46 | D6,175.5,-116.0,0.0,bottom 47 | D7,80.5,-144.5,0.0,bottom 48 | D8,99.5,-144.5,0.0,bottom 49 | D9,118.5,-135.0,0.0,bottom 50 | J1,198.725,-114.5,270.0,bottom 51 | J2,219.275,-114.5,90.0,bottom 52 | JP1,200.0,-123.0,0.0,bottom 53 | JP2,204.5,-123.0,0.0,bottom 54 | JP3,213.5,-123.0,0.0,bottom 55 | JP4,218.0,-123.0,0.0,bottom 56 | RSW1,133.0,-179.1,180.0,bottom 57 | RSW2,285.0,-179.1,180.0,bottom 58 | SW1,74.8975,-123.935,0.0,top 59 | SW10,131.8975,-128.685,0.0,top 60 | SW11,150.8975,-133.435,0.0,top 61 | SW12,169.8975,-133.435,0.0,top 62 | SW13,74.8975,-161.935,0.0,top 63 | SW14,93.8975,-161.935,0.0,top 64 | SW15,112.8975,-152.435,0.0,top 65 | SW16,131.8975,-147.685,0.0,top 66 | SW17,150.8975,-152.435,0.0,top 67 | SW18,169.8975,-152.435,0.0,top 68 | SW19,112.8975,-171.435,0.0,top 69 | SW2,93.8975,-123.935,0.0,top 70 | SW20,131.8975,-166.685,0.0,top 71 | SW21,150.8975,-171.435,0.0,top 72 | SW22,172.23691,-174.8964,345.0,top 73 | SW23,192.196868,-182.420464,330.0,top 74 | SW24,340.8975,-123.935,0.0,top 75 | SW25,321.8975,-123.935,0.0,top 76 | SW26,302.8975,-114.435,0.0,top 77 | SW27,283.8975,-109.685,0.0,top 78 | SW28,264.8975,-114.435,0.0,top 79 | SW29,245.8975,-114.435,0.0,top 80 | SW3,112.8975,-114.435,0.0,top 81 | SW30,340.8975,-142.935,0.0,top 82 | SW31,321.8975,-142.935,0.0,top 83 | SW32,302.8975,-133.435,0.0,top 84 | SW33,283.8975,-128.685,0.0,top 85 | SW34,264.8975,-133.435,0.0,top 86 | SW35,245.8975,-133.435,0.0,top 87 | SW36,340.8975,-161.935,0.0,top 88 | SW37,321.8975,-161.935,0.0,top 89 | SW38,302.8975,-152.435,0.0,top 90 | SW39,283.8975,-147.685,0.0,top 91 | SW4,131.8975,-109.685,0.0,top 92 | SW40,264.8975,-152.435,0.0,top 93 | SW41,245.8975,-152.435,0.0,top 94 | SW42,302.8975,-171.435,0.0,top 95 | SW43,283.8975,-166.685,0.0,top 96 | SW44,264.8975,-171.435,0.0,top 97 | SW45,243.348313,-173.498952,15.0,top 98 | SW46,224.273142,-181.935484,30.0,top 99 | SW5,150.8975,-114.435,0.0,top 100 | SW6,169.8975,-114.435,0.0,top 101 | SW7,74.8975,-142.935,0.0,top 102 | SW8,93.8975,-142.935,0.0,top 103 | SW9,112.8975,-133.435,0.0,top 104 | U1,189.64,-121.11,0.0,top 105 | U2,228.36,-121.11,0.0,top 106 | -------------------------------------------------------------------------------- /pcb/M,S/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (version 7) 3 | (lib (name "kbd")(type "KiCad")(uri "${KIPRJMOD}/lib/symbols/kbd.kicad_sym")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /pcb/lib/axseem.pretty/Hole_0.5mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "Hole_0.5mm" 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (layer "F.Cu") 6 | (property "Reference" "REF**" 7 | (at 0 -1.75 0) 8 | (unlocked yes) 9 | (layer "F.SilkS") 10 | (hide yes) 11 | (uuid "aafce926-69f0-4eef-84b3-a7684cbeec72") 12 | (effects 13 | (font 14 | (size 1 1) 15 | (thickness 0.1) 16 | ) 17 | ) 18 | ) 19 | (property "Value" "Hole_0.5mm" 20 | (at 0 2.25 0) 21 | (unlocked yes) 22 | (layer "F.Fab") 23 | (hide yes) 24 | (uuid "20d6b9e9-93c9-4e1f-98d7-a0307458b8b6") 25 | (effects 26 | (font 27 | (size 1 1) 28 | (thickness 0.15) 29 | ) 30 | ) 31 | ) 32 | (property "Footprint" "" 33 | (at 0 0 0) 34 | (unlocked yes) 35 | (layer "F.Fab") 36 | (hide yes) 37 | (uuid "3de3febc-108d-4263-97ed-55933a698aa6") 38 | (effects 39 | (font 40 | (size 1 1) 41 | (thickness 0.15) 42 | ) 43 | ) 44 | ) 45 | (property "Datasheet" "" 46 | (at 0 0 0) 47 | (unlocked yes) 48 | (layer "F.Fab") 49 | (hide yes) 50 | (uuid "1ce3367b-6d5f-45fc-8c02-067acfec0e5f") 51 | (effects 52 | (font 53 | (size 1 1) 54 | (thickness 0.15) 55 | ) 56 | ) 57 | ) 58 | (property "Description" "" 59 | (at 0 0 0) 60 | (unlocked yes) 61 | (layer "F.Fab") 62 | (hide yes) 63 | (uuid "ccc46f33-b10b-4e2a-ac47-697289e89bba") 64 | (effects 65 | (font 66 | (size 1 1) 67 | (thickness 0.15) 68 | ) 69 | ) 70 | ) 71 | (attr smd) 72 | (pad "" np_thru_hole circle 73 | (at 0 0 180) 74 | (size 0.5 0.5) 75 | (drill 0.5) 76 | (layers "F&B.Cu" "*.Mask") 77 | (uuid "886594e8-c0c9-4e38-b796-8aed0eb961ce") 78 | ) 79 | ) 80 | -------------------------------------------------------------------------------- /pcb/lib/axseem.pretty/JST_1.25mm_mid-mount.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "JST_1.25mm_mid-mount" 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (layer "F.Cu") 6 | (property "Reference" "REF**" 7 | (at 0 -4.35 0) 8 | (unlocked yes) 9 | (layer "F.SilkS") 10 | (uuid "6062540f-4c3b-4423-9900-0e34b8c8ac06") 11 | (effects 12 | (font 13 | (size 1 1) 14 | (thickness 0.15) 15 | ) 16 | ) 17 | ) 18 | (property "Value" "JST_1.25mm_mid-mount" 19 | (at 0 5.7 0) 20 | (unlocked yes) 21 | (layer "F.Fab") 22 | (hide yes) 23 | (uuid "dd9b087c-40a3-49c4-b7dd-342ede43078b") 24 | (effects 25 | (font 26 | (size 1 1) 27 | (thickness 0.15) 28 | ) 29 | ) 30 | ) 31 | (property "Footprint" "" 32 | (at 0.625 -3.85 0) 33 | (unlocked yes) 34 | (layer "F.Fab") 35 | (hide yes) 36 | (uuid "56c085e6-2609-4258-9936-bba7afd4195a") 37 | (effects 38 | (font 39 | (size 1 1) 40 | (thickness 0.15) 41 | ) 42 | ) 43 | ) 44 | (property "Datasheet" "" 45 | (at 0.625 -3.85 0) 46 | (unlocked yes) 47 | (layer "F.Fab") 48 | (hide yes) 49 | (uuid "737d1af7-9933-4003-bb57-4b40f3c797d3") 50 | (effects 51 | (font 52 | (size 1 1) 53 | (thickness 0.15) 54 | ) 55 | ) 56 | ) 57 | (property "Description" "" 58 | (at 0.625 -3.85 0) 59 | (unlocked yes) 60 | (layer "F.Fab") 61 | (hide yes) 62 | (uuid "f3345856-0fd1-44b2-9658-479efee2d153") 63 | (effects 64 | (font 65 | (size 1 1) 66 | (thickness 0.15) 67 | ) 68 | ) 69 | ) 70 | (attr smd) 71 | (fp_rect 72 | (start -2.4 -0.15) 73 | (end 2.4 4.45) 74 | (stroke 75 | (width 0.05) 76 | (type default) 77 | ) 78 | (fill none) 79 | (layer "B.CrtYd") 80 | (uuid "d0076cc6-b05e-4653-883a-4e94db21d57b") 81 | ) 82 | (fp_rect 83 | (start -2.4 -0.15) 84 | (end 2.4 4.45) 85 | (stroke 86 | (width 0.05) 87 | (type default) 88 | ) 89 | (fill none) 90 | (layer "F.CrtYd") 91 | (uuid "fea4099e-a510-4bcd-a132-98813f7b3d5a") 92 | ) 93 | (fp_rect 94 | (start -2.25 0) 95 | (end 2.25 4.3) 96 | (stroke 97 | (width 0.1) 98 | (type default) 99 | ) 100 | (fill none) 101 | (layer "F.Fab") 102 | (uuid "995fcbe2-a42b-4dc6-9b8f-52de961c3a9c") 103 | ) 104 | (pad "1" smd custom 105 | (at 0.625 -1.2 180) 106 | (size 0.6 2.3) 107 | (layers "F.Cu" "F.Paste" "F.Mask") 108 | (options 109 | (clearance outline) 110 | (anchor rect) 111 | ) 112 | (primitives 113 | (gr_circle 114 | (center 0 1.15) 115 | (end -0.3 1.15) 116 | (width 0) 117 | (fill yes) 118 | ) 119 | ) 120 | (uuid "92f95584-9248-42d0-b481-0611702bef77") 121 | ) 122 | (pad "2" smd custom 123 | (at -0.625 -1.2 180) 124 | (size 0.6 2.3) 125 | (layers "F.Cu" "F.Paste" "F.Mask") 126 | (options 127 | (clearance outline) 128 | (anchor rect) 129 | ) 130 | (primitives 131 | (gr_circle 132 | (center 0 1.15) 133 | (end -0.3 1.15) 134 | (width 0) 135 | (fill yes) 136 | ) 137 | ) 138 | (uuid "246eb98f-df5f-423b-93c0-cf716cb69cc1") 139 | ) 140 | ) 141 | -------------------------------------------------------------------------------- /pcb/lib/axseem.pretty/SW_MX_Choc-v1v2_Hotswap.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "SW_MX_Choc-v1v2_Hotswap" 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (layer "F.Cu") 6 | (descr "Gateron Low Profile (KS-27 & KS-33) style mechanical keyboard switch, Gateron Low Profile hot-swap socket and through-hole soldering, single-sided mounting. Gateron Low Profile and Cherry MX Low Profile are NOT compatible.") 7 | (tags "switch, low_profile, hot_swap") 8 | (property "Reference" "REF**" 9 | (at -3 6.75 0) 10 | (unlocked yes) 11 | (layer "B.SilkS") 12 | (uuid "70186eba-dcad-4878-bf16-887f6eee49df") 13 | (effects 14 | (font 15 | (size 1 1) 16 | (thickness 0.15) 17 | ) 18 | (justify left top mirror) 19 | ) 20 | ) 21 | (property "Value" "SW_MX_Choc-v1v2_Hotswap" 22 | (at 0 10.75 0) 23 | (unlocked yes) 24 | (layer "F.Fab") 25 | (hide yes) 26 | (uuid "de588ed9-a530-46f0-aa03-e0307ff72286") 27 | (effects 28 | (font 29 | (size 1 1) 30 | (thickness 0.15) 31 | ) 32 | ) 33 | ) 34 | (property "Footprint" "" 35 | (at 0 0 180) 36 | (layer "F.Fab") 37 | (hide yes) 38 | (uuid "9e9a5e56-600a-4c72-9e7e-f05f5043429e") 39 | (effects 40 | (font 41 | (size 1.27 1.27) 42 | (thickness 0.15) 43 | ) 44 | ) 45 | ) 46 | (property "Datasheet" "" 47 | (at 0 0 180) 48 | (layer "F.Fab") 49 | (hide yes) 50 | (uuid "81256033-052c-498c-a7ad-98e66ba4a172") 51 | (effects 52 | (font 53 | (size 1.27 1.27) 54 | (thickness 0.15) 55 | ) 56 | ) 57 | ) 58 | (property "Description" "" 59 | (at 0 0 180) 60 | (layer "F.Fab") 61 | (hide yes) 62 | (uuid "09c87be4-04ad-4bcb-ac29-758952a4ddfb") 63 | (effects 64 | (font 65 | (size 1.27 1.27) 66 | (thickness 0.15) 67 | ) 68 | ) 69 | ) 70 | (fp_line 71 | (start -7.504 1.475) 72 | (end -7.504 2.175) 73 | (stroke 74 | (width 0.12) 75 | (type solid) 76 | ) 77 | (layer "B.SilkS") 78 | (uuid "c957d31f-6204-473b-85fd-c2c61df05abd") 79 | ) 80 | (fp_line 81 | (start -7.504 1.475) 82 | (end -6.504 1.475) 83 | (stroke 84 | (width 0.12) 85 | (type solid) 86 | ) 87 | (layer "B.SilkS") 88 | (uuid "b1115f20-0151-4d76-b960-b40feddf6597") 89 | ) 90 | (fp_line 91 | (start 1.5 3.625) 92 | (end 0.5 3.625) 93 | (stroke 94 | (width 0.12) 95 | (type solid) 96 | ) 97 | (layer "B.SilkS") 98 | (uuid "88c4732e-8f53-4462-b597-ce94d0bd4bee") 99 | ) 100 | (fp_line 101 | (start 1.5 3.625) 102 | (end 2.3 4.425) 103 | (stroke 104 | (width 0.12) 105 | (type solid) 106 | ) 107 | (layer "B.SilkS") 108 | (uuid "f03e2815-4d14-46ac-9d14-708f4c35649d") 109 | ) 110 | (fp_line 111 | (start 1.5 8.275) 112 | (end 0.5 8.275) 113 | (stroke 114 | (width 0.12) 115 | (type solid) 116 | ) 117 | (layer "B.SilkS") 118 | (uuid "1dc5444d-1222-44b7-a2b5-14112f840c8b") 119 | ) 120 | (fp_line 121 | (start 2.3 7.475) 122 | (end 1.5 8.275) 123 | (stroke 124 | (width 0.12) 125 | (type solid) 126 | ) 127 | (layer "B.SilkS") 128 | (uuid "43ee0753-07be-491b-b19d-cce13b1cd756") 129 | ) 130 | (fp_line 131 | (start 2.814824 -2.70022) 132 | (end 4.364824 -2.70022) 133 | (stroke 134 | (width 0.15) 135 | (type solid) 136 | ) 137 | (layer "B.SilkS") 138 | (uuid "228a2b41-4b3e-406b-ac5d-3346a3d9ff0e") 139 | ) 140 | (fp_line 141 | (start 3.314824 -6.75022) 142 | (end 4.864824 -6.75022) 143 | (stroke 144 | (width 0.15) 145 | (type solid) 146 | ) 147 | (layer "B.SilkS") 148 | (uuid "dd55a618-c557-4bfa-86ad-d04746f0ccf5") 149 | ) 150 | (fp_line 151 | (start 4.864824 -6.75022) 152 | (end 4.864824 -6.52022) 153 | (stroke 154 | (width 0.15) 155 | (type solid) 156 | ) 157 | (layer "B.SilkS") 158 | (uuid "8c617a17-5146-4ec4-acda-d5a57d08c541") 159 | ) 160 | (fp_line 161 | (start 4.864824 -3.67022) 162 | (end 4.864824 -3.20022) 163 | (stroke 164 | (width 0.15) 165 | (type solid) 166 | ) 167 | (layer "B.SilkS") 168 | (uuid "f60643dc-5247-4e0d-aeaf-e8668c9a4737") 169 | ) 170 | (fp_arc 171 | (start -6.45 6.125) 172 | (mid -7.015685 5.890685) 173 | (end -7.25 5.325) 174 | (stroke 175 | (width 0.12) 176 | (type solid) 177 | ) 178 | (layer "B.SilkS") 179 | (uuid "6bd116e3-6d2a-4398-a6f3-d63a70258f17") 180 | ) 181 | (fp_arc 182 | (start -6.085176 -4.75022) 183 | (mid -5.499381 -6.164412) 184 | (end -4.085176 -6.75022) 185 | (stroke 186 | (width 0.15) 187 | (type solid) 188 | ) 189 | (layer "B.SilkS") 190 | (uuid "f1b27532-4f15-4950-8f9f-44b98dec5b6f") 191 | ) 192 | (fp_arc 193 | (start 4.864824 -3.20022) 194 | (mid 4.718386 -2.846645) 195 | (end 4.364824 -2.70022) 196 | (stroke 197 | (width 0.15) 198 | (type solid) 199 | ) 200 | (layer "B.SilkS") 201 | (uuid "ef9b1b3d-9a99-42c5-b23c-b670c34da451") 202 | ) 203 | (fp_rect 204 | (start -9.5 -9.5) 205 | (end 9.5 9.5) 206 | (stroke 207 | (width 0.1) 208 | (type default) 209 | ) 210 | (fill none) 211 | (layer "Dwgs.User") 212 | (uuid "68886934-2fb6-4286-80ae-47e694ebd713") 213 | ) 214 | (fp_rect 215 | (start -7 -7) 216 | (end 7 7) 217 | (stroke 218 | (width 0.1) 219 | (type solid) 220 | ) 221 | (fill none) 222 | (layer "Dwgs.User") 223 | (uuid "0d0df2ac-f3f7-482e-ba7c-5f666b048a62") 224 | ) 225 | (fp_line 226 | (start -9.104 2.775) 227 | (end -7.504 2.775) 228 | (stroke 229 | (width 0.05) 230 | (type solid) 231 | ) 232 | (layer "B.CrtYd") 233 | (uuid "427c94aa-0925-4d47-823e-bf4e808ade17") 234 | ) 235 | (fp_line 236 | (start -9.104 4.725) 237 | (end -9.104 2.775) 238 | (stroke 239 | (width 0.05) 240 | (type solid) 241 | ) 242 | (layer "B.CrtYd") 243 | (uuid "9d2a60f6-ee2f-4cfd-85de-44d4dd158d8e") 244 | ) 245 | (fp_line 246 | (start -8.685176 -3.75022) 247 | (end -8.685176 -1.30022) 248 | (stroke 249 | (width 0.05) 250 | (type solid) 251 | ) 252 | (layer "B.CrtYd") 253 | (uuid "b984aba5-0dbd-4671-bb21-ef5c528ffd1a") 254 | ) 255 | (fp_line 256 | (start -8.685176 -1.30022) 257 | (end -6.085176 -1.30022) 258 | (stroke 259 | (width 0.05) 260 | (type solid) 261 | ) 262 | (layer "B.CrtYd") 263 | (uuid "e2cfd002-122c-4a47-9232-3544b311da42") 264 | ) 265 | (fp_line 266 | (start -7.504 1.475) 267 | (end -7.504 2.175) 268 | (stroke 269 | (width 0.05) 270 | (type solid) 271 | ) 272 | (layer "B.CrtYd") 273 | (uuid "a8e9cfb8-e9ab-4d19-a554-23916b07d86e") 274 | ) 275 | (fp_line 276 | (start -7.504 1.475) 277 | (end -3.4 1.475) 278 | (stroke 279 | (width 0.05) 280 | (type solid) 281 | ) 282 | (layer "B.CrtYd") 283 | (uuid "0309a235-4697-4c5f-a1ce-92ecb28d212d") 284 | ) 285 | (fp_line 286 | (start -7.504 2.175) 287 | (end -7.504 2.775) 288 | (stroke 289 | (width 0.05) 290 | (type solid) 291 | ) 292 | (layer "B.CrtYd") 293 | (uuid "35890137-2dbd-473c-9670-cd0b5e9f7b7f") 294 | ) 295 | (fp_line 296 | (start -7.25 4.725) 297 | (end -9.104 4.725) 298 | (stroke 299 | (width 0.05) 300 | (type solid) 301 | ) 302 | (layer "B.CrtYd") 303 | (uuid "bde9c378-0790-40c8-942b-c9d7d66928b2") 304 | ) 305 | (fp_line 306 | (start -7.25 5.325) 307 | (end -7.25 4.725) 308 | (stroke 309 | (width 0.05) 310 | (type solid) 311 | ) 312 | (layer "B.CrtYd") 313 | (uuid "edc500d3-ba46-4bab-a385-e841710bd2be") 314 | ) 315 | (fp_line 316 | (start -6.085176 -3.75022) 317 | (end -8.685176 -3.75022) 318 | (stroke 319 | (width 0.05) 320 | (type solid) 321 | ) 322 | (layer "B.CrtYd") 323 | (uuid "b220ee71-e73f-420a-9e27-2761c325ca4e") 324 | ) 325 | (fp_line 326 | (start -6.085176 -3.75022) 327 | (end -6.085176 -4.75022) 328 | (stroke 329 | (width 0.05) 330 | (type solid) 331 | ) 332 | (layer "B.CrtYd") 333 | (uuid "bac22589-8f33-4d39-980a-d857f1d56fe2") 334 | ) 335 | (fp_line 336 | (start -6.085176 -1.30022) 337 | (end -6.085176 -0.86022) 338 | (stroke 339 | (width 0.05) 340 | (type solid) 341 | ) 342 | (layer "B.CrtYd") 343 | (uuid "ccd6775b-f44a-4b67-bbbb-1019437a0288") 344 | ) 345 | (fp_line 346 | (start -6.085176 -0.86022) 347 | (end -2.494322 -0.86022) 348 | (stroke 349 | (width 0.05) 350 | (type solid) 351 | ) 352 | (layer "B.CrtYd") 353 | (uuid "cef94e34-7975-49bb-adbe-51913dce6da8") 354 | ) 355 | (fp_line 356 | (start -4.085176 -6.75022) 357 | (end 4.864824 -6.75022) 358 | (stroke 359 | (width 0.05) 360 | (type solid) 361 | ) 362 | (layer "B.CrtYd") 363 | (uuid "2e069cc0-26da-40d0-9854-4aa3e36ce849") 364 | ) 365 | (fp_line 366 | (start -3.45 6.125) 367 | (end -6.45 6.125) 368 | (stroke 369 | (width 0.05) 370 | (type solid) 371 | ) 372 | (layer "B.CrtYd") 373 | (uuid "9d05754c-862f-43fe-88fe-5a9047131777") 374 | ) 375 | (fp_line 376 | (start -2.45 7.475) 377 | (end -2.45 7.125) 378 | (stroke 379 | (width 0.05) 380 | (type solid) 381 | ) 382 | (layer "B.CrtYd") 383 | (uuid "81fd7dd7-00d8-47f9-a9fa-6d6670f6df33") 384 | ) 385 | (fp_line 386 | (start -2.45 7.475) 387 | (end -1.65 8.275) 388 | (stroke 389 | (width 0.05) 390 | (type solid) 391 | ) 392 | (layer "B.CrtYd") 393 | (uuid "39f9d9a7-cb86-4a30-9cc4-7112397e5824") 394 | ) 395 | (fp_line 396 | (start 1.5 3.625) 397 | (end -0.3 3.625) 398 | (stroke 399 | (width 0.05) 400 | (type solid) 401 | ) 402 | (layer "B.CrtYd") 403 | (uuid "b137d611-d202-4e8a-8d95-b0d00ca33a50") 404 | ) 405 | (fp_line 406 | (start 1.5 3.625) 407 | (end 2.3 4.425) 408 | (stroke 409 | (width 0.05) 410 | (type solid) 411 | ) 412 | (layer "B.CrtYd") 413 | (uuid "c92506dd-14cd-41e5-aaf7-e1fd13ac2c7b") 414 | ) 415 | (fp_line 416 | (start 1.5 8.275) 417 | (end -1.65 8.275) 418 | (stroke 419 | (width 0.05) 420 | (type solid) 421 | ) 422 | (layer "B.CrtYd") 423 | (uuid "c1e62471-cd03-4f51-974c-8267216e162e") 424 | ) 425 | (fp_line 426 | (start 2.3 4.975) 427 | (end 2.3 4.425) 428 | (stroke 429 | (width 0.05) 430 | (type solid) 431 | ) 432 | (layer "B.CrtYd") 433 | (uuid "7f646bef-4315-441a-b828-e4fb4db6776e") 434 | ) 435 | (fp_line 436 | (start 2.3 7.475) 437 | (end 1.5 8.275) 438 | (stroke 439 | (width 0.05) 440 | (type solid) 441 | ) 442 | (layer "B.CrtYd") 443 | (uuid "67c0f1df-adf5-44c0-98e7-3908049c67f2") 444 | ) 445 | (fp_line 446 | (start 2.3 7.475) 447 | (end 2.3 6.925) 448 | (stroke 449 | (width 0.05) 450 | (type solid) 451 | ) 452 | (layer "B.CrtYd") 453 | (uuid "29d23027-c4f2-4cc5-b8d7-42bcd0af8671") 454 | ) 455 | (fp_line 456 | (start 4.104 4.975) 457 | (end 2.3 4.975) 458 | (stroke 459 | (width 0.05) 460 | (type solid) 461 | ) 462 | (layer "B.CrtYd") 463 | (uuid "13c3db5f-3c55-4dce-979d-190accea51cd") 464 | ) 465 | (fp_line 466 | (start 4.104 4.975) 467 | (end 4.104 6.925) 468 | (stroke 469 | (width 0.05) 470 | (type solid) 471 | ) 472 | (layer "B.CrtYd") 473 | (uuid "6c272035-efda-49f4-9c8c-6e6a9d4045c1") 474 | ) 475 | (fp_line 476 | (start 4.104 6.925) 477 | (end 2.3 6.925) 478 | (stroke 479 | (width 0.05) 480 | (type solid) 481 | ) 482 | (layer "B.CrtYd") 483 | (uuid "0439a2c9-7af1-47a7-a587-4f5c629b226a") 484 | ) 485 | (fp_line 486 | (start 4.864824 -6.75022) 487 | (end 4.864824 -6.32022) 488 | (stroke 489 | (width 0.05) 490 | (type solid) 491 | ) 492 | (layer "B.CrtYd") 493 | (uuid "7fb44f39-0076-4281-ae00-800672e9bafd") 494 | ) 495 | (fp_line 496 | (start 4.864824 -3.87022) 497 | (end 4.864824 -2.70022) 498 | (stroke 499 | (width 0.05) 500 | (type solid) 501 | ) 502 | (layer "B.CrtYd") 503 | (uuid "2462fd77-bcf9-4565-9698-a352a8c7ad75") 504 | ) 505 | (fp_line 506 | (start 4.864824 -3.87022) 507 | (end 7.414824 -3.87022) 508 | (stroke 509 | (width 0.05) 510 | (type solid) 511 | ) 512 | (layer "B.CrtYd") 513 | (uuid "b61f66a7-6ce0-44ef-902e-56108c33c8d8") 514 | ) 515 | (fp_line 516 | (start 4.864824 -2.70022) 517 | (end -0.2 -2.70022) 518 | (stroke 519 | (width 0.05) 520 | (type solid) 521 | ) 522 | (layer "B.CrtYd") 523 | (uuid "63780db2-5f88-4505-ac93-64594e145e15") 524 | ) 525 | (fp_line 526 | (start 7.414824 -6.32022) 527 | (end 4.864824 -6.32022) 528 | (stroke 529 | (width 0.05) 530 | (type solid) 531 | ) 532 | (layer "B.CrtYd") 533 | (uuid "e3db1a65-d463-40a1-9b5d-b9e46132dcde") 534 | ) 535 | (fp_line 536 | (start 7.414824 -3.87022) 537 | (end 7.414824 -6.32022) 538 | (stroke 539 | (width 0.05) 540 | (type solid) 541 | ) 542 | (layer "B.CrtYd") 543 | (uuid "c929f8ef-81c2-4af5-b319-11e360ce3d2e") 544 | ) 545 | (fp_arc 546 | (start -6.45 6.125) 547 | (mid -7.015685 5.890685) 548 | (end -7.25 5.325) 549 | (stroke 550 | (width 0.05) 551 | (type solid) 552 | ) 553 | (layer "B.CrtYd") 554 | (uuid "8b40919c-9aee-4176-a614-2cae5ba458cf") 555 | ) 556 | (fp_arc 557 | (start -6.085176 -4.75022) 558 | (mid -5.49939 -6.164434) 559 | (end -4.085176 -6.75022) 560 | (stroke 561 | (width 0.05) 562 | (type solid) 563 | ) 564 | (layer "B.CrtYd") 565 | (uuid "b0e701f0-0dc3-431f-b35f-7d9f06f3848e") 566 | ) 567 | (fp_arc 568 | (start -3.45 6.125) 569 | (mid -2.742893 6.417893) 570 | (end -2.45 7.125) 571 | (stroke 572 | (width 0.05) 573 | (type solid) 574 | ) 575 | (layer "B.CrtYd") 576 | (uuid "ad60d828-391a-4cf0-8ece-49d8e39ae511") 577 | ) 578 | (fp_arc 579 | (start -3.4 1.475) 580 | (mid -2.826423 1.655848) 581 | (end -2.460307 2.13298) 582 | (stroke 583 | (width 0.05) 584 | (type solid) 585 | ) 586 | (layer "B.CrtYd") 587 | (uuid "e1e20e54-9e4d-41cf-8627-9804d7f5c599") 588 | ) 589 | (fp_arc 590 | (start -2.494322 -0.86022) 591 | (mid -1.670503 -2.183402) 592 | (end -0.2 -2.70022) 593 | (stroke 594 | (width 0.05) 595 | (type solid) 596 | ) 597 | (layer "B.CrtYd") 598 | (uuid "efe1c070-ba20-45f3-ad56-0a71aa2c0949") 599 | ) 600 | (fp_arc 601 | (start -0.299999 3.624999) 602 | (mid -1.577272 3.167235) 603 | (end -2.455444 2.13293) 604 | (stroke 605 | (width 0.05) 606 | (type solid) 607 | ) 608 | (layer "B.CrtYd") 609 | (uuid "b27f2c95-37b3-479f-b353-c9ea14d8785a") 610 | ) 611 | (fp_rect 612 | (start -7 -7) 613 | (end 7 7) 614 | (stroke 615 | (width 0.05) 616 | (type default) 617 | ) 618 | (fill none) 619 | (layer "F.CrtYd") 620 | (uuid "b3997ed9-6148-4e70-9404-00f66767e314") 621 | ) 622 | (fp_line 623 | (start -7.246 1.5) 624 | (end -3.396 1.5) 625 | (stroke 626 | (width 0.05) 627 | (type solid) 628 | ) 629 | (layer "B.Fab") 630 | (uuid "a1ed4e60-0ced-49c4-8b97-cffa66a861a2") 631 | ) 632 | (fp_line 633 | (start -7.246 5.35) 634 | (end -7.246 1.5) 635 | (stroke 636 | (width 0.05) 637 | (type solid) 638 | ) 639 | (layer "B.Fab") 640 | (uuid "cfdfd3bd-aadc-4c9f-a7d3-47ecfed32c0b") 641 | ) 642 | (fp_line 643 | (start -6.085176 -0.86022) 644 | (end -6.085176 -4.75022) 645 | (stroke 646 | (width 0.05) 647 | (type solid) 648 | ) 649 | (layer "B.Fab") 650 | (uuid "8bc5d11f-6585-4076-b60d-dc4f0d7d8b85") 651 | ) 652 | (fp_line 653 | (start -6.085176 -0.86022) 654 | (end -2.494322 -0.86022) 655 | (stroke 656 | (width 0.05) 657 | (type solid) 658 | ) 659 | (layer "B.Fab") 660 | (uuid "4f3ae984-4f0a-4ff1-8588-dfa608e802f6") 661 | ) 662 | (fp_line 663 | (start -4.085176 -6.75022) 664 | (end 4.864824 -6.75022) 665 | (stroke 666 | (width 0.05) 667 | (type solid) 668 | ) 669 | (layer "B.Fab") 670 | (uuid "b7515874-f819-424f-80ad-62389e588ff9") 671 | ) 672 | (fp_line 673 | (start -3.446 6.15) 674 | (end -6.446 6.15) 675 | (stroke 676 | (width 0.05) 677 | (type solid) 678 | ) 679 | (layer "B.Fab") 680 | (uuid "652e1b44-cd10-426e-ad0c-8a3b6365bc73") 681 | ) 682 | (fp_line 683 | (start -2.446 7.5) 684 | (end -2.446 7.15) 685 | (stroke 686 | (width 0.05) 687 | (type solid) 688 | ) 689 | (layer "B.Fab") 690 | (uuid "5ae92a23-b907-4b43-9960-384688bca65f") 691 | ) 692 | (fp_line 693 | (start -2.446 7.5) 694 | (end -1.646 8.3) 695 | (stroke 696 | (width 0.05) 697 | (type solid) 698 | ) 699 | (layer "B.Fab") 700 | (uuid "fbd2630a-ee3c-4b1c-b6c9-d90819c41393") 701 | ) 702 | (fp_line 703 | (start 1.504 3.65) 704 | (end -0.296 3.65) 705 | (stroke 706 | (width 0.05) 707 | (type solid) 708 | ) 709 | (layer "B.Fab") 710 | (uuid "d18ca644-7776-4afb-aacc-6ffb82602f6d") 711 | ) 712 | (fp_line 713 | (start 1.504 3.65) 714 | (end 2.304 4.45) 715 | (stroke 716 | (width 0.05) 717 | (type solid) 718 | ) 719 | (layer "B.Fab") 720 | (uuid "ccd6cdb0-d1b4-4190-9a47-74fbfbe4c65c") 721 | ) 722 | (fp_line 723 | (start 1.504 8.3) 724 | (end -1.646 8.3) 725 | (stroke 726 | (width 0.05) 727 | (type solid) 728 | ) 729 | (layer "B.Fab") 730 | (uuid "b2801af5-c8e9-4f8f-9e96-b52bfe3e21f3") 731 | ) 732 | (fp_line 733 | (start 2.304 7.5) 734 | (end 1.504 8.3) 735 | (stroke 736 | (width 0.05) 737 | (type solid) 738 | ) 739 | (layer "B.Fab") 740 | (uuid "d3206644-c61e-4aa5-9d0f-9618c9f8e6a8") 741 | ) 742 | (fp_line 743 | (start 2.304 7.5) 744 | (end 2.304 4.45) 745 | (stroke 746 | (width 0.05) 747 | (type solid) 748 | ) 749 | (layer "B.Fab") 750 | (uuid "56542d6e-bc27-4d97-9ba7-f7843c808b17") 751 | ) 752 | (fp_line 753 | (start 4.864824 -6.75022) 754 | (end 4.864824 -2.70022) 755 | (stroke 756 | (width 0.05) 757 | (type solid) 758 | ) 759 | (layer "B.Fab") 760 | (uuid "ea191bb0-0489-49c1-8252-8069691d10cf") 761 | ) 762 | (fp_line 763 | (start 4.864824 -2.70022) 764 | (end -0.2 -2.70022) 765 | (stroke 766 | (width 0.05) 767 | (type solid) 768 | ) 769 | (layer "B.Fab") 770 | (uuid "71a10693-dbd5-4f63-b7ce-c25f7da94384") 771 | ) 772 | (fp_arc 773 | (start -6.446 6.15) 774 | (mid -7.011685 5.915685) 775 | (end -7.246 5.35) 776 | (stroke 777 | (width 0.05) 778 | (type solid) 779 | ) 780 | (layer "B.Fab") 781 | (uuid "685ea26b-d293-4061-9fc0-f5e312b0977d") 782 | ) 783 | (fp_arc 784 | (start -6.085176 -4.75022) 785 | (mid -5.499381 -6.164412) 786 | (end -4.085176 -6.75022) 787 | (stroke 788 | (width 0.05) 789 | (type solid) 790 | ) 791 | (layer "B.Fab") 792 | (uuid "0a57fb42-a6b9-4302-b2fa-fcb67f14848f") 793 | ) 794 | (fp_arc 795 | (start -3.446 6.15) 796 | (mid -2.738893 6.442893) 797 | (end -2.446 7.15) 798 | (stroke 799 | (width 0.05) 800 | (type solid) 801 | ) 802 | (layer "B.Fab") 803 | (uuid "428ca1a9-b42e-4f87-acbb-125b65430645") 804 | ) 805 | (fp_arc 806 | (start -3.396 1.5) 807 | (mid -2.822423 1.680848) 808 | (end -2.456307 2.15798) 809 | (stroke 810 | (width 0.05) 811 | (type solid) 812 | ) 813 | (layer "B.Fab") 814 | (uuid "eeac8cab-7eee-45d4-b74f-da2ef39a9edb") 815 | ) 816 | (fp_arc 817 | (start -2.494322 -0.86022) 818 | (mid -1.670501 -2.183395) 819 | (end -0.2 -2.70022) 820 | (stroke 821 | (width 0.05) 822 | (type solid) 823 | ) 824 | (layer "B.Fab") 825 | (uuid "43465314-747a-49d1-8dbe-d7927a324563") 826 | ) 827 | (fp_arc 828 | (start -0.295999 3.649999) 829 | (mid -1.573272 3.192235) 830 | (end -2.451444 2.15793) 831 | (stroke 832 | (width 0.05) 833 | (type solid) 834 | ) 835 | (layer "B.Fab") 836 | (uuid "bd848657-402c-401b-8835-a7d1a34c05af") 837 | ) 838 | (pad "" np_thru_hole oval 839 | (at -5.29 0 180) 840 | (size 2.12 1.7) 841 | (drill oval 2.12 1.7) 842 | (layers "F&B.Cu" "*.Mask") 843 | (uuid "afcb5d80-d256-4dd3-9a2a-fca8c2c17d10") 844 | ) 845 | (pad "" np_thru_hole circle 846 | (at 0 0 180) 847 | (size 4.9 4.9) 848 | (drill 4.9) 849 | (layers "*.Mask") 850 | (uuid "21b97722-edee-4c24-af8f-cc23be70fc45") 851 | ) 852 | (pad "" np_thru_hole oval 853 | (at 5.29 0) 854 | (size 2.12 1.7) 855 | (drill oval 2.12 1.7) 856 | (layers "F&B.Cu" "*.Mask") 857 | (uuid "85b8e3ab-7d92-4af2-a0a7-8bba192a9063") 858 | ) 859 | (pad "1" smd roundrect 860 | (at -8.245 3.75) 861 | (size 2.65 2.6) 862 | (layers "B.Cu" "B.Paste" "B.Mask") 863 | (roundrect_rratio 0.1) 864 | (uuid "8aa9c4b7-d8ac-4d6c-93f7-53150acd404e") 865 | ) 866 | (pad "1" smd roundrect 867 | (at -7.36 -2.54) 868 | (size 2.55 2.5) 869 | (layers "B.Cu" "B.Paste" "B.Mask") 870 | (roundrect_rratio 0.1) 871 | (uuid "8ec0b764-304d-4b37-9ef2-72ec7eb7e493") 872 | ) 873 | (pad "1" smd rect 874 | (at -6.55 3.75) 875 | (size 1.2 2.6) 876 | (layers "B.Cu") 877 | (uuid "a96db52c-6c6d-4d9f-83da-ec5d93cf16bc") 878 | ) 879 | (pad "1" smd rect 880 | (at -5.635 -2.54 180) 881 | (size 1.65 2.5) 882 | (layers "B.Cu") 883 | (uuid "162ccd9a-088e-422a-80ae-b86d291b8501") 884 | ) 885 | (pad "1" thru_hole circle 886 | (at -5 3.75) 887 | (size 3.3 3.3) 888 | (drill 3) 889 | (layers "*.Cu" "*.Mask") 890 | (remove_unused_layers no) 891 | (uuid "ebe5718c-754e-4769-9004-d818f0497700") 892 | ) 893 | (pad "1" thru_hole circle 894 | (at -3.81 -2.54) 895 | (size 3.3 3.3) 896 | (drill 3) 897 | (layers "*.Cu" "*.Mask") 898 | (remove_unused_layers no) 899 | (uuid "54e47c3d-75a3-49db-9d02-ca9041183e61") 900 | ) 901 | (pad "2" thru_hole circle 902 | (at 0 5.95) 903 | (size 3.3 3.3) 904 | (drill 3) 905 | (layers "*.Cu" "*.Mask") 906 | (remove_unused_layers no) 907 | (uuid "f314873c-edba-48cd-8629-5ca98685cc5c") 908 | ) 909 | (pad "2" smd rect 910 | (at 1.55 5.95 180) 911 | (size 1.2 2.6) 912 | (layers "B.Cu") 913 | (uuid "625cbc4d-6467-4791-a98e-ba7170b114de") 914 | ) 915 | (pad "2" thru_hole circle 916 | (at 2.54 -5.08) 917 | (size 3.3 3.3) 918 | (drill 3) 919 | (layers "*.Cu" "*.Mask") 920 | (remove_unused_layers no) 921 | (uuid "7831d9d3-67b8-4799-a4fb-a1f0c406e5b6") 922 | ) 923 | (pad "2" smd roundrect 924 | (at 3.245 5.95) 925 | (size 2.65 2.6) 926 | (layers "B.Cu" "B.Paste" "B.Mask") 927 | (roundrect_rratio 0.1) 928 | (uuid "38cdd542-3557-477a-92c5-f94bcda07e49") 929 | ) 930 | (pad "2" smd rect 931 | (at 4.34 -5.08) 932 | (size 1.65 2.5) 933 | (layers "B.Cu") 934 | (uuid "fcba3b58-0451-476a-8a9b-3afa9467112e") 935 | ) 936 | (pad "2" smd roundrect 937 | (at 6.09 -5.08) 938 | (size 2.55 2.5) 939 | (layers "B.Cu" "B.Paste" "B.Mask") 940 | (roundrect_rratio 0.1) 941 | (uuid "8538a33d-6d3e-4f75-83fe-b355cb241dd4") 942 | ) 943 | ) 944 | -------------------------------------------------------------------------------- /pcb/lib/axseem.pretty/SolderJumper-3_P.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "SolderJumper-3_P" 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (layer "F.Cu") 6 | (property "Reference" "REF**" 7 | (at 2.25 0 0) 8 | (unlocked yes) 9 | (layer "F.SilkS") 10 | (uuid "91aa7f2e-a271-43f2-9d9e-311b6837ed6e") 11 | (effects 12 | (font 13 | (size 0.5 0.5) 14 | (thickness 0.12) 15 | (bold yes) 16 | ) 17 | ) 18 | ) 19 | (property "Value" "SolderJumper-3_P" 20 | (at 0 2.75 0) 21 | (unlocked yes) 22 | (layer "F.Fab") 23 | (uuid "3ad3ddf8-3958-4c4f-baa7-7ef96526f9c5") 24 | (effects 25 | (font 26 | (size 1 1) 27 | (thickness 0.15) 28 | ) 29 | ) 30 | ) 31 | (property "Footprint" "" 32 | (at 0 -1.75 0) 33 | (unlocked yes) 34 | (layer "F.Fab") 35 | (hide yes) 36 | (uuid "0650b02a-5cd1-42cd-8689-2d2e7bf57cbf") 37 | (effects 38 | (font 39 | (size 1 1) 40 | (thickness 0.15) 41 | ) 42 | ) 43 | ) 44 | (property "Datasheet" "" 45 | (at 0 -1.75 0) 46 | (unlocked yes) 47 | (layer "F.Fab") 48 | (hide yes) 49 | (uuid "d6a24941-778c-4862-ad97-e14644aa3f48") 50 | (effects 51 | (font 52 | (size 1 1) 53 | (thickness 0.15) 54 | ) 55 | ) 56 | ) 57 | (property "Description" "" 58 | (at 0 -1.75 0) 59 | (unlocked yes) 60 | (layer "F.Fab") 61 | (hide yes) 62 | (uuid "2aad981d-32b1-4dcf-b924-f52169c3d666") 63 | (effects 64 | (font 65 | (size 1 1) 66 | (thickness 0.15) 67 | ) 68 | ) 69 | ) 70 | (attr smd) 71 | (fp_line 72 | (start -0.75 0.75) 73 | (end -0.75 -0.75) 74 | (stroke 75 | (width 0.15) 76 | (type default) 77 | ) 78 | (layer "F.SilkS") 79 | (uuid "c49abcbd-9989-4ae7-bcf7-76028727a219") 80 | ) 81 | (fp_line 82 | (start -0.25 -1.75) 83 | (end 0.25 -1.75) 84 | (stroke 85 | (width 0.15) 86 | (type default) 87 | ) 88 | (layer "F.SilkS") 89 | (uuid "a6ad76df-e366-4867-b9c5-49c8f09d2e4c") 90 | ) 91 | (fp_line 92 | (start -0.25 -1.25) 93 | (end 0.25 -1.25) 94 | (stroke 95 | (width 0.15) 96 | (type default) 97 | ) 98 | (layer "F.SilkS") 99 | (uuid "322683b7-0a1d-4a1f-a850-f30a95b9fa2c") 100 | ) 101 | (fp_line 102 | (start -0.25 1.75) 103 | (end 0.25 1.75) 104 | (stroke 105 | (width 0.15) 106 | (type default) 107 | ) 108 | (layer "F.SilkS") 109 | (uuid "b08eff5a-86f5-428f-bb24-f1a7715fd3fc") 110 | ) 111 | (fp_line 112 | (start 0 -1.5) 113 | (end 0 -2) 114 | (stroke 115 | (width 0.15) 116 | (type default) 117 | ) 118 | (layer "F.SilkS") 119 | (uuid "d71a84b2-3350-4e27-ad0b-a5bdc2702117") 120 | ) 121 | (fp_line 122 | (start 0.25 1.25) 123 | (end -0.25 1.25) 124 | (stroke 125 | (width 0.15) 126 | (type default) 127 | ) 128 | (layer "F.SilkS") 129 | (uuid "5f9cad2a-bd09-4ff9-890d-10544b5b03e3") 130 | ) 131 | (fp_line 132 | (start 0.75 -0.75) 133 | (end 0.75 0.75) 134 | (stroke 135 | (width 0.15) 136 | (type default) 137 | ) 138 | (layer "F.SilkS") 139 | (uuid "734bc7c0-b737-4ae1-b031-4df09af9bca7") 140 | ) 141 | (fp_arc 142 | (start -0.75 -0.75) 143 | (mid -0.603553 -1.103554) 144 | (end -0.25 -1.25) 145 | (stroke 146 | (width 0.15) 147 | (type default) 148 | ) 149 | (layer "F.SilkS") 150 | (uuid "73f55c4e-bcb5-4c5f-852b-387e153596af") 151 | ) 152 | (fp_arc 153 | (start -0.25 1.25) 154 | (mid -0.603553 1.103553) 155 | (end -0.75 0.75) 156 | (stroke 157 | (width 0.15) 158 | (type default) 159 | ) 160 | (layer "F.SilkS") 161 | (uuid "9b312a7e-4d05-4903-8776-2c5636aa7f66") 162 | ) 163 | (fp_arc 164 | (start 0.25 -1.25) 165 | (mid 0.603553 -1.103553) 166 | (end 0.75 -0.75) 167 | (stroke 168 | (width 0.15) 169 | (type default) 170 | ) 171 | (layer "F.SilkS") 172 | (uuid "1975cf4c-6130-4d9d-8959-31d035e5dbd7") 173 | ) 174 | (fp_arc 175 | (start 0.75 0.75) 176 | (mid 0.603553 1.103554) 177 | (end 0.25 1.25) 178 | (stroke 179 | (width 0.15) 180 | (type default) 181 | ) 182 | (layer "F.SilkS") 183 | (uuid "d73ca1a1-8e9e-4f0b-bcd5-e4cd93f3fd19") 184 | ) 185 | (fp_rect 186 | (start -1 -1.5) 187 | (end 1 1.5) 188 | (stroke 189 | (width 0.1) 190 | (type default) 191 | ) 192 | (fill none) 193 | (layer "F.CrtYd") 194 | (uuid "17fec648-557c-44c2-838e-668718ad0c3f") 195 | ) 196 | (fp_text user "${REFERENCE}" 197 | (at 0 4.25 0) 198 | (unlocked yes) 199 | (layer "F.Fab") 200 | (uuid "65d2bc26-49aa-4b0a-91a1-9cac1285e9d1") 201 | (effects 202 | (font 203 | (size 1 1) 204 | (thickness 0.15) 205 | ) 206 | ) 207 | ) 208 | (pad "1" smd custom 209 | (at 0 0.75 90) 210 | (size 0.5 0.5) 211 | (layers "F.Cu" "F.Mask") 212 | (options 213 | (clearance outline) 214 | (anchor rect) 215 | ) 216 | (primitives 217 | (gr_rect 218 | (start 0 -0.5) 219 | (end 0.25 0.5) 220 | (width 0) 221 | (fill yes) 222 | ) 223 | (gr_circle 224 | (center 0 0.25) 225 | (end 0.25 0.25) 226 | (width 0) 227 | (fill yes) 228 | ) 229 | (gr_circle 230 | (center 0 -0.25) 231 | (end 0.25 -0.25) 232 | (width 0) 233 | (fill yes) 234 | ) 235 | ) 236 | (uuid "721c1bce-5340-4153-a380-ac9b52f59080") 237 | ) 238 | (pad "2" smd rect 239 | (at 0 0 90) 240 | (size 0.5 1) 241 | (layers "F.Cu" "F.Mask") 242 | (uuid "db2f9261-9387-4176-a140-13723dc0e48b") 243 | ) 244 | (pad "3" smd custom 245 | (at 0 -0.75 270) 246 | (size 0.5 0.5) 247 | (layers "F.Cu" "F.Mask") 248 | (options 249 | (clearance outline) 250 | (anchor rect) 251 | ) 252 | (primitives 253 | (gr_rect 254 | (start 0 -0.5) 255 | (end 0.25 0.5) 256 | (width 0) 257 | (fill yes) 258 | ) 259 | (gr_circle 260 | (center 0 0.25) 261 | (end 0.25 0.25) 262 | (width 0) 263 | (fill yes) 264 | ) 265 | (gr_circle 266 | (center 0 -0.25) 267 | (end 0.25 -0.25) 268 | (width 0) 269 | (fill yes) 270 | ) 271 | ) 272 | (uuid "e289e3a5-07d5-4639-817e-4852262a33ec") 273 | ) 274 | ) 275 | -------------------------------------------------------------------------------- /pcb/lib/axseem.pretty/TS-1289VE-4.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "TS-1289VE-4" 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (layer "F.Cu") 6 | (property "Reference" "REF**" 7 | (at 0 2.9 0) 8 | (unlocked yes) 9 | (layer "F.SilkS") 10 | (uuid "b3d86caa-a94b-471e-8e80-f1eb016577c6") 11 | (effects 12 | (font 13 | (size 1 1) 14 | (thickness 0.15) 15 | ) 16 | ) 17 | ) 18 | (property "Value" "TS-1289VE-4" 19 | (at 0 -3.8 0) 20 | (unlocked yes) 21 | (layer "F.Fab") 22 | (uuid "dc43ab44-12bf-47df-b3f8-f1187b646c15") 23 | (effects 24 | (font 25 | (size 1 1) 26 | (thickness 0.15) 27 | ) 28 | ) 29 | ) 30 | (property "Footprint" "" 31 | (at 0 -5.65 0) 32 | (unlocked yes) 33 | (layer "F.Fab") 34 | (hide yes) 35 | (uuid "8353f172-e308-4ea2-8732-a3fefcdb7473") 36 | (effects 37 | (font 38 | (size 1 1) 39 | (thickness 0.15) 40 | ) 41 | ) 42 | ) 43 | (property "Datasheet" "" 44 | (at 0 -5.65 0) 45 | (unlocked yes) 46 | (layer "F.Fab") 47 | (hide yes) 48 | (uuid "d04c5591-4ba3-4bf2-b2ce-afecc24827ab") 49 | (effects 50 | (font 51 | (size 1 1) 52 | (thickness 0.15) 53 | ) 54 | ) 55 | ) 56 | (property "Description" "" 57 | (at 0 -5.65 0) 58 | (unlocked yes) 59 | (layer "F.Fab") 60 | (hide yes) 61 | (uuid "703c3c5c-0ccf-4c85-b6b7-6651bc45f447") 62 | (effects 63 | (font 64 | (size 1 1) 65 | (thickness 0.15) 66 | ) 67 | ) 68 | ) 69 | (attr through_hole) 70 | (fp_line 71 | (start -2.6 0.1) 72 | (end -2.6 -0.1) 73 | (stroke 74 | (width 0.15) 75 | (type default) 76 | ) 77 | (layer "F.SilkS") 78 | (uuid "78312b0a-140a-4053-8147-fbedd62bc454") 79 | ) 80 | (fp_line 81 | (start -2.6 2) 82 | (end -2.6 1.6) 83 | (stroke 84 | (width 0.15) 85 | (type default) 86 | ) 87 | (layer "F.SilkS") 88 | (uuid "5719279c-5ad6-4eff-9d36-e46b9ccf4626") 89 | ) 90 | (fp_line 91 | (start 2.6 0.1) 92 | (end 2.6 -0.1) 93 | (stroke 94 | (width 0.15) 95 | (type default) 96 | ) 97 | (layer "F.SilkS") 98 | (uuid "4f5b3945-e28c-4d35-b8f9-3f9a37a65d65") 99 | ) 100 | (fp_line 101 | (start 2.6 1.6) 102 | (end 2.6 2) 103 | (stroke 104 | (width 0.15) 105 | (type default) 106 | ) 107 | (layer "F.SilkS") 108 | (uuid "11debc72-f69c-474c-88e7-bfb91b2421d2") 109 | ) 110 | (fp_line 111 | (start 2.6 2) 112 | (end -2.6 2) 113 | (stroke 114 | (width 0.15) 115 | (type default) 116 | ) 117 | (layer "F.SilkS") 118 | (uuid "b1b12aae-973c-47c8-9951-f872ac2ceb63") 119 | ) 120 | (fp_rect 121 | (start -2.4 -1.8) 122 | (end 2.4 1.8) 123 | (stroke 124 | (width 0.1) 125 | (type default) 126 | ) 127 | (fill none) 128 | (layer "Dwgs.User") 129 | (uuid "908317cb-3946-43b5-9d9f-a4ad5ceaa2b9") 130 | ) 131 | (fp_rect 132 | (start -1.3 -2.8) 133 | (end 1.3 -1.8) 134 | (stroke 135 | (width 0.1) 136 | (type default) 137 | ) 138 | (fill none) 139 | (layer "Dwgs.User") 140 | (uuid "b6bddf86-8589-4030-8bf5-45f651eb3660") 141 | ) 142 | (fp_poly 143 | (pts 144 | (xy -2.6 2) (xy -2.6 1.6) (xy -3.7 1.6) (xy -3.7 -1.6) (xy -2.6 -1.6) (xy -2.6 -2) (xy -1.5 -2) (xy -1.5 -3) 145 | (xy 1.5 -3) (xy 1.5 -2) (xy 2.6 -2) (xy 2.6 -1.6) (xy 3.7 -1.6) (xy 3.7 1.6) (xy 2.6 1.6) (xy 2.6 2) 146 | ) 147 | (stroke 148 | (width 0.05) 149 | (type solid) 150 | ) 151 | (fill none) 152 | (layer "F.CrtYd") 153 | (uuid "ef9c5027-80e1-49b2-87ca-774fd54f4a2f") 154 | ) 155 | (pad "" np_thru_hole circle 156 | (at 0 -1.375) 157 | (size 0.7 0.7) 158 | (drill 0.7) 159 | (layers "F&B.Cu" "*.Mask") 160 | (thermal_bridge_angle 90) 161 | (uuid "bfb05e3f-fd50-4f0b-a803-cdddbfa21962") 162 | ) 163 | (pad "" np_thru_hole circle 164 | (at 0 1.375) 165 | (size 0.7 0.7) 166 | (drill 0.7) 167 | (layers "F&B.Cu" "*.Mask") 168 | (thermal_bridge_angle 90) 169 | (uuid "1f66df8e-44d0-481a-b13d-94fa50ddacda") 170 | ) 171 | (pad "1" smd roundrect 172 | (at -2.65 0.85) 173 | (size 1.8 1.2) 174 | (layers "F.Cu" "F.Paste" "F.Mask") 175 | (roundrect_rratio 0.2) 176 | (uuid "474cfde6-dac3-4b01-bad8-90d195f9f6a5") 177 | ) 178 | (pad "1" smd rect 179 | (at 0 0.5) 180 | (size 4 0.5) 181 | (layers "F.Cu") 182 | (uuid "44708725-ec8a-4605-ab90-4b5c1edd3a63") 183 | ) 184 | (pad "1" smd roundrect 185 | (at 2.65 0.85) 186 | (size 1.8 1.2) 187 | (layers "F.Cu" "F.Paste" "F.Mask") 188 | (roundrect_rratio 0.2) 189 | (uuid "434063b7-d10a-44a1-96e1-f28b8e2b2173") 190 | ) 191 | (pad "2" smd roundrect 192 | (at -2.65 -0.85) 193 | (size 1.8 1.2) 194 | (layers "F.Cu" "F.Paste" "F.Mask") 195 | (roundrect_rratio 0.2) 196 | (uuid "de5c43ad-1621-485b-a634-e6d2eb2a6577") 197 | ) 198 | (pad "2" smd rect 199 | (at 0 -0.5) 200 | (size 4 0.5) 201 | (layers "F.Cu") 202 | (uuid "58fed472-6394-48d7-b3d4-47d6e37fecc1") 203 | ) 204 | (pad "2" smd roundrect 205 | (at 2.65 -0.85) 206 | (size 1.8 1.2) 207 | (layers "F.Cu" "F.Paste" "F.Mask") 208 | (roundrect_rratio 0.2) 209 | (uuid "e2d979bf-9ea4-4d9f-ab67-6a0ee88b3429") 210 | ) 211 | ) 212 | -------------------------------------------------------------------------------- /pcb/lib/axseem.pretty/USB-C_6Pin_Mid-mount.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "USB-C_6Pin_Mid-mount" 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (layer "F.Cu") 6 | (property "Reference" "REF**" 7 | (at 0 -1.5 0) 8 | (unlocked yes) 9 | (layer "F.SilkS") 10 | (uuid "fa1fdf89-c3ec-4e37-af9b-45d61cc25d63") 11 | (effects 12 | (font 13 | (size 1 1) 14 | (thickness 0.1) 15 | ) 16 | ) 17 | ) 18 | (property "Value" "USB-C_6Pin_Mid-mount" 19 | (at 0 8.8 0) 20 | (unlocked yes) 21 | (layer "F.Fab") 22 | (uuid "94b82242-c6e9-476b-882c-0da809d47d99") 23 | (effects 24 | (font 25 | (size 1 1) 26 | (thickness 0.15) 27 | ) 28 | ) 29 | ) 30 | (property "Footprint" "" 31 | (at 0 -6.25 0) 32 | (unlocked yes) 33 | (layer "F.Fab") 34 | (hide yes) 35 | (uuid "c0afdb85-2038-4abc-bae1-3a9108aac60c") 36 | (effects 37 | (font 38 | (size 1 1) 39 | (thickness 0.15) 40 | ) 41 | ) 42 | ) 43 | (property "Datasheet" "" 44 | (at 0 -6.25 0) 45 | (unlocked yes) 46 | (layer "F.Fab") 47 | (hide yes) 48 | (uuid "e09b113b-19c8-49ea-aa1f-564ace6d456b") 49 | (effects 50 | (font 51 | (size 1 1) 52 | (thickness 0.15) 53 | ) 54 | ) 55 | ) 56 | (property "Description" "" 57 | (at 0 -6.25 0) 58 | (unlocked yes) 59 | (layer "F.Fab") 60 | (hide yes) 61 | (uuid "e26cb896-0bfa-4ead-8a1b-2739ae94f98a") 62 | (effects 63 | (font 64 | (size 1 1) 65 | (thickness 0.15) 66 | ) 67 | ) 68 | ) 69 | (attr smd) 70 | (fp_line 71 | (start -5.25 3.5) 72 | (end -5.25 4.5) 73 | (stroke 74 | (width 0.15) 75 | (type default) 76 | ) 77 | (layer "F.SilkS") 78 | (uuid "05e68387-cf9f-47d9-9fff-eb8f7625114b") 79 | ) 80 | (fp_line 81 | (start 5.25 3.5) 82 | (end 5.25 4.5) 83 | (stroke 84 | (width 0.15) 85 | (type solid) 86 | ) 87 | (layer "F.SilkS") 88 | (uuid "57e563be-4187-4157-9fab-6f278f7207df") 89 | ) 90 | (fp_rect 91 | (start -4.6 1.5) 92 | (end 4.6 7.8) 93 | (stroke 94 | (width 0.1) 95 | (type default) 96 | ) 97 | (fill none) 98 | (layer "Dwgs.User") 99 | (uuid "6ca0a7b3-0167-421d-a25f-277af6ccbaf6") 100 | ) 101 | (fp_text user "${REFERENCE}" 102 | (at 0 10.3 0) 103 | (unlocked yes) 104 | (layer "F.Fab") 105 | (uuid "f2a5ee42-a9b7-4fc5-8542-0f24d92dc44a") 106 | (effects 107 | (font 108 | (size 1 1) 109 | (thickness 0.15) 110 | ) 111 | ) 112 | ) 113 | (pad "A5" smd roundrect 114 | (at -0.5 0.85) 115 | (size 0.7 1.7) 116 | (layers "F.Cu" "F.Paste" "F.Mask") 117 | (roundrect_rratio 0.2) 118 | (thermal_bridge_angle 45) 119 | (uuid "5b357ad6-949b-4850-91c9-9b9af81cda90") 120 | ) 121 | (pad "A9" smd roundrect 122 | (at 1.52 0.85) 123 | (size 0.8 1.7) 124 | (layers "F.Cu" "F.Paste" "F.Mask") 125 | (roundrect_rratio 0.2) 126 | (thermal_bridge_angle 45) 127 | (uuid "db62e5da-f51a-4d9f-8abf-a0d5204103c0") 128 | ) 129 | (pad "A12" smd roundrect 130 | (at 2.75 0.85) 131 | (size 0.9 1.7) 132 | (layers "F.Cu" "F.Paste" "F.Mask") 133 | (roundrect_rratio 0.2) 134 | (thermal_bridge_angle 45) 135 | (uuid "ef0ec0d1-fe9f-482e-92b7-c4947b932ece") 136 | ) 137 | (pad "B5" smd roundrect 138 | (at 0.5 0.85) 139 | (size 0.7 1.7) 140 | (layers "F.Cu" "F.Paste" "F.Mask") 141 | (roundrect_rratio 0.2) 142 | (thermal_bridge_angle 45) 143 | (uuid "d2f3a1ca-4bbc-4257-9774-7b587dc861ab") 144 | ) 145 | (pad "B9" smd roundrect 146 | (at -1.51 0.85) 147 | (size 0.82 1.7) 148 | (layers "F.Cu" "F.Paste" "F.Mask") 149 | (roundrect_rratio 0.2) 150 | (thermal_bridge_angle 45) 151 | (uuid "973e64a0-85be-4854-baba-972830ade3f4") 152 | ) 153 | (pad "B12" smd roundrect 154 | (at -2.75 0.85) 155 | (size 0.9 1.7) 156 | (layers "F.Cu" "F.Paste" "F.Mask") 157 | (roundrect_rratio 0.2) 158 | (thermal_bridge_angle 45) 159 | (uuid "c3fcdc5e-5843-4b8e-9cda-be58d0bca95b") 160 | ) 161 | (pad "S1" thru_hole oval 162 | (at -5.575 2.2) 163 | (size 1 1.8) 164 | (drill oval 0.6 1.4) 165 | (layers "*.Cu" "*.Mask") 166 | (remove_unused_layers no) 167 | (thermal_bridge_angle 45) 168 | (uuid "abd5c57c-3634-412d-95e3-b61b62cae28f") 169 | ) 170 | (pad "S1" thru_hole oval 171 | (at -5.575 5.8) 172 | (size 1 2) 173 | (drill oval 0.6 1.6) 174 | (layers "*.Cu" "*.Mask") 175 | (remove_unused_layers no) 176 | (thermal_bridge_angle 45) 177 | (uuid "4c014a43-2865-47c4-bea7-157ea23ece35") 178 | ) 179 | (pad "S1" thru_hole oval 180 | (at 5.575 2.2) 181 | (size 1 1.8) 182 | (drill oval 0.6 1.4) 183 | (layers "*.Cu" "*.Mask") 184 | (remove_unused_layers no) 185 | (thermal_bridge_angle 45) 186 | (uuid "31e169a3-ca25-4203-a3d3-b55a5e6903a5") 187 | ) 188 | (pad "S1" thru_hole oval 189 | (at 5.575 5.8) 190 | (size 1 2) 191 | (drill oval 0.6 1.6) 192 | (layers "*.Cu" "*.Mask") 193 | (remove_unused_layers no) 194 | (thermal_bridge_angle 45) 195 | (uuid "912b46d0-5398-44ae-b517-328a2ae09d15") 196 | ) 197 | ) 198 | --------------------------------------------------------------------------------