benikigai/plus-onePublic
Plus One
SHA-256 ea781b64a05105a17196eae4914fc79289ffc1a66996db75ad7e665f1d8c2e80
{
"generator": "tools/make_plus_one_cad.py",
"status": "prototype in design; every size is a design target, not a measurement",
"units": {
"length": "mm",
"volume": "mm3",
"area": "mm2"
},
"frame": "origin at footprint centre, z = 0 at the underside of the sealed base, +z up through the plus button, USB-C at -x",
"parts": {
"part:top-shell": {
"title": "Top shell",
"step": "parts/top-shell.step",
"glb": "parts/top-shell.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 5489.412,
"surface_area_mm2": 8199.307,
"bbox_mm": {
"min": [
-29.0,
-29.0,
3.4
],
"max": [
29.0,
29.0,
16.8
],
"size": [
58.0,
58.0,
13.4
]
},
"centroid_mm": [
0.261,
0.0,
12.187
],
"materials": [
"shell-graphite"
]
},
"part:ring-diffuser": {
"title": "Light-ring diffuser",
"step": "parts/ring-diffuser.step",
"glb": "parts/ring-diffuser.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 833.628,
"surface_area_mm2": 1665.17,
"bbox_mm": {
"min": [
-25.0,
-25.0,
14.7
],
"max": [
25.0,
25.0,
17.0
],
"size": [
50.0,
50.0,
2.3
]
},
"centroid_mm": [
-0.0,
0.0,
15.701
],
"materials": [
"diffuser-lime"
]
},
"part:plus-button": {
"title": "Plus button",
"step": "parts/plus-button.step",
"glb": "parts/plus-button.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 3179.391,
"surface_area_mm2": 4019.118,
"bbox_mm": {
"min": [
-17.7,
-17.7,
14.5
],
"max": [
17.7,
17.7,
19.45
],
"size": [
35.4,
35.4,
4.95
]
},
"centroid_mm": [
-0.0,
0.0,
16.847
],
"materials": [
"button-graphite",
"plus-white"
]
},
"part:mic-gasket": {
"title": "Mic gasket",
"step": "parts/mic-gasket.step",
"glb": "parts/mic-gasket.glb",
"quantity_per_unit": 2,
"frame": "instance-local (own axis at x = y = 0, product z)",
"volume_mm3": 8.143,
"surface_area_mm2": 31.667,
"bbox_mm": {
"min": [
-1.8,
-1.8,
14.6
],
"max": [
1.8,
1.8,
15.5
],
"size": [
3.6,
3.6,
0.9
]
},
"centroid_mm": [
0.0,
0.0,
15.05
],
"materials": [
"gasket-black"
]
},
"part:main-pcba": {
"title": "Main board (PCBA)",
"step": "parts/main-pcba.step",
"glb": "parts/main-pcba.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 4072.188,
"surface_area_mm2": 5296.951,
"bbox_mm": {
"min": [
-28.05,
-26.6,
9.2
],
"max": [
26.6,
26.6,
14.9
],
"size": [
54.65,
53.2,
5.7
]
},
"centroid_mm": [
-0.552,
3.273,
12.068
],
"materials": [
"pcb-green",
"ic-black",
"led-white",
"module-shield",
"connector-silver"
]
},
"part:speaker": {
"title": "Speaker, 15 mm",
"step": "parts/speaker.step",
"glb": "parts/speaker.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 768.041,
"surface_area_mm2": 564.23,
"bbox_mm": {
"min": [
-7.5,
-25.5,
6.6
],
"max": [
7.5,
-10.5,
11.0
],
"size": [
15.0,
15.0,
4.4
]
},
"centroid_mm": [
0.0,
-18.0,
8.773
],
"materials": [
"speaker-black"
]
},
"part:haptic-motor": {
"title": "Haptic motor, 8 mm",
"step": "parts/haptic-motor.step",
"glb": "parts/haptic-motor.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 170.903,
"surface_area_mm2": 185.982,
"bbox_mm": {
"min": [
13.0,
-18.0,
8.0
],
"max": [
21.0,
-10.0,
11.4
],
"size": [
8.0,
8.0,
3.4
]
},
"centroid_mm": [
17.0,
-14.0,
9.7
],
"materials": [
"haptic-grey"
]
},
"part:battery": {
"title": "Li-ion cell with protection",
"step": "parts/battery.step",
"glb": "parts/battery.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 3829.4,
"surface_area_mm2": 2242.0,
"bbox_mm": {
"min": [
-17.0,
-10.6,
4.6
],
"max": [
17.0,
15.5,
9.1
],
"size": [
34.0,
26.1,
4.5
]
},
"centroid_mm": [
-0.005,
2.985,
6.851
],
"materials": [
"battery-silver",
"battery-lead-red"
]
},
"part:battery-foam": {
"title": "Battery foam tape",
"step": "parts/battery-foam.step",
"glb": "parts/battery-foam.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 315.0,
"surface_area_mm2": 1311.0,
"bbox_mm": {
"min": [
-15.0,
-7.5,
9.1
],
"max": [
15.0,
13.5,
9.6
],
"size": [
30.0,
21.0,
0.5
]
},
"centroid_mm": [
-0.0,
3.0,
9.35
],
"materials": [
"foam-grey"
]
},
"part:base": {
"title": "Sealed base",
"step": "parts/base.step",
"glb": "parts/base.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 4774.393,
"surface_area_mm2": 6551.284,
"bbox_mm": {
"min": [
-29.0,
-29.0,
0.0
],
"max": [
29.0,
29.0,
5.4
],
"size": [
58.0,
58.0,
5.4
]
},
"centroid_mm": [
0.112,
0.011,
1.072
],
"materials": [
"base-graphite"
]
},
"part:base-magnet": {
"title": "Base magnet",
"step": "parts/base-magnet.step",
"glb": "parts/base-magnet.glb",
"quantity_per_unit": 2,
"frame": "instance-local (own axis at x = y = 0, product z)",
"volume_mm3": 42.412,
"surface_area_mm2": 84.823,
"bbox_mm": {
"min": [
-3.0,
-3.0,
0.2
],
"max": [
3.0,
3.0,
1.7
],
"size": [
6.0,
6.0,
1.5
]
},
"centroid_mm": [
-0.0,
0.0,
0.95
],
"materials": [
"magnet-steel"
]
},
"part:pogo-pad": {
"title": "Pogo pad",
"step": "parts/pogo-pad.step",
"glb": "parts/pogo-pad.glb",
"quantity_per_unit": 5,
"frame": "instance-local (own axis at x = y = 0, product z)",
"volume_mm3": 1.357,
"surface_area_mm2": 11.31,
"bbox_mm": {
"min": [
-1.2,
-1.2,
0.0
],
"max": [
1.2,
1.2,
0.3
],
"size": [
2.4,
2.4,
0.3
]
},
"centroid_mm": [
0.0,
0.0,
0.15
],
"materials": [
"pogo-gold"
]
},
"part:board-screw": {
"title": "Board screw",
"step": "parts/board-screw.step",
"glb": "parts/board-screw.glb",
"quantity_per_unit": 3,
"frame": "instance-local (own axis at x = y = 0, product z)",
"volume_mm3": 28.061,
"surface_area_mm2": 65.911,
"bbox_mm": {
"min": [
-1.9,
-1.9,
11.2
],
"max": [
1.9,
1.9,
17.0
],
"size": [
3.8,
3.8,
5.8
]
},
"centroid_mm": [
-0.0,
0.0,
13.294
],
"materials": [
"screw-steel"
]
},
"part:flat-back": {
"title": "Flat foot back",
"step": "parts/flat-back.step",
"glb": "parts/flat-back.glb",
"quantity_per_unit": 1,
"frame": "product",
"volume_mm3": 7043.315,
"surface_area_mm2": 5679.905,
"bbox_mm": {
"min": [
-28.5,
-28.5,
-3.0
],
"max": [
28.5,
28.5,
0.4
],
"size": [
57.0,
57.0,
3.4
]
},
"centroid_mm": [
-0.0,
0.013,
-1.607
],
"materials": [
"back-lime"
]
}
},
"instances": [
{
"id": "part:top-shell",
"part": "part:top-shell",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
40.0
],
"usd_prim": "/Product/TopShell",
"assembly": "asm:top-sub"
},
{
"id": "part:ring-diffuser",
"part": "part:ring-diffuser",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
54.0
],
"usd_prim": "/Product/RingDiffuser",
"assembly": "asm:top-sub"
},
{
"id": "part:plus-button",
"part": "part:plus-button",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
66.0
],
"usd_prim": "/Product/PlusButton",
"assembly": "asm:top-sub"
},
{
"id": "part:mic-gasket#1",
"part": "part:mic-gasket",
"translation": [
-20.8,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
36.0
],
"usd_prim": "/Product/MicGasket_1",
"assembly": "asm:top-sub"
},
{
"id": "part:mic-gasket#2",
"part": "part:mic-gasket",
"translation": [
20.8,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
36.0
],
"usd_prim": "/Product/MicGasket_2",
"assembly": "asm:top-sub"
},
{
"id": "part:main-pcba",
"part": "part:main-pcba",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
22.0
],
"usd_prim": "/Product/MainPCBA",
"assembly": "asm:core"
},
{
"id": "part:board-screw#1",
"part": "part:board-screw",
"translation": [
1.4695761589768238e-15,
24.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
16.0
],
"usd_prim": "/Product/BoardScrew_1",
"assembly": "asm:core"
},
{
"id": "part:board-screw#2",
"part": "part:board-screw",
"translation": [
-20.784609690826528,
-12.000000000000004,
0.0
],
"exploded_offset": [
0.0,
0.0,
16.0
],
"usd_prim": "/Product/BoardScrew_2",
"assembly": "asm:core"
},
{
"id": "part:board-screw#3",
"part": "part:board-screw",
"translation": [
20.78460969082652,
-12.00000000000001,
0.0
],
"exploded_offset": [
0.0,
0.0,
16.0
],
"usd_prim": "/Product/BoardScrew_3",
"assembly": "asm:core"
},
{
"id": "part:speaker",
"part": "part:speaker",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
10.0
],
"usd_prim": "/Product/Speaker",
"assembly": "asm:core"
},
{
"id": "part:haptic-motor",
"part": "part:haptic-motor",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
10.0
],
"usd_prim": "/Product/HapticMotor",
"assembly": "asm:core"
},
{
"id": "part:battery",
"part": "part:battery",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
0.0
],
"usd_prim": "/Product/Battery",
"assembly": "asm:core"
},
{
"id": "part:battery-foam",
"part": "part:battery-foam",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
4.0
],
"usd_prim": "/Product/BatteryFoam",
"assembly": "asm:core"
},
{
"id": "part:base",
"part": "part:base",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-16.0
],
"usd_prim": "/Product/Base",
"assembly": "asm:base"
},
{
"id": "part:base-magnet#1",
"part": "part:base-magnet",
"translation": [
-16.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-24.0
],
"usd_prim": "/Product/BaseMagnet_1",
"assembly": "asm:base"
},
{
"id": "part:base-magnet#2",
"part": "part:base-magnet",
"translation": [
16.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-24.0
],
"usd_prim": "/Product/BaseMagnet_2",
"assembly": "asm:base"
},
{
"id": "part:pogo-pad#1",
"part": "part:pogo-pad",
"translation": [
-8.0,
-7.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-26.0
],
"usd_prim": "/Product/PogoPad_1",
"assembly": "asm:base"
},
{
"id": "part:pogo-pad#2",
"part": "part:pogo-pad",
"translation": [
-4.0,
-7.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-26.0
],
"usd_prim": "/Product/PogoPad_2",
"assembly": "asm:base"
},
{
"id": "part:pogo-pad#3",
"part": "part:pogo-pad",
"translation": [
0.0,
-7.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-26.0
],
"usd_prim": "/Product/PogoPad_3",
"assembly": "asm:base"
},
{
"id": "part:pogo-pad#4",
"part": "part:pogo-pad",
"translation": [
4.0,
-7.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-26.0
],
"usd_prim": "/Product/PogoPad_4",
"assembly": "asm:base"
},
{
"id": "part:pogo-pad#5",
"part": "part:pogo-pad",
"translation": [
8.0,
-7.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-26.0
],
"usd_prim": "/Product/PogoPad_5",
"assembly": "asm:base"
},
{
"id": "part:flat-back",
"part": "part:flat-back",
"translation": [
0.0,
0.0,
0.0
],
"exploded_offset": [
0.0,
0.0,
-34.0
],
"usd_prim": "/Product/FlatBack",
"assembly": "asm:back"
}
]
}