<?xml version="1.0" encoding="UTF-8" ?><!-- generator=Zoho Sites --><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><atom:link href="https://www.accuratetechnologies.com/blog/Uncategorized/feed" rel="self" type="application/rss+xml"/><title>Accurate Technologies - Blog , Uncategorized</title><description>Accurate Technologies - Blog , Uncategorized</description><link>https://www.accuratetechnologies.com/blog/Uncategorized</link><lastBuildDate>Tue, 31 Mar 2026 17:26:00 -0700</lastBuildDate><generator>http://zoho.com/sites/</generator><item><title><![CDATA[Part 1: Introduction to CAN Bus]]></title><link>https://www.accuratetechnologies.com/blog/post/introduction-to-can-bus-pt1</link><description><![CDATA[In this article, we’ll cover what CAN is, why it matters—and how you can start exploring it with tools like ATI’s CANary interface and CANLab software]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_uE8MekehTUitSbatBLUrhA" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_ZFn6crkWS32h7gkqLbfRRg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content- " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_Gdfp17cLSauVGiVT6H6hmQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_yBmL1ScVTj-ZE1vRNLHnNw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-align-center zpheading-align-mobile-center zpheading-align-tablet-center " data-editor="true"><span>The Backbone of Modern Vehicle Communication</span></h2></div>
<div data-element-id="elm_v107cdztR2-Tm9xtQeQQqQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p></p><div><div><div style="text-align:left;">Whether you're a student stepping into automotive systems, an engineer working on embedded projects, or just curious about how cars talk, understanding the Controller Area Network (CAN) is essential. It’s the invisible electronic nervous system inside modern vehicles, enabling everything from engine control to your car’s entertainment system to communicate efficiently.</div><div style="text-align:left;"><br/></div></div><div style="text-align:left;">In this article, we’ll cover what CAN is, why it matters—and how you can start exploring it with tools like ATI’s CANary interface and CANLab software.</div></div><p></p></div>
</div><div data-element-id="elm_05Y4NnlQpCqYCMhAQSor4g" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>What is CAN Bus?</span></h2></div>
<div data-element-id="elm_aC8oTbpGtZtTW7zC0jjXKw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>The Controller Area Network (CAN) is a robust communication protocol designed to let microcontrollers and devices communicate with each other without a central host computer. Developed by Bosch in the 1980s, it was originally created for automotive systems but is now used in various industrial and embedded applications.</div><br/><div>Imagine dozens of Electronic Control Units (ECUs) inside a car—engine, ABS, airbags, windows—all needing to share data. Rather than wiring each component individually (a wiring nightmare), CAN allows all of them to connect to the same two-wire bus, sending and receiving standardized messages.</div></div><p></p></div>
</div><div data-element-id="elm_6PRsnRoAN7e3MO_W9YzKMg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Key Features of CAN</span></h2></div>
<div data-element-id="elm_GjPWUxY68prOjj7kgJRjWg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div></div></div><p></p><ul><li><span style="font-weight:bold;">Single wire CAN</span>&nbsp;<span>–&nbsp;</span>primarily&nbsp;<span>found</span> in specialty automotive applications and emphasizes low cost. Defined in the SAE 2411 specification, single wire CAN uses only one single-ended CAN data wire, as opposed to the differential CAN wires found in most applications.<br/></li><li><span style="font-weight:bold;">Two-wire system (CAN_H and CAN_L)</span> – uses differential signaling for noise immunity</li><li><span style="font-weight:bold;">Broadcast communication</span> – one node sends, many can listen</li><li><span style="font-weight:bold;">Prioritized messaging</span> – ID-based arbitration ensures important messages get through</li><li><span style="font-weight:bold;">Error detection &amp; handling</span> – CRCs, ACKs, and fail-safe features</li><li><span style="font-weight:bold;">Speed</span> – typically up to 1 Mbps (or 8 Mbps with CAN FD)</li></ul></div>
</div><div data-element-id="elm_MAgKW8bGZHEjoHes0euvtg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>How CAN Messages Work</span></h2></div>
<div data-element-id="elm_3AlPTL0B40ZRWtHMpcGTMA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>A CAN message isn’t like an email with a “to” and “from”—instead, every message has an identifier (ID) that signifies what kind of data it contains (e.g., “engine RPM” or “brake status”). Any ECU that’s interested in that kind of message simply listens for it.<br/><br/><span style="font-weight:bold;">Each message contains:</span><br/></span></p></div>
</div><div data-element-id="elm_Sz_5G9zvt_16BJ5hLRuCQg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><ul><li>ID (11 or 29 bits)</li><li>Data Length (0–8 bytes for CAN 2.0, up to 64 for CAN FD)</li><li>Data Payload</li><li>CRC &amp; error bits</li></ul></div>
</div><div data-element-id="elm_agisYViwX5b1R87uwQCAkQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>What You Need to Get Started</span></h2></div>
<div data-element-id="elm_-IBGFJiljFpDX1glzrx0MQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_7f31CBZYEFSpm0mgukAMew" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_N60CTNyXi8HXec6ueHpJ5g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div><span style="font-weight:bold;">To work with a CAN network, you’ll need:</span></div></div><p></p><ul><li><span style="font-weight:bold;">A CAN interface</span> – to connect your PC to a CAN network</li><li><span style="font-weight:bold;">Software</span> – to monitor, log, and send messages</li><li><span style="font-weight:bold;">A target network</span> – either a simulator, bench ECU, or development board<br/></li></ul></div>
</div><div data-element-id="elm_geyN8lOgBddzUYdk9LcoTA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div><span style="font-weight:bold;">ATI's CANary and CANLab: The Ideal Starter Kit</span></div><br/><div><div><a href="/Products/CANary" title="CANary" rel="">CANary</a> is ATI’s compact, USB-powered CAN interface that makes it easy to start capturing and analyzing CAN traffic. It’s:</div></div></div><p></p><ul><li>Plug-and-play</li><li>Supports standard CAN and CAN FD (with CANary FD)</li><li>Lightweight and portable</li></ul><div><br/><div><div>Pair it with <a href="/Products/CANLabSoftware" title="CANLab" rel="">CANLab</a>, ATI’s CAN message viewer, logger, and analyzer. It’s ideal for:</div></div><div><ul><li>Live message monitoring</li><li>Custom message filtering</li><li>Logging and replaying real-world CAN data</li><li>Learning through scripting and automation (more on that in future blogs!)</li></ul></div></div></div>
</div></div><div data-element-id="elm_OSDWO8bfUTqA5kAew3F7gg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_U1pvM-qurqELXIG5ubDZ5g" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_U1pvM-qurqELXIG5ubDZ5g"] .zpimage-container figure img { width: 445px !important ; height: 671px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/files/CAN%20Visual%20Layout%204.png" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div></div></div><div data-element-id="elm_YU-FeX0SFkQ0w0yARmK-YA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Then you need your DBC file. What’s that?</span></h2></div>
<div data-element-id="elm_-PlA04_7zF9ccU0SKNNL9w" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>A DBC (Database CAN) file is a plain-text specification that describes how raw CAN frames on a bus map to meaningful, human-readable signals.</span></p></div>
</div><div data-element-id="elm_7EgwZfym8IinzFGugP3duw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_AIu-I7pwm0Nr1Rh9vdv76w" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_BDQmZKZmlCbF1UDi6oa9BQ" data-element-type="table" class="zpelement zpelem-table "><style type="text/css"> [data-element-id="elm_BDQmZKZmlCbF1UDi6oa9BQ"].zpelem-table{ background-color:#e3e3e3; background-image:unset; } [data-element-id="elm_BDQmZKZmlCbF1UDi6oa9BQ"] .zptable table td{ border-color: #a3a3a3 !important; } [data-element-id="elm_BDQmZKZmlCbF1UDi6oa9BQ"] .zptable{ width:100% !important; } </style><div class="zptable zptable-align-left zptable-align-mobile-left zptable-align-tablet-left zptable-header- zptable-header-none zptable-cell-outline-on zptable-outline-on zptable-header-sticky-tablet zptable-header-sticky-mobile zptable-zebra-style-none zptable-style-both " data-width="100" data-editor="true"><table style="width:100%;"><tbody><tr><td style="width:16.8371%;"><span style="font-weight:bold;"> <span>Element</span></span></td><td style="width:82.1701%;" class="zp-selected-cell"><span style="font-weight:bold;"> <span>What it defines</span></span></td></tr></tbody></table></div>
</div><div data-element-id="elm_XYcFpO0nWRRB9Dn2wo4ykQ" data-element-type="table" class="zpelement zpelem-table "><style type="text/css"> [data-element-id="elm_XYcFpO0nWRRB9Dn2wo4ykQ"].zpelem-table{ margin-block-start:-57px; } [data-element-id="elm_XYcFpO0nWRRB9Dn2wo4ykQ"] .zptable{ width:100% !important; } </style><div class="zptable zptable-align-left zptable-align-mobile-left zptable-align-tablet-left zptable-header- zptable-header-none zptable-cell-outline-on zptable-outline-on zptable-header-sticky-tablet zptable-header-sticky-mobile zptable-zebra-style-none zptable-style-both " data-width="100" data-editor="true"><table style="width:100%;"><tbody><tr><td style="width:16.7469%;"> <span style="font-weight:bold;">Messages</span></td><td style="width:82.1701%;"><span>Each CAN ID (identifier) that appears on the bus—along with its payload length (0-8 bytes for Classic CAN).</span></td></tr><tr><td style="width:16.7469%;"> <span style="font-weight:bold;">Signals</span></td><td style="width:82.1701%;"> <span>Bit-level slices within the message payload that represent individual data items (e.g., engine RPM, steering-angle). A signal entry specifies: start bit, length, byte order, signed/unsigned, scaling factor, offset, physical units, and value ranges.</span></td></tr><tr><td style="width:16.7469%;"> <span style="font-weight:bold;">Nodes</span></td><td style="width:82.1701%;" class="zp-selected-cell"> <span>Which electronic control unit (ECU) transmits or receives each message.</span></td></tr><tr><td style="width:16.7469%;"> <span style="font-weight:bold;">Additional metadata</span></td><td style="width:82.1701%;"> <span>Comments, value tables (enumerations), multiplexing rules, diagnostic info, etc.</span></td></tr></tbody></table></div>
</div><div data-element-id="elm_qSPG-nBLYONSI1pMrx_nHw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>How it is used when you “connect” to a vehicle CAN network</span></h2></div>
<div data-element-id="elm_qNd_HHmmw28G9qKZLWEDkQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><ol><li><span style="font-weight:bold;">Physical interface &amp; bus parameters</span><br/>You plug a CAN interface (EG CANary) into the vehicle’s diagnostic connector (OBD-II, J1962) or directly onto a harness breakout. Set the bus speed (e.g., 500 kbit/s) and, if applicable, CAN FD data-rate.</li><li><span style="font-weight:bold;">Load the DBC into your tool or code</span><br/><span><span>&nbsp;•&nbsp;&nbsp;</span></span>CAN analyzers EG ATI’s CANlab parse the DBC.<br/><span><span>&nbsp;•&nbsp;&nbsp;</span></span>The tool now “knows” how to decode each CAN ID.</li><li><span style="font-weight:bold;">Live decoding / logging</span><br/>As frames stream in, the software matches the ID to a message definition in the DBC, extracts signal bits, applies scaling × factor + offset, and presents real-world values (e.g., RPM = 2560 rev/min instead of “0x0A00”).</li><li><span style="font-weight:bold;">Transmission / simulation</span><br/>Conversely, you can compose frames by assigning signal values (e.g., set “CruiseControlSwitch = ON”); the tool packs the bits per the DBC and sends the correctly formatted frame onto the bus. This is essential for HIL/ECU simulation, test benches, or reverse-engineering.</li><li><span style="font-weight:bold;">Maintainability &amp; collaboration</span><br/>Because the mapping is externalized in the DBC, engineers can share, version-control, and update signal definitions without changing the decoding code itself.<br/><br/>In short: A DBC file is your translation dictionary between raw CAN frames and meaningful engineering signals, enabling any compliant software or script to monitor, log, analyze, or inject data on a vehicle CAN network with minimal manual bit-twiddling.</li></ol></div>
</div><div data-element-id="elm_f-PUX-KaGZk17RTgffmAJg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>What’s Next?</span></h2></div>
<div data-element-id="elm_X5MoKSoUI7HYg9gVM281fw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>Now that you know the basics of what CAN is, how it’s decoded with a DBC file and what tools you need to get started, the next blog will walk you through setting up your first CAN network with real tools, proper termination, and message tracing.</span></p></div>
</div></div></div><div data-element-id="elm_lfqVCfYOeaQozMnPnkJShw" data-element-type="buttongroup" class="zpelement zpelem-buttongroup "><style></style><div class="zpbutton-group-container zpbutton-group-align-center zpbutton-group-align-mobile-center zpbutton-group-align-tablet-center"><div data-element-id="elm_JTmIaaSVSnwuepN1NfNFXQ" data-element-type="buttongroupInner" class="zpelement zpelem-buttonicon "><div class="zpbutton-container "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner zpbutton-icon-align- " href="/Products/CANary"><span class="zpbutton-icon "></span><span class="zpbutton-content">About CANary</span></a></div>
</div><div data-element-id="elm_22D9LIQ9JbyGNSAd0-CLrQ" data-element-type="buttongroupInner" class="zpelement zpelem-buttonicon "><div class="zpbutton-container "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner zpbutton-icon-align- " href="/Products/CANLabSoftware"><span class="zpbutton-icon "></span><span class="zpbutton-content">About CANLab</span></a></div>
</div></div></div></div></div></div></div></div> ]]></content:encoded><pubDate>Thu, 12 Jun 2025 10:07:09 -0400</pubDate></item><item><title><![CDATA[Scripting: The Secret Ingredient to Smarter Testing]]></title><link>https://www.accuratetechnologies.com/blog/post/scripting-smarter-testing</link><description><![CDATA[In the world of embedded systems and communication networks, scripting is more than just a coding technique—it's a way to automate, extend, and elevate your testing workflows.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_JKFw9e-4QUejrYkeHBUzUQ" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_zKwZEsQGSMSRQk_pEWoqVw" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_-CFu1fDmS5Wd0dg80PL2EQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_Yc7tc-YITByumNMnb7tK1A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p style="text-align:left;margin-bottom:10.6667px;"><span>In the world of embedded systems and communication networks, scripting is more than just a coding technique—it's a way to automate, extend, and elevate your testing workflows. Whether you're validating messages on a CAN bus, simulating real-time events, or analyzing system behavior, scripting gives you control.&nbsp;</span><br/></p></div>
</div><div data-element-id="elm_RA-kOQKgHHkpOvx0vmT1Qw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Why Scripting Matters</span></h2></div>
<div data-element-id="elm_FuJfCHSwi1CC9HXPAkCjAg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>At its core, scripting is about flexibility. Unlike rigid interfaces or predefined tools, scripts allow you to define custom logic, react to real-time conditions, and build automated routines tailored to your specific testing environment. From basic automation to complex data analysis, scripting empowers engineers and testers to go beyond the limitations of drag-and-drop GUIs.&nbsp;<br/><br/></div><div><span style="font-weight:bold;">With the right scripting environment, you can:&nbsp;</span></div></div><p></p><ul><ul><li>Automate repetitive tasks to save time and reduce error&nbsp;</li><li>Respond to dynamic events like incoming messages or signal changes&nbsp;</li><li>Simulate real-world conditions through timed or conditional actions&nbsp;</li><li>Create reusable workflows that scale across teams and projects&nbsp;</li><li>Analyze data in real time without needing to export to other tools&nbsp;<br/><br/></li></ul></ul><div><div>Scripting is what turns a test tool into a test platform.&nbsp;</div></div></div>
</div><div data-element-id="elm__QUprXaviBWIMCGbsjzDHA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Enter CANLab: Scripting Built-In</span></h2></div>
<div data-element-id="elm_v01z9Fc_qNigfdENN37W0Q" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_v01z9Fc_qNigfdENN37W0Q"].zpelem-text { margin-block-start:-11px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>While scripting is powerful, it’s only as effective as the environment that supports it. That’s where CANLab steps in. CANLab includes a full-featured scripting language designed specifically for testing communication networks, with syntax based on the widely-used C# language. This makes it both familiar to developers and accessible to testers with basic programming knowledge.&nbsp;<br/><br/></div><div><span style="font-weight:bold;">Key features include:&nbsp;</span></div></div><p></p><ul><ul><li><span style="font-weight:bold;">Customizable Script Editor:</span> Syntax highlighting and editor configuration make it easy to write, read, and debug scripts.&nbsp;</li><li><span style="font-weight:bold;">Event-Driven Logic:</span> Trigger functions using On Message Received, On Signal Received, On KeyPress, or On Timer—ideal for creating interactive or automated test scenarios.&nbsp;</li><li><span style="font-weight:bold;">Native Execution:</span> Scripts run directly within CANLab for real-time performance and low-latency response.&nbsp;</li><li><span style="font-weight:bold;">Data Analysis Support:</span> Go beyond basic message handling—use scripts to evaluate signal conditions, generate summaries, and flag anomalies on the fly.&nbsp;</li><li><span style="font-weight:bold;">Portability and Sharing:</span> Save scripts and share them across teams, enabling test engineers to focus on running tests, not building them from scratch.</li></ul></ul></div>
</div><div data-element-id="elm_9oRkvPr1dchbMqWNudmX5g" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_9oRkvPr1dchbMqWNudmX5g"] .zpimage-container figure img { width: 579px !important ; height: 667.35px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/files/Script%20Editor.png" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_2_0Em7wokx8F2D9OOPG6EA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Build Once, Use Anywhere</span></h2></div>
<div data-element-id="elm_8uqa9v7CfNOEhvxA9xnuBA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>One of the most powerful aspects of scripting in a platform like CANLab is the ability to reuse and adapt. Write a script once, and it can be used by multiple groups, across different projects, or even automated into continuous integration workflows. This reduces setup time, standardizes testing, and enhances collaboration.&nbsp;</span></p></div>
</div><div data-element-id="elm_Oh56kmrs4HYgEIJQs5e23Q" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Final Thoughts</span></h2></div>
<div data-element-id="elm_Cs1V7T56qdr5IK0PGE-_nQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>Scripting is no longer a luxury in modern testing—it's a necessity. It brings agility, precision, and insight to test engineers and system developers alike. And with tools like CANLab offering a robust scripting engine out of the box, there's never been a better time to start automating your test workflows.&nbsp;</div><div><br/></div><div>If you're looking to move faster, test smarter, and unlock the full potential of your communication networks, scripting is the way forward—and CANLab is ready when you are.</div></div><p></p></div>
</div><div data-element-id="elm_SH-nKzciShOYk0EgRfhPEA" data-element-type="button" class="zpelement zpelem-button "><style></style><div class="zpbutton-container zpbutton-align-center zpbutton-align-mobile-center zpbutton-align-tablet-center"><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="/Products/CANLabSoftware" target="_blank"><span class="zpbutton-content">Get Started Now</span></a></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Fri, 06 Jun 2025 12:40:38 -0400</pubDate></item><item><title><![CDATA[Understanding CCP, XCP, and KWP Protocol Decoders]]></title><link>https://www.accuratetechnologies.com/blog/post/understanding-ccp-xcp-and-kwp</link><description><![CDATA[If you're deep into CAN networks and need to decode CCP, XCP, or KWP protocols, ATI’s CANLab is a must-have in your toolkit. It demystifies raw CAN data and turns it into actionable information—so you can get back to engineering with clarity and confidence.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_zjYtqkV0R_e8_kKfkEQg0A" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_5yRk5qvpSMqWlbB8DGIHpg" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_HDJmItK7SN-hb9i2PmZMlw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_nUnTCQhFQjWQ2BQBXZniZg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-align-center zpheading-align-mobile-center zpheading-align-tablet-center " data-editor="true"><span>And How CANLab by ATI Brings It All Together</span></h2></div>
<div data-element-id="elm_o1aS4SYxSj2nbjih8i1xBw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p></p><div><div><p style="text-align:left;"><span>In the world of automotive diagnostics and embedded systems, communication protocols are the unsung heroes that keep everything running smoothly behind the scenes. Among the many protocols that engineers encounter, </span><span style="font-weight:bold;">CCP (CAN Calibration Protocol)</span><span>, </span><span style="font-weight:bold;">XCP (Universal Measurement and Calibration Protocol)</span><span>, and </span><span style="font-weight:bold;">KWP (Keyword Protocol)</span><span> stand out due to their widespread use in vehicle calibration, diagnostics, and communication.&nbsp;</span></p></div><div><p style="text-align:left;"><span>But decoding these protocols can be a real challenge without the right tools. That’s where </span><span style="font-weight:bold;">protocol decoders</span><span> come in—and if you’ve ever worked with CAN networks, you’ve probably heard of </span><span style="font-weight:bold;"><span>CANLab by Accurate Technologies Inc. (ATI)</span></span><span>.&nbsp;</span></p></div><div><p style="text-align:left;"><span>Let’s break it all down.&nbsp;</span></p></div></div><p></p></div>
</div><div data-element-id="elm_11E_BSS6rZe1AMdwnYQebg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>CCP, XCP, and KWP: A Quick Overview</span></h2></div>
<div data-element-id="elm_cdMzd1nQUtsvhMLesgfMRw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div><p><span style="font-weight:bold;">CCP (CAN Calibration Protocol)</span><span>&nbsp;</span></p></div><div><p><span>Developed by ASAM, CCP is used primarily for real-time data acquisition and calibration in embedded control units (ECUs) over CAN. It allows engineers to access internal variables and parameters in a system without stopping it—vital for fine-tuning systems on the fly.&nbsp;</span></p></div><div><p><span style="font-weight:bold;"><br/></span></p><p><span style="font-weight:bold;">XCP (Universal Measurement and Calibration Protocol)</span><span>&nbsp;</span></p></div><div><p><span>XCP is essentially the successor to CCP. It supports not just CAN, but also FlexRay, Ethernet, and USB. More flexible and scalable, XCP is ideal for today’s increasingly complex vehicle networks. It’s built to handle high-bandwidth communication needs while still enabling measurement and calibration of ECUs.&nbsp;</span></p></div><div><p><span style="font-weight:bold;"><br/></span></p><p><span style="font-weight:bold;">KWP (Keyword Protocol)</span><span>&nbsp;</span></p></div><div><p><span>KWP2000 (ISO 14230) is often used for diagnostics, especially in OBD (On-Board Diagnostics). It operates over both CAN and K-Line and allows reading and clearing diagnostic trouble codes (DTCs), programming ECUs, and more. While newer protocols like UDS (<span><span>Unified Diagnostic Services)</span></span> are gaining traction, KWP is still common in legacy systems.&nbsp;</span></p></div><div><p><span><img alt="Shape" src="/Mon%20Apr%2014%202025.png">&nbsp;</span></p></div></div><p></p></div>
</div><div data-element-id="elm_mQDbUbM4nsLmahnvC3CnBg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>The Challenge: Decoding These Protocols</span></h2></div>
<div data-element-id="elm_tG7w3HQcdgX6L15n5lssgA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div><p><span>Anyone who’s worked with raw CAN traffic knows: it’s messy. Without protocol decoders, you're looking at a stream of hex data that offers little insight into what’s really happening on the network.&nbsp;</span></p><p><span><br/></span></p></div><div><p><span>CCP, XCP, and KWP each add a specific layer of structure and meaning to CAN messages. A good decoder will interpret those layers, identify key operations (like downloads, measurements, or DTC reads), and display the results in human-readable form.&nbsp;</span></p></div></div><p></p></div>
</div><div data-element-id="elm_t7TjYxnWlx6UUd-gbQDoqg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Enter ATI’s CANLab</span></h2></div>
<div data-element-id="elm_HQOyY25vz62tFhXz5D4rYQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div><p><a href="https://www.accuratetechnologies.com/Products/CANLabSoftware" target="_blank" rel="noreferrer noopener"><span style="font-weight:bold;"><span>CANLab</span></span></a><span> by Accurate Technologies Inc. is a powerful, user-friendly platform that does just that. It’s built for engineers who need to interact with vehicle networks in real time—whether you're monitoring traffic, decoding protocols, or troubleshooting communication issues.&nbsp;</span></p></div><div><p><span>Here’s what makes CANLab shine when it comes to CCP, XCP, and KWP decoding:&nbsp;</span></p></div><div><div><ul><li style="margin-left:24px;"><p><span style="font-weight:bold;">Built-In Protocol Decoders</span><span>: CANLab includes ready-to-use decoders for CCP, XCP, KWP, and others, saving time and reducing guesswork.&nbsp;</span></p></li></ul></div><div><ul><li style="margin-left:24px;"><p><span style="font-weight:bold;">Custom Signal Mapping</span><span>: You can define how variables and data points are visualized, making the experience tailored to your specific ECU or network setup.&nbsp;</span></p></li></ul></div><div><ul><li style="margin-left:24px;"><p><span style="font-weight:bold;">Real-Time Analysis</span><span>: CANLab enables real-time decoding and message filtering, essential for calibration engineers working in fast-paced environments.&nbsp;</span></p></li></ul></div><div><ul><li style="margin-left:24px;"><p><span style="font-weight:bold;">Extensive Logging &amp; Playback</span><span>: Logging CAN traffic with decoded overlays makes debugging and documentation easier. You can also replay traffic to replicate scenarios.&nbsp;</span></p></li></ul></div><div><p><span>Whether you're working on ECU tuning, vehicle diagnostics, or reverse engineering, tools like CANLab make protocol decoding far less painful—and a lot more insightful.&nbsp;</span></p></div></div></div><p></p></div>
</div><div data-element-id="elm_hfs8isgJUw9TJUiUFIVU_Q" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_hfs8isgJUw9TJUiUFIVU_Q"] .zpimage-container figure img { width: 686px !important ; height: 537px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/files/CANLab%205.3%20Scope%20-%20cut%20out%20shadow.png" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_hfO3MlMYnQkP6XAcmqQlGw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Why This Matters</span></h2></div>
<div data-element-id="elm_fmETLg7Rhwv6khhiu8tyuQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>As vehicles become smarter and more connected, the complexity of onboard communication systems is only growing. Being fluent in protocols like CCP, XCP, and KWP—and having the tools to work with them—is no longer just a nice-to-have, it's essential.&nbsp;</div><div><br/></div><div>ATI’s CANLab doesn’t just decode data. It helps you understand your vehicle’s digital nervous system, unlocking insights that power better designs, faster troubleshooting, and more efficient calibrations.&nbsp;</div></div><p></p></div>
</div><div data-element-id="elm_3YMWkBP-QFqHYfvz-rXHZA" data-element-type="button" class="zpelement zpelem-button "><style></style><div class="zpbutton-container zpbutton-align-center zpbutton-align-mobile-center zpbutton-align-tablet-center"><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="/Products/CANLabSoftware" target="_blank"><span class="zpbutton-content">Learn More</span></a></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Tue, 15 Apr 2025 14:45:00 -0400</pubDate></item><item><title><![CDATA[The Evolution of Automotive Electronics:]]></title><link>https://www.accuratetechnologies.com/blog/post/the-evolution-of-automotive-electronics</link><description><![CDATA[In this blog, we explore the concept of zonal architecture, its advantages, and how companies like Accurate Technologies Inc. (ATI) support this evolution with cutting-edge automotive electronics solutions.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_8UMGZweSTWu7yRa6xMJBXQ" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_zE2M4Jk0RnCmBlB1bQwhtQ" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_hQry3PHXToShm5FRsqzkYg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_WvZ4Oa2wTWmhGs9eJ6bemA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-align-center zpheading-align-mobile-center zpheading-align-tablet-center " data-editor="true"><span style="color:inherit;">Zonal Architecture and Its Impact</span></h2></div>
<div data-element-id="elm_fZKWqFPdRPaVN9M5d_9I8g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span style="color:inherit;">The automotive industry is undergoing a significant transformation and paradigm shift. Evolving from a traditional Domain Architecture with multiple distributed electronic control units (ECUs), to a more efficient and scalable Zonal Architecture. This transition is driven by the increasing complexity of modern vehicles, which demand higher computing power, seamless connectivity, and enhanced safety features. In this blog, we explore the concept of zonal architecture, its advantages, and how companies like Accurate Technologies Inc. (ATI) support this evolution with cutting-edge automotive electronics solutions.</span></p></div>
</div><div data-element-id="elm_Jy7b44J7upKpnVetCjqAUA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span style="color:inherit;">What is Zonal Architecture?</span></h2></div>
<div data-element-id="elm_ABoUohw2S6tmRz3Wss30aA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><div style="color:inherit;"><div>Traditional vehicle electronics rely on a complex domain architecture, where individual ECUs manage specific functions such as powertrain, infotainment, and <span>Advanced Driver Assistance Systems (</span>ADAS). This approach faces major challenges related to cost, weight, and complexity. This hardware-first approach is largely outdated as modern engineers now begin by designing software and then considers the hardware needed to support it, which has given birth to software-designed vehicles (SDVs).&nbsp;</div><br/><div>Zonal Architecture restructures the vehicle’s electronic layout by grouping functions based on physical location rather than function-specific ECUs. In this model, high-speed communication networks, such as Ethernet, connect different zones to a central computing hub. Each zone handles localized sensors, actuators, and smaller controllers, reducing the number of ECUs and optimizing resource utilization.</div></div></div>
</div><div data-element-id="elm_TabFb1go-PC3tDcHp4xK1A" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_TabFb1go-PC3tDcHp4xK1A"] .zpimage-container figure img { width: 814.75px !important ; height: 465px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/files/schematic%20of%20a%20vehicle%20realistic_%2026-02-2025%20at%2014-06-57.jpeg" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_r_SgLQ40IaJB0psq5pY0wQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span style="color:inherit;">Advantages of Zonal Architecture</span></h2></div>
<div data-element-id="elm_Jvwsv6GHNz-q8i9zDB4kRg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><div style="color:inherit;"><div><ol><li><span style="font-weight:bold;">Reduced Complexity and Cost:</span> By consolidating functions into zonal controllers, manufacturers can reduce wiring harness weight and costs, leading to improved efficiency.</li><li><span style="font-weight:bold;">Scalability:</span> Zonal Architecture simplifies software updates and hardware upgrades, enabling future proofing, such as over-the-air (OTA) remote updates, and easier integration of new features.</li><li><span style="font-weight:bold;">Enhanced Performance and Security:</span> Centralized computing improves data processing speed and enhances cybersecurity through a more unified approach to software management.</li><li><span style="font-weight:bold;">Greater Flexibility:</span> Vehicle manufacturers can standardize hardware across models, streamlining development and production processes.</li></ol></div></div></div>
</div><div data-element-id="elm_i3e6go8xzxitGnlLu04t_g" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span style="color:inherit;">ATI’s Role in Advancing Automotive Electronics</span></h2></div>
<div data-element-id="elm_L9_o7PNSXxeA8oQV0Slw2g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><div style="color:inherit;"><div>Accurate Technologies Inc. (ATI) is a key player in the automotive electronics sector, providing state-of-the-art tools and solutions to support the shift towards Zonal Architecture. ATI’s portfolio includes:</div><div><ul><ul><li><span style="font-weight:bold;">ECU Development and Calibration Tools: </span>ATI offers advanced ECU calibration and measurement solutions, ensuring seamless communication between zonal controllers and central computing units.</li><li><span style="font-weight:bold;">Data Acquisition Systems:</span> High-speed data logging and analysis tools enable engineers to optimize vehicle performance in real-time.</li><li><span style="font-weight:bold;">Network Communication Solutions: </span>ATI supports Ethernet-based communication protocols, facilitating efficient data transfer in Zonal Architectures.</li></ul></ul><p>By leveraging ATI’s innovative solutions, automakers and Tier 1 suppliers can accelerate the transition to Zonal Architecture, enhancing vehicle performance, safety, and overall user experience.</p></div></div></div>
</div><div data-element-id="elm_PwOG90SjxpXj8pzffvPktA" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_PwOG90SjxpXj8pzffvPktA"] .zpimage-container figure img { width: 1110px ; height: 739.54px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/files/All%20Products.jpg" size="fit" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_e8dCRARD4Y0hn4Mw1eWquw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span style="color:inherit;">The Future of Automotive Electronics</span></h2></div>
<div data-element-id="elm_f3utG7lXe_LUJTZ1zpKj_A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><div style="color:inherit;"><div>As the automotive landscape continues to evolve, zonal architecture will play a pivotal role in enabling next-generation vehicles. This shift paves the way for software-defined vehicles, enhanced automation, and improved energy efficiency. Companies like ATI are at the forefront of this transformation, providing the necessary tools and expertise to shape the future of mobility.</div><br/><div>Stay tuned as we witness the automotive industry embrace the full potential of Zonal Architecture, unlocking new possibilities in vehicle design and functionality.</div></div></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Mon, 24 Feb 2025 11:20:49 -0500</pubDate></item><item><title><![CDATA[Bridging Multiple Electronic Control Modules and Buses in Automotive Systems]]></title><link>https://www.accuratetechnologies.com/blog/post/bridging-multiple-electronic-control-modules-and-buses</link><description><![CDATA[When designing modern automotive systems, the challenge of bridging multiple electronic control modules that operate over different communication buses is critical.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_CvheP4vKTiuigLW67jRpTg" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_-d1a0flES_6bCB723zoX2Q" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_GxDYhEtGQtyBJXiF62bSlQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_KMl-XcisS7Wz7UONJc6ZeA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-align-center " data-editor="true"><div style="color:inherit;"><div><span style="font-weight:bold;">ATI’s VCG-1 Gateway Solution&nbsp;</span></div></div></h2></div>
<div data-element-id="elm_6jmdwOdLTxK9vShYwkxZ1A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center " data-editor="true"><p style="text-align:left;"><span style="color:inherit;">When designing modern automotive systems, the challenge of bridging multiple electronic control modules that operate over different communication buses is critical. These systems use a variety of communication protocols, such as CAN, CAN-FD, LIN, and Ethernet, each with its own physical layer, speed, and data-handling capabilities. In this context, Accurate Technologies Inc. (ATI) provides a technical solution with the VCG-1 Vehicle Communication Gateway, which acts as a powerful protocol bridge for synchronizing data traffic across these disparate networks.&nbsp;</span><br/></p></div>
</div><div data-element-id="elm_-wk8meGifqVAnQwO6Vq-9w" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-weight:bold;">Overview of the VCG-1 Gateway&nbsp;</span></h2></div>
<div data-element-id="elm_2hXL9V3-wHYMVP3w8Pic4Q" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left " data-editor="true"><div style="color:inherit;"><div>The VCG-1 is engineered to support 6 CAN-FD channels, 2 LIN channels, and 1 100Base-T1 Automotive Ethernet channel. This configuration allows the gateway to interface with different subsystems within a vehicle, which may communicate using older CAN 2.0B, faster CAN-FD, or the newer Automotive Ethernet. The VCG-1’s strength lies in its ability to act as a bridge between these interfaces, performing message translation and routing while maintaining message integrity and ensuring optimal performance between systems that use different communication speeds and protocols.&nbsp;</div><br/><div>For instance, CAN-FD supports higher bit rates (up to 8 Mbps), allowing for larger data payloads compared to the traditional CAN 2.0B, which is limited to 1 Mbps. The VCG-1 enables seamless message transfer between these two CAN variants by handling differences in bit timing and message structure. Similarly, it converts CAN messages for transmission over LIN, a protocol typically used for lower-speed communications, such as in vehicle body electronics (e.g., window controllers, seat heaters). This capability is crucial when integrating legacy systems with more modern architectures.&nbsp;</div></div></div>
</div><div data-element-id="elm_GypsNk9b3E4bGzgixbXiQw" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_GypsNk9b3E4bGzgixbXiQw"] .zpimage-container figure img { width: 1080px ; height: 720.23px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/files/ATI%20Photoshoot%2000194.jpg" size="fit" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_b56gF7HDivIDCkFl8J4NYQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-weight:bold;">Hardware and Protocol Bridging&nbsp;</span></h2></div>
<div data-element-id="elm_rGec9UPHV8m1CHXvPzVqXg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left " data-editor="true"><div style="color:inherit;"><div>The hardware design of the VCG-1 is robust, featuring galvanic isolation on all CAN channels. This prevents ground loops and electrical interference, which can be particularly problematic in automotive environments, ensuring the integrity of communication between different modules. The VCG-1 also has physical termination switches for each CAN channel, allowing for correct bus termination, a critical requirement in high-speed communication systems where reflection and impedance mismatches can corrupt data.&nbsp;</div><div><br/></div><div>Additionally, the Automotive Ethernet channel offers high-speed data transfer, which is increasingly important for modern vehicles that integrate systems like advanced driver assistance systems (ADAS) or multimedia services. Ethernet in this context provides more bandwidth than CAN or LIN, making it suitable for high-data-rate applications.</div></div></div>
</div><div data-element-id="elm_tKwrT5Gm-yp8U-NXVsJwmw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-weight:bold;">Configuration and Flexibility&nbsp;</span></h2></div>
<div data-element-id="elm_8NNAeOCxlraFQjepAI9UfQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left " data-editor="true"><div style="color:inherit;"><div>The VCG-1 uses a flexible, scriptable interface for data routing and translation, relying on ECMAScript for custom processing of messages between networks. This scriptable flexibility enables engineers to design precise data-handling rules, ensuring that only relevant messages are forwarded or modified as needed. For example, engineers can configure the VCG-1 to selectively forward diagnostic data from a CAN-FD network to an external diagnostic tool connected via Ethernet.&nbsp;</div><div><br/></div><div>The device is also designed for ease of configuration. It supports PC-based configuration via a USB connection and a built-in web interface. The VCG-1’s user-friendly FAT32 file system on an internal SD card allows configurations to be transferred easily between devices, and real-time scripting can be performed through a web browser without requiring additional PC software&nbsp;</div></div></div>
</div><div data-element-id="elm_1vR3IvLud95scIld8F70DA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-weight:bold;">Integration into Broader ATI Ecosystem&nbsp;</span></h2></div>
<div data-element-id="elm_vv2t7KheupBDBR_J34XY5A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left " data-editor="true"><p><span style="color:inherit;">ATI provides an ecosystem of tools to complement the VCG-1, such as CANLab, a software suite designed for network analysis of CAN and LIN systems. CANLab can decode messages, view bus traffic, log data, and perform post-analysis, ensuring that communication networks are functioning properly throughout the development and validation phases. Coupled with the CANary interfaces, which simplify CAN network interfacing, the VCG-1 integrates smoothly into this broader ecosystem, making it a versatile tool for engineers working on multi-protocol vehicle systems​&nbsp;</span><br/></p></div>
</div><div data-element-id="elm_OyoYhMR5gLRbX89M9RLmbw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-weight:bold;">Conclusion&nbsp;</span></h2></div>
<div data-element-id="elm_CgfZeiJB84hfHyLgrAFDPQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left " data-editor="true"><p><span style="color:inherit;">ATI’s VCG-1 provides a versatile and robust solution for bridging multiple communication protocols in vehicles, ensuring data can flow seamlessly between different systems that use CAN, CAN-FD, LIN, or Ethernet. Its configurable, script-driven approach allows for precise message handling, and its rugged hardware ensures it can operate reliably in harsh automotive environments. This makes it a crucial tool in modern automotive development, where integrating and managing communication across diverse systems is essential.&nbsp;</span><br/></p></div>
</div><div data-element-id="elm_0WU56de9Swquan8mlvdqMA" data-element-type="button" class="zpelement zpelem-button "><style></style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="/Products/vehicle-communication-gateway" target="_blank"><span class="zpbutton-content">Learn More</span></a></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Thu, 10 Oct 2024 14:27:41 -0400</pubDate></item></channel></rss>