klipper/Load_Cell.html

1673 lines
No EOL
44 KiB
HTML

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="icon" href="img/favicon.ico">
<meta name="generator" content="mkdocs-1.2.4, mkdocs-material-8.1.3">
<title>Load Cells - Klipper documentation</title>
<link rel="stylesheet" href="assets/stylesheets/main.edf004c2.min.css">
<link rel="stylesheet" href="assets/stylesheets/palette.e6a45f82.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<link rel="stylesheet" href="_klipper3d/css/extra.css">
<script>__md_scope=new URL(".",location),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-VEN1PGNQL4"),document.addEventListener("DOMContentLoaded",function(){document.forms.search&&document.forms.search.query.addEventListener("blur",function(){this.value&&gtag("event","search",{search_term:this.value})}),"undefined"!=typeof location$&&location$.subscribe(function(e){gtag("config","G-VEN1PGNQL4",{page_path:e.pathname})})})</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-VEN1PGNQL4"></script>
</head>
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="blue">
<script>var palette=__md_get("__palette");if(palette&&"object"==typeof palette.color)for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)</script>
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#load-cells" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="." title="Klipper documentation" class="md-header__button md-logo" aria-label="Klipper documentation" data-md-component="logo">
<img src="img/klipper.svg" alt="logo">
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
Klipper documentation
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Load Cells
</span>
</div>
</div>
</div>
<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="blue" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2a7 7 0 0 0-7 7c0 2.38 1.19 4.47 3 5.74V17a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-2.26c1.81-1.27 3-3.36 3-5.74a7 7 0 0 0-7-7M9 21a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-1H9v1z"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="grey" data-md-color-accent="light-blue" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_2">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2a7 7 0 0 1 7 7c0 2.38-1.19 4.47-3 5.74V17a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-2.26C6.19 13.47 5 11.38 5 9a7 7 0 0 1 7-7M9 21v-1h6v1a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1m3-17a5 5 0 0 0-5 5c0 2.05 1.23 3.81 3 4.58V16h4v-2.42c1.77-.77 3-2.53 3-4.58a5 5 0 0 0-5-5z"/></svg>
</label>
</form>
<div class="md-header__option">
<div class="md-select">
<button class="md-header__button md-icon" aria-label="Select language">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16.36 14c.08-.66.14-1.32.14-2 0-.68-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2m-5.15 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95a8.03 8.03 0 0 1-4.33 3.56M14.34 14H9.66c-.1-.66-.16-1.32-.16-2 0-.68.06-1.35.16-2h4.68c.09.65.16 1.32.16 2 0 .68-.07 1.34-.16 2M12 19.96c-.83-1.2-1.5-2.53-1.91-3.96h3.82c-.41 1.43-1.08 2.76-1.91 3.96M8 8H5.08A7.923 7.923 0 0 1 9.4 4.44C8.8 5.55 8.35 6.75 8 8m-2.92 8H8c.35 1.25.8 2.45 1.4 3.56A8.008 8.008 0 0 1 5.08 16m-.82-2C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2 0 .68.06 1.34.14 2M12 4.03c.83 1.2 1.5 2.54 1.91 3.97h-3.82c.41-1.43 1.08-2.77 1.91-3.97M18.92 8h-2.95a15.65 15.65 0 0 0-1.38-3.56c1.84.63 3.37 1.9 4.33 3.56M12 2C6.47 2 2 6.5 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2z"/></svg>
</button>
<div class="md-select__inner">
<ul class="md-select__list">
<li class="md-select__item">
<a href="/" hreflang="en" class="md-select__link">
English
</a>
</li>
<li class="md-select__item">
<a href="/zh/" hreflang="zh" class="md-select__link">
简体中文
</a>
</li>
<li class="md-select__item">
<a href="/zh-Hant/" hreflang="zh-Hant" class="md-select__link">
繁體中文
</a>
</li>
<li class="md-select__item">
<a href="/hu/" hreflang="hu" class="md-select__link">
Magyar
</a>
</li>
<li class="md-select__item">
<a href="/it/" hreflang="it" class="md-select__link">
Italiano
</a>
</li>
<li class="md-select__item">
<a href="/fr/" hreflang="fr" class="md-select__link">
Français
</a>
</li>
</ul>
</div>
</div>
</div>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<a href="javascript:void(0)" class="md-search__icon md-icon" aria-label="Share" data-clipboard data-clipboard-text="" data-md-component="search-share" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7 0-.24-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.15c-.05.21-.08.43-.08.66 0 1.61 1.31 2.91 2.92 2.91 1.61 0 2.92-1.3 2.92-2.91A2.92 2.92 0 0 0 18 16.08z"/></svg>
</a>
<button type="reset" class="md-search__icon md-icon" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
</button>
</nav>
<div class="md-search__suggest" data-md-component="search-suggest"></div>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list"></ol>
</div>
</div>
</div>
</div>
</div>
<div class="md-header__source">
<a href="https://github.com/Klipper3d/klipper/" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</div>
<div class="md-source__repository">
Klipper3d/klipper
</div>
</a>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="." title="Klipper documentation" class="md-nav__button md-logo" aria-label="Klipper documentation" data-md-component="logo">
<img src="img/klipper.svg" alt="logo">
</a>
Klipper documentation
</label>
<div class="md-nav__source">
<a href="https://github.com/Klipper3d/klipper/" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</div>
<div class="md-source__repository">
Klipper3d/klipper
</div>
</a>
</div>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Overview.html" class="md-nav__link">
Overview
</a>
</li>
<li class="md-nav__item">
<a href="Features.html" class="md-nav__link">
Features
</a>
</li>
<li class="md-nav__item">
<a href="FAQ.html" class="md-nav__link">
Frequently Asked Questions
</a>
</li>
<li class="md-nav__item">
<a href="Releases.html" class="md-nav__link">
Releases
</a>
</li>
<li class="md-nav__item">
<a href="Config_Changes.html" class="md-nav__link">
Configuration Changes
</a>
</li>
<li class="md-nav__item">
<a href="Contact.html" class="md-nav__link">
Contact
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7">
Installation and Configuration
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Installation and Configuration" data-md-level="1">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Installation and Configuration
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_1" type="checkbox" id="__nav_7_1" >
<label class="md-nav__link" for="__nav_7_1">
Installation
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Installation" data-md-level="2">
<label class="md-nav__title" for="__nav_7_1">
<span class="md-nav__icon md-icon"></span>
Installation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Installation.html" class="md-nav__link">
Installation
</a>
</li>
<li class="md-nav__item">
<a href="OctoPrint.html" class="md-nav__link">
OctoPrint for Klipper
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_2" type="checkbox" id="__nav_7_2" >
<label class="md-nav__link" for="__nav_7_2">
Configuration Reference
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Configuration Reference" data-md-level="2">
<label class="md-nav__title" for="__nav_7_2">
<span class="md-nav__icon md-icon"></span>
Configuration Reference
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Config_Reference.html" class="md-nav__link">
Configuration reference
</a>
</li>
<li class="md-nav__item">
<a href="Rotation_Distance.html" class="md-nav__link">
Rotation distance
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="Config_checks.html" class="md-nav__link">
Configuration checks
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_4" type="checkbox" id="__nav_7_4" >
<label class="md-nav__link" for="__nav_7_4">
Bed Level
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Bed Level" data-md-level="2">
<label class="md-nav__title" for="__nav_7_4">
<span class="md-nav__icon md-icon"></span>
Bed Level
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Bed_Level.html" class="md-nav__link">
Bed leveling
</a>
</li>
<li class="md-nav__item">
<a href="Delta_Calibrate.html" class="md-nav__link">
Delta calibration
</a>
</li>
<li class="md-nav__item">
<a href="Probe_Calibrate.html" class="md-nav__link">
Probe calibration
</a>
</li>
<li class="md-nav__item">
<a href="BLTouch.html" class="md-nav__link">
BL-Touch
</a>
</li>
<li class="md-nav__item">
<a href="Manual_Level.html" class="md-nav__link">
Manual leveling
</a>
</li>
<li class="md-nav__item">
<a href="Bed_Mesh.html" class="md-nav__link">
Bed Mesh
</a>
</li>
<li class="md-nav__item">
<a href="Endstop_Phase.html" class="md-nav__link">
Endstop phase
</a>
</li>
<li class="md-nav__item">
<a href="Axis_Twist_Compensation.html" class="md-nav__link">
Axis Twist Compensation
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_5" type="checkbox" id="__nav_7_5" >
<label class="md-nav__link" for="__nav_7_5">
Resonance Compensation
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Resonance Compensation" data-md-level="2">
<label class="md-nav__title" for="__nav_7_5">
<span class="md-nav__icon md-icon"></span>
Resonance Compensation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Resonance_Compensation.html" class="md-nav__link">
Resonance Compensation
</a>
</li>
<li class="md-nav__item">
<a href="Measuring_Resonances.html" class="md-nav__link">
Measuring Resonances
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="Pressure_Advance.html" class="md-nav__link">
Pressure advance
</a>
</li>
<li class="md-nav__item">
<a href="G-Codes.html" class="md-nav__link">
G-Codes
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_8" type="checkbox" id="__nav_7_8" >
<label class="md-nav__link" for="__nav_7_8">
Command templates
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Command templates" data-md-level="2">
<label class="md-nav__title" for="__nav_7_8">
<span class="md-nav__icon md-icon"></span>
Command templates
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Command_Templates.html" class="md-nav__link">
Commands templates
</a>
</li>
<li class="md-nav__item">
<a href="Status_Reference.html" class="md-nav__link">
Status reference
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="TMC_Drivers.html" class="md-nav__link">
TMC drivers
</a>
</li>
<li class="md-nav__item">
<a href="Multi_MCU_Homing.html" class="md-nav__link">
Multiple Micro-controller Homing and Probing
</a>
</li>
<li class="md-nav__item">
<a href="Slicers.html" class="md-nav__link">
Slicers
</a>
</li>
<li class="md-nav__item">
<a href="Skew_Correction.html" class="md-nav__link">
Skew correction
</a>
</li>
<li class="md-nav__item">
<a href="Exclude_Object.html" class="md-nav__link">
Exclude Objects
</a>
</li>
<li class="md-nav__item">
<a href="Using_PWM_Tools.html" class="md-nav__link">
Using PWM tools
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_8" type="checkbox" id="__nav_8" >
<label class="md-nav__link" for="__nav_8">
Developer Documentation
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Developer Documentation" data-md-level="1">
<label class="md-nav__title" for="__nav_8">
<span class="md-nav__icon md-icon"></span>
Developer Documentation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Code_Overview.html" class="md-nav__link">
Code overview
</a>
</li>
<li class="md-nav__item">
<a href="Kinematics.html" class="md-nav__link">
Kinematics
</a>
</li>
<li class="md-nav__item">
<a href="Protocol.html" class="md-nav__link">
Protocol
</a>
</li>
<li class="md-nav__item">
<a href="API_Server.html" class="md-nav__link">
API server
</a>
</li>
<li class="md-nav__item">
<a href="MCU_Commands.html" class="md-nav__link">
MCU commands
</a>
</li>
<li class="md-nav__item">
<a href="CANBUS_protocol.html" class="md-nav__link">
CANBUS protocol
</a>
</li>
<li class="md-nav__item">
<a href="Debugging.html" class="md-nav__link">
Debugging
</a>
</li>
<li class="md-nav__item">
<a href="Benchmarks.html" class="md-nav__link">
Benchmarks
</a>
</li>
<li class="md-nav__item">
<a href="CONTRIBUTING.html" class="md-nav__link">
Contributing to Klipper
</a>
</li>
<li class="md-nav__item">
<a href="Packaging.html" class="md-nav__link">
Packaging Klipper
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_9" type="checkbox" id="__nav_9" checked>
<label class="md-nav__link" for="__nav_9">
Device Specific Documents
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Device Specific Documents" data-md-level="1">
<label class="md-nav__title" for="__nav_9">
<span class="md-nav__icon md-icon"></span>
Device Specific Documents
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="Example_Configs.html" class="md-nav__link">
Example configurations
</a>
</li>
<li class="md-nav__item">
<a href="SDCard_Updates.html" class="md-nav__link">
SDCard updates
</a>
</li>
<li class="md-nav__item">
<a href="RPi_microcontroller.html" class="md-nav__link">
RPi microcontroller
</a>
</li>
<li class="md-nav__item">
<a href="Beaglebone.html" class="md-nav__link">
Beaglebone
</a>
</li>
<li class="md-nav__item">
<a href="Bootloaders.html" class="md-nav__link">
Bootloaders
</a>
</li>
<li class="md-nav__item">
<a href="Bootloader_Entry.html" class="md-nav__link">
Bootloader Entry
</a>
</li>
<li class="md-nav__item">
<a href="CANBUS.html" class="md-nav__link">
CANBUS
</a>
</li>
<li class="md-nav__item">
<a href="CANBUS_Troubleshooting.html" class="md-nav__link">
CANBUS Troubleshooting
</a>
</li>
<li class="md-nav__item">
<a href="TSL1401CL_Filament_Width_Sensor.html" class="md-nav__link">
TSL1401CL filament width sensor
</a>
</li>
<li class="md-nav__item">
<a href="Hall_Filament_Width_Sensor.html" class="md-nav__link">
Hall filament width sensor
</a>
</li>
<li class="md-nav__item">
<a href="Eddy_Probe.html" class="md-nav__link">
Eddy Current Inductive probe
</a>
</li>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
Load Cells
<span class="md-nav__icon md-icon"></span>
</label>
<a href="Load_Cell.html" class="md-nav__link md-nav__link--active">
Load Cells
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#related-documentation" class="md-nav__link">
Related Documentation
</a>
</li>
<li class="md-nav__item">
<a href="#using-load_cell_diagnostic" class="md-nav__link">
Using LOAD_CELL_DIAGNOSTIC
</a>
</li>
<li class="md-nav__item">
<a href="#calibrating-a-load-cell" class="md-nav__link">
Calibrating a Load Cell
</a>
<nav class="md-nav" aria-label="Calibrating a Load Cell">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#applying-a-known-force-or-load" class="md-nav__link">
Applying a Known Force or Load
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#reading-force-data" class="md-nav__link">
Reading Force Data
</a>
</li>
<li class="md-nav__item">
<a href="#taring-a-load-cell" class="md-nav__link">
Taring a Load Cell
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="Sponsors.html" class="md-nav__link">
Sponsors
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#related-documentation" class="md-nav__link">
Related Documentation
</a>
</li>
<li class="md-nav__item">
<a href="#using-load_cell_diagnostic" class="md-nav__link">
Using LOAD_CELL_DIAGNOSTIC
</a>
</li>
<li class="md-nav__item">
<a href="#calibrating-a-load-cell" class="md-nav__link">
Calibrating a Load Cell
</a>
<nav class="md-nav" aria-label="Calibrating a Load Cell">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#applying-a-known-force-or-load" class="md-nav__link">
Applying a Known Force or Load
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#reading-force-data" class="md-nav__link">
Reading Force Data
</a>
</li>
<li class="md-nav__item">
<a href="#taring-a-load-cell" class="md-nav__link">
Taring a Load Cell
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<a href="https://github.com/Klipper3d/klipper/blob/master/docs/Load_Cell.md" title="Edit this page" class="md-content__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg>
</a>
<h1 id="load-cells">Load Cells<a class="headerlink" href="#load-cells" title="Permanent link">&para;</a></h1>
<p>This document describes Klipper's support for load cells. Basic load cell
functionality can be used to read force data and to weigh things like filament.
A calibrated force sensor is an important part of a load cell based probe.</p>
<h2 id="related-documentation">Related Documentation<a class="headerlink" href="#related-documentation" title="Permanent link">&para;</a></h2>
<ul>
<li><a href="Config_Reference.html#load_cell">load_cell Config Reference</a></li>
<li><a href="G-Codes.html#load_cell">load_cell G-Code Commands</a></li>
<li><a href="Status_Reference.html#load_cell">load_cell Status Reference</a></li>
</ul>
<h2 id="using-load_cell_diagnostic">Using <code>LOAD_CELL_DIAGNOSTIC</code><a class="headerlink" href="#using-load_cell_diagnostic" title="Permanent link">&para;</a></h2>
<p>When you first connect a load cell its good practice to check for issues by
running <code>LOAD_CELL_DIAGNOSTIC</code>. This tool collects 10 seconds of data from the
load cell and resport statistics:</p>
<div class="highlight"><pre><span></span><code>$ LOAD_CELL_DIAGNOSTIC
// Collecting load cell data for 10 seconds...
// Samples Collected: 3211
// Measured samples per second: 332.0
// Good samples: 3211, Saturated samples: 0, Unique values: 900
// Sample range: [4.01% to 4.02%]
// Sample range / sensor capacity: 0.00524%
</code></pre></div>
<p>Things you can check with this data:</p>
<ul>
<li>The configured sample rate of the sensor should be close to the 'Measured
samples per second' value. If it is not you may have a configuration or wiring
issue.</li>
<li>'Saturated samples' should be 0. If you have saturated samples it means the
load sell is seeing more force than it can measure.</li>
<li>'Unique values' should be a large percentage of the 'Samples
Collected' value. If 'Unique values' is 1 it is very likely a wiring issue.</li>
<li>Tap or push on the sensor while <code>LOAD_CELL_DIAGNOSTIC</code> runs. If
things are working correctly ths should increase the 'Sample range'.</li>
</ul>
<h2 id="calibrating-a-load-cell">Calibrating a Load Cell<a class="headerlink" href="#calibrating-a-load-cell" title="Permanent link">&para;</a></h2>
<p>Load cells are calibrated using the <code>LOAD_CELL_CALIBRATE</code> command. This is an
interactive calibration utility that walks you though a 3 step process:</p>
<ol>
<li>First use the <code>TARE</code> command to establish the zero force value. This is the
<code>reference_tare_counts</code> config value.</li>
<li>Next you apply a known load or force to the load cell and run the
<code>CALIBRATE GRAMS=nnn</code> command. From this the <code>counts_per_gram</code> value is
calculated. See <a href="#applying-a-known-force-or-load">the next section</a> for some
suggestions on how to do this.</li>
<li>Finally, use the <code>ACCEPT</code> command to save the results.</li>
</ol>
<p>You can cancel the calibration process at any time with <code>ABORT</code>.</p>
<h3 id="applying-a-known-force-or-load">Applying a Known Force or Load<a class="headerlink" href="#applying-a-known-force-or-load" title="Permanent link">&para;</a></h3>
<p>The <code>CALIBRATE GRAMS=nnn</code> step can be accomplished in a number of ways. If your
load cell is under a platform like a bed or filament holder it might be easiest
to put a known mass on the platform. E.g. you could use a couple of 1KG filament
spools.</p>
<p>If your load cell is in the printer's toolhead a different approach is easier.
Put a digital scale on the printers bed and gently lower the toolhead onto the
scale (or raise the bed into the toolhead if your bed moves). You may be able to
do this using the <code>FORCE_MOVE</code> command. But more likely you will have to
manually moving the z axis with the motors off until the toolhead presses on the
scale.</p>
<p>A good calibration force would ideally be a large percentage of the load cell's
rated capacity. E.g. if you have a 5Kg load cell you would ideally calibrate it
with a 5kg mass. This might work well with under-bed sensors that have to
support a lot of weight. For toolhead probes this may not be a load that your
printer bed or toolhead can tolerate without damage. Do try to use at least 1Kg
of force, most printers should tolerate this without issue.</p>
<p>When calibrating make careful note of the values reported:</p>
<div class="highlight"><pre><span></span><code>$ CALIBRATE GRAMS=555
// Calibration value: -2.78% (-59803108), Counts/gram: 73039.78739,
Total capacity: +/- 29.14Kg
</code></pre></div>
<p>The <code>Total capacity</code> should be close to the theoretical rating of the load cell
based on the sensor's capacity. If it is much larger you could have used a
higher gain setting in the sensor or a more sensitive load cell. This isn't as
critical for 32bit and 24bit sensors but is much more critical for low bit width
sensors.</p>
<h2 id="reading-force-data">Reading Force Data<a class="headerlink" href="#reading-force-data" title="Permanent link">&para;</a></h2>
<p>Force data can be read with a GCode command:</p>
<div class="highlight"><pre><span></span><code>LOAD_CELL_READ
// 10.6g (1.94%)
</code></pre></div>
<p>Data is also continuously read and can be consumed from the load_cell printer
object in a macro:</p>
<div class="highlight"><pre><span></span><code>{% set grams = printer.load_cell.force_g %}
</code></pre></div>
<p>This provides an average force over the last 1 second, similar to how
temperature sensors work.</p>
<h2 id="taring-a-load-cell">Taring a Load Cell<a class="headerlink" href="#taring-a-load-cell" title="Permanent link">&para;</a></h2>
<p>Taring, sometimes called zeroing, sets the current weight reported by the
load_cell to 0. This is useful for measuring relative to a known weight. e.g.
when measuring a filament spool, using <code>LOAD_CELL_TARE</code> sets the weight to 0.
Then as filament is printed the load_cell will report the weight of the
filament used.</p>
<div class="highlight"><pre><span></span><code>LOAD_CELL_TARE
// Load cell tare value: 5.32% (445903)
</code></pre></div>
<p>The current tare value is reported in the printers status and can be read in
a macro:</p>
<div class="highlight"><pre><span></span><code>{% set tare_counts = printer.load_cell.tare_counts %}
</code></pre></div>
</article>
</div>
</div>
<a href="#" class="md-top md-icon" data-md-component="top" data-md-state="hidden">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12z"/></svg>
Back to top
</a>
</main>
<footer class="md-footer">
<nav class="md-footer__inner md-grid" aria-label="Footer">
<a href="Eddy_Probe.html" class="md-footer__link md-footer__link--prev" aria-label="Previous: Eddy Current Inductive probe" rel="prev">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
</div>
<div class="md-footer__title">
<div class="md-ellipsis">
<span class="md-footer__direction">
Previous
</span>
Eddy Current Inductive probe
</div>
</div>
</a>
<a href="Sponsors.html" class="md-footer__link md-footer__link--next" aria-label="Next: Sponsors" rel="next">
<div class="md-footer__title">
<div class="md-ellipsis">
<span class="md-footer__direction">
Next
</span>
Sponsors
</div>
</div>
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg>
</div>
</a>
</nav>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"base": ".", "features": ["navigation.top", "search.suggest", "search.highlight", "search.share"], "translations": {"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.term.missing": "Missing", "select.version.title": "Select version"}, "search": "assets/javascripts/workers/search.0bbba5b5.min.js"}</script>
<script src="assets/javascripts/bundle.e1a181d9.min.js"></script>
</body>
</html>