Deploying to gh-pages from @ Klipper3d/klipper@d9043345b6 🚀
This commit is contained in:
@@ -1226,23 +1226,23 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#check-for-incrementing-bytes_invalid-counter" class="md-nav__link">
|
||||
Check for incrementing bytes_invalid counter
|
||||
<a href="#a-bytes_invalid-szamlalo-novelesenek-ellenorzese" class="md-nav__link">
|
||||
A bytes_invalid számláló növelésének ellenőrzése
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#obtaining-candump-logs" class="md-nav__link">
|
||||
Obtaining candump logs
|
||||
<a href="#candump-naplok-beszerzese" class="md-nav__link">
|
||||
Candump naplók beszerzése
|
||||
</a>
|
||||
|
||||
<nav class="md-nav" aria-label="Obtaining candump logs">
|
||||
<nav class="md-nav" aria-label="Candump naplók beszerzése">
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#parsing-klipper-messages-in-a-candump-log" class="md-nav__link">
|
||||
Parsing Klipper messages in a candump log
|
||||
<a href="#klipper-uzenetek-elemzese-a-candump-naploban" class="md-nav__link">
|
||||
Klipper üzenetek elemzése a candump naplóban
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1253,8 +1253,8 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#using-a-logic-analyzer-on-the-canbus-wiring" class="md-nav__link">
|
||||
Using a logic analyzer on the canbus wiring
|
||||
<a href="#logikai-analizator-hasznalata-a-canbus-kabelezesen" class="md-nav__link">
|
||||
Logikai analizátor használata a canbus kábelezésen
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1351,23 +1351,23 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#check-for-incrementing-bytes_invalid-counter" class="md-nav__link">
|
||||
Check for incrementing bytes_invalid counter
|
||||
<a href="#a-bytes_invalid-szamlalo-novelesenek-ellenorzese" class="md-nav__link">
|
||||
A bytes_invalid számláló növelésének ellenőrzése
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#obtaining-candump-logs" class="md-nav__link">
|
||||
Obtaining candump logs
|
||||
<a href="#candump-naplok-beszerzese" class="md-nav__link">
|
||||
Candump naplók beszerzése
|
||||
</a>
|
||||
|
||||
<nav class="md-nav" aria-label="Obtaining candump logs">
|
||||
<nav class="md-nav" aria-label="Candump naplók beszerzése">
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#parsing-klipper-messages-in-a-candump-log" class="md-nav__link">
|
||||
Parsing Klipper messages in a candump log
|
||||
<a href="#klipper-uzenetek-elemzese-a-candump-naploban" class="md-nav__link">
|
||||
Klipper üzenetek elemzése a candump naplóban
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1378,8 +1378,8 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#using-a-logic-analyzer-on-the-canbus-wiring" class="md-nav__link">
|
||||
Using a logic analyzer on the canbus wiring
|
||||
<a href="#logikai-analizator-hasznalata-a-canbus-kabelezesen" class="md-nav__link">
|
||||
Logikai analizátor használata a canbus kábelezésen
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1407,29 +1407,29 @@
|
||||
<p>A kommunikációs problémák hibaelhárításának első lépése a CAN-busz vezetékeinek ellenőrzése.</p>
|
||||
<p>Be sure there are exactly two 120 Ohm <a href="CANBUS.html#terminating-resistors">terminating
|
||||
resistors</a> on the CAN bus. If the resistors are not properly installed then messages may not be able to be sent at all or the connection may have sporadic instability.</p>
|
||||
<p>The CANH and CANL bus wiring should be twisted around each other. At a minimum, the wiring should have a twist every few centimeters. Avoid twisting the CANH and CANL wiring around power wires and ensure that power wires that travel parallel to the CANH and CANL wires do not have the same amount of twists.</p>
|
||||
<p>Verify that all plugs and wire crimps on the CAN bus wiring are fully secured. Movement of the printer toolhead may jostle the CAN bus wiring causing a bad wire crimp or unsecured plug to result in intermittent communication errors.</p>
|
||||
<h2 id="check-for-incrementing-bytes_invalid-counter">Check for incrementing bytes_invalid counter<a class="headerlink" href="#check-for-incrementing-bytes_invalid-counter" title="Permanent link">¶</a></h2>
|
||||
<p>The Klipper log file will report a <code>Stats</code> line once a second when the printer is active. These "Stats" lines will have a <code>bytes_invalid</code> counter for each micro-controller. This counter should not increment during normal printer operation (it is normal for the counter to be non-zero after a RESTART and it is not a concern if the counter increments once a month or so). If this counter increments on a CAN bus micro-controller during normal printing (it increments every few hours or more frequently) then it is an indication of a severe problem.</p>
|
||||
<p>Incrementing <code>bytes_invalid</code> on a CAN bus connection is a symptom of reordered messages on the CAN bus. There are two known causes of reordered messages:</p>
|
||||
<p>A CANH és a CANL buszvezetékeknek csavart érpároknak kell lennie. Vagy legalább pár centiméterenként csavarni kell az érpárokat. Kerüld el a CANH és a CANL vezetékek erős áramú vezetékekkel való kapcsolatát. Kerüld el és biztosítsd, hogy az erős áramú vezetékek, amelyek párhuzamosan futnak a CANH és a CANL vezetékekkel ne rendelkeznek azonos mennyiségű érpár csavarással.</p>
|
||||
<p>Ellenőrizd, hogy a CAN-busz kábelezésén lévő összes csatlakozó és vezetékrögzítő jól van rögzítve. A nyomtatófej mozgása megrázhatja a CAN-busz vezetékeit, ami egy rosszul rögzített vagy rögzítetlen csatlakozó miatt időszakos kommunikációs hibákat okozhat.</p>
|
||||
<h2 id="a-bytes_invalid-szamlalo-novelesenek-ellenorzese">A bytes_invalid számláló növelésének ellenőrzése<a class="headerlink" href="#a-bytes_invalid-szamlalo-novelesenek-ellenorzese" title="Permanent link">¶</a></h2>
|
||||
<p>A Klipper naplófájl másodpercenként egyszer jelent egy <code>Stats</code> sort, amikor a nyomtató aktív. Ezek a "Stats" sorok minden mikrokontroller esetében tartalmaznak egy <code>bytes_invalid</code> számlálót. Ennek a számlálónak nem szabad növekednie a nyomtató normál működése során (normális, hogy a számláló nem nulla az újraindítás után, és nem jelent gondot, ha a számláló havonta egyszer növekszik). Ha ez a számláló egy CAN-buszos mikrovezérlőn normál nyomtatás közben növekszik (néhány óránként vagy gyakrabban), akkor az súlyos problémára utal.</p>
|
||||
<p>A <code>bytes_invalid</code> növekedése egy CAN-busz kapcsolaton a CAN-buszon lévő átrendezett üzenetek tünete. Az újrarendezett üzeneteknek két ismert oka van:</p>
|
||||
<ol>
|
||||
<li>Old versions of the popular candlight_firmware for USB CAN adapters had a bug that could cause reordered messages. If using a USB CAN adapter running this firmware then make sure to update to the latest firmware if incrementing <code>bytes_invalid</code> is observed.</li>
|
||||
<li>Some Linux kernel builds for embedded devices have been known to reorder CAN bus messages. It may be necessary to use an alternative Linux kernel or to use alternative hardware that supports mainstream Linux kernels that do not exhibit this problem.</li>
|
||||
<li>Az USB CAN-adapterek népszerű candlight_firmware-jének régi verzióiban volt egy hiba, amely átrendezett üzeneteket okozhatott. Ha ilyen firmware-t futtató USB CAN adaptert használsz, akkor mindenképpen frissítsd a legújabb firmware-re, ha a <code>bytes_invalid</code> növekedését észleled.</li>
|
||||
<li>Néhány beágyazott eszközökhöz készült Linux kernelről ismert, hogy átrendezi a CAN-busz üzeneteket. Szükség lehet egy alternatív Linux kernel használatára, vagy olyan alternatív hardverek használatára, amelyek támogatják a mainstream Linux kerneleket, amelyek nem mutatják ezt a problémát.</li>
|
||||
</ol>
|
||||
<p>Reordered messages is a severe problem that must be fixed. It will result in unstable behavior and can lead to confusing errors at any part of a print.</p>
|
||||
<h2 id="obtaining-candump-logs">Obtaining candump logs<a class="headerlink" href="#obtaining-candump-logs" title="Permanent link">¶</a></h2>
|
||||
<p>The CAN bus messages sent to and from the micro-controller are handled by the Linux kernel. It is possible to capture these messages from the kernel for debugging purposes. A log of these messages may be of use in diagnostics.</p>
|
||||
<p>The Linux <a href="https://github.com/linux-can/can-utils">can-utils</a> tool provides the capture software. It is typically installed on a machine by running:</p>
|
||||
<p>Az átrendezett üzenetek súlyos problémát jelentenek, amelyet orvosolni kell. Ez instabil viselkedést eredményez, és zavaró hibákhoz vezethet a nyomtatás bármelyik részénél.</p>
|
||||
<h2 id="candump-naplok-beszerzese">Candump naplók beszerzése<a class="headerlink" href="#candump-naplok-beszerzese" title="Permanent link">¶</a></h2>
|
||||
<p>A mikrokontrollerhez küldött és onnan érkező CAN-busz üzeneteket a Linux kernel kezeli. Lehetőség van arra, hogy ezeket az üzeneteket a kernelből hibakeresés céljából rögzítsük. Ezen üzenetek naplózása hasznos lehet a diagnosztikában.</p>
|
||||
<p>A Linux <a href="https://github.com/linux-can/can-utils">can-utils</a> eszköz biztosítja a rögzítő szoftvert. Ezt általában a következő futtatásával telepíthetjük a gépre:</p>
|
||||
<div class="highlight"><pre><span></span><code>sudo apt-get update && sudo apt-get install can-utils
|
||||
</code></pre></div>
|
||||
|
||||
<p>Once installed, one may obtain a capture of all CAN bus messages on an interface with the following command:</p>
|
||||
<p>A telepítés után a következő paranccsal az összes CAN-busz üzenetet rögzíthetjük egy interfészen:</p>
|
||||
<div class="highlight"><pre><span></span><code>candump -tz -Ddex can0,#FFFFFFFF > mycanlog
|
||||
</code></pre></div>
|
||||
|
||||
<p>One can view the resulting log file (<code>mycanlog</code> in the example above) to see each raw CAN bus message that was sent and received by Klipper. Understanding the content of these messages will likely require low-level knowledge of Klipper's <a href="CANBUS_protocol.html">CANBUS protocol</a> and Klipper's <a href="MCU_Commands.html">MCU commands</a>.</p>
|
||||
<h3 id="parsing-klipper-messages-in-a-candump-log">Parsing Klipper messages in a candump log<a class="headerlink" href="#parsing-klipper-messages-in-a-candump-log" title="Permanent link">¶</a></h3>
|
||||
<p>One may use the <code>parsecandump.py</code> tool to parse the low-level Klipper micro-controller messages contained in a candump log. Using this tool is an advanced topic that requires knowledge of Klipper <a href="MCU_Commands.html">MCU commands</a>. For example:</p>
|
||||
<p>A kapott naplófájlban (a fenti példában a <code>mycanlog</code>) megtekinthetjük a Klipper által küldött és fogadott minden egyes nyers CAN-busz üzenetet. Ezen üzenetek tartalmának megértéséhez valószínűleg a Klipper <a href="CANBUS_protocol.html">CANBUS protokoll</a> és a Klipper <a href="MCU_Commands.html">MCU parancsok</a> alacsony szintű ismerete szükséges.</p>
|
||||
<h3 id="klipper-uzenetek-elemzese-a-candump-naploban">Klipper üzenetek elemzése a candump naplóban<a class="headerlink" href="#klipper-uzenetek-elemzese-a-candump-naploban" title="Permanent link">¶</a></h3>
|
||||
<p>A <code>parsecandump.py</code> eszközt használhatjuk a candump naplóban található alacsony szintű Klipper mikrokontroller üzenetek elemzésére. Ennek az eszköznek a használata haladó témakör, amelyhez a Klipper <a href="MCU_Commands.html">MCU parancsok</a> ismerete szükséges. Például:</p>
|
||||
<div class="highlight"><pre><span></span><code>./scripts/parsecandump.py mycanlog 108 ./out/klipper.dict
|
||||
</code></pre></div>
|
||||
|
||||
@@ -1437,13 +1437,13 @@ resistors</a> on the CAN bus. If the resistors are not properly installed then m
|
||||
tool</a>. See the documentation for that tool for information on generating the Klipper micro-controller data dictionary.</p>
|
||||
<p>In the above example, <code>108</code> is the <a href="CANBUS_protocol.html#micro-controller-id-assignment">CAN bus
|
||||
id</a>. It is a hexadecimal number. The id <code>108</code> is assigned by Klipper to the first micro-controller. If the CAN bus has multiple micro-controllers on it, then the second micro-controller would be <code>10a</code>, the third would be <code>10c</code>, and so on.</p>
|
||||
<p>The candump log must be produced using the <code>-tz -Ddex</code> command-line arguments (for example: <code>candump -tz -Ddex can0,#FFFFFFFF</code>) in order to use the <code>parsecandump.py</code> tool.</p>
|
||||
<h2 id="using-a-logic-analyzer-on-the-canbus-wiring">Using a logic analyzer on the canbus wiring<a class="headerlink" href="#using-a-logic-analyzer-on-the-canbus-wiring" title="Permanent link">¶</a></h2>
|
||||
<p>The <a href="https://sigrok.org/wiki/PulseView">Sigrok Pulseview</a> software along with a low-cost <a href="https://en.wikipedia.org/wiki/Logic_analyzer">logic analyzer</a> can be useful for diagnosing CAN bus signaling. This is an advanced topic likely only of interest to experts.</p>
|
||||
<p>One can often find "USB logic analyzers" for under $15 (US pricing as of 2023). These devices are often listed as "Saleae logic clones" or as "24MHz 8 channel USB logic analyzers".</p>
|
||||
<p>A candump naplót a <code>-tz -Ddex</code> parancssori argumentummal kell létrehozni (például: <code>candump -tz -Ddex can0,#FFFFFFFFFFFF</code>) a <code>parsecandump.py</code> eszköz használatához.</p>
|
||||
<h2 id="logikai-analizator-hasznalata-a-canbus-kabelezesen">Logikai analizátor használata a canbus kábelezésen<a class="headerlink" href="#logikai-analizator-hasznalata-a-canbus-kabelezesen" title="Permanent link">¶</a></h2>
|
||||
<p>A <a href="https://sigrok.org/wiki/PulseView">Sigrok Pulseview</a> szoftver egy olcsó <a href="https://en.wikipedia.org/wiki/Logic_analyzer">logikai analizátorral</a> együtt hasznos lehet a CAN-busz jelátvitelének diagnosztizálásához. Ez egy haladó téma, amely valószínűleg csak a szakértők számára érdekes.</p>
|
||||
<p>Gyakran találhatunk "USB logikai analizátorokat" 15 dollár alatti áron (amerikai árképzés 2023-tól). Ezek az eszközök gyakran "Saleae logic clones" vagy "24MHz-es 8 csatornás USB logikai analizátorok" néven szerepelnek.</p>
|
||||
<p><img alt="pulseview-canbus" src="img/pulseview-canbus.png" /></p>
|
||||
<p>The above picture was taken while using Pulseview with a "Saleae clone" logic analyzer. The Sigrok and Pulseview software was installed on a desktop machine (also install the "fx2lafw" firmware if that is packaged separately). The CH0 pin on the logic analyzer was routed to the CAN Rx line, the CH1 pin was wired to the CAN Tx pin, and GND was wired to GND. Pulseview was configured to only display the D0 and D1 lines (red "probe" icon center top toolbar). The number of samples was set to 5 million (top toolbar) and the sample rate was set to 24Mhz (top toolbar). The CAN decoder was added (yellow and green "bubble icon" right top toolbar). The D0 channel was labeled as RX and set to trigger on a falling edge (click on black D0 label at left). The D1 channel was labeled as TX (click on brown D1 label at left). The CAN decoder was configured for 1Mbit rate (click on green CAN label at left). The CAN decoder was moved to the top of the display (click and drag green CAN label). Finally, the capture was started (click "Run" at top left) and a packet was transmitted on the CAN bus (<code>cansend can0 123#121212121212</code>).</p>
|
||||
<p>The logic analyzer provides an independent tool for capturing packets and verifying bit timing.</p>
|
||||
<p>A fenti kép a Pulseview használata közben készült egy "Saleae klón" logikai analizátorral. A Sigrok és a Pulseview szoftver egy asztali gépre lett telepítve (telepítsd az "fx2lafw" firmware-t is, ha az külön csomagban van). A logikai analizátor CH0 tűjét a CAN Rx tűre, a CH1 tűt a CAN Tx tűre, a GND-t pedig a GND-re vezettük. A Pulseview-t úgy konfiguráltuk, hogy csak a D0 és D1 vonalakat jelenítse meg (piros "szonda" ikon középső felső eszköztár). A minták számát 5 millióra (felső eszköztár), a mintavételi sebességet pedig 24Mhz-re (felső eszköztár) állítottuk be. A CAN dekódert hozzáadtuk (sárga és zöld "buborék ikon" jobb felső eszköztár). A D0 csatornát RX-ként jelöltük meg, és úgy állítottuk be, hogy csökkenő élre triggereljen (kattintsunk a bal oldali fekete D0 címkére). A D1 csatornát TX-ként jelöltük (kattintsunk a bal oldali barna D1 címkére). A CAN dekódert 1Mbit sebességre konfiguráltuk (kattints a bal oldali zöld CAN címkére). A CAN dekóder a kijelző tetejére került (kattints és húzd a zöld CAN címkét). Végül elindítottuk a rögzítést (kattintsunk a bal felső sarokban lévő "Run" gombra), és egy csomagot továbbítottunk a CAN-buszon (<code>cansend can0 123#121212121212</code>).</p>
|
||||
<p>A logikai analizátor független eszközt biztosít a csomagok rögzítéséhez és a bitek időzítésének ellenőrzéséhez.</p>
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
Reference in New Issue
Block a user