grinder.svg · 151 lines
<svg xmlns="http://www.w3.org/2000/svg" width="1500" height="1100" viewBox="0 0 1500 1100">
<defs>
<linearGradient id="steel" x1="0" y1="0" x2="1" y2=".7"><stop stop-color="#f5f2e9"/><stop offset=".28" stop-color="#b7c1c0"/><stop offset=".56" stop-color="#e0e4dc"/><stop offset="1" stop-color="#78898b"/></linearGradient>
<linearGradient id="darkSteel" x1="0" y1="0" x2="1" y2="0"><stop stop-color="#536367"/><stop offset=".42" stop-color="#aab6b3"/><stop offset=".7" stop-color="#65777a"/><stop offset="1" stop-color="#384b50"/></linearGradient>
<linearGradient id="wood" x1="0" y1="0" x2="1" y2=".8"><stop stop-color="#d89a58"/><stop offset=".45" stop-color="#a96031"/><stop offset="1" stop-color="#754126"/></linearGradient>
<linearGradient id="body" x1="0" y1="0" x2="1" y2="0"><stop stop-color="#385d5a"/><stop offset=".35" stop-color="#73948a"/><stop offset=".72" stop-color="#547870"/><stop offset="1" stop-color="#2f514f"/></linearGradient>
<linearGradient id="glass" x1="0" y1="0" x2="0" y2="1"><stop stop-color="#e5d3a6" stop-opacity=".66"/><stop offset="1" stop-color="#b99459" stop-opacity=".4"/></linearGradient>
<pattern id="hatch" width="8" height="8" patternUnits="userSpaceOnUse" patternTransform="rotate(35)"><line x1="0" y1="0" x2="0" y2="8" stroke="#d9e1d8" stroke-width="2" opacity=".5"/></pattern>
<filter id="shadow" x="-30%" y="-30%" width="160%" height="160%"><feDropShadow dx="0" dy="6" stdDeviation="7" flood-color="#172c2b" flood-opacity=".13"/></filter>
<style>
.ink{stroke:#243b3c;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.fine{stroke:#33494a;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.label{font:600 18px 'Arial',sans-serif;letter-spacing:1.1px;fill:#243b3c}.small{font:14px 'Arial',sans-serif;letter-spacing:.7px;fill:#667572}.num{font:700 14px 'Arial',sans-serif;fill:#f7f3e9}.leader{fill:none;stroke:#607471;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dim{fill:none;stroke:#a2aaa0;stroke-width:1.3;stroke-dasharray:5 7}
</style>
</defs>
<!-- paper -->
<rect width="1500" height="1100" fill="#f3f0e6"/>
<path d="M64 67H1436" stroke="#c7c7b8" stroke-width="2"/>
<text x="72" y="54" font-family="Arial,sans-serif" font-size="13" font-weight="700" letter-spacing="3" fill="#52716a">FIELD NOTES / BREW EQUIPMENT</text>
<text x="72" y="122" font-family="Georgia,serif" font-size="43" fill="#203a39">Hand grinder — exploded assembly</text>
<text x="74" y="153" font-family="Arial,sans-serif" font-size="16" letter-spacing=".8" fill="#667572">CONICAL BURR MECHANISM · AXIAL ALIGNMENT · NOT TO SCALE</text>
<rect x="1182" y="85" width="250" height="54" rx="4" fill="#e5e5d9"/>
<text x="1200" y="108" font-family="Arial,sans-serif" font-size="11" font-weight="700" letter-spacing="1.6" fill="#54716b">ASSEMBLY PLATE</text><text x="1200" y="129" font-family="Georgia,serif" font-size="17" fill="#253d3b">HG–04 / 01</text>
<!-- center exploded alignment -->
<path class="dim" d="M750 177V951"/>
<path d="M743 178l7-12 7 12M743 950l7 12 7-12" fill="none" stroke="#9aa69e" stroke-width="1.5"/>
<text x="766" y="526" class="small" transform="rotate(90 766 526)">DRIVE AXIS</text>
<!-- 01 crank / knob -->
<g>
<!-- handle grip -->
<path class="ink" fill="url(#wood)" d="M920 190 C920 179 932 171 948 171 H1004 C1021 171 1031 180 1031 192 V204 C1031 216 1020 224 1004 224 H948 C932 224 920 216 920 204Z"/>
<ellipse cx="1004" cy="197" rx="27" ry="26" fill="#874a2b" class="fine"/><ellipse cx="1004" cy="197" rx="19" ry="18" fill="url(#wood)" stroke="#e3b174" stroke-width="2"/>
<path d="M944 177q-7 20 0 39" fill="none" stroke="#e5b67b" stroke-width="3" opacity=".7"/>
<!-- crank arm -->
<path class="ink" fill="url(#steel)" d="M741 197 L926 172 Q942 170 945 181 L947 188 Q949 199 934 202 L747 229Z"/>
<path d="M749 202L922 180" stroke="#faf8ed" stroke-width="4" opacity=".7"/>
<!-- pivot cap -->
<ellipse cx="744" cy="213" rx="29" ry="22" fill="url(#darkSteel)" class="ink"/><ellipse cx="744" cy="213" rx="12" ry="9" fill="#dce2d9" class="fine"/>
<!-- drive shaft -->
<path d="M735 226 L735 287 Q735 298 746 298 Q757 298 757 287 L757 226Z" fill="url(#darkSteel)" class="ink"/>
<path d="M741 232v52" stroke="#e5e9df" stroke-width="3" opacity=".8"/>
</g>
<!-- 02 lid, floating -->
<g>
<path d="M660 306 Q660 292 750 292 Q840 292 840 306 L840 319 Q840 333 750 333 Q660 333 660 319Z" fill="url(#darkSteel)" class="ink"/>
<ellipse cx="750" cy="306" rx="90" ry="23" fill="url(#steel)" class="ink"/>
<ellipse cx="750" cy="306" rx="25" ry="8" fill="#344b4c" stroke="#243b3c" stroke-width="2"/>
<path d="M668 315q82 24 164 0" fill="none" stroke="#f0f1e8" stroke-width="3" opacity=".7"/>
</g>
<!-- 03 hopper/funnel body -->
<g>
<path d="M622 378 Q622 354 750 354 Q878 354 878 378 L858 464 Q853 484 806 493 L794 516 Q750 531 706 516 L694 493 Q647 484 642 464Z" fill="url(#glass)" class="ink"/>
<ellipse cx="750" cy="378" rx="128" ry="29" fill="#eee2c2" fill-opacity=".82" class="ink"/>
<path d="M623 378Q750 407 877 378" fill="none" stroke="#fff9e8" stroke-width="3"/>
<path d="M643 464q107 28 214 0" fill="none" stroke="#9b895e" stroke-width="2" opacity=".8"/>
<path d="M642 380l20 82q5 21 49 32l15 25M857 380l-20 82q-5 21-49 32l-15 25" fill="none" stroke="#fff4d5" stroke-width="4" opacity=".65"/>
<!-- beans -->
<g fill="#795033" stroke="#513b2b" stroke-width="1.3">
<ellipse cx="687" cy="377" rx="11" ry="7" transform="rotate(25 687 377)"/><path d="M680 378q7-5 13 0" fill="none" stroke="#d5a36b"/>
<ellipse cx="715" cy="368" rx="10" ry="7" transform="rotate(-20 715 368)"/><path d="M708 369q7-5 13 0" fill="none" stroke="#d5a36b"/>
<ellipse cx="747" cy="381" rx="11" ry="7" transform="rotate(30 747 381)"/><path d="M740 382q7-5 13 0" fill="none" stroke="#d5a36b"/>
<ellipse cx="777" cy="369" rx="10" ry="7" transform="rotate(-30 777 369)"/><path d="M770 370q7-5 13 0" fill="none" stroke="#d5a36b"/>
<ellipse cx="811" cy="380" rx="11" ry="7" transform="rotate(18 811 380)"/><path d="M804 381q7-5 13 0" fill="none" stroke="#d5a36b"/>
<ellipse cx="735" cy="399" rx="10" ry="7" transform="rotate(-15 735 399)"/><path d="M728 400q7-5 13 0" fill="none" stroke="#d5a36b"/>
<ellipse cx="770" cy="401" rx="11" ry="7" transform="rotate(20 770 401)"/><path d="M763 402q7-5 13 0" fill="none" stroke="#d5a36b"/>
</g>
<ellipse cx="750" cy="516" rx="45" ry="13" fill="#53696a" class="ink"/><ellipse cx="750" cy="516" rx="23" ry="6" fill="#f3f0e6" class="fine"/>
</g>
<!-- 04 upper bearing/drive coupling below hopper -->
<g>
<path d="M723 535v39q0 10 27 10t27-10v-39" fill="url(#darkSteel)" class="ink"/>
<ellipse cx="750" cy="535" rx="27" ry="9" fill="url(#steel)" class="ink"/>
<ellipse cx="750" cy="535" rx="12" ry="4" fill="#31494a" class="fine"/>
<path d="M736 549h28" stroke="#e9ede4" stroke-width="2"/>
</g>
<!-- 05 outer conical burr ring: deep ring, open center -->
<g>
<path d="M625 584 Q625 614 750 614 Q875 614 875 584 L865 631 Q858 651 750 658 Q642 651 635 631Z" fill="url(#darkSteel)" class="ink"/>
<ellipse cx="750" cy="584" rx="125" ry="34" fill="url(#steel)" class="ink"/>
<ellipse cx="750" cy="584" rx="82" ry="22" fill="#35494c" class="fine"/>
<ellipse cx="750" cy="584" rx="65" ry="16" fill="#c4ceca" class="fine"/>
<ellipse cx="750" cy="584" rx="52" ry="12" fill="#485c5e" class="fine"/>
<!-- angled tooth indications on inner ring -->
<g stroke="#e4e8de" stroke-width="3" opacity=".95">
<path d="M681 577l22 8M693 569l18 10M714 563l12 13M737 561l4 15M760 561l-3 15M781 564l-11 13M802 570l-18 10M816 578l-22 8"/>
</g>
<path d="M635 619q115 32 230 0" fill="none" stroke="#dce4db" stroke-width="2" opacity=".55"/>
</g>
<!-- 06 inner conical burr & spindle, separated beneath ring -->
<g>
<path d="M693 678 Q693 665 750 665 Q807 665 807 678 L778 738 Q766 758 750 765 Q734 758 722 738Z" fill="url(#darkSteel)" class="ink"/>
<ellipse cx="750" cy="678" rx="57" ry="15" fill="url(#steel)" class="ink"/>
<ellipse cx="750" cy="678" rx="29" ry="8" fill="#4b6060" class="fine"/>
<!-- cone flutes -->
<g fill="none" stroke="#e5e9df" stroke-width="3" opacity=".8">
<path d="M701 681l35 63M716 677l25 73M733 674l13 83M750 673v88M767 674l-13 83M784 677l-25 73M799 681l-35 63"/>
</g>
<path d="M741 758v48q0 10 9 10t9-10v-48" fill="url(#steel)" class="ink"/>
<ellipse cx="750" cy="816" rx="14" ry="6" fill="#536668" class="fine"/>
</g>
<!-- 07 adjustment collar -->
<g>
<path d="M653 833 Q653 818 750 818 Q847 818 847 833 L839 862 Q832 878 750 878 Q668 878 661 862Z" fill="url(#body)" class="ink"/>
<ellipse cx="750" cy="833" rx="97" ry="23" fill="#6f9187" class="ink"/>
<ellipse cx="750" cy="833" rx="45" ry="11" fill="#344b4b" class="fine"/>
<path d="M661 851q89 23 178 0" fill="none" stroke="#b2c8b9" stroke-width="2"/>
<g stroke="#283f40" stroke-width="2"><path d="M671 830l-4 10M690 817l-2 11M713 811v12M737 809v12M761 809v12M785 811l2 12M809 817l3 11M829 826l5 10"/></g>
<path d="M826 858l14 6-9 12-14-7Z" fill="#d8b56e" class="fine"/>
</g>
<!-- 08 grounds cup -->
<g>
<path d="M640 917 Q640 897 750 897 Q860 897 860 917 L847 987 Q844 1007 750 1010 Q656 1007 653 987Z" fill="url(#body)" class="ink"/>
<ellipse cx="750" cy="917" rx="110" ry="25" fill="#8aa599" class="ink"/>
<ellipse cx="750" cy="917" rx="82" ry="16" fill="#344c49" class="fine"/>
<path d="M654 982q96 24 192 0" fill="none" stroke="#aec4b5" stroke-width="3" opacity=".8"/>
<path d="M666 927l9 53M834 927l-9 53" stroke="#c2d1c1" stroke-width="3" opacity=".5"/>
<path d="M687 937q63 14 126 0v30q-63 15-126 0Z" fill="#795137" opacity=".75"/>
<path d="M691 944q59 12 118 0" fill="none" stroke="#b78352" stroke-width="2"/>
</g>
<!-- numbered markers and leader annotations -->
<!-- left labels -->
<g>
<path class="leader" d="M590 207H550"/><circle cx="590" cy="207" r="4" fill="#607471"/><circle cx="365" cy="183" r="15" fill="#52766d"/><text x="365" y="188" text-anchor="middle" class="num">01</text><text x="392" y="180" class="label">CRANK & DRIVE SHAFT</text><text x="392" y="201" class="small">wood grip · steel spindle</text>
<path class="leader" d="M660 306H550"/><circle cx="660" cy="306" r="4" fill="#607471"/><circle cx="365" cy="287" r="15" fill="#52766d"/><text x="365" y="292" text-anchor="middle" class="num">02</text><text x="392" y="284" class="label">HOPPER LID</text><text x="392" y="305" class="small">dust cover / shaft aperture</text>
<path class="leader" d="M622 422H550"/><circle cx="622" cy="422" r="4" fill="#607471"/><circle cx="365" cy="409" r="15" fill="#52766d"/><text x="365" y="414" text-anchor="middle" class="num">03</text><text x="392" y="406" class="label">BEAN HOPPER</text><text x="392" y="427" class="small">clear funnel feeds burr set</text>
<path class="leader" d="M625 590H550"/><circle cx="625" cy="590" r="4" fill="#607471"/><circle cx="365" cy="570" r="15" fill="#52766d"/><text x="365" y="575" text-anchor="middle" class="num">05</text><text x="392" y="567" class="label">OUTER CONICAL BURR</text><text x="392" y="588" class="small">stationary toothed ring</text>
</g>
<!-- right labels -->
<g>
<path class="leader" d="M777 550H1030L1070 526"/><circle cx="777" cy="550" r="4" fill="#607471"/><circle cx="1095" cy="526" r="15" fill="#52766d"/><text x="1095" y="531" text-anchor="middle" class="num">04</text><text x="1122" y="523" class="label">UPPER BEARING</text><text x="1122" y="544" class="small">supports the rotating shaft</text>
<path class="leader" d="M807 699H1030L1070 686"/><circle cx="807" cy="699" r="4" fill="#607471"/><circle cx="1095" cy="686" r="15" fill="#52766d"/><text x="1095" y="691" text-anchor="middle" class="num">06</text><text x="1122" y="683" class="label">INNER CONICAL BURR</text><text x="1122" y="704" class="small">rotating cone · fluted cutting face</text>
<path class="leader" d="M847 842H1030L1070 824"/><circle cx="847" cy="842" r="4" fill="#607471"/><circle cx="1095" cy="824" r="15" fill="#52766d"/><text x="1095" y="829" text-anchor="middle" class="num">07</text><text x="1122" y="821" class="label">GRIND ADJUSTMENT COLLAR</text><text x="1122" y="842" class="small">threaded ring sets burr gap</text>
<path class="leader" d="M860 938H1030L1070 947"/><circle cx="860" cy="938" r="4" fill="#607471"/><circle cx="1095" cy="947" r="15" fill="#52766d"/><text x="1095" y="952" text-anchor="middle" class="num">08</text><text x="1122" y="944" class="label">GROUNDS CUP</text><text x="1122" y="965" class="small">twist-off collection vessel</text>
</g>
<!-- burr explanation inset -->
<g transform="translate(105 700)">
<rect x="0" y="0" width="305" height="204" rx="5" fill="#e8e8dc" stroke="#c8cabe" stroke-width="1.5"/>
<text x="20" y="29" font-family="Arial,sans-serif" font-size="12" font-weight="700" letter-spacing="1.7" fill="#52716a">BURR PAIR / SECTION</text>
<!-- simple nested cone and ring section -->
<path d="M72 73h27v66H72zM206 73h27v66h-27z" fill="url(#darkSteel)" stroke="#304648" stroke-width="2"/>
<path d="M99 75l20 65h44l20-65" fill="#77898a" stroke="#304648" stroke-width="2.5"/>
<path d="M105 84l16 49M118 82l13 53M133 80v57M148 80v57M162 82l-13 53M176 84l-16 49" stroke="#e3e8df" stroke-width="2"/>
<path d="M82 83l12 8M82 99l12 8M82 115l12 8M207 83l12 8M207 99l12 8M207 115l12 8" stroke="#e2e7de" stroke-width="2"/>
<path d="M64 141h182" stroke="#72827c" stroke-width="1.4" stroke-dasharray="4 4"/>
<path class="leader" d="M98 90L45 68"/><text x="18" y="61" class="small">fixed ring</text>
<path class="leader" d="M153 103L198 52"/><text x="202" y="50" class="small">rotating cone</text>
<text x="20" y="176" font-family="Arial,sans-serif" font-size="12" letter-spacing=".4" fill="#64736e">Beans are sheared between opposed tapered faces.</text>
</g>
<!-- footer -->
<path d="M64 1044H1436" stroke="#c7c7b8" stroke-width="2"/>
<text x="72" y="1072" font-family="Arial,sans-serif" font-size="12" letter-spacing="1.4" fill="#718079">EXPLODED VIEW · PARTS SHOWN ALONG COMMON SHAFT AXIS</text>
<text x="1428" y="1072" text-anchor="end" font-family="Georgia,serif" font-size="15" fill="#52716a">MECHANICAL STUDY / 01</text>
</svg>
Exploded hand grinder: GPT-6 Luna
There is no post about this one, since only some results need one, so the picture, the source and the scoring are here instead.
run 2 · 1r · $0.0046
run 3 · 1r · $0.0038Draw an exploded assembly diagram of a manual coffee grinder, as an SVG. Use a hand grinder with conical burrs rather than flat burrs.Frozen at v1. This model got this and nothing else.
Top to bottom: handle knob, crank, body, outer burr, inner burr, spring if drawn, adjustment dial, catch jar. The drive shaft runs through the body and both burrs, so it is left out of the order, the way the French press leaves out its rod. The adjustment is at the bottom, below the burrs, and the inner cone comes out downwards through the fixed outer ring. Checked against Comandante's FAQ for the C40, Coffeegeek on the Timemore C2, Hario's spare-parts list and a review for the Skerton Pro, and a guide to the Porlex Mini. The Skerton has no spring, so the spring is not required. How it is scored, and this run's files on GitHub.