Merge pull request #590 from danieliscrazy/main

dldpad
This commit is contained in:
Alex Ren 2025-03-11 16:28:58 -04:00 committed by GitHub
commit 6684fcf5c4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 63755 additions and 0 deletions

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,10 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
#define ENCODER_A_PINS { GP0 }
#define ENCODER_B_PINS { GP1 }
#define I2C_DRIVER I2CD1
#define I2C1_SDA_PIN GP6
#define I2C1_SCL_PIN GP7

View file

@ -0,0 +1,41 @@
{
"manufacturer": "Daniel Davidson",
"keyboard_name": "dldpad",
"maintainer": "danieliscrazy",
"bootloader": "rp2040",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"direct": [
["GP3", "GP4", "GP2", "GP26"],
["GP27", "GP28", "GP29", "NO_PIN"]
]
},
"processor": "RP2040",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0010",
"vid": "0x0F63"
},
"layouts": {
"LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1},
{"matrix": [1, 1], "x": 1, "y": 1},
{"matrix": [1, 2], "x": 2, "y": 1}
]
}
}
}

View file

@ -0,0 +1,45 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
enum layer_names {
_LAYERER,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// i don't have a diagram here sorry
[_LAYERER] = LAYOUT(
KC_F13, KC_F14, KC_F15, KC_MUTE,
KC_F16, KC_F17, KC_F18
)
};
const uint16_t PROGMEM encoder_map[][1][2] = {
[0] = { ENCODER_CCW_CW(KC_VOLU, KC_VOLD) },
};
#ifdef OLED_ENABLE
bool oled_task_user(void) {
// Host Keyboard Layer Status
oled_write_P(PSTR("Layer: "), false);
switch (get_highest_layer(layer_state)) {
case _LAYERER:
oled_write_P(PSTR("ducks are cool\n"), false);
break;
default:
// Or use the write_ln shortcut over adding '\n' to the end of your string
oled_write_ln_P(PSTR("where are the ducks"), false);
}
// Host Keyboard LED Status
led_t led_state = host_keyboard_led_state();
oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
return false;
}
#endif

View file

@ -0,0 +1,27 @@
# dldpad
![dldpad](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Daniel Davidson](https://github.com/danieliscrazy)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Make example for this keyboard (after setting up your build environment):
make dldpad:default
Flashing example for this keyboard:
make dldpad:default:flash
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
## Bootloader
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available

View file

@ -0,0 +1,8 @@
OLED_ENABLE = yes
OLED_TRANSPORT = i2c
OLED_DRIVER = ssd1306
ENCODER_ENABLE = yes
ENCODER_MAP_ENABLE = yes
# required for rp2040
LTO_ENABLE = yes

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,775 @@
ISO-10303-21;
HEADER;
/* Generated by software containing ST-Developer
* from STEP Tools, Inc. (www.steptools.com)
*/
/* OPTION: using custom renumber hook */
FILE_DESCRIPTION(
/* description */ ('STEP AP242',
'CAx-IF Rec.Pracs.---Representation and Presentation of Product Manufa
cturing Information (PMI)---4.0---2014-10-13',
'CAx-IF Rec.Pracs.---3D Tessellated Geometry---0.4---2014-09-14','2;1'),
/* implementation_level */ '2;1');
FILE_NAME(
/* name */ '67b770077385e936a2455aba',
/* time_stamp */ '2025-02-20T18:10:15Z',
/* author */ (''),
/* organization */ (''),
/* preprocessor_version */ 'ST-DEVELOPER v20',
/* originating_system */ 'ONSHAPE BY PTC INC, 1.193',
/* authorisation */ ' ');
FILE_SCHEMA (('AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF { 1 0 10303 442 1 1 4 }'));
ENDSEC;
DATA;
#10=SHAPE_REPRESENTATION_RELATIONSHIP('','',#439,#11);
#11=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#437),#717);
#12=CIRCLE('',#448,0.003);
#13=CIRCLE('',#449,0.003);
#14=CIRCLE('',#451,0.003);
#15=CIRCLE('',#452,0.003);
#16=CIRCLE('',#454,0.003);
#17=CIRCLE('',#455,0.003);
#18=CIRCLE('',#457,0.003);
#19=CIRCLE('',#458,0.003);
#20=CIRCLE('',#462,0.005);
#21=CIRCLE('',#463,0.005);
#22=CIRCLE('',#464,0.005);
#23=CIRCLE('',#465,0.005);
#24=CIRCLE('',#467,0.005);
#25=CIRCLE('',#468,0.005);
#26=CIRCLE('',#469,0.005);
#27=CIRCLE('',#470,0.005);
#28=CYLINDRICAL_SURFACE('',#447,0.003);
#29=CYLINDRICAL_SURFACE('',#450,0.003);
#30=CYLINDRICAL_SURFACE('',#453,0.003);
#31=CYLINDRICAL_SURFACE('',#456,0.003);
#32=CYLINDRICAL_SURFACE('',#475,0.005);
#33=CYLINDRICAL_SURFACE('',#476,0.005);
#34=CYLINDRICAL_SURFACE('',#477,0.005);
#35=CYLINDRICAL_SURFACE('',#478,0.005);
#36=ORIENTED_EDGE('',*,*,#148,.F.);
#37=ORIENTED_EDGE('',*,*,#149,.T.);
#38=ORIENTED_EDGE('',*,*,#150,.T.);
#39=ORIENTED_EDGE('',*,*,#151,.F.);
#40=ORIENTED_EDGE('',*,*,#152,.T.);
#41=ORIENTED_EDGE('',*,*,#153,.T.);
#42=ORIENTED_EDGE('',*,*,#154,.T.);
#43=ORIENTED_EDGE('',*,*,#155,.T.);
#44=ORIENTED_EDGE('',*,*,#156,.F.);
#45=ORIENTED_EDGE('',*,*,#157,.T.);
#46=ORIENTED_EDGE('',*,*,#158,.T.);
#47=ORIENTED_EDGE('',*,*,#159,.T.);
#48=ORIENTED_EDGE('',*,*,#160,.T.);
#49=ORIENTED_EDGE('',*,*,#161,.T.);
#50=ORIENTED_EDGE('',*,*,#162,.F.);
#51=ORIENTED_EDGE('',*,*,#163,.T.);
#52=ORIENTED_EDGE('',*,*,#164,.F.);
#53=ORIENTED_EDGE('',*,*,#165,.F.);
#54=ORIENTED_EDGE('',*,*,#166,.T.);
#55=ORIENTED_EDGE('',*,*,#167,.T.);
#56=ORIENTED_EDGE('',*,*,#168,.F.);
#57=ORIENTED_EDGE('',*,*,#169,.T.);
#58=ORIENTED_EDGE('',*,*,#170,.F.);
#59=ORIENTED_EDGE('',*,*,#165,.T.);
#60=ORIENTED_EDGE('',*,*,#171,.T.);
#61=ORIENTED_EDGE('',*,*,#172,.F.);
#62=ORIENTED_EDGE('',*,*,#173,.F.);
#63=ORIENTED_EDGE('',*,*,#174,.F.);
#64=ORIENTED_EDGE('',*,*,#172,.T.);
#65=ORIENTED_EDGE('',*,*,#175,.T.);
#66=ORIENTED_EDGE('',*,*,#176,.F.);
#67=ORIENTED_EDGE('',*,*,#177,.F.);
#68=ORIENTED_EDGE('',*,*,#178,.T.);
#69=ORIENTED_EDGE('',*,*,#179,.F.);
#70=ORIENTED_EDGE('',*,*,#180,.T.);
#71=ORIENTED_EDGE('',*,*,#181,.F.);
#72=ORIENTED_EDGE('',*,*,#182,.T.);
#73=ORIENTED_EDGE('',*,*,#183,.F.);
#74=ORIENTED_EDGE('',*,*,#184,.T.);
#75=ORIENTED_EDGE('',*,*,#185,.F.);
#76=ORIENTED_EDGE('',*,*,#186,.F.);
#77=ORIENTED_EDGE('',*,*,#167,.F.);
#78=ORIENTED_EDGE('',*,*,#187,.T.);
#79=ORIENTED_EDGE('',*,*,#176,.T.);
#80=ORIENTED_EDGE('',*,*,#188,.F.);
#81=ORIENTED_EDGE('',*,*,#189,.T.);
#82=ORIENTED_EDGE('',*,*,#190,.T.);
#83=ORIENTED_EDGE('',*,*,#191,.T.);
#84=ORIENTED_EDGE('',*,*,#150,.F.);
#85=ORIENTED_EDGE('',*,*,#192,.T.);
#86=ORIENTED_EDGE('',*,*,#156,.T.);
#87=ORIENTED_EDGE('',*,*,#193,.T.);
#88=ORIENTED_EDGE('',*,*,#162,.T.);
#89=ORIENTED_EDGE('',*,*,#194,.T.);
#90=ORIENTED_EDGE('',*,*,#190,.F.);
#91=ORIENTED_EDGE('',*,*,#195,.T.);
#92=ORIENTED_EDGE('',*,*,#154,.F.);
#93=ORIENTED_EDGE('',*,*,#196,.T.);
#94=ORIENTED_EDGE('',*,*,#173,.T.);
#95=ORIENTED_EDGE('',*,*,#177,.T.);
#96=ORIENTED_EDGE('',*,*,#187,.F.);
#97=ORIENTED_EDGE('',*,*,#166,.F.);
#98=ORIENTED_EDGE('',*,*,#170,.T.);
#99=ORIENTED_EDGE('',*,*,#197,.F.);
#100=ORIENTED_EDGE('',*,*,#184,.F.);
#101=ORIENTED_EDGE('',*,*,#182,.F.);
#102=ORIENTED_EDGE('',*,*,#180,.F.);
#103=ORIENTED_EDGE('',*,*,#178,.F.);
#104=ORIENTED_EDGE('',*,*,#185,.T.);
#105=ORIENTED_EDGE('',*,*,#183,.T.);
#106=ORIENTED_EDGE('',*,*,#181,.T.);
#107=ORIENTED_EDGE('',*,*,#179,.T.);
#108=ORIENTED_EDGE('',*,*,#158,.F.);
#109=ORIENTED_EDGE('',*,*,#198,.T.);
#110=ORIENTED_EDGE('',*,*,#148,.T.);
#111=ORIENTED_EDGE('',*,*,#199,.T.);
#112=ORIENTED_EDGE('',*,*,#188,.T.);
#113=ORIENTED_EDGE('',*,*,#200,.T.);
#114=ORIENTED_EDGE('',*,*,#160,.F.);
#115=ORIENTED_EDGE('',*,*,#201,.T.);
#116=ORIENTED_EDGE('',*,*,#171,.F.);
#117=ORIENTED_EDGE('',*,*,#164,.T.);
#118=ORIENTED_EDGE('',*,*,#186,.T.);
#119=ORIENTED_EDGE('',*,*,#175,.F.);
#120=ORIENTED_EDGE('',*,*,#197,.T.);
#121=ORIENTED_EDGE('',*,*,#169,.F.);
#122=ORIENTED_EDGE('',*,*,#202,.F.);
#123=ORIENTED_EDGE('',*,*,#151,.T.);
#124=ORIENTED_EDGE('',*,*,#196,.F.);
#125=ORIENTED_EDGE('',*,*,#153,.F.);
#126=ORIENTED_EDGE('',*,*,#203,.T.);
#127=ORIENTED_EDGE('',*,*,#174,.T.);
#128=ORIENTED_EDGE('',*,*,#152,.F.);
#129=ORIENTED_EDGE('',*,*,#202,.T.);
#130=ORIENTED_EDGE('',*,*,#168,.T.);
#131=ORIENTED_EDGE('',*,*,#203,.F.);
#132=ORIENTED_EDGE('',*,*,#192,.F.);
#133=ORIENTED_EDGE('',*,*,#149,.F.);
#134=ORIENTED_EDGE('',*,*,#198,.F.);
#135=ORIENTED_EDGE('',*,*,#157,.F.);
#136=ORIENTED_EDGE('',*,*,#195,.F.);
#137=ORIENTED_EDGE('',*,*,#189,.F.);
#138=ORIENTED_EDGE('',*,*,#199,.F.);
#139=ORIENTED_EDGE('',*,*,#155,.F.);
#140=ORIENTED_EDGE('',*,*,#194,.F.);
#141=ORIENTED_EDGE('',*,*,#161,.F.);
#142=ORIENTED_EDGE('',*,*,#200,.F.);
#143=ORIENTED_EDGE('',*,*,#191,.F.);
#144=ORIENTED_EDGE('',*,*,#193,.F.);
#145=ORIENTED_EDGE('',*,*,#159,.F.);
#146=ORIENTED_EDGE('',*,*,#201,.F.);
#147=ORIENTED_EDGE('',*,*,#163,.F.);
#148=EDGE_CURVE('',#204,#205,#244,.T.);
#149=EDGE_CURVE('',#204,#206,#245,.F.);
#150=EDGE_CURVE('',#206,#207,#246,.T.);
#151=EDGE_CURVE('',#208,#207,#247,.T.);
#152=EDGE_CURVE('',#208,#209,#248,.T.);
#153=EDGE_CURVE('',#209,#210,#249,.T.);
#154=EDGE_CURVE('',#210,#211,#250,.T.);
#155=EDGE_CURVE('',#211,#205,#251,.T.);
#156=EDGE_CURVE('',#212,#213,#252,.T.);
#157=EDGE_CURVE('',#212,#214,#253,.T.);
#158=EDGE_CURVE('',#214,#215,#254,.T.);
#159=EDGE_CURVE('',#215,#213,#255,.F.);
#160=EDGE_CURVE('',#216,#217,#256,.T.);
#161=EDGE_CURVE('',#217,#218,#257,.F.);
#162=EDGE_CURVE('',#219,#218,#258,.T.);
#163=EDGE_CURVE('',#219,#216,#259,.T.);
#164=EDGE_CURVE('',#220,#221,#260,.T.);
#165=EDGE_CURVE('',#222,#220,#261,.T.);
#166=EDGE_CURVE('',#222,#223,#262,.T.);
#167=EDGE_CURVE('',#223,#221,#263,.T.);
#168=EDGE_CURVE('',#224,#225,#264,.T.);
#169=EDGE_CURVE('',#224,#226,#265,.T.);
#170=EDGE_CURVE('',#222,#226,#266,.T.);
#171=EDGE_CURVE('',#220,#227,#267,.T.);
#172=EDGE_CURVE('',#228,#227,#268,.T.);
#173=EDGE_CURVE('',#229,#228,#269,.T.);
#174=EDGE_CURVE('',#225,#229,#270,.T.);
#175=EDGE_CURVE('',#227,#230,#271,.T.);
#176=EDGE_CURVE('',#231,#230,#272,.T.);
#177=EDGE_CURVE('',#228,#231,#273,.T.);
#178=EDGE_CURVE('',#232,#232,#12,.T.);
#179=EDGE_CURVE('',#233,#233,#13,.T.);
#180=EDGE_CURVE('',#234,#234,#14,.T.);
#181=EDGE_CURVE('',#235,#235,#15,.T.);
#182=EDGE_CURVE('',#236,#236,#16,.T.);
#183=EDGE_CURVE('',#237,#237,#17,.T.);
#184=EDGE_CURVE('',#238,#238,#18,.T.);
#185=EDGE_CURVE('',#239,#239,#19,.T.);
#186=EDGE_CURVE('',#221,#230,#274,.T.);
#187=EDGE_CURVE('',#223,#231,#275,.T.);
#188=EDGE_CURVE('',#240,#241,#276,.T.);
#189=EDGE_CURVE('',#240,#242,#277,.F.);
#190=EDGE_CURVE('',#242,#243,#278,.T.);
#191=EDGE_CURVE('',#243,#241,#279,.T.);
#192=EDGE_CURVE('',#206,#212,#20,.T.);
#193=EDGE_CURVE('',#213,#219,#21,.T.);
#194=EDGE_CURVE('',#218,#243,#22,.T.);
#195=EDGE_CURVE('',#242,#211,#23,.T.);
#196=EDGE_CURVE('',#210,#229,#280,.T.);
#197=EDGE_CURVE('',#207,#226,#281,.T.);
#198=EDGE_CURVE('',#214,#204,#24,.F.);
#199=EDGE_CURVE('',#205,#240,#25,.F.);
#200=EDGE_CURVE('',#241,#217,#26,.F.);
#201=EDGE_CURVE('',#216,#215,#27,.F.);
#202=EDGE_CURVE('',#208,#224,#282,.T.);
#203=EDGE_CURVE('',#209,#225,#283,.T.);
#204=VERTEX_POINT('',#600);
#205=VERTEX_POINT('',#601);
#206=VERTEX_POINT('',#603);
#207=VERTEX_POINT('',#605);
#208=VERTEX_POINT('',#607);
#209=VERTEX_POINT('',#609);
#210=VERTEX_POINT('',#611);
#211=VERTEX_POINT('',#613);
#212=VERTEX_POINT('',#617);
#213=VERTEX_POINT('',#618);
#214=VERTEX_POINT('',#620);
#215=VERTEX_POINT('',#622);
#216=VERTEX_POINT('',#626);
#217=VERTEX_POINT('',#627);
#218=VERTEX_POINT('',#629);
#219=VERTEX_POINT('',#631);
#220=VERTEX_POINT('',#635);
#221=VERTEX_POINT('',#636);
#222=VERTEX_POINT('',#638);
#223=VERTEX_POINT('',#640);
#224=VERTEX_POINT('',#644);
#225=VERTEX_POINT('',#645);
#226=VERTEX_POINT('',#647);
#227=VERTEX_POINT('',#650);
#228=VERTEX_POINT('',#652);
#229=VERTEX_POINT('',#654);
#230=VERTEX_POINT('',#658);
#231=VERTEX_POINT('',#660);
#232=VERTEX_POINT('',#664);
#233=VERTEX_POINT('',#666);
#234=VERTEX_POINT('',#669);
#235=VERTEX_POINT('',#671);
#236=VERTEX_POINT('',#674);
#237=VERTEX_POINT('',#676);
#238=VERTEX_POINT('',#679);
#239=VERTEX_POINT('',#681);
#240=VERTEX_POINT('',#687);
#241=VERTEX_POINT('',#688);
#242=VERTEX_POINT('',#690);
#243=VERTEX_POINT('',#692);
#244=LINE('',#599,#284);
#245=LINE('',#602,#285);
#246=LINE('',#604,#286);
#247=LINE('',#606,#287);
#248=LINE('',#608,#288);
#249=LINE('',#610,#289);
#250=LINE('',#612,#290);
#251=LINE('',#614,#291);
#252=LINE('',#616,#292);
#253=LINE('',#619,#293);
#254=LINE('',#621,#294);
#255=LINE('',#623,#295);
#256=LINE('',#625,#296);
#257=LINE('',#628,#297);
#258=LINE('',#630,#298);
#259=LINE('',#632,#299);
#260=LINE('',#634,#300);
#261=LINE('',#637,#301);
#262=LINE('',#639,#302);
#263=LINE('',#641,#303);
#264=LINE('',#643,#304);
#265=LINE('',#646,#305);
#266=LINE('',#648,#306);
#267=LINE('',#649,#307);
#268=LINE('',#651,#308);
#269=LINE('',#653,#309);
#270=LINE('',#655,#310);
#271=LINE('',#657,#311);
#272=LINE('',#659,#312);
#273=LINE('',#661,#313);
#274=LINE('',#683,#314);
#275=LINE('',#684,#315);
#276=LINE('',#686,#316);
#277=LINE('',#689,#317);
#278=LINE('',#691,#318);
#279=LINE('',#693,#319);
#280=LINE('',#699,#320);
#281=LINE('',#700,#321);
#282=LINE('',#708,#322);
#283=LINE('',#710,#323);
#284=VECTOR('',#483,1.);
#285=VECTOR('',#484,1.);
#286=VECTOR('',#485,1.);
#287=VECTOR('',#486,1.);
#288=VECTOR('',#487,1.);
#289=VECTOR('',#488,1.);
#290=VECTOR('',#489,1.);
#291=VECTOR('',#490,1.);
#292=VECTOR('',#493,1.);
#293=VECTOR('',#494,1.);
#294=VECTOR('',#495,1.);
#295=VECTOR('',#496,1.);
#296=VECTOR('',#499,1.);
#297=VECTOR('',#500,1.);
#298=VECTOR('',#501,1.);
#299=VECTOR('',#502,1.);
#300=VECTOR('',#505,1.);
#301=VECTOR('',#506,1.);
#302=VECTOR('',#507,1.);
#303=VECTOR('',#508,1.);
#304=VECTOR('',#511,1.);
#305=VECTOR('',#512,1.);
#306=VECTOR('',#513,1.);
#307=VECTOR('',#514,1.);
#308=VECTOR('',#515,1.);
#309=VECTOR('',#516,1.);
#310=VECTOR('',#517,1.);
#311=VECTOR('',#520,1.);
#312=VECTOR('',#521,1.);
#313=VECTOR('',#522,1.);
#314=VECTOR('',#549,1.);
#315=VECTOR('',#550,1.);
#316=VECTOR('',#553,1.);
#317=VECTOR('',#554,1.);
#318=VECTOR('',#555,1.);
#319=VECTOR('',#556,1.);
#320=VECTOR('',#567,1.);
#321=VECTOR('',#568,1.);
#322=VECTOR('',#583,1.);
#323=VECTOR('',#586,1.);
#324=EDGE_LOOP('',(#36,#37,#38,#39,#40,#41,#42,#43));
#325=EDGE_LOOP('',(#44,#45,#46,#47));
#326=EDGE_LOOP('',(#48,#49,#50,#51));
#327=EDGE_LOOP('',(#52,#53,#54,#55));
#328=EDGE_LOOP('',(#56,#57,#58,#59,#60,#61,#62,#63));
#329=EDGE_LOOP('',(#64,#65,#66,#67));
#330=EDGE_LOOP('',(#68));
#331=EDGE_LOOP('',(#69));
#332=EDGE_LOOP('',(#70));
#333=EDGE_LOOP('',(#71));
#334=EDGE_LOOP('',(#72));
#335=EDGE_LOOP('',(#73));
#336=EDGE_LOOP('',(#74));
#337=EDGE_LOOP('',(#75));
#338=EDGE_LOOP('',(#76,#77,#78,#79));
#339=EDGE_LOOP('',(#80,#81,#82,#83));
#340=EDGE_LOOP('',(#84,#85,#86,#87,#88,#89,#90,#91,#92,#93,#94,#95,#96,
#97,#98,#99));
#341=EDGE_LOOP('',(#100));
#342=EDGE_LOOP('',(#101));
#343=EDGE_LOOP('',(#102));
#344=EDGE_LOOP('',(#103));
#345=EDGE_LOOP('',(#104));
#346=EDGE_LOOP('',(#105));
#347=EDGE_LOOP('',(#106));
#348=EDGE_LOOP('',(#107));
#349=EDGE_LOOP('',(#108,#109,#110,#111,#112,#113,#114,#115));
#350=EDGE_LOOP('',(#116,#117,#118,#119));
#351=EDGE_LOOP('',(#120,#121,#122,#123));
#352=EDGE_LOOP('',(#124,#125,#126,#127));
#353=EDGE_LOOP('',(#128,#129,#130,#131));
#354=EDGE_LOOP('',(#132,#133,#134,#135));
#355=EDGE_LOOP('',(#136,#137,#138,#139));
#356=EDGE_LOOP('',(#140,#141,#142,#143));
#357=EDGE_LOOP('',(#144,#145,#146,#147));
#358=FACE_BOUND('',#324,.T.);
#359=FACE_BOUND('',#325,.T.);
#360=FACE_BOUND('',#326,.T.);
#361=FACE_BOUND('',#327,.T.);
#362=FACE_BOUND('',#328,.T.);
#363=FACE_BOUND('',#329,.T.);
#364=FACE_BOUND('',#330,.T.);
#365=FACE_BOUND('',#331,.T.);
#366=FACE_BOUND('',#332,.T.);
#367=FACE_BOUND('',#333,.T.);
#368=FACE_BOUND('',#334,.T.);
#369=FACE_BOUND('',#335,.T.);
#370=FACE_BOUND('',#336,.T.);
#371=FACE_BOUND('',#337,.T.);
#372=FACE_BOUND('',#338,.T.);
#373=FACE_BOUND('',#339,.T.);
#374=FACE_BOUND('',#340,.T.);
#375=FACE_BOUND('',#341,.T.);
#376=FACE_BOUND('',#342,.T.);
#377=FACE_BOUND('',#343,.T.);
#378=FACE_BOUND('',#344,.T.);
#379=FACE_BOUND('',#345,.T.);
#380=FACE_BOUND('',#346,.T.);
#381=FACE_BOUND('',#347,.T.);
#382=FACE_BOUND('',#348,.T.);
#383=FACE_BOUND('',#349,.T.);
#384=FACE_BOUND('',#350,.T.);
#385=FACE_BOUND('',#351,.T.);
#386=FACE_BOUND('',#352,.T.);
#387=FACE_BOUND('',#353,.T.);
#388=FACE_BOUND('',#354,.T.);
#389=FACE_BOUND('',#355,.T.);
#390=FACE_BOUND('',#356,.T.);
#391=FACE_BOUND('',#357,.T.);
#392=PLANE('',#441);
#393=PLANE('',#442);
#394=PLANE('',#443);
#395=PLANE('',#444);
#396=PLANE('',#445);
#397=PLANE('',#446);
#398=PLANE('',#459);
#399=PLANE('',#460);
#400=PLANE('',#461);
#401=PLANE('',#466);
#402=PLANE('',#471);
#403=PLANE('',#472);
#404=PLANE('',#473);
#405=PLANE('',#474);
#406=ADVANCED_FACE('',(#358),#392,.T.);
#407=ADVANCED_FACE('',(#359),#393,.F.);
#408=ADVANCED_FACE('',(#360),#394,.F.);
#409=ADVANCED_FACE('',(#361),#395,.T.);
#410=ADVANCED_FACE('',(#362),#396,.F.);
#411=ADVANCED_FACE('',(#363),#397,.F.);
#412=ADVANCED_FACE('',(#364,#365),#28,.F.);
#413=ADVANCED_FACE('',(#366,#367),#29,.F.);
#414=ADVANCED_FACE('',(#368,#369),#30,.F.);
#415=ADVANCED_FACE('',(#370,#371),#31,.F.);
#416=ADVANCED_FACE('',(#372),#398,.T.);
#417=ADVANCED_FACE('',(#373),#399,.T.);
#418=ADVANCED_FACE('',(#374,#375,#376,#377,#378),#400,.T.);
#419=ADVANCED_FACE('',(#379,#380,#381,#382,#383),#401,.F.);
#420=ADVANCED_FACE('',(#384),#402,.T.);
#421=ADVANCED_FACE('',(#385),#403,.F.);
#422=ADVANCED_FACE('',(#386),#404,.T.);
#423=ADVANCED_FACE('',(#387),#405,.T.);
#424=ADVANCED_FACE('',(#388),#32,.T.);
#425=ADVANCED_FACE('',(#389),#33,.T.);
#426=ADVANCED_FACE('',(#390),#34,.T.);
#427=ADVANCED_FACE('',(#391),#35,.T.);
#428=CLOSED_SHELL('',(#406,#407,#408,#409,#410,#411,#412,#413,#414,#415,
#416,#417,#418,#419,#420,#421,#422,#423,#424,#425,#426,#427));
#429=STYLED_ITEM('',(#430),#437);
#430=PRESENTATION_STYLE_ASSIGNMENT((#431));
#431=SURFACE_STYLE_USAGE(.BOTH.,#432);
#432=SURFACE_SIDE_STYLE('',(#433));
#433=SURFACE_STYLE_FILL_AREA(#434);
#434=FILL_AREA_STYLE('',(#435));
#435=FILL_AREA_STYLE_COLOUR('',#436);
#436=COLOUR_RGB('',0.768627450980392,0.886274509803922,0.952941176470588);
#437=MANIFOLD_SOLID_BREP('Part 1',#428);
#438=SHAPE_DEFINITION_REPRESENTATION(#722,#439);
#439=SHAPE_REPRESENTATION('Part 1',(#440),#717);
#440=AXIS2_PLACEMENT_3D('',#597,#479,#480);
#441=AXIS2_PLACEMENT_3D('',#598,#481,#482);
#442=AXIS2_PLACEMENT_3D('',#615,#491,#492);
#443=AXIS2_PLACEMENT_3D('',#624,#497,#498);
#444=AXIS2_PLACEMENT_3D('',#633,#503,#504);
#445=AXIS2_PLACEMENT_3D('',#642,#509,#510);
#446=AXIS2_PLACEMENT_3D('',#656,#518,#519);
#447=AXIS2_PLACEMENT_3D('',#662,#523,#524);
#448=AXIS2_PLACEMENT_3D('',#663,#525,#526);
#449=AXIS2_PLACEMENT_3D('',#665,#527,#528);
#450=AXIS2_PLACEMENT_3D('',#667,#529,#530);
#451=AXIS2_PLACEMENT_3D('',#668,#531,#532);
#452=AXIS2_PLACEMENT_3D('',#670,#533,#534);
#453=AXIS2_PLACEMENT_3D('',#672,#535,#536);
#454=AXIS2_PLACEMENT_3D('',#673,#537,#538);
#455=AXIS2_PLACEMENT_3D('',#675,#539,#540);
#456=AXIS2_PLACEMENT_3D('',#677,#541,#542);
#457=AXIS2_PLACEMENT_3D('',#678,#543,#544);
#458=AXIS2_PLACEMENT_3D('',#680,#545,#546);
#459=AXIS2_PLACEMENT_3D('',#682,#547,#548);
#460=AXIS2_PLACEMENT_3D('',#685,#551,#552);
#461=AXIS2_PLACEMENT_3D('',#694,#557,#558);
#462=AXIS2_PLACEMENT_3D('',#695,#559,#560);
#463=AXIS2_PLACEMENT_3D('',#696,#561,#562);
#464=AXIS2_PLACEMENT_3D('',#697,#563,#564);
#465=AXIS2_PLACEMENT_3D('',#698,#565,#566);
#466=AXIS2_PLACEMENT_3D('',#701,#569,#570);
#467=AXIS2_PLACEMENT_3D('',#702,#571,#572);
#468=AXIS2_PLACEMENT_3D('',#703,#573,#574);
#469=AXIS2_PLACEMENT_3D('',#704,#575,#576);
#470=AXIS2_PLACEMENT_3D('',#705,#577,#578);
#471=AXIS2_PLACEMENT_3D('',#706,#579,#580);
#472=AXIS2_PLACEMENT_3D('',#707,#581,#582);
#473=AXIS2_PLACEMENT_3D('',#709,#584,#585);
#474=AXIS2_PLACEMENT_3D('',#711,#587,#588);
#475=AXIS2_PLACEMENT_3D('',#712,#589,#590);
#476=AXIS2_PLACEMENT_3D('',#713,#591,#592);
#477=AXIS2_PLACEMENT_3D('',#714,#593,#594);
#478=AXIS2_PLACEMENT_3D('',#715,#595,#596);
#479=DIRECTION('',(0.,0.,1.));
#480=DIRECTION('',(1.,0.,0.));
#481=DIRECTION('',(0.,1.,0.));
#482=DIRECTION('',(0.,0.,1.));
#483=DIRECTION('',(1.,0.,0.));
#484=DIRECTION('',(0.,0.,-1.));
#485=DIRECTION('',(1.,0.,0.));
#486=DIRECTION('',(0.,0.,1.));
#487=DIRECTION('',(1.,0.,0.));
#488=DIRECTION('',(0.,0.,1.));
#489=DIRECTION('',(1.,0.,0.));
#490=DIRECTION('',(0.,0.,-1.));
#491=DIRECTION('',(1.,0.,0.));
#492=DIRECTION('',(0.,0.,-1.));
#493=DIRECTION('',(0.,-1.,0.));
#494=DIRECTION('',(0.,0.,-1.));
#495=DIRECTION('',(0.,-1.,0.));
#496=DIRECTION('',(0.,0.,-1.));
#497=DIRECTION('',(0.,1.,0.));
#498=DIRECTION('',(0.,0.,1.));
#499=DIRECTION('',(1.,0.,0.));
#500=DIRECTION('',(0.,0.,-1.));
#501=DIRECTION('',(1.,0.,0.));
#502=DIRECTION('',(0.,0.,-1.));
#503=DIRECTION('',(1.,0.,0.));
#504=DIRECTION('',(0.,0.,-1.));
#505=DIRECTION('',(0.,-1.,0.));
#506=DIRECTION('',(0.,0.,-1.));
#507=DIRECTION('',(0.,-1.,0.));
#508=DIRECTION('',(0.,0.,-1.));
#509=DIRECTION('',(0.,1.,0.));
#510=DIRECTION('',(0.,0.,1.));
#511=DIRECTION('',(1.,0.,0.));
#512=DIRECTION('',(0.,0.,1.));
#513=DIRECTION('',(1.,0.,0.));
#514=DIRECTION('',(1.,0.,0.));
#515=DIRECTION('',(0.,0.,-1.));
#516=DIRECTION('',(1.,0.,0.));
#517=DIRECTION('',(0.,0.,1.));
#518=DIRECTION('',(1.,0.,0.));
#519=DIRECTION('',(0.,0.,-1.));
#520=DIRECTION('',(0.,-1.,0.));
#521=DIRECTION('',(0.,0.,-1.));
#522=DIRECTION('',(0.,-1.,0.));
#523=DIRECTION('',(0.,0.,-1.));
#524=DIRECTION('',(-1.,0.,0.));
#525=DIRECTION('',(0.,0.,1.));
#526=DIRECTION('',(1.,0.,0.));
#527=DIRECTION('',(0.,0.,1.));
#528=DIRECTION('',(1.,0.,0.));
#529=DIRECTION('',(0.,0.,-1.));
#530=DIRECTION('',(-1.,0.,0.));
#531=DIRECTION('',(0.,0.,1.));
#532=DIRECTION('',(1.,0.,0.));
#533=DIRECTION('',(0.,0.,1.));
#534=DIRECTION('',(1.,0.,0.));
#535=DIRECTION('',(0.,0.,-1.));
#536=DIRECTION('',(-1.,0.,0.));
#537=DIRECTION('',(0.,0.,1.));
#538=DIRECTION('',(1.,0.,0.));
#539=DIRECTION('',(0.,0.,1.));
#540=DIRECTION('',(1.,0.,0.));
#541=DIRECTION('',(0.,0.,-1.));
#542=DIRECTION('',(-1.,0.,0.));
#543=DIRECTION('',(0.,0.,1.));
#544=DIRECTION('',(1.,0.,0.));
#545=DIRECTION('',(0.,0.,1.));
#546=DIRECTION('',(1.,0.,0.));
#547=DIRECTION('',(0.,1.,0.));
#548=DIRECTION('',(0.,0.,1.));
#549=DIRECTION('',(1.,0.,0.));
#550=DIRECTION('',(1.,0.,0.));
#551=DIRECTION('',(1.,4.21817258596184E-17,0.));
#552=DIRECTION('',(-4.21817258596184E-17,1.,0.));
#553=DIRECTION('',(4.21817258596184E-17,-1.,0.));
#554=DIRECTION('',(0.,0.,-1.));
#555=DIRECTION('',(4.21817258596184E-17,-1.,0.));
#556=DIRECTION('',(0.,0.,-1.));
#557=DIRECTION('',(0.,0.,1.));
#558=DIRECTION('',(1.,0.,0.));
#559=DIRECTION('',(0.,0.,1.));
#560=DIRECTION('',(1.,0.,0.));
#561=DIRECTION('',(0.,0.,1.));
#562=DIRECTION('',(1.,0.,0.));
#563=DIRECTION('',(0.,0.,1.));
#564=DIRECTION('',(1.,0.,0.));
#565=DIRECTION('',(0.,0.,1.));
#566=DIRECTION('',(1.,0.,0.));
#567=DIRECTION('',(0.,-1.,0.));
#568=DIRECTION('',(0.,-1.,0.));
#569=DIRECTION('',(0.,0.,1.));
#570=DIRECTION('',(1.,0.,0.));
#571=DIRECTION('',(0.,0.,1.));
#572=DIRECTION('',(1.,0.,0.));
#573=DIRECTION('',(0.,0.,1.));
#574=DIRECTION('',(1.,0.,0.));
#575=DIRECTION('',(0.,0.,1.));
#576=DIRECTION('',(1.,0.,0.));
#577=DIRECTION('',(0.,0.,1.));
#578=DIRECTION('',(1.,0.,0.));
#579=DIRECTION('',(0.,0.,1.));
#580=DIRECTION('',(1.,0.,0.));
#581=DIRECTION('',(-1.,0.,0.));
#582=DIRECTION('',(0.,0.,1.));
#583=DIRECTION('',(0.,-1.,0.));
#584=DIRECTION('',(-1.,0.,0.));
#585=DIRECTION('',(0.,0.,1.));
#586=DIRECTION('',(0.,-1.,0.));
#587=DIRECTION('',(0.,0.,1.));
#588=DIRECTION('',(1.,0.,0.));
#589=DIRECTION('',(0.,0.,1.));
#590=DIRECTION('',(1.,0.,0.));
#591=DIRECTION('',(0.,0.,-1.));
#592=DIRECTION('',(-1.,0.,0.));
#593=DIRECTION('',(0.,0.,1.));
#594=DIRECTION('',(1.,0.,0.));
#595=DIRECTION('',(0.,0.,-1.));
#596=DIRECTION('',(-1.,0.,0.));
#597=CARTESIAN_POINT('',(0.,0.,0.));
#598=CARTESIAN_POINT('',(-0.0243531311798096,0.098670217230916,0.013));
#599=CARTESIAN_POINT('',(-0.0243531311798096,0.098670217230916,0.));
#600=CARTESIAN_POINT('',(-0.0698581311798096,0.098670217230916,0.));
#601=CARTESIAN_POINT('',(0.0211518688201904,0.098670217230916,0.));
#602=CARTESIAN_POINT('',(-0.0698581311798096,0.098670217230916,0.013));
#603=CARTESIAN_POINT('',(-0.0698581311798096,0.098670217230916,0.013));
#604=CARTESIAN_POINT('',(-0.0243531311798096,0.098670217230916,0.013));
#605=CARTESIAN_POINT('',(-0.0622481311798096,0.098670217230916,0.013));
#606=CARTESIAN_POINT('',(-0.0622481311798096,0.098670217230916,0.0055));
#607=CARTESIAN_POINT('',(-0.0622481311798096,0.098670217230916,0.0055));
#608=CARTESIAN_POINT('',(-0.0243531311798096,0.098670217230916,0.0055));
#609=CARTESIAN_POINT('',(-0.0437481311798096,0.098670217230916,0.0055));
#610=CARTESIAN_POINT('',(-0.0437481311798096,0.098670217230916,0.0055));
#611=CARTESIAN_POINT('',(-0.0437481311798096,0.098670217230916,0.013));
#612=CARTESIAN_POINT('',(-0.0243531311798096,0.098670217230916,0.013));
#613=CARTESIAN_POINT('',(0.0211518688201904,0.098670217230916,0.013));
#614=CARTESIAN_POINT('',(0.0211518688201904,0.098670217230916,0.013));
#615=CARTESIAN_POINT('',(-0.0748581311798096,0.057545217230916,0.013));
#616=CARTESIAN_POINT('',(-0.0748581311798096,0.057545217230916,0.013));
#617=CARTESIAN_POINT('',(-0.0748581311798096,0.093670217230916,0.013));
#618=CARTESIAN_POINT('',(-0.0748581311798096,0.021420217230916,0.013));
#619=CARTESIAN_POINT('',(-0.0748581311798096,0.093670217230916,0.));
#620=CARTESIAN_POINT('',(-0.0748581311798096,0.093670217230916,0.));
#621=CARTESIAN_POINT('',(-0.0748581311798096,0.057545217230916,0.));
#622=CARTESIAN_POINT('',(-0.0748581311798096,0.021420217230916,0.));
#623=CARTESIAN_POINT('',(-0.0748581311798096,0.021420217230916,0.013));
#624=CARTESIAN_POINT('',(-0.0243531311798096,0.016420217230916,0.013));
#625=CARTESIAN_POINT('',(-0.0243531311798096,0.016420217230916,0.));
#626=CARTESIAN_POINT('',(-0.0698581311798096,0.016420217230916,0.));
#627=CARTESIAN_POINT('',(0.0211518688201904,0.016420217230916,0.));
#628=CARTESIAN_POINT('',(0.0211518688201904,0.016420217230916,0.013));
#629=CARTESIAN_POINT('',(0.0211518688201904,0.016420217230916,0.013));
#630=CARTESIAN_POINT('',(-0.0243531311798096,0.016420217230916,0.013));
#631=CARTESIAN_POINT('',(-0.0698581311798096,0.016420217230916,0.013));
#632=CARTESIAN_POINT('',(-0.0698581311798096,0.016420217230916,0.013));
#633=CARTESIAN_POINT('',(-0.0643581311798096,0.058045217230916,0.013));
#634=CARTESIAN_POINT('',(-0.0643581311798096,0.058045217230916,0.003));
#635=CARTESIAN_POINT('',(-0.0643581311798096,0.089170217230916,0.003));
#636=CARTESIAN_POINT('',(-0.0643581311798096,0.026920217230916,0.003));
#637=CARTESIAN_POINT('',(-0.0643581311798096,0.089170217230916,0.013));
#638=CARTESIAN_POINT('',(-0.0643581311798096,0.089170217230916,0.013));
#639=CARTESIAN_POINT('',(-0.0643581311798096,0.058045217230916,0.013));
#640=CARTESIAN_POINT('',(-0.0643581311798096,0.026920217230916,0.013));
#641=CARTESIAN_POINT('',(-0.0643581311798096,0.026920217230916,0.013));
#642=CARTESIAN_POINT('',(-0.0238531311798096,0.089170217230916,0.013));
#643=CARTESIAN_POINT('',(-0.0238531311798096,0.089170217230916,0.0055));
#644=CARTESIAN_POINT('',(-0.0622481311798096,0.089170217230916,0.0055));
#645=CARTESIAN_POINT('',(-0.0437481311798096,0.089170217230916,0.0055));
#646=CARTESIAN_POINT('',(-0.0622481311798096,0.089170217230916,0.0055));
#647=CARTESIAN_POINT('',(-0.0622481311798096,0.089170217230916,0.013));
#648=CARTESIAN_POINT('',(-0.0238531311798096,0.089170217230916,0.013));
#649=CARTESIAN_POINT('',(-0.0238531311798096,0.089170217230916,0.003));
#650=CARTESIAN_POINT('',(0.0166518688201904,0.089170217230916,0.003));
#651=CARTESIAN_POINT('',(0.0166518688201904,0.089170217230916,0.013));
#652=CARTESIAN_POINT('',(0.0166518688201904,0.089170217230916,0.013));
#653=CARTESIAN_POINT('',(-0.0238531311798096,0.089170217230916,0.013));
#654=CARTESIAN_POINT('',(-0.0437481311798096,0.089170217230916,0.013));
#655=CARTESIAN_POINT('',(-0.0437481311798096,0.089170217230916,0.0055));
#656=CARTESIAN_POINT('',(0.0166518688201904,0.058045217230916,0.013));
#657=CARTESIAN_POINT('',(0.0166518688201904,0.058045217230916,0.003));
#658=CARTESIAN_POINT('',(0.0166518688201904,0.026920217230916,0.003));
#659=CARTESIAN_POINT('',(0.0166518688201904,0.026920217230916,0.013));
#660=CARTESIAN_POINT('',(0.0166518688201904,0.026920217230916,0.013));
#661=CARTESIAN_POINT('',(0.0166518688201904,0.058045217230916,0.013));
#662=CARTESIAN_POINT('',(-0.0698581311798096,0.093670217230916,0.013));
#663=CARTESIAN_POINT('',(-0.0698581311798096,0.093670217230916,0.013));
#664=CARTESIAN_POINT('',(-0.0668581311798096,0.093670217230916,0.013));
#665=CARTESIAN_POINT('',(-0.0698581311798096,0.093670217230916,0.));
#666=CARTESIAN_POINT('',(-0.0668581311798096,0.093670217230916,0.));
#667=CARTESIAN_POINT('',(0.0211518688201904,0.093670217230916,0.013));
#668=CARTESIAN_POINT('',(0.0211518688201904,0.093670217230916,0.013));
#669=CARTESIAN_POINT('',(0.0241518688201904,0.093670217230916,0.013));
#670=CARTESIAN_POINT('',(0.0211518688201904,0.093670217230916,0.));
#671=CARTESIAN_POINT('',(0.0241518688201904,0.093670217230916,0.));
#672=CARTESIAN_POINT('',(0.0211518688201904,0.021420217230916,0.013));
#673=CARTESIAN_POINT('',(0.0211518688201904,0.021420217230916,0.013));
#674=CARTESIAN_POINT('',(0.0241518688201904,0.021420217230916,0.013));
#675=CARTESIAN_POINT('',(0.0211518688201904,0.021420217230916,0.));
#676=CARTESIAN_POINT('',(0.0241518688201904,0.021420217230916,0.));
#677=CARTESIAN_POINT('',(-0.0698581311798096,0.021420217230916,0.013));
#678=CARTESIAN_POINT('',(-0.0698581311798096,0.021420217230916,0.013));
#679=CARTESIAN_POINT('',(-0.0668581311798096,0.021420217230916,0.013));
#680=CARTESIAN_POINT('',(-0.0698581311798096,0.021420217230916,0.));
#681=CARTESIAN_POINT('',(-0.0668581311798096,0.021420217230916,0.));
#682=CARTESIAN_POINT('',(-0.0238531311798096,0.026920217230916,0.013));
#683=CARTESIAN_POINT('',(-0.0238531311798096,0.026920217230916,0.003));
#684=CARTESIAN_POINT('',(-0.0238531311798096,0.026920217230916,0.013));
#685=CARTESIAN_POINT('',(0.0261518688201904,0.057545217230916,0.013));
#686=CARTESIAN_POINT('',(0.0261518688201904,0.057545217230916,0.));
#687=CARTESIAN_POINT('',(0.0261518688201904,0.093670217230916,0.));
#688=CARTESIAN_POINT('',(0.0261518688201904,0.021420217230916,0.));
#689=CARTESIAN_POINT('',(0.0261518688201904,0.093670217230916,0.013));
#690=CARTESIAN_POINT('',(0.0261518688201904,0.093670217230916,0.013));
#691=CARTESIAN_POINT('',(0.0261518688201904,0.057545217230916,0.013));
#692=CARTESIAN_POINT('',(0.0261518688201904,0.021420217230916,0.013));
#693=CARTESIAN_POINT('',(0.0261518688201904,0.021420217230916,0.));
#694=CARTESIAN_POINT('',(-0.0243531311798096,0.057545217230916,0.013));
#695=CARTESIAN_POINT('',(-0.0698581311798096,0.093670217230916,0.013));
#696=CARTESIAN_POINT('',(-0.0698581311798096,0.021420217230916,0.013));
#697=CARTESIAN_POINT('',(0.0211518688201904,0.021420217230916,0.013));
#698=CARTESIAN_POINT('',(0.0211518688201904,0.093670217230916,0.013));
#699=CARTESIAN_POINT('',(-0.0437481311798096,0.093920217230916,0.013));
#700=CARTESIAN_POINT('',(-0.0622481311798096,0.093920217230916,0.013));
#701=CARTESIAN_POINT('',(-0.0243531311798096,0.057545217230916,0.));
#702=CARTESIAN_POINT('',(-0.0698581311798096,0.093670217230916,0.));
#703=CARTESIAN_POINT('',(0.0211518688201904,0.093670217230916,0.));
#704=CARTESIAN_POINT('',(0.0211518688201904,0.021420217230916,0.));
#705=CARTESIAN_POINT('',(-0.0698581311798096,0.021420217230916,0.));
#706=CARTESIAN_POINT('',(-0.0243531311798096,0.057545217230916,0.003));
#707=CARTESIAN_POINT('',(-0.0622481311798096,0.093920217230916,0.0055));
#708=CARTESIAN_POINT('',(-0.0622481311798096,0.093920217230916,0.0055));
#709=CARTESIAN_POINT('',(-0.0437481311798096,0.093920217230916,0.0055));
#710=CARTESIAN_POINT('',(-0.0437481311798096,0.093920217230916,0.0055));
#711=CARTESIAN_POINT('',(-0.0243531311798096,0.057545217230916,0.0055));
#712=CARTESIAN_POINT('',(-0.0698581311798096,0.093670217230916,0.013));
#713=CARTESIAN_POINT('',(0.0211518688201904,0.093670217230916,0.013));
#714=CARTESIAN_POINT('',(0.0211518688201904,0.021420217230916,0.013));
#715=CARTESIAN_POINT('',(-0.0698581311798096,0.021420217230916,0.013));
#716=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#429),
#717);
#717=(
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#718))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#721,#720,#719))
REPRESENTATION_CONTEXT('Part 1','TOP_LEVEL_ASSEMBLY_PART')
);
#718=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-8),#721,
'DISTANCE_ACCURACY_VALUE','Maximum Tolerance applied to model');
#719=(
NAMED_UNIT(*)
SI_UNIT($,.STERADIAN.)
SOLID_ANGLE_UNIT()
);
#720=(
NAMED_UNIT(*)
PLANE_ANGLE_UNIT()
SI_UNIT($,.RADIAN.)
);
#721=(
LENGTH_UNIT()
NAMED_UNIT(*)
SI_UNIT($,.METRE.)
);
#722=PRODUCT_DEFINITION_SHAPE('','',#723);
#723=PRODUCT_DEFINITION('','',#725,#724);
#724=PRODUCT_DEFINITION_CONTEXT('',#731,'design');
#725=PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('','',#727,
.NOT_KNOWN.);
#726=PRODUCT_RELATED_PRODUCT_CATEGORY('','',(#727));
#727=PRODUCT('Part 1','Part 1','Part 1',(#729));
#728=PRODUCT_CATEGORY('','');
#729=PRODUCT_CONTEXT('',#731,'mechanical');
#730=APPLICATION_PROTOCOL_DEFINITION('international standard',
'ap242_managed_model_based_3d_engineering',2011,#731);
#731=APPLICATION_CONTEXT('managed model based 3d engineering');
ENDSEC;
END-ISO-10303-21;

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

21
hackpads/dldpad/readme.md Normal file
View file

@ -0,0 +1,21 @@
# dldpad
This is my hackpad, named dldpad because I am bad at names. I've worked on a decent number of PCB, Arduino, and 3D modeling projects, but this is probably the most complex I've worked on. The PCB design was relatively simple, but the case and the firmware were anything but. I had to go through 3 different modeling softwares in order to be able to model the case, and my laptop decided it didn't like me, so I had to make and build my QMK firmware on Nest. But all in all, this was a great and fun project, and I'm glad to have done it!
<img width="1005" alt="Screen Shot 2025-02-20 at 8 04 59 PM" src="https://github.com/user-attachments/assets/6096f72e-7f82-4698-9966-31d6af8b1560" />
> For some reason, I couldn't find a model for the display, so that's not shown in the render. I also for some reason forgot to put keycaps in the render but I'm about to go to bed the day this is due and I'm too tired to bother with it right now.
I've assigned the keys to function keys so that I can hook them up to most likely sound effects in Voicemod, and the encoder is volume control. The OLED doesn't do very much yet, but that's just because I can't figure out how to make bitmaps for it right now.
## BOM
- 1x Seeed XIAO RP2040
- 6x Cherry MX switch (If I get to choose, red switches, but it doesn't really matter)
- 1x EC11 Encoder
- 1x 0.91" 128*32 OLED Display
- 6x Keycaps
- 4x M3*16 bolts
- 4x M3 heatset inserts
- *The case will be printed by me!*
Board | Schematic | Case
:----------:|:----------:|:----------:
<img width="834" alt="Screen Shot 2025-02-20 at 8 01 17 PM" src="https://github.com/user-attachments/assets/d93be259-f136-43d3-8a63-61b314ef6209" /> | <img width="638" alt="Screen Shot 2025-02-20 at 8 01 43 PM" src="https://github.com/user-attachments/assets/972988a2-4567-4055-ace9-de8602beb3dd" /> | <img width="451" alt="Screen Shot 2025-02-20 at 8 04 00 PM" src="https://github.com/user-attachments/assets/6b33f3ea-0ff8-48b2-931f-4ef87b1d20ab" />