<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Emmanouilidis Design</title>
	<atom:link href="https://emmanouilidisdesign.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://emmanouilidisdesign.com/</link>
	<description>Tailored 3D Solutions for Every Rider</description>
	<lastBuildDate>Wed, 31 Dec 2025 18:34:11 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://emmanouilidisdesign.com/wp-content/uploads/2025/09/ED_site_icon-50x50.png</url>
	<title>Emmanouilidis Design</title>
	<link>https://emmanouilidisdesign.com/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Suspension Setup</title>
		<link>https://emmanouilidisdesign.com/suspension-setup/</link>
					<comments>https://emmanouilidisdesign.com/suspension-setup/#respond</comments>
		
		<dc:creator><![CDATA[Andreas Emmanouilidis]]></dc:creator>
		<pubDate>Wed, 31 Dec 2025 17:01:36 +0000</pubDate>
				<category><![CDATA[suspension]]></category>
		<category><![CDATA[sag]]></category>
		<guid isPermaLink="false">https://emmanouilidisdesign.com/?p=884</guid>

					<description><![CDATA[<p>Suspension Setup This tool helps you correctly measure and set your motorcycle suspension sag using a structured, step-by-step process. By...</p>
<p>The post <a href="https://emmanouilidisdesign.com/suspension-setup/">Suspension Setup</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="884" class="elementor elementor-884">
				<div class="elementor-element elementor-element-d969ab0 e-flex e-con-boxed e-con e-parent" data-id="d969ab0" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-c7ab659 elementor-widget elementor-widget-heading" data-id="c7ab659" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
					<h2 class="elementor-heading-title elementor-size-default">Suspension Setup </h2>				</div>
				<div class="elementor-element elementor-element-bf51dc0 elementor-widget elementor-widget-text-editor" data-id="bf51dc0" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
									<p class="p1">This tool helps you correctly measure and set your motorcycle suspension sag using a structured, step-by-step process.</p>
<p class="p1">By entering your bike’s suspension travel, rider weight, and basic measurements, you’ll get <span class="s1"><b>recommended sag targets&nbsp;</b></span>based on proven suspension setup principles.</p>
<p class="p1">The goal is to help you achieve:</p>
<ul>
<li>
<p class="p1">Proper balance and stability</p>
</li>
<li>
<p class="p1">Improved comfort and traction</p>
</li>
<li>
<p class="p1">Correct preload adjustment before fine-tuning damping</p>
</li>
</ul>
<p class="p1">This is a <span class="s1"><b>general setup tool</b></span>, suitable for street, track, and off-road use.</p>
<p class="p1">Results are based on industry-standard sag percentages and should be used as a starting point.</p>
<p class="p1">Final tuning should always be done based on riding feel and conditions.</p>								</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-12dc4ef e-flex e-con-boxed e-con e-parent" data-id="12dc4ef" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-fb3faeb elementor-widget elementor-widget-html" data-id="fb3faeb" data-element_type="widget" data-e-type="widget" data-widget_type="html.default">
					<div class="sr-wrap" id="suspension-record">
  <h2></h2>

  <!-- Optional short intro -->
  <p class="sr-note" style="margin:0 0 10px">
    Measure and set your motorcycle sag step-by-step. Enter travel (mm) to compute target sag ranges from % travel.
    Use this as a baseline, then fine-tune damping on a test ride.
  </p>

  <form class="sr-form" onsubmit="return false;">

    <!-- WIZARD -->
    <section class="sr-card" id="sag-wizard">
      <h3>Suspension Setup Wizard</h3>

      <div id="wizard-step" class="sr-wizard-box"></div>

      <div class="sr-actions" style="margin-top:12px">
        <button type="button" class="sr-btn sr-btn-ghost" id="wiz_prev" disabled>← Previous</button>
        <button type="button" class="sr-btn" id="wiz_next">Next →</button>
      </div>
    </section>

    <!-- MODE + WEIGHT + TRAVEL -->
    <section class="sr-card">
      <h3>Riding Mode, Rider Weight & Suspension Travel</h3>

      <div class="sr-grid sr-grid-4">
        <label>Riding Mode
          <select id="sr_mode">
            <option value="street" selected>Street</option>
            <option value="track">Track</option>
            <option value="offroad">Off-road</option>
          </select>
        </label>

        <label>Rider Weight (kg)
          <select id="sr_weight"></select>
        </label>

        <label>Front Travel (mm)
          <input type="number" step="1" inputmode="numeric" id="sr_front_travel" placeholder="e.g. 130">
        </label>

        <label>Rear Travel (mm)
          <input type="number" step="1" inputmode="numeric" id="sr_rear_travel" placeholder="e.g. 137">
        </label>
      </div>

      <div class="sr-grid sr-grid-3" style="margin-top:12px">
        <div class="sr-result" id="sr_targets_box">
          <div class="sr-k">Computed Targets (from % travel)</div>
          <div class="sr-v" id="sr_targets_text">Enter travel to calculate targets</div>
        </div>

        <div class="sr-result">
          <div class="sr-k">Rule of Thumb (Sag %)</div>
          <div class="sr-v" id="sr_pct_text">—</div>
        </div>

        <div class="sr-result">
          <div class="sr-k">Tip</div>
          <div class="sr-v sr-tip" id="sr_tip">Select mode + enter travel.</div>
        </div>
      </div>

      <p class="sr-note" style="margin-top:10px">
        Disclaimer: Targets are general guidelines. Ideal sag depends on travel, spring rates, linkage design, rider position, and load (gear/luggage).
      </p>
    </section>

    <!-- FRONT BEFORE -->
    <section class="sr-card">
      <h3>Front – Before Adjustment</h3>
      <div class="sr-grid">
        <label>Unloaded (mm)
          <input type="number" step="0.1" inputmode="decimal" id="fb_unloaded" placeholder="e.g. 130">
        </label>
        <label>Static (mm)
          <input type="number" step="0.1" inputmode="decimal" id="fb_static" placeholder="e.g. 95">
        </label>
        <label>Rider (mm)
          <input type="number" step="0.1" inputmode="decimal" id="fb_rider" placeholder="e.g. 87">
        </label>

        <div class="sr-result">
          <div class="sr-k">Static Sag</div>
          <div class="sr-v" id="fb_staticSag">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Rider Sag</div>
          <div class="sr-v" id="fb_riderSag">—</div>
        </div>
      </div>
    </section>

    <!-- FRONT AFTER -->
    <section class="sr-card">
      <h3>Front – After Adjustment</h3>
      <p class="sr-note">Fork measurements after adding/removing preload.</p>
      <div class="sr-grid">
        <label>Unloaded (mm)
          <input type="number" step="0.1" inputmode="decimal" id="fa_unloaded" placeholder="e.g. 135">
        </label>
        <label>Static (mm)
          <input type="number" step="0.1" inputmode="decimal" id="fa_static" placeholder="e.g. 108">
        </label>
        <label>Rider (mm)
          <input type="number" step="0.1" inputmode="decimal" id="fa_rider" placeholder="e.g. 98">
        </label>

        <div class="sr-result">
          <div class="sr-k">Static Sag</div>
          <div class="sr-v" id="fa_staticSag">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Rider Sag</div>
          <div class="sr-v" id="fa_riderSag">—</div>
        </div>
      </div>
    </section>

    <!-- REAR BEFORE -->
    <section class="sr-card">
      <h3>Rear – Before Adjustment</h3>
      <div class="sr-grid">
        <label>Unloaded (mm)
          <input type="number" step="0.1" inputmode="decimal" id="rb_unloaded" placeholder="e.g. 67.7">
        </label>
        <label>Static (mm)
          <input type="number" step="0.1" inputmode="decimal" id="rb_static" placeholder="e.g. 64.7">
        </label>
        <label>Rider (mm)
          <input type="number" step="0.1" inputmode="decimal" id="rb_rider" placeholder="e.g. 62.7">
        </label>

        <div class="sr-result">
          <div class="sr-k">Static Sag</div>
          <div class="sr-v" id="rb_staticSag">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Rider Sag</div>
          <div class="sr-v" id="rb_riderSag">—</div>
        </div>
      </div>
    </section>

    <!-- REAR AFTER -->
    <section class="sr-card">
      <h3>Rear – After Adjustment</h3>
      <div class="sr-grid">
        <label>Unloaded (mm)
          <input type="number" step="0.1" inputmode="decimal" id="ra_unloaded" placeholder="e.g. 68">
        </label>
        <label>Static (mm)
          <input type="number" step="0.1" inputmode="decimal" id="ra_static" placeholder="e.g. 62.2">
        </label>
        <label>Rider (mm)
          <input type="number" step="0.1" inputmode="decimal" id="ra_rider" placeholder="e.g. 64">
        </label>

        <div class="sr-result">
          <div class="sr-k">Static Sag</div>
          <div class="sr-v" id="ra_staticSag">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Rider Sag</div>
          <div class="sr-v" id="ra_riderSag">—</div>
        </div>
      </div>
    </section>

    <!-- CLICKS / TURNS -->
    <section class="sr-card">
      <h3>Clicks / Turns (Record)</h3>
      <div class="sr-grid sr-grid-2">
        <label>Front Compression
          <input type="text" id="front_comp" placeholder="e.g. 10 clicks">
        </label>
        <label>Front Rebound
          <input type="text" id="front_reb" placeholder="e.g. 8 clicks">
        </label>
        <label>Rear Compression
          <input type="text" id="rear_comp" placeholder="e.g. 7 clicks">
        </label>
        <label>Rear Rebound
          <input type="text" id="rear_reb" placeholder="e.g. 1 turn">
        </label>
      </div>

      <div class="sr-actions">
        <button type="button" class="sr-btn" id="sr_copy">Copy Results</button>
        <button type="button" class="sr-btn sr-btn-ghost" id="sr_reset">Reset</button>
        <span class="sr-toast" id="sr_toast" aria-live="polite"></span>
      </div>
    </section>

    <!-- TARGETS + EVALUATION -->
    <section class="sr-card">
      <h3>Recommended Sag Targets & Evaluation</h3>

      <div class="sr-grid sr-grid-4">
        <div class="sr-result">
          <div class="sr-k">Front Static Target</div>
          <div class="sr-v" id="t_front_static">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Front Rider Target</div>
          <div class="sr-v" id="t_front_rider">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Rear Static Target</div>
          <div class="sr-v" id="t_rear_static">—</div>
        </div>
        <div class="sr-result">
          <div class="sr-k">Rear Rider Target</div>
          <div class="sr-v" id="t_rear_rider">—</div>
        </div>
      </div>

      <div class="sr-grid sr-grid-4" style="margin-top:14px">
        <div class="sr-result" id="eval_front_static"></div>
        <div class="sr-result" id="eval_front_rider"></div>
        <div class="sr-result" id="eval_rear_static"></div>
        <div class="sr-result" id="eval_rear_rider"></div>
      </div>

      <p class="sr-note" style="margin-top:10px">
        Guidance: If you can't reach targets without near-max preload, consider changing spring rate. Set sag first, then tune damping.
      </p>
    </section>

  </form>
</div>

<style>
  #suspension-record, #suspension-record *{ box-sizing:border-box; }
  #suspension-record{ overflow-x:hidden; }

  .sr-wrap{max-width:980px;margin:0 auto;padding:16px}
  .sr-wrap h2{margin:0 0 8px;font-size:26px}
  .sr-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:14px 14px 12px;margin:12px 0;box-shadow:0 6px 18px rgba(0,0,0,.04)}
  .sr-card h3{margin:0 0 10px;font-size:18px}
  .sr-note{margin:-4px 0 10px;opacity:.75}

  .sr-grid{display:grid;gap:12px;align-items:end;grid-template-columns:repeat(5,minmax(0,1fr))}
  .sr-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sr-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sr-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}

  .sr-card label{display:flex;flex-direction:column;gap:6px;font-size:13px;min-width:0}
  .sr-card input,.sr-card select{padding:10px 10px;border-radius:12px;border:1px solid rgba(0,0,0,.14);outline:none;background:#fff;width:100%}
  .sr-card input:focus,.sr-card select:focus{border-color:rgba(0,0,0,.35)}

  .sr-result{border:1px dashed rgba(0,0,0,.18);border-radius:14px;padding:10px 10px;background:rgba(0,0,0,.02);min-width:0}
  .sr-k{font-size:12px;opacity:.7}
  .sr-v{font-size:20px;font-weight:700;margin-top:4px;word-break:break-word}
  .sr-tip{line-height:1.35;font-size:14px;font-weight:600}

  .sr-actions{display:flex;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap}
  .sr-btn{border:0;border-radius:12px;padding:10px 14px;background:#111827;color:#fff;cursor:pointer}
  .sr-btn-ghost{background:rgba(17,24,39,.08);color:#111827}
  .sr-toast{font-size:13px;opacity:.85}

  .sr-wizard-box{
    font-size:15px;line-height:1.6;
    background:#f8fafc;
    padding:14px;
    border-radius:12px;
    border:1px solid #e5e7eb;
  }

  .sr-result.good { border-color:#16a34a; background:#ecfdf5; color:#065f46; }
  .sr-result.bad  { border-color:#dc2626; background:#fef2f2; color:#7f1d1d; }

  /* --- Tablet --- */
  @media (max-width:900px){
    .sr-wrap{padding:12px}
    .sr-wrap h2{font-size:22px}

    .sr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sr-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sr-grid-3{grid-template-columns:1fr}
  }

  /* --- Mobile --- */
  @media (max-width:560px){
    .sr-wrap{padding:10px}
    .sr-card{padding:12px;border-radius:14px}
    .sr-card h3{font-size:16px}

    .sr-grid,
    .sr-grid-2,
    .sr-grid-3,
    .sr-grid-4{grid-template-columns:1fr !important}

    .sr-actions{flex-direction:column;align-items:stretch}
    .sr-btn{width:100%;padding:12px 14px}

    .sr-v{font-size:18px}
    .sr-wizard-box{font-size:14px}
  }
</style>

<script>
  (function(){
    const $ = (id)=>document.getElementById(id);

    /* =========================
       WIZARD
    ========================== */
    const steps = [
      {
        title: "Step 1 – Preparation",
        text: `
          • Set compression & rebound close to stock (or fully open then close 2–3 clicks).<br>
          • Set tire pressures correctly.<br>
          • Keep the bike upright (helper recommended).<br>
          • Rider in full gear (helmet, jacket, backpack if used).<br>
          <b>Measure sag first. Adjust damping later.</b>
        `
      },
      {
        title: "Step 2 – Unloaded (Fully Extended)",
        text: `
          • Lift the wheel completely off the ground (front, then rear).<br>
          • Measure from axle to a fixed reference point.<br>
          • Enter the values in the <b>Unloaded</b> fields.
        `
      },
      {
        title: "Step 3 – Static Sag",
        text: `
          • Put the bike on the ground (no rider).<br>
          • Bounce once, let it settle naturally.<br>
          • Measure again and fill the <b>Static</b> fields.
        `
      },
      {
        title: "Step 4 – Rider Sag",
        text: `
          • Sit in normal riding position (feet on pegs).<br>
          • A helper holds the bike upright.<br>
          • Measure and fill the <b>Rider</b> fields.
        `
      },
      {
        title: "Step 5 – Adjust Preload & Re-check",
        text: `
          • Too much sag → add preload.<br>
          • Too little sag → reduce preload.<br>
          • If you reach near-max preload and still miss targets → consider different springs.<br>
          • Once sag is correct, fine-tune rebound/compression on a test ride.
        `
      }
    ];
    let step = 0;
    const stepBox = $("wizard-step");
    const btnPrev = $("wiz_prev");
    const btnNext = $("wiz_next");

    function renderStep(){
      stepBox.innerHTML = `<b>${steps[step].title}</b><br>${steps[step].text}`;
      btnPrev.disabled = step === 0;
      btnNext.textContent = step === steps.length - 1 ? "Finish" : "Next →";
      btnNext.disabled = false;
    }

    btnNext.addEventListener("click", ()=>{
      if(step < steps.length - 1){
        step++;
        renderStep();
      } else {
        stepBox.innerHTML = "<b>Wizard complete.</b><br>Scroll down to review targets and evaluation.";
        btnNext.disabled = true;
      }
    });

    btnPrev.addEventListener("click", ()=>{
      if(step > 0){
        step--;
        renderStep();
      }
    });

    renderStep();

    /* =========================
       Populate rider weight 60..120 (1 kg steps)
    ========================== */
    const weightSel = $("sr_weight");
    for (let w = 60; w <= 120; w++) {
      const opt = document.createElement("option");
      opt.value = String(w);
      opt.textContent = `${w} kg`;
      weightSel.appendChild(opt);
    }
    weightSel.value = "80";

    /* =========================
       Targets as % of travel (general rule of thumb)
    ========================== */
    const MODE_PCT = {
      street:  { rider:[0.30,0.35], stat:[0.10,0.15], tip:"Street: aim ~30–35% rider sag for balanced comfort and control." },
      track:   { rider:[0.25,0.30], stat:[0.08,0.12], tip:"Track: aim ~25–30% rider sag for more support under braking/accel." },
      offroad: { rider:[0.35,0.40], stat:[0.12,0.18], tip:"Off-road: aim ~35–40% rider sag for traction and compliance." }
    };

    function weightTip(w){
      if (w >= 100) return "If you can't reach targets without near-max preload, consider stiffer springs.";
      if (w <= 65)  return "If you can't reduce sag enough (too stiff), consider softer springs or less preload.";
      return "Get sag right first, then fine-tune damping (rebound/compression).";
    }

    function num(id){
      const v = $(id).value;
      if(v === "" || v === null) return null;
      const n = Number(v);
      return Number.isFinite(n) ? n : null;
    }

    function format(x){
      if (x === null) return "—";
      return (Math.abs(x - Math.round(x)) > 1e-9) ? x.toFixed(1) : String(Math.round(x));
    }

    function setOut(id, value){
      $(id).textContent = (value === null) ? "—" : (format(value) + " mm");
    }

    function calc(prefix){
      const unloaded = num(prefix+"_unloaded");
      const stat = num(prefix+"_static");
      const rider = num(prefix+"_rider");

      let staticSag = null, riderSag = null;

      if(unloaded !== null && stat !== null) staticSag = unloaded - stat;
      if(unloaded !== null && rider !== null) riderSag = unloaded - rider;

      setOut(prefix+"_staticSag", staticSag);
      setOut(prefix+"_riderSag", riderSag);

      return {unloaded, stat, rider, staticSag, riderSag};
    }

    function computeTargets(){
      const mode = $("sr_mode").value;
      const frontTravel = num("sr_front_travel");
      const rearTravel  = num("sr_rear_travel");
      const pct = MODE_PCT[mode];

      if(frontTravel === null || rearTravel === null || frontTravel <= 0 || rearTravel <= 0){
        return null;
      }

      const fs = [frontTravel*pct.stat[0], frontTravel*pct.stat[1]];
      const rs = [rearTravel *pct.stat[0], rearTravel *pct.stat[1]];
      const fr = [frontTravel*pct.rider[0], frontTravel*pct.rider[1]];
      const rr = [rearTravel *pct.rider[0], rearTravel *pct.rider[1]];

      return { fs, fr, rs, rr, pct };
    }

    function setTargetsUI(){
      const mode = $("sr_mode").value;
      const w = Number($("sr_weight").value);
      const t = computeTargets();

      $("sr_pct_text").textContent =
        `${Math.round(MODE_PCT[mode].stat[0]*100)}–${Math.round(MODE_PCT[mode].stat[1]*100)}% static • ` +
        `${Math.round(MODE_PCT[mode].rider[0]*100)}–${Math.round(MODE_PCT[mode].rider[1]*100)}% rider`;

      if(!t){
        $("t_front_static").textContent = "—";
        $("t_front_rider").textContent  = "—";
        $("t_rear_static").textContent  = "—";
        $("t_rear_rider").textContent   = "—";
        $("sr_targets_text").textContent = "Enter front & rear travel to calculate mm targets.";
        $("sr_tip").textContent = MODE_PCT[mode].tip + " " + weightTip(w);
        return null;
      }

      const fs = `${format(t.fs[0])}–${format(t.fs[1])} mm`;
      const fr = `${format(t.fr[0])}–${format(t.fr[1])} mm`;
      const rs = `${format(t.rs[0])}–${format(t.rs[1])} mm`;
      const rr = `${format(t.rr[0])}–${format(t.rr[1])} mm`;

      $("t_front_static").textContent = fs;
      $("t_front_rider").textContent  = fr;
      $("t_rear_static").textContent  = rs;
      $("t_rear_rider").textContent   = rr;

      $("sr_targets_text").textContent =
        `Front Static ${fs} • Front Rider ${fr} • Rear Static ${rs} • Rear Rider ${rr}`;

      $("sr_tip").textContent = MODE_PCT[mode].tip + " " + weightTip(w);
      return t;
    }

    function evaluate(value, min, max){
      if(value === null) return {text:"—", cls:""};
      if(value < min) return {text:"Too little sag → reduce preload / softer spring", cls:"bad"};
      if(value > max) return {text:"Too much sag → add preload / stiffer spring", cls:"bad"};
      return {text:"OK", cls:"good"};
    }

    function setEval(id, label, val, min, max){
      const el = $(id);
      const r = evaluate(val, min, max);
      el.className = "sr-result " + (r.cls || "");
      el.innerHTML = `<div class="sr-k">${label}</div><div class="sr-v">${r.text}</div>`;
    }

    function updateEvaluation(t){
      const fb = calc("fb");
      const rb = calc("rb");

      if(!t){
        ["eval_front_static","eval_front_rider","eval_rear_static","eval_rear_rider"].forEach(id=>{
          const el = $(id);
          el.className = "sr-result";
          el.innerHTML = `<div class="sr-k">Evaluation</div><div class="sr-v">Enter travel to evaluate</div>`;
        });
        return;
      }

      setEval("eval_front_static", "Front Static Sag (Before)", fb.staticSag, t.fs[0], t.fs[1]);
      setEval("eval_front_rider",  "Front Rider Sag (Before)",  fb.riderSag,  t.fr[0], t.fr[1]);
      setEval("eval_rear_static",  "Rear Static Sag (Before)",  rb.staticSag, t.rs[0], t.rs[1]);
      setEval("eval_rear_rider",   "Rear Rider Sag (Before)",   rb.riderSag,  t.rr[0], t.rr[1]);
    }

    function recalcAll(){
      calc("fb"); calc("fa"); calc("rb"); calc("ra");
      const t = setTargetsUI();
      updateEvaluation(t);
    }

    ["fb","fa","rb","ra"].forEach(p=>{
      ["_unloaded","_static","_rider"].forEach(s=>{
        const el = $(p+s);
        if(el) el.addEventListener("input", recalcAll);
      });
    });

    ["sr_mode","sr_weight","sr_front_travel","sr_rear_travel"].forEach(id=>{
      $(id).addEventListener("input", recalcAll);
      $(id).addEventListener("change", recalcAll);
    });

    function toast(msg){
      $("sr_toast").textContent = msg;
      setTimeout(()=>{$("sr_toast").textContent="";}, 2200);
    }

    $("sr_reset").addEventListener("click", ()=>{
      document.querySelectorAll("#suspension-record input").forEach(i=>i.value="");
      $("sr_front_travel").value = "";
      $("sr_rear_travel").value = "";
      recalcAll();
      toast("Reset done.");
    });

    function buildSummary(){
      const mode = $("sr_mode").value;
      const w = $("sr_weight").value;
      const ft = $("sr_front_travel").value || "—";
      const rt = $("sr_rear_travel").value || "—";
      const t = computeTargets();

      const fb = calc("fb"), fa = calc("fa"), rb = calc("rb"), ra = calc("ra");

      const lines = [];
      lines.push("Suspension Setup Record");
      lines.push(`Mode: ${mode.toUpperCase()} | Rider weight: ${w} kg`);
      lines.push(`Front travel: ${ft} mm | Rear travel: ${rt} mm`);
      lines.push("");
      lines.push(`Front (Before): Unloaded ${fb.unloaded ?? "—"} | Static ${fb.stat ?? "—"} | Rider ${fb.rider ?? "—"} | StaticSag ${fb.staticSag ?? "—"} | RiderSag ${fb.riderSag ?? "—"}`);
      lines.push(`Front (After):  Unloaded ${fa.unloaded ?? "—"} | Static ${fa.stat ?? "—"} | Rider ${fa.rider ?? "—"} | StaticSag ${fa.staticSag ?? "—"} | RiderSag ${fa.riderSag ?? "—"}`);
      lines.push(`Rear (Before):  Unloaded ${rb.unloaded ?? "—"} | Static ${rb.stat ?? "—"} | Rider ${rb.rider ?? "—"} | StaticSag ${rb.staticSag ?? "—"} | RiderSag ${rb.riderSag ?? "—"}`);
      lines.push(`Rear (After):   Unloaded ${ra.unloaded ?? "—"} | Static ${ra.stat ?? "—"} | Rider ${ra.rider ?? "—"} | StaticSag ${ra.staticSag ?? "—"} | RiderSag ${ra.riderSag ?? "—"}`);
      lines.push("");
      lines.push(`Front Compression: ${$("front_comp").value || "—"}`);
      lines.push(`Front Rebound:     ${$("front_reb").value || "—"}`);
      lines.push(`Rear Compression:  ${$("rear_comp").value || "—"}`);
      lines.push(`Rear Rebound:      ${$("rear_reb").value || "—"}`);
      lines.push("");
      lines.push("Targets (computed from % travel):");
      if(!t){
        lines.push("Enter travel to compute mm targets.");
      }else{
        lines.push(`Static Sag %: ${Math.round(MODE_PCT[mode].stat[0]*100)}–${Math.round(MODE_PCT[mode].stat[1]*100)}%`);
        lines.push(`Rider Sag %:  ${Math.round(MODE_PCT[mode].rider[0]*100)}–${Math.round(MODE_PCT[mode].rider[1]*100)}%`);
        lines.push(`Front Static: ${format(t.fs[0])}–${format(t.fs[1])} mm | Front Rider: ${format(t.fr[0])}–${format(t.fr[1])} mm`);
        lines.push(`Rear Static:  ${format(t.rs[0])}–${format(t.rs[1])} mm | Rear Rider:  ${format(t.rr[0])}–${format(t.rr[1])} mm`);
      }
      return lines.join("\n");
    }

    $("sr_copy").addEventListener("click", async ()=>{
      const text = buildSummary();
      try{
        await navigator.clipboard.writeText(text);
        toast("Results copied.");
      }catch(e){
        const ta=document.createElement("textarea");
        ta.value=text; document.body.appendChild(ta);
        ta.select(); document.execCommand("copy");
        document.body.removeChild(ta);
        toast("Results copied.");
      }
    });

    // Init
    recalcAll();
  })();
</script>				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-4704942 e-flex e-con-boxed e-con e-parent" data-id="4704942" data-element_type="container" data-e-type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-a36501d elementor-widget elementor-widget-text-editor" data-id="a36501d" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
									<h3><b><img decoding="async" class="emoji" role="img" draggable="false" src="https://s.w.org/images/core/emoji/17.0.2/svg/26a0.svg" alt="&#x26a0;" /> Disclaimer</b></h3><p class="p3"><span class="s2">This tool is provided </span><b>for informational and educational purposes only</b><span class="s2">.</span></p><p class="p4">All calculations and recommendations are based on general suspension setup principles and are <span class="s3"><b>not a substitute for professional suspension tuning</b></span>.</p><p class="p3"><span class="s2">Use of this tool is </span><b>entirely at your own risk</b><span class="s2">.</span></p><p class="p4">The creator assumes <strong>no responsibility for damage, improper setup, or riding issues resulting from the use of this tool.</strong></p><p class="p4">For optimal performance and safety, <strong>always consult a qualified suspension technician before aggressive riding or track use.</strong></p>								</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://emmanouilidisdesign.com/suspension-setup/">Suspension Setup</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://emmanouilidisdesign.com/suspension-setup/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Sport Line Side Panels for Yamaha Tracer 9 (Gen 3)</title>
		<link>https://emmanouilidisdesign.com/sport-line-side-panels-for-yamaha-tracer-9-gen-3/</link>
					<comments>https://emmanouilidisdesign.com/sport-line-side-panels-for-yamaha-tracer-9-gen-3/#respond</comments>
		
		<dc:creator><![CDATA[Andreas Emmanouilidis]]></dc:creator>
		<pubDate>Sat, 25 Oct 2025 13:53:01 +0000</pubDate>
				<category><![CDATA[Yamaha]]></category>
		<guid isPermaLink="false">https://emmanouilidisdesign.com/?p=690</guid>

					<description><![CDATA[<p>Transform the look of your Tracer 9 with our&#160;Sport Line Side Panels, precision-crafted to deliver a sharper, more aggressive profile...</p>
<p>The post <a href="https://emmanouilidisdesign.com/sport-line-side-panels-for-yamaha-tracer-9-gen-3/">Sport Line Side Panels for Yamaha Tracer 9 (Gen 3)</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p></p>



<p>Transform the look of your Tracer 9 with our&nbsp;<strong>Sport Line Side Panels</strong>, precision-crafted to deliver a sharper, more aggressive profile than the stock plastics. Designed to follow the dynamic flow of the bike’s bodywork, these panels add a&nbsp;<strong>sleek, aerodynamic edge</strong>&nbsp;that complements the Tracer’s sporty DNA.</p>



<p>Each piece is&nbsp;<strong>3D-modeled with OEM-level accuracy</strong>&nbsp;to ensure perfect fitment and seamless installation, while introducing a&nbsp;<strong>refined contour</strong>&nbsp;that enhances both the visual stance and aerodynamic harmony of the motorcycle.</p>



<p>Manufactured from high-quality, lightweight material and finished for durability, the Sport Line panels offer a&nbsp;<strong>distinctive, performance-inspired upgrade</strong>&nbsp;that makes your Tracer 9 stand out — whether parked or in motion.</p>



<p><strong>Features:</strong></p>



<ul class="wp-block-list">
<li>Sharper, sportier design compared to OEM plastics</li>



<li>Perfect fitment for Yamaha Tracer 9 Gen 3 (2021-2024)</li>



<li>Lightweight yet durable construction</li>



<li>Easy installation using OEM mounting points</li>



<li>Designed and made in Greece by <em>Emmanouilidis Design</em></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img fetchpriority="high" decoding="async" width="1024" height="613" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20-1024x613.png" alt="" class="wp-image-695" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20-1024x613.png 1024w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20-300x180.png 300w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20-768x460.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20-1536x920.png 1536w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20-600x359.png 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-20.png 1794w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div><p>The post <a href="https://emmanouilidisdesign.com/sport-line-side-panels-for-yamaha-tracer-9-gen-3/">Sport Line Side Panels for Yamaha Tracer 9 (Gen 3)</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://emmanouilidisdesign.com/sport-line-side-panels-for-yamaha-tracer-9-gen-3/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Instructions for Installing a Radar-Compatible Plastic Panel on Tracer 9 / 9GT From 9GT+</title>
		<link>https://emmanouilidisdesign.com/instructions-for-installing-a-radar-compatible-plastic-panel-on-tracer-9-9gt-from-9gt/</link>
					<comments>https://emmanouilidisdesign.com/instructions-for-installing-a-radar-compatible-plastic-panel-on-tracer-9-9gt-from-9gt/#respond</comments>
		
		<dc:creator><![CDATA[Andreas Emmanouilidis]]></dc:creator>
		<pubDate>Thu, 16 Oct 2025 13:29:55 +0000</pubDate>
				<category><![CDATA[Yamaha]]></category>
		<guid isPermaLink="false">https://emmanouilidisdesign.com/?p=603</guid>

					<description><![CDATA[<p>From this To this Instructions: Yamaha Genuine Part: BLG-2835J-00 1: Remove the front side cowling assemblies and headlight cover 2:...</p>
<p>The post <a href="https://emmanouilidisdesign.com/instructions-for-installing-a-radar-compatible-plastic-panel-on-tracer-9-9gt-from-9gt/">Instructions for Installing a Radar-Compatible Plastic Panel on Tracer 9 / 9GT From 9GT+</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center">From this </p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img decoding="async" width="1024" height="947" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-5-1024x947.png" alt="" class="wp-image-605" style="width:544px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-5-1024x947.png 1024w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-5-300x277.png 300w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-5-768x710.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-5-600x555.png 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-5.png 1079w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p class="has-text-align-center">To this</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img decoding="async" width="965" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-9-965x1024.png" alt="" class="wp-image-609" style="width:554px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-9-965x1024.png 965w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-9-283x300.png 283w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-9-768x815.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-9-600x637.png 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-9.png 1259w" sizes="(max-width: 965px) 100vw, 965px" /></figure>
</div>


<p class="has-text-align-center"><strong>Instructions:</strong></p>



<p class="has-text-align-center"><strong>Yamaha Genuine Part: BLG-2835J-00 </strong></p>



<p class="has-text-align-center"><br><strong>1: Remove the front side cowling assemblies and headlight cover</strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="913" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-12-913x1024.png" alt="" class="wp-image-612" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-12-913x1024.png 913w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-12-268x300.png 268w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-12-768x861.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-12-600x673.png 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-12.png 989w" sizes="(max-width: 913px) 100vw, 913px" /></figure>
</div>


<p class="has-text-align-center"><img decoding="async" src="blob:https://emmanouilidisdesign.com/07f4fa76-56dd-474e-9740-9fc298afc9c7"></p>



<p class="has-text-align-center"><strong>2: On the right side of the new part drill a hole and change from old to new the rubber parts </strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="940" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olgo-940x1024.jpeg" alt="" class="wp-image-615" style="width:690px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olgo-940x1024.jpeg 940w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olgo-275x300.jpeg 275w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olgo-768x837.jpeg 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olgo-600x654.jpeg 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olgo.jpeg 1104w" sizes="(max-width: 940px) 100vw, 940px" /></figure>
</div>


<p class="has-text-align-center">to fit here</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="912" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-14-1024x912.png" alt="" class="wp-image-614" style="width:624px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-14-1024x912.png 1024w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-14-300x267.png 300w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-14-768x684.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-14-600x534.png 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-14.png 1049w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p> </p>



<p class="has-text-align-center"><strong>3: Install back headlight cover and side cowling</strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="491" height="895" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-10.png" alt="" class="wp-image-610" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-10.png 491w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-10-165x300.png 165w" sizes="(max-width: 491px) 100vw, 491px" /></figure>
</div>


<p class="has-text-align-center"><strong>5: Enjoy new look </strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="558" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olyy-558x1024.jpeg" alt="" class="wp-image-616" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olyy-558x1024.jpeg 558w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olyy-163x300.jpeg 163w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olyy-768x1410.jpeg 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olyy-600x1102.jpeg 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/SCR-20251016-olyy.jpeg 771w" sizes="(max-width: 558px) 100vw, 558px" /></figure>
</div><p>The post <a href="https://emmanouilidisdesign.com/instructions-for-installing-a-radar-compatible-plastic-panel-on-tracer-9-9gt-from-9gt/">Instructions for Installing a Radar-Compatible Plastic Panel on Tracer 9 / 9GT From 9GT+</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://emmanouilidisdesign.com/instructions-for-installing-a-radar-compatible-plastic-panel-on-tracer-9-9gt-from-9gt/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Upgrading Your Yamaha Tracer 9 Braking System Without Spending a Fortune</title>
		<link>https://emmanouilidisdesign.com/yamaha-tracer-9-breaking-system-improvement/</link>
					<comments>https://emmanouilidisdesign.com/yamaha-tracer-9-breaking-system-improvement/#comments</comments>
		
		<dc:creator><![CDATA[Andreas Emmanouilidis]]></dc:creator>
		<pubDate>Fri, 10 Oct 2025 10:36:35 +0000</pubDate>
				<category><![CDATA[Yamaha]]></category>
		<guid isPermaLink="false">https://emmanouilidisdesign.com/?p=490</guid>

					<description><![CDATA[<p>When it comes to riding confidence, nothing matters more than having a responsive and reliable braking system. The Yamaha Tracer 9...</p>
<p>The post <a href="https://emmanouilidisdesign.com/yamaha-tracer-9-breaking-system-improvement/">Upgrading Your Yamaha Tracer 9 Braking System Without Spending a Fortune</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center">When it comes to riding confidence, nothing matters more than having a <strong>responsive and reliable braking system</strong>. The Yamaha Tracer 9 is already equipped with excellent factory components, but for riders who demand sharper performance—especially during spirited riding or long-distance touring—there’s always room for improvement.</p>



<p></p>



<p class="has-text-align-center">This post is based on&nbsp;<strong>my personal experience</strong>&nbsp;upgrading the braking system on my own Yamaha Tracer 9. Please note that every bike and rider setup can be different. What worked well for me might perform differently for others. I don’t recommend making any mechanical changes unless you have&nbsp;<strong>proper mechanical knowledge or assistance from a qualified technician</strong>.</p>



<p></p>



<p></p>



<h3 class="wp-block-heading has-text-align-center"><strong>Why Upgrade the Braking System?</strong></h3>



<p class="has-text-align-center">Upgrading the braking components of your Tracer 9 enhances not only&nbsp;<strong>stopping power</strong>&nbsp;but also&nbsp;<strong>brake feel, modulation, and fade resistance</strong>—critical aspects for both safety and performance. Over time, stock components wear out or lose efficiency, especially under heavy use.</p>



<p class="has-text-align-center">A high-quality brake upgrade can offer:</p>



<ul class="wp-block-list">
<li><strong>Stronger and more consistent braking performance</strong></li>



<li><strong>Reduced brake fade</strong> during aggressive riding</li>



<li><strong>Improved lever feedback and control</strong></li>



<li><strong>Enhanced safety in emergency stops</strong></li>
</ul>



<h3 class="wp-block-heading has-text-align-center"><strong>Recommended Upgrades</strong></h3>



<p class="has-text-align-center">You can achieve a noticeable improvement with a few key component changes:</p>



<p class="has-text-align-center"><br><strong>1. Brake Discs 320</strong> </p>



<p class="has-text-align-center">Yamaha Genuine Part: 5D0-2581T-1000 cost around 140€/disc </p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="419" height="442" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-3.png" alt="" class="wp-image-592" style="width:534px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-3.png 419w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-3-284x300.png 284w" sizes="(max-width: 419px) 100vw, 419px" /></figure>
</div>


<p class="has-text-align-center"><strong>2. Bolts</strong></p>



<p class="has-text-align-center">Yamaha Genuine Part: 95817-10080 </p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="904" height="560" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-1.png" alt="" class="wp-image-590" style="width:533px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-1.png 904w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-1-300x186.png 300w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-1-768x476.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-1-600x372.png 600w" sizes="(max-width: 904px) 100vw, 904px" /></figure>
</div>


<p class="has-text-align-center"><strong>3. Spacer</strong></p>



<p class="has-text-align-center">11mm 40€</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="533" height="192" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image.png" alt="" class="wp-image-588" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image.png 533w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-300x108.png 300w" sizes="(max-width: 533px) 100vw, 533px" /></figure>
</div>


<p class="has-text-align-center"><br><strong>4. Brake Pads</strong></p>



<p class="has-text-align-center">DP Brakes RDP-418 X-Race evo Titanium cost around 77€/set </p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="576" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-576x1024.jpeg" alt="" class="wp-image-593" style="width:536px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-576x1024.jpeg 576w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-169x300.jpeg 169w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-768x1365.jpeg 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-864x1536.jpeg 864w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-1152x2048.jpeg 1152w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-600x1067.jpeg 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/IMG_0947-scaled.jpeg 1440w" sizes="(max-width: 576px) 100vw, 576px" /></figure>
</div>


<p class="has-text-align-center"><br><strong>5. Brake Lines</strong> ( Optional )</p>



<p class="has-text-align-center"><br><strong>6. Brake Fluid</strong> ( Optional )</p>



<p class="has-text-align-center"><em><strong>Total cost:</strong> around 400-450€ without installation </em></p>



<p class="has-text-align-center">Final Look</p>


<div class="wp-block-image is-style-rounded">
<figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="576" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-576x1024.jpg" alt="" class="wp-image-589" style="width:597px;height:auto" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-576x1024.jpg 576w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-169x300.jpg 169w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-768x1365.jpg 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-864x1536.jpg 864w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-1152x2048.jpg 1152w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-600x1066.jpg 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/DSC02124-scaled.jpg 1440w" sizes="(max-width: 576px) 100vw, 576px" /></figure>
</div>


<p class="has-text-align-center">A well-planned braking system upgrade doesn’t have to cost a fortune. With a few thoughtful changes and proper maintenance, you can achieve&nbsp;<strong>impressive braking performance</strong>&nbsp;and peace of mind on every ride.</p>



<p class="has-text-align-center"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/26a0.png" alt="⚠" class="wp-smiley" style="height: 1em; max-height: 1em;" />&nbsp;<strong>Disclaimer:</strong>&nbsp;This post is based on&nbsp;<strong>my personal experience</strong>&nbsp;with the Yamaha Tracer 9. Each rider’s setup and preferences differ, and results can vary. Always consult a&nbsp;<strong>qualified technician</strong>&nbsp;before making any changes to your braking system.</p>



<p></p>
<p>The post <a href="https://emmanouilidisdesign.com/yamaha-tracer-9-breaking-system-improvement/">Upgrading Your Yamaha Tracer 9 Braking System Without Spending a Fortune</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://emmanouilidisdesign.com/yamaha-tracer-9-breaking-system-improvement/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Back Rack Removal Kit – Design &#038; Development Process</title>
		<link>https://emmanouilidisdesign.com/back-rack-removal-kit-design-development-process/</link>
					<comments>https://emmanouilidisdesign.com/back-rack-removal-kit-design-development-process/#respond</comments>
		
		<dc:creator><![CDATA[Andreas Emmanouilidis]]></dc:creator>
		<pubDate>Wed, 08 Oct 2025 12:51:01 +0000</pubDate>
				<category><![CDATA[Yamaha]]></category>
		<guid isPermaLink="false">https://emmanouilidisdesign.com/?p=649</guid>

					<description><![CDATA[<p>In this project, we focused on creating a clean, minimal look for the rear section of the&#160;Yamaha Tracer 9 /...</p>
<p>The post <a href="https://emmanouilidisdesign.com/back-rack-removal-kit-design-development-process/">Back Rack Removal Kit – Design &amp; Development Process</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In this project, we focused on creating a clean, minimal look for the rear section of the&nbsp;<strong>Yamaha Tracer 9 / GT / GT+</strong> Gen3, by designing a&nbsp;<strong>Back Rack Removal Kit</strong>&nbsp;that seamlessly replaces the OEM grab handles and luggage rack.</p>



<p>Using&nbsp;<strong>high-resolution 3D scans</strong>, we captured the entire tail structure to ensure perfect fitment and alignment with factory mounting points. The model was refined in&nbsp;<strong>Fusion 360</strong>, where each curve and edge was adjusted to match the bike’s original design language.</p>



<p>The result is a sleek, lightweight cover system that maintains full functionality of the rear fairing and seat mechanism while dramatically improving the bike’s aesthetics — ideal for riders who prefer a sportier, uncluttered rear profile.</p>



<p>Stay tuned for prototype testing, material selection, and final idea reveal under the <strong>Emmanouilidis Design Black Edition</strong> series.</p>



<p></p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="765" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-1024x765.png" alt="" class="wp-image-652" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-1024x765.png 1024w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-300x224.png 300w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-768x574.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-1536x1148.png 1536w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-2048x1531.png 2048w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-15-600x448.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>

<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="974" height="1024" src="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-17-974x1024.png" alt="" class="wp-image-655" srcset="https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-17-974x1024.png 974w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-17-285x300.png 285w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-17-768x807.png 768w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-17-600x630.png 600w, https://emmanouilidisdesign.com/wp-content/uploads/2025/10/image-17.png 1220w" sizes="(max-width: 974px) 100vw, 974px" /></figure>
</div><p>The post <a href="https://emmanouilidisdesign.com/back-rack-removal-kit-design-development-process/">Back Rack Removal Kit – Design &amp; Development Process</a> appeared first on <a href="https://emmanouilidisdesign.com">Emmanouilidis Design</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://emmanouilidisdesign.com/back-rack-removal-kit-design-development-process/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
