CINXE.COM

CAN bus - Wikipedia

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>CAN bus - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"33ae4806-5c53-4a1f-9a3e-367896d3e808","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"CAN_bus","wgTitle":"CAN bus","wgCurRevisionId":1258456129,"wgRevisionId":1258456129,"wgArticleId":231284,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Webarchive template wayback links","Articles with short description","Short description is different from Wikidata","Wikipedia introduction cleanup from November 2020","All pages needing cleanup","Articles covered by WikiProject Wikify from November 2020","All articles covered by WikiProject Wikify","Wikipedia external links cleanup from January 2024","Wikipedia articles that are too technical from January 2024","All articles that are too technical","Articles with multiple maintenance issues", "Use American English from May 2023","All Wikipedia articles written in American English","Articles containing potentially dated statements from 2018","All articles containing potentially dated statements","Articles needing cleanup from August 2018","Cleanup tagged articles with a reason field from August 2018","Wikipedia pages needing cleanup from August 2018","Pages displaying short descriptions of redirect targets via Module:Annotated link","CAN bus","Serial buses","Industrial computing","Industrial automation","Bosch (company)","Computer networks engineering"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"CAN_bus","wgRelevantArticleId":231284,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true, "wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":70000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q728183","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready", "ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.math.styles":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.makeCollapsible.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","mediawiki.page.media","site","mediawiki.page.ready","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface", "ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=ext.cite.styles%7Cext.math.styles%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediaBadges%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/w/load.php?lang=en&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/d/d1/CAN_Logo.svg/1200px-CAN_Logo.svg.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="859"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/d/d1/CAN_Logo.svg/800px-CAN_Logo.svg.png"> <meta property="og:image:width" content="800"> <meta property="og:image:height" content="573"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/d/d1/CAN_Logo.svg/640px-CAN_Logo.svg.png"> <meta property="og:image:width" content="640"> <meta property="og:image:height" content="458"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="CAN bus - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/CAN_bus"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=CAN_bus&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/CAN_bus"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&amp;feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-CAN_bus rootpage-CAN_bus skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page&#039;s font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_en.wikipedia.org&amp;uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&amp;returnto=CAN+bus" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&amp;returnto=CAN+bus" title="You&#039;re encouraged to log in; however, it&#039;s not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_en.wikipedia.org&amp;uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&amp;returnto=CAN+bus" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&amp;returnto=CAN+bus" title="You&#039;re encouraged to log in; however, it&#039;s not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-History" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#History"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>History</span> </div> </a> <ul id="toc-History-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Applications" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Applications"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Applications</span> </div> </a> <button aria-controls="toc-Applications-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Applications subsection</span> </button> <ul id="toc-Applications-sublist" class="vector-toc-list"> <li id="toc-Automotive" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Automotive"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Automotive</span> </div> </a> <ul id="toc-Automotive-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Other" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Other"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Other</span> </div> </a> <ul id="toc-Other-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Versions" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Versions"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Versions</span> </div> </a> <button aria-controls="toc-Versions-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Versions subsection</span> </button> <ul id="toc-Versions-sublist" class="vector-toc-list"> <li id="toc-CAN_2.0_(Classical_CAN)" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#CAN_2.0_(Classical_CAN)"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.1</span> <span>CAN 2.0 (Classical CAN)</span> </div> </a> <ul id="toc-CAN_2.0_(Classical_CAN)-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-CAN_FD" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#CAN_FD"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.2</span> <span>CAN FD</span> </div> </a> <ul id="toc-CAN_FD-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-CAN_XL" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#CAN_XL"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.3</span> <span>CAN XL</span> </div> </a> <ul id="toc-CAN_XL-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Architecture" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Architecture"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Architecture</span> </div> </a> <button aria-controls="toc-Architecture-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Architecture subsection</span> </button> <ul id="toc-Architecture-sublist" class="vector-toc-list"> <li id="toc-Physical_organization" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Physical_organization"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.1</span> <span>Physical organization</span> </div> </a> <ul id="toc-Physical_organization-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Electrical_properties" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Electrical_properties"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.2</span> <span>Electrical properties</span> </div> </a> <ul id="toc-Electrical_properties-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Nodes" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Nodes"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.3</span> <span>Nodes</span> </div> </a> <ul id="toc-Nodes-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Data_transmission" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Data_transmission"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Data transmission</span> </div> </a> <ul id="toc-Data_transmission-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-ID_allocation" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#ID_allocation"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>ID allocation</span> </div> </a> <ul id="toc-ID_allocation-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Bit_timing" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Bit_timing"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Bit timing</span> </div> </a> <ul id="toc-Bit_timing-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Layers" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Layers"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>Layers</span> </div> </a> <ul id="toc-Layers-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Frames" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Frames"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>Frames</span> </div> </a> <button aria-controls="toc-Frames-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Frames subsection</span> </button> <ul id="toc-Frames-sublist" class="vector-toc-list"> <li id="toc-Data_frame" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Data_frame"> <div class="vector-toc-text"> <span class="vector-toc-numb">9.1</span> <span>Data frame</span> </div> </a> <ul id="toc-Data_frame-sublist" class="vector-toc-list"> <li id="toc-Base_frame_format" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Base_frame_format"> <div class="vector-toc-text"> <span class="vector-toc-numb">9.1.1</span> <span>Base frame format</span> </div> </a> <ul id="toc-Base_frame_format-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Extended_frame_format" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Extended_frame_format"> <div class="vector-toc-text"> <span class="vector-toc-numb">9.1.2</span> <span>Extended frame format</span> </div> </a> <ul id="toc-Extended_frame_format-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Remote_frame" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Remote_frame"> <div class="vector-toc-text"> <span class="vector-toc-numb">9.2</span> <span>Remote frame</span> </div> </a> <ul id="toc-Remote_frame-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Error_frame" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Error_frame"> <div class="vector-toc-text"> <span class="vector-toc-numb">9.3</span> <span>Error frame</span> </div> </a> <ul id="toc-Error_frame-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Overload_frame" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Overload_frame"> <div class="vector-toc-text"> <span class="vector-toc-numb">9.4</span> <span>Overload frame</span> </div> </a> <ul id="toc-Overload_frame-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-ACK_slot" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#ACK_slot"> <div class="vector-toc-text"> <span class="vector-toc-numb">10</span> <span>ACK slot</span> </div> </a> <ul id="toc-ACK_slot-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Interframe_spacing" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Interframe_spacing"> <div class="vector-toc-text"> <span class="vector-toc-numb">11</span> <span>Interframe spacing</span> </div> </a> <ul id="toc-Interframe_spacing-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Bit_stuffing" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Bit_stuffing"> <div class="vector-toc-text"> <span class="vector-toc-numb">12</span> <span>Bit stuffing</span> </div> </a> <ul id="toc-Bit_stuffing-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-CAN_lower-layer_standards" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#CAN_lower-layer_standards"> <div class="vector-toc-text"> <span class="vector-toc-numb">13</span> <span>CAN lower-layer standards</span> </div> </a> <ul id="toc-CAN_lower-layer_standards-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-DBC" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#DBC"> <div class="vector-toc-text"> <span class="vector-toc-numb">14</span> <span>DBC</span> </div> </a> <ul id="toc-DBC-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-CAN-based_higher-layer_protocols" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#CAN-based_higher-layer_protocols"> <div class="vector-toc-text"> <span class="vector-toc-numb">15</span> <span>CAN-based higher-layer protocols</span> </div> </a> <button aria-controls="toc-CAN-based_higher-layer_protocols-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle CAN-based higher-layer protocols subsection</span> </button> <ul id="toc-CAN-based_higher-layer_protocols-sublist" class="vector-toc-list"> <li id="toc-Standardized_approaches" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Standardized_approaches"> <div class="vector-toc-text"> <span class="vector-toc-numb">15.1</span> <span>Standardized approaches</span> </div> </a> <ul id="toc-Standardized_approaches-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Other_approaches" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Other_approaches"> <div class="vector-toc-text"> <span class="vector-toc-numb">15.2</span> <span>Other approaches</span> </div> </a> <ul id="toc-Other_approaches-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-CANopen_Lift" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#CANopen_Lift"> <div class="vector-toc-text"> <span class="vector-toc-numb">16</span> <span>CANopen Lift</span> </div> </a> <ul id="toc-CANopen_Lift-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Security" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Security"> <div class="vector-toc-text"> <span class="vector-toc-numb">17</span> <span>Security</span> </div> </a> <ul id="toc-Security-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Development_tools" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Development_tools"> <div class="vector-toc-text"> <span class="vector-toc-numb">18</span> <span>Development tools</span> </div> </a> <ul id="toc-Development_tools-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Licensing" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Licensing"> <div class="vector-toc-text"> <span class="vector-toc-numb">19</span> <span>Licensing</span> </div> </a> <ul id="toc-Licensing-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-See_also" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#See_also"> <div class="vector-toc-text"> <span class="vector-toc-numb">20</span> <span>See also</span> </div> </a> <ul id="toc-See_also-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">21</span> <span>References</span> </div> </a> <ul id="toc-References-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-External_links" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#External_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">22</span> <span>External links</span> </div> </a> <ul id="toc-External_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">CAN bus</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Go to an article in another language. Available in 29 languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-29" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">29 languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%85%D9%88%D8%B5%D9%84_%D9%83%D8%A7%D9%86" title="موصل كان – Arabic" lang="ar" hreflang="ar" data-title="موصل كان" data-language-autonym="العربية" data-language-local-name="Arabic" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Controller_area_network" title="Controller area network – Catalan" lang="ca" hreflang="ca" data-title="Controller area network" data-language-autonym="Català" data-language-local-name="Catalan" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/CAN_bus" title="CAN bus – Czech" lang="cs" hreflang="cs" data-title="CAN bus" data-language-autonym="Čeština" data-language-local-name="Czech" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – German" lang="de" hreflang="de" data-title="Controller Area Network" data-language-autonym="Deutsch" data-language-local-name="German" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-et mw-list-item"><a href="https://et.wikipedia.org/wiki/CAN-v%C3%B5rk" title="CAN-võrk – Estonian" lang="et" hreflang="et" data-title="CAN-võrk" data-language-autonym="Eesti" data-language-local-name="Estonian" class="interlanguage-link-target"><span>Eesti</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Bus_CAN" title="Bus CAN – Spanish" lang="es" hreflang="es" data-title="Bus CAN" data-language-autonym="Español" data-language-local-name="Spanish" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-eu mw-list-item"><a href="https://eu.wikipedia.org/wiki/CAN_komunikazio-protokolo" title="CAN komunikazio-protokolo – Basque" lang="eu" hreflang="eu" data-title="CAN komunikazio-protokolo" data-language-autonym="Euskara" data-language-local-name="Basque" class="interlanguage-link-target"><span>Euskara</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%DA%A9%D9%86_%D8%A8%D8%A7%D8%B3" title="کن باس – Persian" lang="fa" hreflang="fa" data-title="کن باس" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Bus_de_donn%C3%A9es_CAN" title="Bus de données CAN – French" lang="fr" hreflang="fr" data-title="Bus de données CAN" data-language-autonym="Français" data-language-local-name="French" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/CAN_%EB%B2%84%EC%8A%A4" title="CAN 버스 – Korean" lang="ko" hreflang="ko" data-title="CAN 버스" data-language-autonym="한국어" data-language-local-name="Korean" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Italian" lang="it" hreflang="it" data-title="Controller Area Network" data-language-autonym="Italiano" data-language-local-name="Italian" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/CAN-bus" title="CAN-bus – Hebrew" lang="he" hreflang="he" data-title="CAN-bus" data-language-autonym="עברית" data-language-local-name="Hebrew" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-lv mw-list-item"><a href="https://lv.wikipedia.org/wiki/CAN_(kopne)" title="CAN (kopne) – Latvian" lang="lv" hreflang="lv" data-title="CAN (kopne)" data-language-autonym="Latviešu" data-language-local-name="Latvian" class="interlanguage-link-target"><span>Latviešu</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/CAN-busz" title="CAN-busz – Hungarian" lang="hu" hreflang="hu" data-title="CAN-busz" data-language-autonym="Magyar" data-language-local-name="Hungarian" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-my mw-list-item"><a href="https://my.wikipedia.org/wiki/%E1%80%80%E1%80%84%E1%80%BA%E1%80%94%E1%80%BA%E1%80%98%E1%80%90%E1%80%BA%E1%80%85%E1%80%BA" title="ကင်န်ဘတ်စ် – Burmese" lang="my" hreflang="my" data-title="ကင်န်ဘတ်စ်" data-language-autonym="မြန်မာဘာသာ" data-language-local-name="Burmese" class="interlanguage-link-target"><span>မြန်မာဘာသာ</span></a></li><li class="interlanguage-link interwiki-nl mw-list-item"><a href="https://nl.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Dutch" lang="nl" hreflang="nl" data-title="Controller Area Network" data-language-autonym="Nederlands" data-language-local-name="Dutch" class="interlanguage-link-target"><span>Nederlands</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Japanese" lang="ja" hreflang="ja" data-title="Controller Area Network" data-language-autonym="日本語" data-language-local-name="Japanese" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Norwegian Bokmål" lang="nb" hreflang="nb" data-title="Controller Area Network" data-language-autonym="Norsk bokmål" data-language-local-name="Norwegian Bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Polish" lang="pl" hreflang="pl" data-title="Controller Area Network" data-language-autonym="Polski" data-language-local-name="Polish" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Portuguese" lang="pt" hreflang="pt" data-title="Controller Area Network" data-language-autonym="Português" data-language-local-name="Portuguese" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Romanian" lang="ro" hreflang="ro" data-title="Controller Area Network" data-language-autonym="Română" data-language-local-name="Romanian" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Russian" lang="ru" hreflang="ru" data-title="Controller Area Network" data-language-autonym="Русский" data-language-local-name="Russian" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-sl mw-list-item"><a href="https://sl.wikipedia.org/wiki/Vodilo_CAN" title="Vodilo CAN – Slovenian" lang="sl" hreflang="sl" data-title="Vodilo CAN" data-language-autonym="Slovenščina" data-language-local-name="Slovenian" class="interlanguage-link-target"><span>Slovenščina</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/CAN-v%C3%A4yl%C3%A4" title="CAN-väylä – Finnish" lang="fi" hreflang="fi" data-title="CAN-väylä" data-language-autonym="Suomi" data-language-local-name="Finnish" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Swedish" lang="sv" hreflang="sv" data-title="Controller Area Network" data-language-autonym="Svenska" data-language-local-name="Swedish" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/Denetleyici_Alan_A%C4%9F%C4%B1" title="Denetleyici Alan Ağı – Turkish" lang="tr" hreflang="tr" data-title="Denetleyici Alan Ağı" data-language-autonym="Türkçe" data-language-local-name="Turkish" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/Controller_Area_Network" title="Controller Area Network – Ukrainian" lang="uk" hreflang="uk" data-title="Controller Area Network" data-language-autonym="Українська" data-language-local-name="Ukrainian" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/CAN_bus" title="CAN bus – Vietnamese" lang="vi" hreflang="vi" data-title="CAN bus" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnamese" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E6%8E%A7%E5%88%B6%E5%99%A8%E5%8D%80%E5%9F%9F%E7%B6%B2%E8%B7%AF" title="控制器區域網路 – Chinese" lang="zh" hreflang="zh" data-title="控制器區域網路" data-language-autonym="中文" data-language-local-name="Chinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q728183#sitelinks-wikipedia" title="Edit interlanguage links" class="wbc-editpage">Edit links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/CAN_bus" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:CAN_bus" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/CAN_bus"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/CAN_bus"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/CAN_bus" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/CAN_bus" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;oldid=1258456129" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&amp;page=CAN_bus&amp;id=1258456129&amp;wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&amp;url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FCAN_bus"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&amp;url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FCAN_bus"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&amp;page=CAN_bus&amp;action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=CAN_bus&amp;printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:CAN_bus" hreflang="en"><span>Wikimedia Commons</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q728183" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none">Standard for serial communication between devices without host computer</div> <style data-mw-deduplicate="TemplateStyles:r1251242444">.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}</style><style data-mw-deduplicate="TemplateStyles:r1248332772">.mw-parser-output .multiple-issues-text{width:95%;margin:0.2em 0}.mw-parser-output .multiple-issues-text>.mw-collapsible-content{margin-top:0.3em}.mw-parser-output .compact-ambox .ambox{border:none;border-collapse:collapse;background-color:transparent;margin:0 0 0 1.6em!important;padding:0!important;width:auto;display:block}body.mediawiki .mw-parser-output .compact-ambox .ambox.mbox-small-left{font-size:100%;width:auto;margin:0}.mw-parser-output .compact-ambox .ambox .mbox-text{padding:0!important;margin:0!important}.mw-parser-output .compact-ambox .ambox .mbox-text-span{display:list-item;line-height:1.5em;list-style-type:disc}body.skin-minerva .mw-parser-output .multiple-issues-text>.mw-collapsible-toggle,.mw-parser-output .compact-ambox .ambox .mbox-image,.mw-parser-output .compact-ambox .ambox .mbox-imageright,.mw-parser-output .compact-ambox .ambox .mbox-empty-cell,.mw-parser-output .compact-ambox .hide-when-compact{display:none}</style><table class="box-Multiple_issues plainlinks metadata ambox ambox-content ambox-multiple_issues compact-ambox" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/40px-Ambox_important.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/60px-Ambox_important.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/80px-Ambox_important.svg.png 2x" data-file-width="40" data-file-height="40" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span"><div class="multiple-issues-text mw-collapsible"><b>This article has multiple issues.</b> Please help <b><a href="/wiki/Special:EditPage/CAN_bus" title="Special:EditPage/CAN bus">improve it</a></b> or discuss these issues on the <b><a href="/wiki/Talk:CAN_bus" title="Talk:CAN bus">talk page</a></b>. <small><i>(<a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove these messages</a>)</i></small> <div class="mw-collapsible-content"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Lead_too_short plainlinks metadata ambox ambox-content ambox-lead_too_short" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><a href="/wiki/File:Wiki_letter_w.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/en/thumb/6/6c/Wiki_letter_w.svg/40px-Wiki_letter_w.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/6/6c/Wiki_letter_w.svg/60px-Wiki_letter_w.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/6/6c/Wiki_letter_w.svg/80px-Wiki_letter_w.svg.png 2x" data-file-width="44" data-file-height="44" /></a></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article's <a href="/wiki/Wikipedia:Manual_of_Style/Lead_section#Length" title="Wikipedia:Manual of Style/Lead section">lead section</a> <b>may be too short to adequately <a href="/wiki/Wikipedia:Summary_style" title="Wikipedia:Summary style">summarize</a> the key points</b>.<span class="hide-when-compact"> Please consider expanding the lead to <a href="/wiki/Wikipedia:Manual_of_Style/Lead_section#Provide_an_accessible_overview" title="Wikipedia:Manual of Style/Lead section">provide an accessible overview</a> of all important aspects of the article.</span> <span class="date-container"><i>(<span class="date">November 2020</span>)</i></span></div></td></tr></tbody></table> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-External_links plainlinks metadata ambox ambox-style ambox-external_links" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/40px-Edit-clear.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/60px-Edit-clear.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/80px-Edit-clear.svg.png 2x" data-file-width="48" data-file-height="48" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article's <b>use of <a href="/wiki/Wikipedia:External_links" title="Wikipedia:External links">external links</a> may not follow Wikipedia's policies or guidelines</b>.<span class="hide-when-compact"> Please <a class="external text" href="https://en.wikipedia.org/w/index.php?title=CAN_bus&amp;action=edit">improve this article</a> by removing <a href="/wiki/Wikipedia:What_Wikipedia_is_not#Wikipedia_is_not_a_mirror_or_a_repository_of_links,_images,_or_media_files" title="Wikipedia:What Wikipedia is not">excessive</a> or <a href="/wiki/Wikipedia:External_links" title="Wikipedia:External links">inappropriate</a> external links, and converting useful links where appropriate into <a href="/wiki/Wikipedia:Citing_sources" title="Wikipedia:Citing sources">footnote references</a>.</span> <span class="date-container"><i>(<span class="date">January 2024</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Technical plainlinks metadata ambox ambox-style ambox-technical" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/40px-Edit-clear.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/60px-Edit-clear.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/80px-Edit-clear.svg.png 2x" data-file-width="48" data-file-height="48" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article <b>may be too technical for most readers to understand</b>.<span class="hide-when-compact"> Please <a class="external text" href="https://en.wikipedia.org/w/index.php?title=CAN_bus&amp;action=edit">help improve it</a> to <a href="/wiki/Wikipedia:Make_technical_articles_understandable" title="Wikipedia:Make technical articles understandable">make it understandable to non-experts</a>, without removing the technical details.</span> <span class="date-container"><i>(<span class="date">January 2024</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> </div> </div><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <p class="mw-empty-elt"> </p> <style data-mw-deduplicate="TemplateStyles:r1257001546">.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme) div:not(.notheme){background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table tr{display:table-row!important}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}</style><table class="infobox infobox-table"><caption class="infobox-title">Controller Area Network</caption><tbody><tr><td colspan="4" class="infobox-image"> <span class="mw-default-size" typeof="mw:File/Frameless"><a href="/wiki/File:CAN_Logo.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d1/CAN_Logo.svg/220px-CAN_Logo.svg.png" decoding="async" width="220" height="157" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/d/d1/CAN_Logo.svg/330px-CAN_Logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/d/d1/CAN_Logo.svg/440px-CAN_Logo.svg.png 2x" data-file-width="373" data-file-height="267" /></a></span><div class="infobox-caption">Unofficial logo of the CAN bus by CAN-in-Automation.</div></td></tr><tr><th scope="row" class="infobox-label">Type</th><td colspan="3" class="infobox-data"> <a href="/wiki/Serial_communication" title="Serial communication">Serial communication</a> <a href="/wiki/Bus_(computing)" title="Bus (computing)">bus</a></td></tr><tr><th colspan="4" class="infobox-header" style="background:#ccccff">Production history</th></tr><tr><th scope="row" class="infobox-label">Designer</th><td colspan="3" class="infobox-data"> <a href="/wiki/Bosch_GmbH" class="mw-redirect" title="Bosch GmbH">Bosch GmbH</a></td></tr><tr><th scope="row" class="infobox-label">Designed</th><td colspan="3" class="infobox-data"> 1983<span class="noprint">&#59;&#32;41&#160;years ago</span><span style="display:none">&#160;(<span class="bday dtstart published updated">1983</span>)</span></td></tr><tr><th scope="row" class="infobox-label">External</th><td colspan="3" class="infobox-data"> No</td></tr><tr><th colspan="4" class="infobox-header" style="background:#ccccff">Electrical</th></tr><tr><th scope="row" class="infobox-label">Signal</th><td colspan="3" class="infobox-data"> Differential</td></tr><tr><th scope="row" class="infobox-label">Max. voltage</th><td colspan="3" class="infobox-data"> 16V DC</td></tr><tr><th colspan="4" class="infobox-header" style="background:#ccccff">Data</th></tr><tr><th scope="row" class="infobox-label">Data signal</th><td colspan="3" class="infobox-data"> Transceiver driven</td></tr><tr><th scope="row" class="infobox-label">Width</th><td colspan="3" class="infobox-data"> 1 bit (bidirectional)</td></tr><tr><th scope="row" class="infobox-label">Bitrate</th><td colspan="3" class="infobox-data"> 0.05, 0.125, 0.250, 0.500, 0.800 or 1.0<span class="nowrap">&#160;</span><a href="/wiki/Megabit" class="mw-redirect" title="Megabit">Mbit/s</a>, up to 5.0<span class="nowrap">&#160;</span>Mbit/s for <a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a></td></tr><tr><th scope="row" class="infobox-label">Max. devices</th><td colspan="3" class="infobox-data"> 32, 64 or 127 (depending on standard)</td></tr><tr><th scope="row" class="infobox-label">Protocol</th><td colspan="3" class="infobox-data"> <a href="/wiki/Serial_communication" title="Serial communication">Serial</a>, <a href="/wiki/Half-duplex" class="mw-redirect" title="Half-duplex">half-duplex</a>, Asynchronous</td></tr><tr><th colspan="4" class="infobox-header" style="background:#ccccff">Pinout</th></tr><tr><th scope="row" class="infobox-label">CAN-H</th><td class="infobox-data infobox-data-a"> CAN High (Yellow)</td></tr><tr><th scope="row" class="infobox-label">CAN-L</th><td class="infobox-data infobox-data-a"> CAN Low (Green)</td></tr></tbody></table> <p>A <b>controller area network</b> (<b>CAN</b>) is a <a href="/wiki/Vehicle_bus" title="Vehicle bus">vehicle bus</a> standard designed to enable efficient communication primarily between electronic control units (ECUs). Originally developed to reduce the complexity and cost of electrical wiring in automobiles through <a href="/wiki/Multiplexing" title="Multiplexing">multiplexing</a>, the CAN bus protocol has since been adopted in various other contexts. This <a href="/wiki/Broadcasting_(networking)" title="Broadcasting (networking)">broadcast-based</a>, <a href="/wiki/Message_passing" title="Message passing">message-oriented</a> protocol ensures data integrity and prioritization through a process called <a href="/wiki/Arbiter_(electronics)" title="Arbiter (electronics)">arbitration</a>, allowing the highest priority device to continue transmitting if multiple devices attempt to send data simultaneously, while others back off. Its reliability is enhanced by <a href="/wiki/Differential_signalling" title="Differential signalling">differential signaling</a>, which mitigates electrical noise. Common versions of the CAN protocol include CAN 2.0, <a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a>, and CAN XL which vary in their data rate capabilities and maximum data payload sizes. </p> <ul><li><b>CAN Bus Overview:</b> The Controller Area Network (CAN) is a vehicle bus standard designed for efficient communication between electronic control units (ECUs) in vehicles, reducing wiring complexity and cost.</li> <li><b>Development and Adoption:</b> Developed by Bosch in the 1980s, CAN was first used in the 1991 Mercedes-Benz W140. It has since become a standard in automotive and other industries.</li> <li><b>Versions and Standards:</b> Versions include CAN 2.0, CAN FD, and CAN XL, each offering different data rates and payload sizes. ISO standards like ISO 11898 define the physical and data link layers.</li> <li><b>Applications:</b> CAN is used in various vehicle subsystems, including engine control, autonomous driving, and diagnostics. It supports real-time communication and prioritization through arbitration.</li></ul> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="History">History</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=1" title="Edit section: History"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Development of the CAN <a href="/wiki/Bus_(computing)" title="Bus (computing)">bus</a> started in 1983 at <a href="/wiki/Robert_Bosch_GmbH" class="mw-redirect" title="Robert Bosch GmbH">Robert Bosch GmbH</a>.<sup id="cite_ref-can-cia_1-0" class="reference"><a href="#cite_note-can-cia-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup> The protocol was officially released in 1986 at the <a href="/wiki/Society_of_Automotive_Engineers" class="mw-redirect" title="Society of Automotive Engineers">Society of Automotive Engineers</a> (SAE) conference in <a href="/wiki/Detroit,_Michigan" class="mw-redirect" title="Detroit, Michigan">Detroit</a>, <a href="/wiki/Michigan" title="Michigan">Michigan</a>. The first CAN controller chips were introduced by <a href="/wiki/Intel" title="Intel">Intel</a> in 1987, and shortly thereafter by <a href="/wiki/Philips" title="Philips">Philips</a>.<sup id="cite_ref-can-cia_1-1" class="reference"><a href="#cite_note-can-cia-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup> Released in 1991, the <a href="/wiki/Mercedes-Benz_W140" title="Mercedes-Benz W140">Mercedes-Benz W140</a> was the first production vehicle to feature a CAN-based multiplex wiring system.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:0_3-0" class="reference"><a href="#cite_note-:0-3"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup> </p><p>Bosch published several versions of the CAN specification. The latest is CAN 2.0, published in 1991. This specification has two parts. Part A is for the standard format with an 11-bit identifier, and part B is for the extended format with a 29-bit identifier. A CAN device that uses 11-bit identifiers is commonly called CAN 2.0A, and a CAN device that uses 29-bit identifiers is commonly called CAN 2.0B. These standards are freely available from Bosch along with other specifications and <a href="/wiki/White_paper" title="White paper">white papers</a>.<sup id="cite_ref-:1_4-0" class="reference"><a href="#cite_note-:1-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup> </p><p>In 1993, the <a href="/wiki/International_Organization_for_Standardization" title="International Organization for Standardization">International Organization for Standardization</a> (ISO) released CAN standard ISO 11898, which was later restructured into two parts: ISO 11898-1 which covers the <a href="/wiki/Data_link_layer" title="Data link layer">data link layer</a>, and ISO 11898-2 which covers the CAN physical layer for high-speed CAN. ISO 11898-3 was released later and covers the CAN physical layer for low-speed, fault-tolerant CAN. The physical layer standards ISO 11898-2 and ISO 11898-3 are not part of the Bosch CAN 2.0 specification. </p><p>In 2012, Bosch released <a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a> 1.0, or CAN with Flexible Data-Rate. This specification uses a different frame format that allows a different data length as well as optionally switching to a faster bit rate after the arbitration is decided. CAN FD is compatible with existing CAN 2.0 networks so new CAN FD devices can coexist on the same network with existing CAN devices, using the same CAN 2.0 communication parameters. As of 2018<sup class="plainlinks noexcerpt noprint asof-tag update" style="display:none;"><a class="external text" href="https://en.wikipedia.org/w/index.php?title=CAN_bus&amp;action=edit">&#91;update&#93;</a></sup>, Bosch was active in extending CAN standards. </p><p>The CAN bus is one of five protocols used in the <a href="/wiki/On-board_diagnostics" title="On-board diagnostics">on-board diagnostics</a> (OBD)-II vehicle diagnostics standard. The OBD-II standard has been mandatory for all cars and light trucks sold in the United States since <a href="/wiki/Model_year" title="Model year">model year</a> 1996. The <a href="/wiki/On-board_diagnostics#EOBD" title="On-board diagnostics">EOBD</a> standard has been mandatory for all petrol vehicles sold in the European Union since 2001 and all diesel vehicles since 2004.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">&#91;</span>5<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Applications">Applications</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=2" title="Edit section: Applications"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Passenger vehicles, trucks, buses (combustion vehicles and electric vehicles)</li> <li>Agricultural equipment</li> <li>Electronic equipment for aviation and navigation</li> <li>Electric generators</li> <li>Industrial automation and mechanical control</li> <li>Elevators, escalators</li> <li>Building automation</li> <li>Medical instruments and equipment</li> <li><a href="/wiki/Pedelec" title="Pedelec">Pedelecs</a></li> <li><a href="/wiki/Model_railway" class="mw-redirect" title="Model railway">Model railways</a>/railroads</li> <li>Ships and other maritime applications</li> <li>Lighting control systems</li> <li>3D printers</li> <li>Robotics/Automation</li></ul> <div class="mw-heading mw-heading3"><h3 id="Automotive">Automotive</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=3" title="Edit section: Automotive"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The modern automobile may have as many as 70 <a href="/wiki/Electronic_control_unit" title="Electronic control unit">electronic control units</a> (ECUs) for various subsystems.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> Usually the biggest processor is the <a href="/wiki/Engine_control_unit" title="Engine control unit">engine control unit</a>. Others are used for autonomous driving, advanced driver assistance system (ADAS), <a href="/wiki/Transmission_(mechanics)" class="mw-redirect" title="Transmission (mechanics)">transmission</a>, <a href="/wiki/Airbag" title="Airbag">airbags</a>, <a href="/wiki/Anti-lock_braking_system" title="Anti-lock braking system">antilock braking/ABS</a>, <a href="/wiki/Cruise_control" title="Cruise control">cruise control</a>, electric <a href="/wiki/Power_steering" title="Power steering">power steering</a>, audio systems, <a href="/wiki/Power_window" title="Power window">power windows</a>, doors, mirror adjustment, battery and recharging systems for hybrid/electric cars, etc. Some of these form independent subsystems, but communication among others is essential. A subsystem may need to control actuators or receive feedback from sensors. The CAN standard was devised to fill this need. One key advantage is that interconnection between different vehicle systems can allow a wide range of safety, economy and convenience features to be implemented using software alone - functionality which would add cost and complexity if such features were <i>hard wired</i> using traditional automotive electrics. Examples include: </p> <ul><li><a href="/wiki/Start-stop_system" title="Start-stop system">Auto start/stop</a>: Various sensor inputs from around the vehicle (speed sensors, steering angle, air conditioning on/off, engine temperature) are collated via the CAN bus to determine whether the engine can be shut down when stationary for improved fuel economy and emissions.</li> <li><a href="/wiki/Electric_park_brake" class="mw-redirect" title="Electric park brake">Electric park brakes</a>: The <i><a href="/wiki/Hill-holder" title="Hill-holder">hill hold</a></i> functionality takes input from the vehicle's tilt sensor (also used by the burglar alarm) and the road speed sensors (also used by the ABS, engine control and traction control) via the CAN bus to determine if the vehicle is stopped on an incline. Similarly, inputs from seat belt sensors (part of the airbag controls) are fed from the CAN bus to determine if the seat belts are fastened, so that the parking brake will automatically release upon moving off.</li> <li><a href="/wiki/Automatic_parking" title="Automatic parking">Parking assist</a> systems: when the driver engages reverse gear, the transmission control unit can send a signal via the CAN bus to activate both the parking sensor system and the door control module for the passenger side door mirror to tilt downward to show the position of the curb. The CAN bus also takes inputs from the rain sensor to trigger the rear windscreen wiper when reversing.</li> <li>Auto <a href="/wiki/Lane_assist" class="mw-redirect" title="Lane assist">lane assist</a>/<a href="/wiki/Collision_avoidance" class="mw-redirect" title="Collision avoidance">collision avoidance</a> systems: The inputs from the parking sensors are also used by the CAN bus to feed outside proximity data to driver assist systems such as Lane Departure warning, and more recently, these signals travel through the CAN bus to actuate <a href="/wiki/Brake_by_wire" class="mw-redirect" title="Brake by wire">brake by wire</a> in active collision avoidance systems.</li> <li>Auto brake wiping: Input is taken from the rain sensor (used primarily for the automatic <a href="/wiki/Windscreen_wiper" title="Windscreen wiper">windscreen wipers</a>) via the CAN bus to the ABS module to initiate an imperceptible application of the brakes while driving to clear moisture from the brake rotors. Some high-performance <a href="/wiki/Audi" title="Audi">Audi</a> and <a href="/wiki/BMW" title="BMW">BMW</a> models incorporate this feature.</li> <li>Sensors can be placed at the most suitable place, and their data used by several ECUs. For example, outdoor temperature sensors (conventionally placed in the front) can be placed in the outside mirrors, avoiding heating by the engine, and data used by the engine, the climate control, and the driver display.</li></ul> <p>In recent years, the <a href="/wiki/Local_Interconnect_Network" title="Local Interconnect Network">LIN bus</a> (Local Interconnect Network) standard has been introduced to complement CAN for non-critical subsystems such as air-conditioning and infotainment, where data transmission speed and reliability are less critical. </p> <div class="mw-heading mw-heading3"><h3 id="Other">Other</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=4" title="Edit section: Other"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>The CAN bus protocol has been used on the <a href="/wiki/Shimano" title="Shimano">Shimano</a> DI2 electronic gear shift system for road bicycles since 2009, and is also used by the Ansmann and <a href="/wiki/BionX" title="BionX">BionX</a> systems in their direct drive motor.</li> <li>The CAN bus is also used as a <a href="/wiki/Fieldbus" title="Fieldbus">fieldbus</a> in general automation environments, primarily due to the low cost of some CAN controllers and processors.</li> <li>Manufacturers including <a href="/wiki/NISMO" class="mw-redirect" title="NISMO">NISMO</a> aim to use CAN bus data to recreate real-life racing laps in the videogame <i><a href="/wiki/Gran_Turismo_6" title="Gran Turismo 6">Gran Turismo 6</a></i> using the game's GPS Data Logger function, which would then allow players to race against real laps.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">&#91;</span>7<span class="cite-bracket">&#93;</span></a></sup></li> <li><a href="/wiki/Johns_Hopkins_University" title="Johns Hopkins University">Johns Hopkins University</a>'s <a href="/wiki/Applied_Physics_Laboratory" title="Applied Physics Laboratory">Applied Physics Laboratory</a>'s Modular Prosthetic Limb (MPL) uses a local CAN bus to facilitate communication between servos and microcontrollers in the prosthetic arm.</li> <li>Teams in the <a href="/wiki/FIRST_Robotics_Competition" title="FIRST Robotics Competition">FIRST Robotics Competition</a> widely use CAN bus to communicate between the <a href="/w/index.php?title=RoboRIO&amp;action=edit&amp;redlink=1" class="new" title="RoboRIO (page does not exist)">roboRIO</a> and other robot control modules.</li> <li>The CueScript <a href="/wiki/Teleprompter" title="Teleprompter">teleprompter</a> range uses CAN bus protocol over coaxial cable, to connect its CSSC – Desktop Scroll Control to the main unit</li> <li>The CAN bus protocol is widely implemented due to its fault tolerance in electrically noisy environments such as model railroad sensor feedback systems by major commercial <a href="/wiki/Digital_Command_Control" title="Digital Command Control">Digital Command Control</a> system manufacturers and various open-source digital model railroad control projects.</li> <li><a href="/wiki/Shearwater_Research" title="Shearwater Research">Shearwater Research</a> have implemented the protocol as DiveCAN<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">&#91;</span>8<span class="cite-bracket">&#93;</span></a></sup> to use integrating their dive computers into <a href="/wiki/Diving_rebreather" title="Diving rebreather">diving rebreathers</a> from various manufacturers.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Versions">Versions</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=5" title="Edit section: Versions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="CAN_2.0_(Classical_CAN)"><span id="CAN_2.0_.28Classical_CAN.29"></span>CAN 2.0 (Classical CAN)</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=6" title="Edit section: CAN 2.0 (Classical CAN)"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Due to its legacy, CAN 2.0 is the most widely used protocol with a maximum payload size of eight bytes and a typical baud rate of 500&#160;kbit/s. Classical CAN, which includes CAN 2.0A (Standard CAN) and CAN 2.0B (Extended CAN), primarily differs in identifier field lengths: CAN 2.0A uses an 11-bit identifier, while CAN 2.0B employs a 29-bit identifier. The longer identifier in CAN 2.0B allows for a greater number of unique message identifiers, which is beneficial in complex systems with many nodes and data types. However, this increase in unique message identifiers also increases frame length, which in turn reduces the maximum data rate. Additionally, the extended identifier provides finer control over message prioritization due to more available identifier values. This, however, may introduce compatibility issues; CAN 2.0B devices can generally communicate with CAN 2.0A devices, but not vice versa, due to potential errors in handling longer identifiers. High-speed CAN 2.0 supports bit rates from 40&#160;kbit/s to 1&#160;Mbit/s and is the basis for higher-layer protocols. In contrast, low-speed CAN 2.0 supports bit rates from 40&#160;kbit/s to 125&#160;kbit/s and offers fault tolerance by allowing communication to continue despite a fault in one of the two wires, with each node maintaining its own termination.<sup id="cite_ref-:1_4-1" class="reference"><a href="#cite_note-:1-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:2_9-0" class="reference"><a href="#cite_note-:2-9"><span class="cite-bracket">&#91;</span>9<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:3_10-0" class="reference"><a href="#cite_note-:3-10"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:6_11-0" class="reference"><a href="#cite_note-:6-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="CAN_FD"><a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a></h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=7" title="Edit section: CAN FD"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>CAN FD (Flexible Data-Rate), standardized as ISO 11898-1, was developed by <a href="/wiki/Bosch_(company)" title="Bosch (company)">Bosch</a> and released in 2012 to meet the need for increased data transfer in modern high-performance vehicles. It offers variable data rates during the transmission of a single frame, allowing the arbitration phase to occur at a lower data rate for robust communication, while the data payload is transmitted at a higher data rate to improve throughput, which is particularly useful in electrically noisy environments for better noise immunity. CAN FD also introduces a flexible data field size, increasing the maximum size from 8 bytes to 64 bytes. This flexibility allows for more efficient data transmission by reducing the number of frames needed for large data transfers, which is beneficial for applications like high-resolution sensor data or software updates. </p><p>CAN FD maintains backward compatibility with CAN 2.0 devices by using the same frame format as CAN 2.0B, with the addition of a new control field to indicate whether the frame is a CAN FD frame or a standard CAN 2.0 frame. This allows CAN FD devices to coexist with CAN 2.0 devices on the same bus, while higher data rates and larger data payloads are available only when communicating with other CAN FD devices.<sup id="cite_ref-:6_11-1" class="reference"><a href="#cite_note-:6-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:3_10-1" class="reference"><a href="#cite_note-:3-10"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:4_12-0" class="reference"><a href="#cite_note-:4-12"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="CAN_XL">CAN XL</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=8" title="Edit section: CAN XL"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>CAN XL, specified by CiA 610-1 and standardized as part of ISO11898-1, supports up to 2,048-byte payloads and data rates up to 20&#160;Mbit/s. It bridges the gap between CAN FD and Ethernet (100BASE-T1) while maintaining CAN's collision-resolution benefits. CAN XL controllers can also handle Classical CAN and CAN FD communication, ensuring compatibility in mixed networks. Its large data fields allow for higher layer protocols like <a href="/wiki/IP_address" title="IP address">IP (Internet Protocol)</a> and the <a href="/wiki/Tunneling_protocol" title="Tunneling protocol">tunneling of Ethernet frames</a>.<sup id="cite_ref-:1_4-2" class="reference"><a href="#cite_note-:1-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-:5_13-0" class="reference"><a href="#cite_note-:5-13"><span class="cite-bracket">&#91;</span>13<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Architecture">Architecture</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=9" title="Edit section: Architecture"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Cleanup plainlinks metadata ambox ambox-style ambox-Cleanup" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/40px-Edit-clear.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/60px-Edit-clear.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/80px-Edit-clear.svg.png 2x" data-file-width="48" data-file-height="48" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article may <b>require <a href="/wiki/Wikipedia:Cleanup" title="Wikipedia:Cleanup">cleanup</a></b> to meet Wikipedia's <a href="/wiki/Wikipedia:Manual_of_Style" title="Wikipedia:Manual of Style">quality standards</a>. The specific problem is: <b>This largely overlaps with the <a href="#Layers">Layers</a> section.</b><span class="hide-when-compact"> Please help <a href="/wiki/Special:EditPage/CAN_bus" title="Special:EditPage/CAN bus">improve this article</a> if you can.</span> <span class="date-container"><i>(<span class="date">August 2018</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <div class="mw-heading mw-heading3"><h3 id="Physical_organization">Physical organization</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=10" title="Edit section: Physical organization"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>CAN is a <a href="/wiki/Multi-master_bus" title="Multi-master bus">multi-master</a> <a href="/wiki/Serial_bus" class="mw-redirect" title="Serial bus">serial bus</a> standard for connecting electronic control units (ECUs) also known as nodes (<a href="/wiki/Electronic_control_unit" title="Electronic control unit">automotive electronics</a> is a major application domain). Two or more nodes are required on the CAN bus to communicate. A node may interface to devices from simple digital logic e.g. <a href="/wiki/Programmable_Logic_Device" class="mw-redirect" title="Programmable Logic Device">PLD</a>, via <a href="/wiki/FPGA" class="mw-redirect" title="FPGA">FPGA</a> up to an embedded computer running extensive software. Such a computer may also be a gateway allowing a general-purpose computer (like a laptop) to communicate over a USB or Ethernet port to the devices on a CAN bus. </p><p>All nodes are connected to each other through a physically conventional <i>two-wire bus</i>. The wires are a twisted pair with a 120 Ω (nominal) <a href="/wiki/Characteristic_impedance" title="Characteristic impedance">characteristic impedance</a>. </p><p>This bus uses <a href="/wiki/Differential_signaling" class="mw-redirect" title="Differential signaling">differential</a> <a href="/wiki/Wired-AND" class="mw-redirect" title="Wired-AND">wired-AND</a> signals. Two signals, CAN high (CANH) and CAN low (CANL) are either driven to a "dominant" state with CANH &gt; CANL, or not driven and pulled by passive resistors to a "recessive" state with CANH ≤ CANL. A 0 data bit encodes a dominant state, while a 1 data bit encodes a recessive state, supporting a wired-AND convention, which gives nodes with lower ID numbers priority on the bus. </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:CAN_ISO11898-2_Network.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/CAN_ISO11898-2_Network.png/220px-CAN_ISO11898-2_Network.png" decoding="async" width="220" height="69" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/CAN_ISO11898-2_Network.png/330px-CAN_ISO11898-2_Network.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/b/bc/CAN_ISO11898-2_Network.png/440px-CAN_ISO11898-2_Network.png 2x" data-file-width="4160" data-file-height="1300" /></a><figcaption>High-speed CAN bus. ISO 11898-2.</figcaption></figure> <p><b>ISO 11898-2</b>, also called <i>high-speed CAN</i> (bit speeds up to 1<span class="nowrap">&#160;</span>Mbit/s on CAN, 5<span class="nowrap">&#160;</span>Mbit/s on CAN-FD), uses a linear bus terminated at each end with a 120 Ω resistor. </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:ISO11898-2.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/1/1a/ISO11898-2.svg/220px-ISO11898-2.svg.png" decoding="async" width="220" height="84" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/1a/ISO11898-2.svg/330px-ISO11898-2.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/1a/ISO11898-2.svg/440px-ISO11898-2.svg.png 2x" data-file-width="744" data-file-height="283" /></a><figcaption>High-speed CAN signaling. ISO 11898-2.</figcaption></figure> <p>High-speed CAN signaling drives the CANH wire towards 3.5 V and the CANL wire towards 1.5<span class="nowrap">&#160;</span>V when any device is transmitting a dominant (0), while if no device is transmitting a dominant, the terminating resistors passively return the two wires to the recessive (1) state with a nominal differential voltage of 0<span class="nowrap">&#160;</span>V. (Receivers consider any differential voltage of less than 0.5<span class="nowrap">&#160;</span>V to be recessive.) The dominant differential voltage is a nominal 2<span class="nowrap">&#160;</span>V. The dominant common mode voltage (CANH+CANL)/2 must be within 1.5 to 3.5<span class="nowrap">&#160;</span>V of common, while the recessive common mode voltage must be within ±12<span class="nowrap">&#160;</span> of common. </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:CAN_ISO11898-3_Network.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/0/07/CAN_ISO11898-3_Network.png/220px-CAN_ISO11898-3_Network.png" decoding="async" width="220" height="161" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/0/07/CAN_ISO11898-3_Network.png/330px-CAN_ISO11898-3_Network.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/0/07/CAN_ISO11898-3_Network.png/440px-CAN_ISO11898-3_Network.png 2x" data-file-width="3989" data-file-height="2911" /></a><figcaption>Low-speed fault-tolerant CAN bus. ISO 11898-3.</figcaption></figure> <p><b>ISO 11898-3</b>, also called <i>low-speed</i> or <i>fault-tolerant CAN</i> (up to 125<span class="nowrap">&#160;</span>kbit/s), uses a linear bus, star bus or multiple star buses connected by a linear bus and is terminated at each node by a fraction of the overall termination resistance. The overall termination resistance should be close to, but not less than, 100<span class="nowrap">&#160;</span>Ω. </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:ISO11898-3_Waveform.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/4/44/ISO11898-3_Waveform.svg/220px-ISO11898-3_Waveform.svg.png" decoding="async" width="220" height="84" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/44/ISO11898-3_Waveform.svg/330px-ISO11898-3_Waveform.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/44/ISO11898-3_Waveform.svg/440px-ISO11898-3_Waveform.svg.png 2x" data-file-width="744" data-file-height="283" /></a><figcaption>Low-speed CAN signaling. ISO 11898-3.</figcaption></figure> <p>Low-speed fault-tolerant CAN signaling operates similarly to high-speed CAN, but with larger voltage swings. The dominant state is transmitted by driving CANH towards the device power supply voltage (5<span class="nowrap">&#160;</span>V or 3.3<span class="nowrap">&#160;</span>V), and CANL towards 0<span class="nowrap">&#160;</span>V when transmitting a dominant (0), while the termination resistors pull the bus to a recessive state with CANH at 0<span class="nowrap">&#160;</span>V and CANL at 5<span class="nowrap">&#160;</span>V. This allows a simpler receiver that just considers the sign of CANH−CANL. Both wires must be able to handle −27 to +40<span class="nowrap">&#160;</span>V without damage. </p> <div class="mw-heading mw-heading3"><h3 id="Electrical_properties">Electrical properties</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=11" title="Edit section: Electrical properties"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>With both high-speed and low-speed CAN, the speed of the transition is faster when a recessive-to-dominant transition occurs since the CAN wires are being actively driven. The speed of the dominant-to-recessive transition depends primarily on the length of the CAN network and the capacitance of the wire used. </p><p>High-speed CAN is usually used in automotive and industrial applications where the bus runs from one end of the environment to the other. Fault-tolerant CAN is often used where groups of nodes need to be connected together. </p><p>The specifications require the bus be kept within a minimum and maximum common mode bus voltage but do not define how to keep the bus within this range. </p><p>The CAN bus must be terminated. The termination resistors are needed to suppress <a href="/wiki/Signal_reflection" title="Signal reflection">reflections</a> as well as return the bus to its recessive or idle state. </p><p>High-speed CAN uses a 120 Ω resistor at each end of a linear bus. Low-speed CAN uses resistors at each node. Other types of terminations may be used such as the Terminating Bias Circuit defined in <a href="/wiki/ISO_11783" title="ISO 11783">ISO11783</a>.<sup id="cite_ref-:2_9-1" class="reference"><a href="#cite_note-:2-9"><span class="cite-bracket">&#91;</span>9<span class="cite-bracket">&#93;</span></a></sup> </p><p>A <style data-mw-deduplicate="TemplateStyles:r1238216509">.mw-parser-output .vanchor>:target~.vanchor-text{background-color:#b1d2ff}@media screen{html.skin-theme-clientpref-night .mw-parser-output .vanchor>:target~.vanchor-text{background-color:#0f4dc9}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .vanchor>:target~.vanchor-text{background-color:#0f4dc9}}</style><span class="vanchor"><span id="terminating_bias_circuit"></span><span class="vanchor-text">terminating bias circuit</span></span> provides <a href="/wiki/Electric_power" title="Electric power">power</a> and ground in addition to the CAN signaling on a four-wire cable. This provides automatic <a href="/wiki/Biasing_(electronics)" class="mw-redirect" title="Biasing (electronics)">electrical bias</a> and <a href="/wiki/Electrical_termination" title="Electrical termination">termination</a> at each end of each <a href="/wiki/Network_segment" title="Network segment">bus segment</a>. An ISO11783 network is designed for hot plug-in and removal of bus segments and ECUs. </p> <div class="mw-heading mw-heading3"><h3 id="Nodes">Nodes</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=12" title="Edit section: Nodes"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:CAN_Node.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c0/CAN_Node.png/220px-CAN_Node.png" decoding="async" width="220" height="201" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c0/CAN_Node.png/330px-CAN_Node.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c0/CAN_Node.png/440px-CAN_Node.png 2x" data-file-width="1540" data-file-height="1409" /></a><figcaption>CAN bus node</figcaption></figure> <p>Each node requires a </p> <ul><li><a href="/wiki/Central_processing_unit" title="Central processing unit">Central processing unit</a>, microprocessor, or host processor <ul><li>The host processor decides what the received messages mean and what messages it wants to transmit.</li> <li>Sensors, actuators and control devices can be connected to the host processor.</li></ul></li> <li>CAN controller- often an integral part of the microcontroller <ul><li>Receiving: the CAN controller stores the received serial bits from the bus until an entire message is available, which can then be fetched by the host processor (usually by the CAN controller triggering an interrupt).</li> <li>Sending: the host processor sends the transmit message(s) to a CAN controller, which transmits the bits serially onto the bus when the bus is free.</li></ul></li> <li><a href="/wiki/Transceiver" title="Transceiver">Transceiver</a> Defined by ISO 11898-2/3 Medium Access Unit [MAU] standards <ul><li>Receiving: it converts the data stream from CAN bus levels to levels that the CAN controller uses. It usually has protective circuitry to protect the CAN controller.</li> <li>Transmitting: it converts the data stream from the CAN controller to CAN bus levels.</li></ul></li></ul> <p>Each node is able to send and receive messages, but not simultaneously. A message or <a class="mw-selflink-fragment" href="#Frames">Frame</a> consists primarily of the ID (identifier), which represents the priority of the message, and up to eight data bytes. A CRC, acknowledge slot [ACK] and other overhead are also part of the message. The improved CAN FD extends the length of the data section to up to 64 bytes per frame. The message is transmitted serially onto the bus using a <a href="/wiki/Non-return-to-zero" title="Non-return-to-zero">non-return-to-zero</a> (NRZ) format and may be received by all nodes. </p><p>The devices that are connected by a CAN network are typically <a href="/wiki/Sensors" class="mw-redirect" title="Sensors">sensors</a>, <a href="/wiki/Actuators" class="mw-redirect" title="Actuators">actuators</a>, and other control devices. These devices are connected to the bus through a <a href="/wiki/Central_processing_unit" title="Central processing unit">host processor</a>, a CAN controller, and a CAN transceiver. </p> <div class="mw-heading mw-heading2"><h2 id="Data_transmission">Data transmission</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=13" title="Edit section: Data transmission"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>CAN data transmission uses a lossless bitwise arbitration method of contention resolution. This arbitration method requires all nodes on the CAN network to be synchronized to sample every bit on the CAN network at the same time. This is why some call CAN synchronous. Unfortunately the term synchronous is imprecise since the data is transmitted in an asynchronous format, namely without a clock signal. </p><p>The CAN specifications use the terms <i>dominant</i> bits and <i>recessive</i> bits, where dominant is a logical 0 (actively driven to a voltage by the transmitter) and recessive is a logical 1 (passively returned to a voltage by a resistor). The idle state is represented by the recessive level (Logical 1). If one node transmits a dominant bit and another node transmits a recessive bit then there is a collision and the dominant bit wins. This means there is no delay to the higher-priority message, and the node transmitting the lower-priority message automatically attempts to re-transmit six-bit clocks after the end of the dominant message. This makes CAN very suitable as a real-time prioritized communications system. </p><p>The exact voltages for a logical 0 or 1 depend on the physical layer used, but the basic principle of CAN requires that each node listen to the data on the CAN network including the transmitting node(s) itself (themselves). If a logical 1 is transmitted by all transmitting nodes at the same time, then a logical 1 is seen by all of the nodes, including both the transmitting node(s) and receiving node(s). If a logical 0 is transmitted by all transmitting node(s) at the same time, then a logical 0 is seen by all nodes. If a logical 0 is being transmitted by one or more nodes, and a logical 1 is being transmitted by one or more nodes, then a logical 0 is seen by all nodes including the node(s) transmitting the logical 1. When a node transmits a logical 1 but sees a logical 0, it realizes that there is a contention and it quits transmitting. By using this process, any node that transmits a logical 1, when another node transmits a logical 0, loses the arbitration and drops out. A node that loses arbitration re-queues its message for later transmission and the CAN frame bit-stream continues without error until only one node is left transmitting. This means that the node that transmits the first 1 loses arbitration. Since the 11 (or 29 for CAN 2.0B) bit identifier is transmitted by all nodes at the start of the CAN frame, the node with the lowest identifier transmits more zeros at the start of the frame, and that is the node that wins the arbitration or has the highest priority. </p><p>For example, consider an 11-bit ID CAN network, with two nodes with IDs of 15 (binary representation, 00000001111) and 16 (binary representation, 00000010000). If these two nodes transmit at the same time, each will first transmit the start bit then transmit the first six zeros of their ID with no arbitration decision being made. </p> <table class="wikitable" style="text-align:center"> <tbody><tr> <th rowspan="2"> </th> <th rowspan="2">Start <br />bit </th> <th colspan="11">ID bits </th> <th rowspan="2">The rest of the frame </th></tr> <tr> <th style="width:32px;">10 </th> <th style="width:32px;">9 </th> <th style="width:32px;">8 </th> <th style="width:32px;">7 </th> <th style="width:32px;">6 </th> <th style="width:32px;">5 </th> <th style="width:32px;">4 </th> <th style="width:32px;">3 </th> <th style="width:32px;">2 </th> <th style="width:32px;">1 </th> <th style="width:32px;">0 </th></tr> <tr> <th>Node 15 </th> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td style="background:green;">0</td> <td>1</td> <td>1</td> <td>1</td> <td>1 </td></tr> <tr> <th>Node 16 </th> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td style="background:red;">1</td> <td colspan="5">Stopped Transmitting </td></tr> <tr> <th>CAN data </th> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td>0</td> <td style="background:green;">0</td> <td>1</td> <td>1</td> <td>1</td> <td>1 </td></tr></tbody></table> <p>When ID bit 4 is transmitted, the node with the ID of 16 transmits a 1 (recessive) for its ID, and the node with the ID of 15 transmits a 0 (dominant) for its ID. When this happens, the node with the ID of 16 knows it transmitted a 1, but sees a 0 and realizes that there is a collision and it lost arbitration. Node 16 stops transmitting which allows the node with ID of 15 to continue its transmission without any loss of data. The node with the lowest ID will always win the arbitration and therefore has the highest priority. </p><p><a href="/wiki/Bit_rate" title="Bit rate">Bit rates</a> up to 1<span class="nowrap">&#160;</span>Mbit/s are possible at network lengths below 40<span class="nowrap">&#160;</span>m. Decreasing the bit rate allows longer network distances (e.g. 500<span class="nowrap">&#160;</span>m at 125<span class="nowrap">&#160;</span>kbit/s). The improved <a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a> standard allows increasing the bit rate after arbitration and can increase the speed of the data section by a factor of up to ten or more of the arbitration bit rate. </p> <div class="mw-heading mw-heading2"><h2 id="ID_allocation">ID allocation</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=14" title="Edit section: ID allocation"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Message IDs must be unique<sup id="cite_ref-:3_10-2" class="reference"><a href="#cite_note-:3-10"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup> on a single CAN bus, otherwise two nodes would continue transmission beyond the end of the arbitration field (ID) causing an error. </p><p>In the early 1990s, the choice of IDs for messages was done simply on the basis of identifying the type of data and the sending node; however, as the ID is also used as the message priority, this led to poor real-time performance. In those scenarios, a low CAN bus use of around 30% was commonly required to ensure that all messages would meet their deadlines. However, if IDs are instead determined based on the deadline of the message, the lower the numerical ID and hence the higher the message priority, then bus use of 70 to 80% can typically be achieved before any message deadlines are missed.<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">&#91;</span>15<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Bit_timing">Bit timing</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=15" title="Edit section: Bit timing"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>All nodes on the CAN network must operate at the same nominal bit rate, but noise, phase shifts, oscillator tolerance and oscillator drift mean that the actual bit rate might not be the nominal bit rate.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">&#91;</span>16<span class="cite-bracket">&#93;</span></a></sup> Since a separate clock signal is not used, a means of synchronizing the nodes is necessary. Synchronization is important during arbitration since the nodes in arbitration must be able to see both their transmitted data and the other nodes' transmitted data at the same time. Synchronization is also important to ensure that variations in oscillator timing between nodes do not cause errors. </p><p>Synchronization starts with a hard synchronization on the first recessive to dominant transition after a period of bus idle (the start bit). Resynchronization occurs on every recessive to dominant transition during the frame. The CAN controller expects the transition to occur at a multiple of the nominal bit time. If the transition does not occur at the exact time the controller expects it, the controller adjusts the nominal bit time accordingly. </p><p>The adjustment is accomplished by dividing each bit into a number of time slices called quanta, and assigning some number of quanta to each of the four segments within the bit: synchronization, propagation, phase segment 1 and phase segment 2. </p> <figure class="mw-halign-center" typeof="mw:File/Frame"><a href="/wiki/File:CAN_Bit_Timing2.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/CAN_Bit_Timing2.svg/530px-CAN_Bit_Timing2.svg.png" decoding="async" width="530" height="160" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/CAN_Bit_Timing2.svg/795px-CAN_Bit_Timing2.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/CAN_Bit_Timing2.svg/1060px-CAN_Bit_Timing2.svg.png 2x" data-file-width="530" data-file-height="160" /></a><figcaption>An example CAN bit timing with 10 time quanta per bit</figcaption></figure> <p>The number of quanta the bit is divided into can vary by controller, and the number of quanta assigned to each segment can be varied depending on bit rate and network conditions. </p><p>A transition that occurs before or after it is expected causes the controller to calculate the time difference and lengthen phase segment 1 or shorten phase segment 2 by this time. This effectively adjusts the timing of the receiver to the transmitter to synchronize them. This resynchronization process is done continuously at every recessive to dominant transition to ensure the transmitter and receiver stay in sync. Continuously resynchronizing reduces errors induced by noise, and allows a receiving node that was synchronized to a node that lost arbitration to resynchronize to the node which won arbitration. </p> <div class="mw-heading mw-heading2"><h2 id="Layers">Layers</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=16" title="Edit section: Layers"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The CAN protocol, like many networking protocols, can be decomposed into the following <a href="/wiki/Abstraction_layer" title="Abstraction layer">abstraction layers</a>: </p> <dl><dt>Application layer</dt></dl> <ul><li>Application-specific logic</li></ul> <dl><dt>Object layer</dt></dl> <ul><li>Message filtering (mailboxes)</li> <li>Message and status handling</li></ul> <dl><dt>Transfer layer</dt></dl> <p>Most of the CAN standard applies to the transfer layer. The transfer layer receives messages from the physical layer and transmits those messages to the object layer. The transfer layer is responsible for bit timing and synchronization, message framing, arbitration, acknowledgment, error detection and signaling, and fault confinement. It performs: </p> <ul><li>Fault confinement</li> <li>Error detection</li> <li>Message validation</li> <li>Acknowledgement</li> <li>Arbitration</li> <li>Message framing</li> <li>Transfer rate and timing</li> <li>Information routing</li></ul> <dl><dt>Physical layer</dt></dl> <figure class="mw-default-size mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/File:CAN-Bus_Elektrische_Zweidrahtleitung.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/9/9e/CAN-Bus_Elektrische_Zweidrahtleitung.svg/220px-CAN-Bus_Elektrische_Zweidrahtleitung.svg.png" decoding="async" width="220" height="110" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/9/9e/CAN-Bus_Elektrische_Zweidrahtleitung.svg/330px-CAN-Bus_Elektrische_Zweidrahtleitung.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/9/9e/CAN-Bus_Elektrische_Zweidrahtleitung.svg/440px-CAN-Bus_Elektrische_Zweidrahtleitung.svg.png 2x" data-file-width="800" data-file-height="400" /></a><figcaption>CAN bus electrical sample topology with terminator resistors</figcaption></figure> <p>CAN bus (<a href="/wiki/ISO_11898" class="mw-redirect" title="ISO 11898">ISO 11898</a>-1:2003) originally specified the <a href="/wiki/Link_layer" title="Link layer">link layer</a> protocol with only abstract requirements for the physical layer, e.g., asserting the use of a medium with multiple-access at the bit level through the use of dominant and recessive states. The electrical aspects of the physical layer (voltage, current, number of conductors) were specified in <a href="/wiki/ISO_11898" class="mw-redirect" title="ISO 11898">ISO 11898</a>-2:2003, which is now widely accepted. However, the mechanical aspects of the physical layer (connector type and number, colors, labels, pin-outs) have yet to be formally specified. As a result, an automotive ECU will typically have a particular—often custom—connector with various sorts of cables, of which two are the CAN bus lines. Nonetheless, several de facto standards for mechanical implementation have emerged, the most common being the <a href="/wiki/D-subminiature" title="D-subminiature">9-pin D-sub type male connector</a> with the following pin-out: </p> <ul><li>pin 2: CAN-Low (CAN−)</li> <li>pin 3: GND (ground)</li> <li>pin 7: CAN-High (CAN+)</li> <li>pin 9: CAN V+ (power)</li></ul> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:9_pin_d-sub_connector_male_closeup.jpg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/7/78/9_pin_d-sub_connector_male_closeup.jpg/220px-9_pin_d-sub_connector_male_closeup.jpg" decoding="async" width="220" height="162" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/7/78/9_pin_d-sub_connector_male_closeup.jpg/330px-9_pin_d-sub_connector_male_closeup.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/7/78/9_pin_d-sub_connector_male_closeup.jpg/440px-9_pin_d-sub_connector_male_closeup.jpg 2x" data-file-width="1090" data-file-height="802" /></a><figcaption>A male <a href="/wiki/DE-9" class="mw-redirect" title="DE-9">DE-9</a> connector (plug)</figcaption></figure> <p>This <i><a href="/wiki/De_facto" title="De facto">de facto</a></i> mechanical standard for CAN could be implemented with the node having both male and female 9-pin D-sub connectors electrically wired to each other in parallel within the node. Bus power is fed to a node's male connector and the bus draws power from the node's female connector. This follows the electrical engineering convention that power sources are terminated at female connectors. Adoption of this standard avoids the need to fabricate custom splitters to connect two sets of bus wires to a single D connector at each node. Such nonstandard (custom) wire harnesses (splitters) that join conductors outside the node reduce bus reliability, eliminate cable interchangeability, reduce compatibility of wiring harnesses, and increase cost. </p><p>The absence of a complete physical layer specification (mechanical in addition to electrical) freed the CAN bus specification from the constraints and complexity of physical implementation. However, it left CAN bus implementations open to interoperability issues due to mechanical incompatibility. In order to improve interoperability, many vehicle makers have generated specifications describing a set of allowed CAN transceivers in combination with requirements on the parasitic capacitance on the line. The allowed parasitic capacitance includes both capacitors as well as ESD protection (ESD<sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">&#91;</span>17<span class="cite-bracket">&#93;</span></a></sup> against ISO 7637-3). In addition to parasitic capacitance, 12V and 24V systems do not have the same requirements in terms of line maximum voltage. Indeed, during jump start events light vehicle lines can go up to 24V while truck systems can go as high as 36V. New solutions are emerging, allowing the same component to be used for CAN as well as <a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a> (see <sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">&#91;</span>18<span class="cite-bracket">&#93;</span></a></sup>). </p><p>Noise immunity on <a href="/wiki/ISO_11898" class="mw-redirect" title="ISO 11898">ISO 11898</a>-2:2003 is achieved by maintaining the differential impedance of the bus at a low level with low-value resistors (120 ohms) at each end of the bus. However, when dormant, a low-impedance bus such as CAN draws more current (and power) than other voltage-based signaling buses. On CAN bus systems, <a href="/wiki/Balanced_line" title="Balanced line">balanced line</a> operation, where current in one signal line is exactly balanced by current in the opposite direction in the other signal provides an independent, stable 0<span class="nowrap">&#160;</span>V reference for the receivers. Best practice determines that CAN bus balanced pair signals be carried in <a href="/wiki/Twisted_pair" title="Twisted pair">twisted pair</a> wires in a shielded cable to minimize RF emission and reduce interference susceptibility in the already noisy RF environment of an automobile. </p><p><a href="/wiki/ISO_11898" class="mw-redirect" title="ISO 11898">ISO 11898</a>-2 provides some immunity to common mode voltage between transmitter and receiver by having a 0<span class="nowrap">&#160;</span>V rail running along the bus to maintain a high degree of voltage association between the nodes. Also, in the de facto mechanical configuration mentioned above, a supply rail is included to distribute power to each of the transceiver nodes. The design provides a common supply for all the transceivers. The actual voltage to be applied by the bus and which nodes apply to it are application-specific and not formally specified. Common practice node design provides each node with transceivers that are optically isolated from their node host and derive a 5<span class="nowrap">&#160;</span>V linearly regulated supply voltage for the transceivers from the universal supply rail provided by the bus. This usually allows operating margin on the supply rail sufficient to allow interoperability across many node types. Typical values of supply voltage on such networks are 7 to 30 V. However, the lack of a formal standard means that system designers are responsible for supply rail compatibility. </p><p><a href="/wiki/ISO_11898" class="mw-redirect" title="ISO 11898">ISO 11898</a>-2 describes the electrical implementation formed from a multi-dropped single-ended balanced line configuration with resistor termination at each end of the bus. In this configuration a dominant state is asserted by one or more transmitters switching the CAN− to supply 0<span class="nowrap">&#160;</span>V and (simultaneously) switching CAN+ to the +5<span class="nowrap">&#160;</span>V bus voltage thereby forming a current path through the resistors that terminate the bus. As such the terminating resistors form an essential component of the signaling system, and are included, not just to limit wave reflection at high frequency. </p><p>During a recessive state, the signal lines and resistor(s) remain in a high-impedance state with respect to both rails. Voltages on both CAN+ and CAN− tend (weakly) towards a voltage midway between the rails. A recessive state is present on the bus only when none of the transmitters on the bus is asserting a dominant state. </p><p>During a dominant state, the signal lines and resistor(s) move to a low-impedance state with respect to the rails so that current flows through the resistor. CAN+ voltage tends to +5<span class="nowrap">&#160;</span>V and CAN− tends to 0<span class="nowrap">&#160;</span>V. </p><p>Irrespective of signal state the signal lines are always in a low-impedance state with respect to one another by virtue of the terminating resistors at the end of the bus. </p><p>This signaling strategy differs significantly from other balanced line transmission technologies such as <a href="/wiki/RS-422" title="RS-422">RS-422</a>/3, <a href="/wiki/RS-485" title="RS-485">RS-485</a>, etc. which employ differential line drivers/ receivers and use a signaling system based on the differential mode voltage of the balanced line crossing a notional 0<span class="nowrap">&#160;</span>V. Multiple access on such systems normally relies on the media supporting three states (active high, active low and inactive tri-state) and is dealt with in the time domain. Multiple access on CAN bus is achieved by the electrical logic of the system supporting just two states that are conceptually analogous to a ‘wired AND’ network. </p> <div class="mw-heading mw-heading2"><h2 id="Frames">Frames</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=17" title="Edit section: Frames"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A CAN network can be configured to work with two different message (or <i>frame</i>) formats: the standard or base frame format (described in CAN 2.0 A and CAN 2.0 B), and the extended frame format (described only by CAN 2.0 B). The only difference between the two formats is that the <i>CAN base frame</i> supports a length of 11 bits for the identifier, and the <i>CAN extended frame</i> supports a length of 29 bits for the identifier, made up of the 11-bit identifier (base identifier) and an 18-bit extension (identifier extension). The distinction between CAN base frame format and CAN extended frame format is made by using the IDE bit, which is transmitted as dominant in case of an 11-bit frame, and transmitted as recessive in case of a 29-bit frame. CAN controllers that support extended frame format messages are also able to send and receive messages in CAN base frame format. All frames begin with a start-of-frame (SOF) bit that denotes the start of the frame transmission. </p><p>CAN has four frame types: </p> <ul><li>Data frame: a frame containing node data for transmission</li> <li>Remote frame: a frame requesting the transmission of a specific identifier</li> <li>Error frame: a frame transmitted by any node detecting an error</li> <li>Overload frame: a frame to inject a delay between data or remote frame</li></ul> <div class="mw-heading mw-heading3"><h3 id="Data_frame">Data frame</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=18" title="Edit section: Data frame"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The data frame is the only frame for actual data transmission. There are two message formats: </p> <ul><li>Base frame format: with 11 identifier bits</li> <li>Extended frame format: with 29 identifier bits</li></ul> <p>The CAN standard requires that the implementation must accept the base frame format and may accept the extended frame format, but must tolerate the extended frame format. </p> <div class="mw-heading mw-heading4"><h4 id="Base_frame_format">Base frame format</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=19" title="Edit section: Base frame format"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-halign-center" typeof="mw:File/Thumb"><a href="/wiki/File:CAN-bus-frame-with-stuff-bit-and-correct-CRC.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/5/54/CAN-bus-frame-with-stuff-bit-and-correct-CRC.png/750px-CAN-bus-frame-with-stuff-bit-and-correct-CRC.png" decoding="async" width="750" height="238" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/5/54/CAN-bus-frame-with-stuff-bit-and-correct-CRC.png/1125px-CAN-bus-frame-with-stuff-bit-and-correct-CRC.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/5/54/CAN-bus-frame-with-stuff-bit-and-correct-CRC.png/1500px-CAN-bus-frame-with-stuff-bit-and-correct-CRC.png 2x" data-file-width="3154" data-file-height="999" /></a><figcaption>A complete CAN bus frame, including stuff bits, a correct CRC, and inter-frame spacing</figcaption></figure> <p>The frame format is as follows: The bit values are described for CAN-LO signal. </p> <table class="wikitable"> <tbody><tr> <th>Field name</th> <th>Length (bits)</th> <th>Purpose </th></tr> <tr> <td>Start-of-frame</td> <td>1</td> <td>Denotes the start of frame transmission </td></tr> <tr> <td bgcolor="lime">Identifier (green)</td> <td>11</td> <td>A (unique) identifier which also represents the message priority </td></tr> <tr> <td bgcolor="mediumslateblue">Stuff bit</td> <td>1</td> <td>A bit of the opposite polarity to maintain synchronisation; see <a href="#Bit_stuffing">§&#160;Bit stuffing</a> </td></tr> <tr> <td bgcolor="cyan">Remote transmission request (RTR) (blue)</td> <td>1</td> <td>Must be dominant (0) for data frames and recessive (1) for remote request frames (see <a href="#Remote_frame">Remote Frame</a>, below) </td></tr> <tr> <td>Identifier extension bit (IDE)</td> <td>1</td> <td>Must be dominant (0) for base frame format with 11-bit identifiers </td></tr> <tr> <td>Reserved bit (r0)</td> <td>1</td> <td>Reserved bit. Must be dominant (0), but accepted as either dominant or recessive. </td></tr> <tr> <td bgcolor="yellow">Data length code (DLC) (yellow)</td> <td>4</td> <td>Number of bytes of data (0–8 bytes)<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">&#91;</span>a<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td bgcolor="red">Data field (red)</td> <td>0–64 (0-8 bytes)</td> <td>Data to be transmitted (length in bytes dictated by DLC field) </td></tr> <tr> <td>CRC</td> <td>15</td> <td><a href="/wiki/Cyclic_redundancy_check#CRC-15-CAN" title="Cyclic redundancy check">Cyclic redundancy check</a> </td></tr> <tr> <td>CRC delimiter</td> <td>1</td> <td>Must be recessive (1) </td></tr> <tr> <td>ACK slot</td> <td>1</td> <td>Transmitter sends recessive (1) and any receiver can assert a dominant (0) </td></tr> <tr> <td>ACK delimiter</td> <td>1</td> <td>Must be recessive (1) </td></tr> <tr> <td>End-of-frame (EOF)</td> <td>7</td> <td>Must be recessive (1) </td></tr> <tr> <td>Inter-frame spacing (IFS)</td> <td>3</td> <td>Must be recessive (1) </td></tr></tbody></table> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist reflist-lower-alpha"> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text">It is physically possible for a value between 9–15 to be transmitted in the 4-bit DLC, although the data is still limited to eight bytes. Certain controllers allow the transmission or reception of a DLC greater than eight, but the actual data length is always limited to eight bytes.</span> </li> </ol></div></div> <figure class="mw-halign-center" typeof="mw:File/Thumb"><a href="/wiki/File:SDS_CAN_frame.jpg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d3/SDS_CAN_frame.jpg/700px-SDS_CAN_frame.jpg" decoding="async" width="700" height="420" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/d/d3/SDS_CAN_frame.jpg/1050px-SDS_CAN_frame.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/d/d3/SDS_CAN_frame.jpg/1400px-SDS_CAN_frame.jpg 2x" data-file-width="3200" data-file-height="1920" /></a><figcaption>A CAN bus frame transmitted with a 1&#160;Mbit/s bitrate spans <span class="nowrap"><span data-sort-value="7001470000000000000♠"></span>47&#160;μsec</span> between the SOF and ACK bits, as captured by a digital oscilloscope with a CAN serial decoding functionality.</figcaption></figure> <div class="mw-heading mw-heading4"><h4 id="Extended_frame_format">Extended frame format</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=20" title="Edit section: Extended frame format"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The frame format is as follows on from here in the table below: </p> <table class="wikitable"> <tbody><tr> <th>Field name</th> <th>Length (bits)</th> <th>Purpose </th></tr> <tr> <td>Start-of-frame</td> <td>1</td> <td>Denotes the start of frame transmission </td></tr> <tr> <td bgcolor="lime">Identifier A (green)</td> <td>11</td> <td>First part of the (unique) identifier which also represents the message priority </td></tr> <tr> <td>Substitute remote request (SRR)</td> <td>1</td> <td>Must be recessive (1) </td></tr> <tr> <td>Identifier extension bit (IDE)</td> <td>1</td> <td>Must be recessive (1) for extended frame format with 29-bit identifiers </td></tr> <tr> <td bgcolor="lime">Identifier B (green)</td> <td>18</td> <td>Second part of the (unique) identifier which also represents the message priority </td></tr> <tr> <td bgcolor="cyan">Remote transmission request (RTR) (blue)</td> <td>1</td> <td>Must be dominant (0) for data frames and recessive (1) for remote request frames (see <a href="#Remote_frame">Remote Frame</a>, below) </td></tr> <tr> <td>Reserved bits (r1, r0)</td> <td>2</td> <td>Reserved bits which must be set dominant (0), but accepted as either dominant or recessive </td></tr> <tr> <td bgcolor="yellow">Data length code (DLC) (yellow)</td> <td>4</td> <td>Number of bytes of data (0–8 bytes)<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">&#91;</span>a<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td bgcolor="red">Data field (red)</td> <td>0–64 (0-8 bytes)</td> <td>Data to be transmitted (length dictated by DLC field) </td></tr> <tr> <td>CRC</td> <td>15</td> <td><a href="/wiki/Cyclic_redundancy_check#CRC-15-CAN" title="Cyclic redundancy check">Cyclic redundancy check</a> </td></tr> <tr> <td>CRC delimiter</td> <td>1</td> <td>Must be recessive (1) </td></tr> <tr> <td>ACK slot</td> <td>1</td> <td>Transmitter sends recessive (1) and any receiver can assert a dominant (0) </td></tr> <tr> <td>ACK delimiter</td> <td>1</td> <td>Must be recessive (1) </td></tr> <tr> <td>End-of-frame (EOF)</td> <td>7</td> <td>Must be recessive (1) </td></tr> <tr> <td>Inter-frame spacing (IFS)</td> <td>3</td> <td>Must be recessive (1) </td></tr></tbody></table> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239543626"><div class="reflist reflist-lower-alpha"> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text">It is physically possible for a value between 9–15 to be transmitted in the 4-bit DLC, although the data is still limited to eight bytes. Certain controllers allow the transmission or reception of a DLC greater than eight, but the actual data length is always limited to eight bytes.</span> </li> </ol></div></div> <p>The two identifier fields (A &amp; B) combine to form a 29-bit identifier. </p> <div class="mw-heading mw-heading3"><h3 id="Remote_frame">Remote frame</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=21" title="Edit section: Remote frame"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Generally data transmission is performed on an autonomous basis with the data source node (e.g., a sensor) sending out a data frame. It is also possible, however, for a destination node to request the data from the source by sending a remote frame.</li> <li>There are two differences between a data frame and a remote frame. Firstly the RTR-bit is transmitted as a dominant bit in the data frame and secondly in the remote frame there is no data field. The DLC field indicates the data length of the requested message (not the transmitted one).<br /> I.e.,</li></ul> <dl><dd>RTR = 0&#160;; DOMINANT in data frame</dd> <dd>RTR = 1&#160;; RECESSIVE in remote frame</dd></dl> <p>In the event of a data frame and a remote frame with the same identifier being transmitted at the same time, the data frame wins arbitration due to the dominant RTR bit following the identifier. </p> <div class="mw-heading mw-heading3"><h3 id="Error_frame">Error frame</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=22" title="Edit section: Error frame"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The error frame consists of two different fields: </p> <ul><li>The first field is given by the superposition of ERROR FLAGS (6–12 dominant/recessive bits) contributed from different stations.</li> <li>The following second field is the ERROR DELIMITER (8 recessive bits).</li></ul> <p>There are two types of error flags: </p> <dl><dt>Active Error Flag</dt> <dd>six dominant bits – Transmitted by a node detecting an error on the network that is in error state <i>error active</i>.</dd> <dt>Passive Error Flag</dt> <dd>six recessive bits – Transmitted by a node detecting an active error frame on the network that is in error state <i>error passive</i>.</dd></dl> <p>There are two error counters in CAN: </p> <ol><li>Transmit error counter (TEC)</li> <li>Receive error counter (REC)</li></ol> <ul><li>When TEC or REC is greater than 127 and less than 255, a Passive Error frame will be transmitted on the bus.</li> <li>When TEC and REC is less than 128, an Active Error frame will be transmitted on the bus.</li> <li>When TEC is greater than 255, then the node enters into Bus Off state, where no frames will be transmitted.</li></ul> <div class="mw-heading mw-heading3"><h3 id="Overload_frame">Overload frame</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=23" title="Edit section: Overload frame"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The overload frame contains the two bit fields: Overload Flag and Overload Delimiter. There are two kinds of overload conditions that can lead to the transmission of an overload flag: </p> <ol><li>The internal conditions of a receiver, which requires a delay of the next data frame or remote frame.</li> <li>Detection of a dominant bit during intermission.</li></ol> <p>The start of an overload frame due to case 1 is only allowed to be started at the first bit time of an expected intermission, whereas overload frames due to case 2 start one bit after detecting the dominant bit. Overload Flag consists of six dominant bits. The overall form corresponds to that of the active error flag. The overload flag's form destroys the fixed form of the intermission field. As a consequence, all other stations also detect an overload condition and on their part start transmission of an overload flag. Overload Delimiter consists of eight recessive bits. The overload delimiter is of the same form as the error delimiter. </p> <div class="mw-heading mw-heading2"><h2 id="ACK_slot">ACK slot</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=24" title="Edit section: ACK slot"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The acknowledge slot is used to acknowledge the receipt of a valid CAN frame. Each node that receives the frame, without finding an error, transmits a dominant level in the ACK slot and thus overrides the recessive level of the transmitter. If a transmitter detects a recessive level in the ACK slot, it knows that no receiver found a valid frame. A receiving node may transmit a recessive to indicate that it did not receive a valid frame, but another node that did receive a valid frame may override this with a dominant. The transmitting node cannot know that the message has been received by all of the nodes on the CAN network. </p><p>Often, the mode of operation of the device is to re-transmit unacknowledged frames over and over. This may lead to eventually entering the <i>error passive</i> state. </p> <div class="mw-heading mw-heading2"><h2 id="Interframe_spacing">Interframe spacing</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=25" title="Edit section: Interframe spacing"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Data frames and remote frames are separated from preceding frames by a bit field called interframe space. Interframe space consists of at least three consecutive recessive (1) bits. Following that, if a dominant bit is detected, it will be regarded as the <i>Start of frame</i> bit of the next frame. Overload frames and error frames are not preceded by an interframe space and multiple overload frames are not separated by an interframe space. Interframe space contains the bit fields intermission and bus idle, and suspend transmission for error passive stations, which have been transmitter of the previous message.<sup id="cite_ref-interframe-space_21-0" class="reference"><a href="#cite_note-interframe-space-21"><span class="cite-bracket">&#91;</span>19<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Bit_stuffing">Bit stuffing</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=26" title="Edit section: Bit stuffing"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Bit_stuffing" title="Bit stuffing">Bit stuffing</a></div> <figure class="mw-halign-center" typeof="mw:File/Thumb"><a href="/wiki/File:CAN-Frame_mit_Pegeln_mit_Stuffbits.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/9/97/CAN-Frame_mit_Pegeln_mit_Stuffbits.svg/750px-CAN-Frame_mit_Pegeln_mit_Stuffbits.svg.png" decoding="async" width="750" height="355" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/9/97/CAN-Frame_mit_Pegeln_mit_Stuffbits.svg/1125px-CAN-Frame_mit_Pegeln_mit_Stuffbits.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/9/97/CAN-Frame_mit_Pegeln_mit_Stuffbits.svg/1500px-CAN-Frame_mit_Pegeln_mit_Stuffbits.svg.png 2x" data-file-width="761" data-file-height="360" /></a><figcaption>CAN frame before and after the addition of stuff bits (in purple). An incorrect CRC is used for bit stuffing illustration purposes.</figcaption></figure> <p>To ensure enough transitions to maintain synchronization, a bit of opposite polarity is inserted after five consecutive bits of the same polarity. This practice is called <a href="/wiki/Bit_stuffing" title="Bit stuffing">bit stuffing</a>, and is necessary due to the <a href="/wiki/Non-return-to-zero" title="Non-return-to-zero">non-return-to-zero</a> (NRZ) coding used with CAN. The stuffed data frames are destuffed by the receiver. </p><p>All fields in the frame are stuffed with the exception of the CRC delimiter, ACK field and end of frame which are a fixed size and are not stuffed. In the fields where bit stuffing is used, six consecutive bits of the same polarity (111111 or 000000) are considered an error. An active error flag can be transmitted by a node when an error has been detected. The active error flag consists of six consecutive dominant bits and violates the rule of bit stuffing. </p><p>Bit stuffing means that data frames may be larger than one would expect by simply enumerating the bits shown in the tables above. The maximum increase in size of a CAN frame (base format) after bit stuffing is in the case </p> <dl><dd>11111000011110000...</dd></dl> <p>which is stuffed as (stuffing bits in bold): </p> <dl><dd>11111<b>0</b>0000<b>1</b>1111<b>0</b>0000<b>1</b>...</dd></dl> <p>The stuffing bit itself may be the first of the five consecutive identical bits, so in the worst case there is one stuffing bit per four original bits. </p><p>The size of a base frame is bounded by </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 8n+44+\left\lfloor {\frac {34+8n-1}{4}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>8</mn> <mi>n</mi> <mo>+</mo> <mn>44</mn> <mo>+</mo> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mn>34</mn> <mo>+</mo> <mn>8</mn> <mi>n</mi> <mo>&#x2212;<!-- − --></mo> <mn>1</mn> </mrow> <mn>4</mn> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 8n+44+\left\lfloor {\frac {34+8n-1}{4}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/26e390db4f3c7b7c65a4637d3ddb04ce9693db85" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -2.505ex; width:25.835ex; height:6.176ex;" alt="{\displaystyle 8n+44+\left\lfloor {\frac {34+8n-1}{4}}\right\rfloor }"></span></dd></dl> <p>where <span class="texhtml">n</span> is the number of data bytes, a maximum of 8. </p><p>Since <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 8n+44}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>8</mn> <mi>n</mi> <mo>+</mo> <mn>44</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 8n+44}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/a26ceb0be15b8365c72aceb0bd3e0957a5f7410b" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:7.722ex; height:2.343ex;" alt="{\displaystyle 8n+44}"></span> is the size of the frame before stuffing, in the worst case one bit will be added every four original bits after the first one (hence the −1 at the numerator) and, because of the layout of the bits of the header, only 34 out of 44 of them can be subject to bit stuffing. </p> <table class="wikitable" style="text-align:center"> <tbody><tr> <th>frame type</th> <th>before stuffing</th> <th>after stuffing</th> <th>stuffing bits</th> <th>total frame length </th></tr> <tr> <td style="text-align: left;">base frame</td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 8n+44}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>8</mn> <mi>n</mi> <mo>+</mo> <mn>44</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 8n+44}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/a26ceb0be15b8365c72aceb0bd3e0957a5f7410b" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:7.722ex; height:2.343ex;" alt="{\displaystyle 8n+44}"></span></td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 8n+44+\left\lfloor {\frac {34+8n-1}{4}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>8</mn> <mi>n</mi> <mo>+</mo> <mn>44</mn> <mo>+</mo> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mn>34</mn> <mo>+</mo> <mn>8</mn> <mi>n</mi> <mo>&#x2212;<!-- − --></mo> <mn>1</mn> </mrow> <mn>4</mn> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 8n+44+\left\lfloor {\frac {34+8n-1}{4}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/26e390db4f3c7b7c65a4637d3ddb04ce9693db85" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -2.505ex; width:25.835ex; height:6.176ex;" alt="{\displaystyle 8n+44+\left\lfloor {\frac {34+8n-1}{4}}\right\rfloor }"></span></td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \leq 24}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo>&#x2264;<!-- ≤ --></mo> <mn>24</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \leq 24}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/b3f6ff4dfcdcd38d1939a8f88f57362b364795dd" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:4.778ex; height:2.343ex;" alt="{\displaystyle \leq 24}"></span></td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \leq 132}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo>&#x2264;<!-- ≤ --></mo> <mn>132</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \leq 132}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/7fa9ff46c8a04022fe33fa5b3221870afeac804b" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:5.941ex; height:2.343ex;" alt="{\displaystyle \leq 132}"></span> </td></tr> <tr> <td style="text-align: left;">extended frame</td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 8n+64}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>8</mn> <mi>n</mi> <mo>+</mo> <mn>64</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 8n+64}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/34a954f6fbcd1a46964ad4e0f52d76661c0ef029" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:7.722ex; height:2.343ex;" alt="{\displaystyle 8n+64}"></span></td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 8n+64+\left\lfloor {\frac {54+8n-1}{4}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mn>8</mn> <mi>n</mi> <mo>+</mo> <mn>64</mn> <mo>+</mo> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mn>54</mn> <mo>+</mo> <mn>8</mn> <mi>n</mi> <mo>&#x2212;<!-- − --></mo> <mn>1</mn> </mrow> <mn>4</mn> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 8n+64+\left\lfloor {\frac {54+8n-1}{4}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/f8cc7c728f642a76e92ff57919cece577704f0d6" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -2.505ex; width:25.835ex; height:6.176ex;" alt="{\displaystyle 8n+64+\left\lfloor {\frac {54+8n-1}{4}}\right\rfloor }"></span></td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \leq 29}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo>&#x2264;<!-- ≤ --></mo> <mn>29</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \leq 29}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/cb050ea3815e141dd269dfc4eb838deb87da188e" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:4.778ex; height:2.343ex;" alt="{\displaystyle \leq 29}"></span></td> <td><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \leq 157}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo>&#x2264;<!-- ≤ --></mo> <mn>157</mn> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \leq 157}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/547a247eb3aa29e9a8730c4f0ede86004910aeb5" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:5.941ex; height:2.343ex;" alt="{\displaystyle \leq 157}"></span> </td></tr></tbody></table> <p>An undesirable side effect of the bit stuffing scheme is that a small number of bit errors in a received message may corrupt the destuffing process, causing a larger number of errors to propagate through the destuffed message. This reduces the level of protection that would otherwise be offered by the CRC against the original errors. This deficiency of the protocol has been addressed in CAN FD frames by the use of a combination of fixed stuff bits and a counter that records the number of stuff bits inserted. </p> <div class="mw-heading mw-heading2"><h2 id="CAN_lower-layer_standards">CAN lower-layer standards</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=27" title="Edit section: CAN lower-layer standards"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><b>ISO 11898 series</b> specifies physical and data link layer (levels 1 and 2 of the <a href="/wiki/ISO/OSI" class="mw-redirect" title="ISO/OSI">ISO/OSI</a> model) of serial communication category called controller area network that supports distributed real-time control and multiplexing for use within road vehicles.<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">&#91;</span>20<span class="cite-bracket">&#93;</span></a></sup> </p><p>There are several CAN <a href="/wiki/Physical_layer" title="Physical layer">physical layer</a> and other standards: </p><p><b>ISO 11898-1:2015</b> specifies the <a href="/wiki/Data_link_layer" title="Data link layer">data link layer (DLL)</a> and physical <a href="/wiki/Signalling" class="mw-redirect" title="Signalling">signalling</a> of the controller area network (CAN).<sup id="cite_ref-:5_13-1" class="reference"><a href="#cite_note-:5-13"><span class="cite-bracket">&#91;</span>13<span class="cite-bracket">&#93;</span></a></sup> This document describes the general architecture of CAN in terms of hierarchical layers according to the <a href="/wiki/OSI_model" title="OSI model">ISO reference model for open systems interconnection (OSI)</a> established in <a href="/wiki/OSI_model" title="OSI model">ISO/IEC 7498-1</a> and provides the characteristics for setting up an interchange of digital information between modules implementing the CAN DLL with detailed specification of the <a href="/wiki/Logical_link_control" title="Logical link control">logical link control (LLC)</a> sublayer and <a href="/wiki/Medium_access_control" title="Medium access control">medium access control (MAC)</a> sublayer. </p><p><b>ISO 11898-2:2016</b> specifies the high-speed (transmission rates of up to 1<span class="nowrap">&#160;</span>Mbit/s) medium access unit (MAU), and some medium-dependent interface (MDI) features (according to ISO 8802-3), which comprise the physical layer of the controller area network. ISO 11898-2 uses a two-wire <a href="/wiki/Balanced_line" title="Balanced line">balanced</a> signaling scheme. It is the most used physical layer in vehicle <a href="/wiki/Powertrain" title="Powertrain">powertrain</a> applications and industrial control networks. </p><p><b>ISO 11898-3:2006</b> specifies low-speed, fault-tolerant, medium-dependent interface for setting up an interchange of digital information between electronic control units of road vehicles equipped with the CAN at transmission rates above 40<span class="nowrap">&#160;</span>kbit/s up to 125<span class="nowrap">&#160;</span>kbit/s. </p><p><b>ISO 11898-4:2004</b> specifies time-triggered communication in the CAN (TTCAN). It is applicable to setting up a time-triggered interchange of digital information between electronic control units (ECU) of road vehicles equipped with CAN, and specifies the frame synchronization entity that coordinates the operation of both logical link and media access controls in accordance with ISO 11898-1, to provide the time-triggered communication schedule. </p><p><b>ISO 11898-5:2007</b> specifies the CAN physical layer for transmission rates up to 1<span class="nowrap">&#160;</span>Mbit/s for use within road vehicles. It describes the medium access unit functions as well as some medium-dependent interface features according to ISO 8802-2. This represents an extension of ISO 11898-2, dealing with new functionality for systems requiring low-power consumption features while there is no active bus communication. </p><p><b>ISO 11898-6:2013</b> specifies the CAN physical layer for transmission rates up to 1<span class="nowrap">&#160;</span>Mbit/s for use within road vehicles. It describes the medium access unit functions as well as some medium-dependent interface features according to ISO 8802-2. This represents an extension of ISO 11898-2 and ISO 11898-5, specifying a selective wake-up mechanism using configurable CAN frames. </p><p><b>ISO 16845-1:2016</b> provides the methodology and abstract test suite necessary for checking the conformance of any CAN implementation of the CAN specified in ISO 11898-1. </p><p><b>ISO 16845-2:2018</b> establishes test cases and test requirements to realize a test plan verifying if the CAN transceiver with implemented selective wake-up functions conform to the specified functionalities. The kind of testing defined in ISO 16845-2:2018 is named as conformance testing. </p> <div class="mw-heading mw-heading2"><h2 id="DBC">DBC</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=28" title="Edit section: DBC"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>CAN DBC files are standardized ASCII files used to define messages sent over a CAN bus. They define the format and purpose of each type of message, including the message IDs, signal names, scaling, offsets, and data types, and provide an interoperable aid to developing CAN bus applications. </p> <div class="mw-heading mw-heading2"><h2 id="CAN-based_higher-layer_protocols">CAN-based higher-layer protocols</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=29" title="Edit section: CAN-based higher-layer protocols"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>As the CAN standard does not include common communication features, such as <a href="/wiki/Flow_control_(data)" title="Flow control (data)">flow control</a>, device addressing, and transportation of data blocks larger than one message, and above all, application data, many implementations of higher layer protocols were created. Several are standardized for a business area, although all can be extended by each manufacturer. For passenger cars, each manufacturer has its own standard. </p><p><a href="/wiki/CAN_in_Automation" title="CAN in Automation">CAN in Automation</a> (CiA) is the international users' and manufacturers' organization that develops and supports CAN-based higher-layer protocols and their international standardization.<sup id="cite_ref-:4_12-1" class="reference"><a href="#cite_note-:4-12"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup> Among these specifications are: </p> <div class="mw-heading mw-heading3"><h3 id="Standardized_approaches">Standardized approaches</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=30" title="Edit section: Standardized approaches"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/w/index.php?title=ARINC_812&amp;action=edit&amp;redlink=1" class="new" title="ARINC 812 (page does not exist)">ARINC 812</a> or <a href="/w/index.php?title=ARINC_825&amp;action=edit&amp;redlink=1" class="new" title="ARINC 825 (page does not exist)">ARINC 825</a> (aviation industry)</li> <li><a href="/wiki/CANopen" title="CANopen">CANopen</a> - CiA 301/302-2 and EN 50325-4 (industrial <a href="/wiki/Automation" title="Automation">automation</a>)</li> <li><a href="/wiki/IEC_61375" class="mw-redirect" title="IEC 61375">IEC 61375</a>-3-3 (use of CANopen in rail vehicles)</li> <li><a href="/wiki/DeviceNet" title="DeviceNet">DeviceNet</a> (industrial <a href="/wiki/Automation" title="Automation">automation</a>)</li> <li><a href="/wiki/EnergyBus" title="EnergyBus">EnergyBus</a> - CiA 454 and <a href="/wiki/IEC_61851" title="IEC 61851">IEC 61851</a>-3 (battery–charger communication)</li> <li>ISOBUS - <a href="/wiki/ISO_11783" title="ISO 11783">ISO 11783</a> (agriculture)</li> <li><a href="/wiki/ISO-TP" class="mw-redirect" title="ISO-TP">ISO-TP</a> - ISO 15765-2 (transport protocol for automotive diagnostics)</li> <li><a href="/wiki/MilCAN" title="MilCAN">MilCAN</a> (military vehicles)</li> <li><a href="/wiki/NMEA_2000" title="NMEA 2000">NMEA 2000</a> - IEC 61162-3 (marine industry)</li> <li><a href="/wiki/SAE_J1939" title="SAE J1939">SAE J1939</a> (in-vehicle network for buses and trucks)</li> <li><a href="/w/index.php?title=SAE_J2284&amp;action=edit&amp;redlink=1" class="new" title="SAE J2284 (page does not exist)">SAE J2284</a> (in-vehicle networks for passenger cars)</li> <li><a href="/wiki/Unified_Diagnostic_Services" title="Unified Diagnostic Services">Unified Diagnostic Services</a> (UDS) - ISO 14229 (automotive diagnostics)</li> <li><a href="/w/index.php?title=LeisureCAN&amp;action=edit&amp;redlink=1" class="new" title="LeisureCAN (page does not exist)">LeisureCAN</a> - open standard for the leisure craft/vehicle industry</li></ul> <div class="mw-heading mw-heading3"><h3 id="Other_approaches">Other approaches</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=31" title="Edit section: Other approaches"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/CANaerospace" title="CANaerospace">CANaerospace</a> - Stock (for the aviation industry)</li> <li><a href="/w/index.php?title=CAN_Kingdom&amp;action=edit&amp;redlink=1" class="new" title="CAN Kingdom (page does not exist)">CAN Kingdom</a> - Kvaser (embedded control system)</li> <li>CCP/<a href="/wiki/XCP_(protocol)" title="XCP (protocol)">XCP</a> (automotive ECU calibration)</li> <li><a href="/wiki/GMLAN" class="mw-redirect" title="GMLAN">GMLAN</a> - General Motors (for <a href="/wiki/General_Motors" title="General Motors">General Motors</a>)</li> <li><a href="/wiki/RV-C" title="RV-C">RV-C</a> - RVIA (used for recreational vehicles)</li> <li><a href="/wiki/SafetyBUS_p" title="SafetyBUS p">SafetyBUS p</a> - Pilz (used for industrial <a href="/wiki/Automation" title="Automation">automation</a>)</li> <li><a href="/wiki/UAVCAN" class="mw-redirect" title="UAVCAN">UAVCAN</a> (aerospace and robotics)</li> <li><a href="/wiki/Cubesat_Space_Protocol" title="Cubesat Space Protocol">CSP</a> (CubeSat Space Protocol)</li> <li><a href="/wiki/VSCP" class="mw-redirect" title="VSCP">VSCP</a> (Very Simple Control Protocol) a free automation protocol suitable for all sorts of automation tasks</li></ul> <div class="mw-heading mw-heading2"><h2 id="CANopen_Lift"><span class="anchor" id="CANopen_Lift"></span> CANopen Lift</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=32" title="Edit section: CANopen Lift"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The CANopen Special Interest Group (SIG) "Lift Control", which was founded in 2001, develops the CANopen application profile CiA 417 for <a href="/wiki/Elevator" title="Elevator">lift</a> control systems. It works on extending the features, improves technical content and ensures that the current legal standards for lift control systems are met. The first version of CiA 417 was published (available for CiA members) in summer 2003, version 2.0 in February 2010, version 2.1.0 in July 2012, version 2.2.0 in December 2015, and version 2.3.1 in February 2020. </p><p>Jörg Hellmich (ELFIN GmbH) is the chairman of this SIG and manages a <a rel="nofollow" class="external text" href="https://en.canopen-lift.org/wiki/">wiki of the CANopen lift community</a> with content about CANopen lift. </p> <div class="mw-heading mw-heading2"><h2 id="Security">Security</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=33" title="Edit section: Security"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>CAN is a low-level protocol and does not support any security features intrinsically. There is also no encryption in standard CAN implementations, which leaves these networks open to man-in-the-middle frame interception. In most implementations, applications are expected to deploy their own security mechanisms; e.g., to authenticate incoming commands or the presence of certain devices on the network. Failure to implement adequate security measures may result in various sorts of attacks if the opponent manages to insert messages on the bus.<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">&#91;</span>21<span class="cite-bracket">&#93;</span></a></sup> While passwords exist for some safety-critical functions, such as modifying firmware, programming keys, or controlling antilock brake actuators, these systems are not implemented universally and have a limited number of seed/key pairs. </p> <div class="mw-heading mw-heading2"><h2 id="Development_tools">Development tools</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=34" title="Edit section: Development tools"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>When developing or troubleshooting the CAN bus, examination of hardware signals can be very important. <a href="/wiki/Logic_analyzer" title="Logic analyzer">Logic analyzers</a> and <a href="/wiki/Bus_analyzer" title="Bus analyzer">bus analyzers</a> are tools that collect, analyse, decode and store signals so people can view the high-speed waveforms at their leisure. There are also specialist tools as well as CAN bus monitors. </p><p>A <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238216509"><span class="vanchor"><span id="CAN_bus_monitor"></span><span class="vanchor-text">CAN bus monitor</span></span> is an analysis tool, often a combination of <a href="/wiki/Computer_hardware" title="Computer hardware">hardware</a> and <a href="/wiki/Software" title="Software">software</a>, used during development of hardware that uses the CAN bus. </p><p>Typically the CAN bus monitor will listen to the traffic on the CAN bus in order to display it in a user interface. Often the CAN bus monitor offers the possibility to simulate CAN bus activity by sending CAN frames to the bus. The CAN bus monitor can therefore be used to validate expected CAN traffic from a given device or to simulate CAN traffic in order to validate the reaction from a given device connected to the CAN bus. </p> <div class="mw-heading mw-heading2"><h2 id="Licensing">Licensing</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=35" title="Edit section: Licensing"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Bosch holds patents on the technology, though those related to the original protocol have now expired. Manufacturers of CAN-compatible microprocessors pay license fees to Bosch for use of the CAN trademark and any of the newer patents related to CAN FD, and these are normally passed on to the customer in the price of the chip. Manufacturers of products with custom <a href="/wiki/Application-specific_integrated_circuit" title="Application-specific integrated circuit">ASICs</a> or <a href="/wiki/FPGA" class="mw-redirect" title="FPGA">FPGAs</a> containing CAN-compatible modules need to pay a fee for the CAN Protocol License if they wish to use the CAN trademark or CAN FD capabilities.<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">&#91;</span>22<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=36" title="Edit section: See also"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/CANopen" title="CANopen">CANopen</a>&#160;– Computer network protocol</li> <li><a href="/wiki/Tesla_EtherLoop" class="mw-redirect" title="Tesla EtherLoop">Automotive EtherLoop</a>&#160;– Telecommunications hybrid technology<span style="display:none" class="category-annotation-with-redirected-description">Pages displaying short descriptions of redirect targets</span></li> <li><a href="/wiki/FlexRay" title="FlexRay">FlexRay</a>&#160;– Computer network protocol</li> <li><a href="/wiki/List_of_network_buses" title="List of network buses">List of network buses</a>&#160;– List of single collision domain electronic communication bus systems</li> <li><a href="/wiki/Modbus" title="Modbus">Modbus</a>&#160;– Serial communications protocol</li> <li><a href="/wiki/MOST_bus" class="mw-redirect" title="MOST bus">MOST bus</a>&#160;– High-speed multimedia network technology used in the automotive industry<span style="display:none" class="category-annotation-with-redirected-description">Pages displaying short descriptions of redirect targets</span></li></ul> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=37" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239543626"><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-can-cia-1"><span class="mw-cite-backlink">^ <a href="#cite_ref-can-cia_1-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-can-cia_1-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20180715123539/https://www.can-cia.org/can-knowledge/can/can-history/">"CAN History"</a>. CAN in Automation. Archived from <a rel="nofollow" class="external text" href="http://www.can-cia.org/can-knowledge/can/can-history/">the original</a> on 2018-07-15<span class="reference-accessdate">. Retrieved <span class="nowrap">2016-02-25</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=CAN+History&amp;rft.pub=CAN+in+Automation&amp;rft_id=http%3A%2F%2Fwww.can-cia.org%2Fcan-knowledge%2Fcan%2Fcan-history%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20190610012852/https://www.mercedes-benz.com/en/mercedes-benz/classic/history/mercedes-benz-s-class-w-140/">"Mercedes-Benz S-Class W 140"</a>. <i>mercedes-benz.com</i>. 23 February 2016. Archived from <a rel="nofollow" class="external text" href="https://www.mercedes-benz.com/en/mercedes-benz/classic/history/mercedes-benz-s-class-w-140/">the original</a> on 10 June 2019<span class="reference-accessdate">. Retrieved <span class="nowrap">27 October</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=mercedes-benz.com&amp;rft.atitle=Mercedes-Benz+S-Class+W+140.&amp;rft.date=2016-02-23&amp;rft_id=https%3A%2F%2Fwww.mercedes-benz.com%2Fen%2Fmercedes-benz%2Fclassic%2Fhistory%2Fmercedes-benz-s-class-w-140%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-:0-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-:0_3-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://can-newsletter.org/engineering/applications/160322_25th-anniversary-mercedes-w140-first-car-with-can/">"CAN in Automation - Mercedes W140: First car with CAN"</a>. <i>can-newsletter.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">27 October</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=can-newsletter.org&amp;rft.atitle=CAN+in+Automation+-+Mercedes+W140%3A+First+car+with+CAN&amp;rft_id=https%3A%2F%2Fcan-newsletter.org%2Fengineering%2Fapplications%2F160322_25th-anniversary-mercedes-w140-first-car-with-can%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-:1-4"><span class="mw-cite-backlink">^ <a href="#cite_ref-:1_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:1_4-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:1_4-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20170523083421/http://www.bosch-semiconductors.de/en/automotive_electronics/ip_modules/can_literature_2.html">"Bosch Semiconductor CAN Literature"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.bosch-semiconductors.de/en/automotive_electronics/ip_modules/can_literature_2.html">the original</a> on 2017-05-23<span class="reference-accessdate">. Retrieved <span class="nowrap">2017-05-31</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Bosch+Semiconductor+CAN+Literature&amp;rft_id=http%3A%2F%2Fwww.bosch-semiconductors.de%2Fen%2Fautomotive_electronics%2Fip_modules%2Fcan_literature_2.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.obddiag.net/adapter.html"><i>Building Adapter for Vehicle On-board Diagnostic</i></a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20180514092143/http://www.obddiag.net/adapter.html">Archived</a> 2018-05-14 at the <a href="/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a>, obddiag.net, accessed 2009-09-09</span> </li> <li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text">Comparison of Event-Triggered and Time-Triggered Concepts with Regard to Distributed Control Systems A. Albert, Robert Bosch GmbH Embedded World, 2004, Nürnberg</span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.gtplanet.net/nismo-increases-gt6-gps-data-logger-functionality-and-track-count/">"NISMO Increases GT6 GPS Data Logger Functionality and Track Count"</a>. <i>www.gtplanet.net</i>. 25 October 2014.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.gtplanet.net&amp;rft.atitle=NISMO+Increases+GT6+GPS+Data+Logger+Functionality+and+Track+Count&amp;rft.date=2014-10-25&amp;rft_id=http%3A%2F%2Fwww.gtplanet.net%2Fnismo-increases-gt6-gps-data-logger-functionality-and-track-count%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.shearwater.com/monthly-blog-posts/what-is-divecan-and-why-should-i-care/">"What is DiveCAN and why should I care?"</a>. 22 March 2016.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=What+is+DiveCAN+and+why+should+I+care%3F&amp;rft.date=2016-03-22&amp;rft_id=https%3A%2F%2Fwww.shearwater.com%2Fmonthly-blog-posts%2Fwhat-is-divecan-and-why-should-i-care%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-:2-9"><span class="mw-cite-backlink">^ <a href="#cite_ref-:2_9-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:2_9-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20210308220315/https://www.can-cia.org/fileadmin/resources/documents/proceedings/2003_fellmeth.pdf">"ISO11783 a Standardized Tractor – Implement Interface"</a> <span class="cs1-format">(PDF)</span>. Archived from <a rel="nofollow" class="external text" href="https://www.can-cia.org/fileadmin/resources/documents/proceedings/2003_fellmeth.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2021-03-08<span class="reference-accessdate">. Retrieved <span class="nowrap">2017-01-29</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=ISO11783+a+Standardized+Tractor+%E2%80%93+Implement+Interface&amp;rft_id=https%3A%2F%2Fwww.can-cia.org%2Ffileadmin%2Fresources%2Fdocuments%2Fproceedings%2F2003_fellmeth.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-:3-10"><span class="mw-cite-backlink">^ <a href="#cite_ref-:3_10-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:3_10-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:3_10-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation cs1"><a rel="nofollow" class="external text" href="https://www.iso.org/standard/63648.html"><i>ISO 11898-1:2015 – Road vehicles — Controller area network (CAN) — Part 1: Data link layer and physical signalling</i></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=ISO+11898-1%3A2015+%E2%80%93+Road+vehicles+%E2%80%94+Controller+area+network+%28CAN%29+%E2%80%94+Part+1%3A+Data+link+layer+and+physical+signalling&amp;rft_id=https%3A%2F%2Fwww.iso.org%2Fstandard%2F63648.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-:6-11"><span class="mw-cite-backlink">^ <a href="#cite_ref-:6_11-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:6_11-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFNasser2023" class="citation book cs1">Nasser, Ahmad MK (2023). <i>Automotive cybersecurity engineering handbook: the automotive engineer's roadmap to cyber-resilient vehicles</i> (1st&#160;ed.). Birmingham Mumbai: Packt. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/wiki/Special:BookSources/978-1-80107-653-1" title="Special:BookSources/978-1-80107-653-1"><bdi>978-1-80107-653-1</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Automotive+cybersecurity+engineering+handbook%3A+the+automotive+engineer%27s+roadmap+to+cyber-resilient+vehicles&amp;rft.place=Birmingham+Mumbai&amp;rft.edition=1st&amp;rft.pub=Packt&amp;rft.date=2023&amp;rft.isbn=978-1-80107-653-1&amp;rft.aulast=Nasser&amp;rft.aufirst=Ahmad+MK&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-:4-12"><span class="mw-cite-backlink">^ <a href="#cite_ref-:4_12-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:4_12-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">CiA: <a rel="nofollow" class="external text" href="https://www.can-cia.org/groups/international-standardization/">International standardization</a>.</span> </li> <li id="cite_note-:5-13"><span class="mw-cite-backlink">^ <a href="#cite_ref-:5_13-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:5_13-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=33422">"ISO 11898-1:2003 - Road vehicles -- Controller area network (CAN) -- Part 1: Data link layer and physical signalling"</a>. ISO.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=ISO+11898-1%3A2003+-+Road+vehicles+--+Controller+area+network+%28CAN%29+--+Part+1%3A+Data+link+layer+and+physical+signalling&amp;rft.pub=ISO&amp;rft_id=http%3A%2F%2Fwww.iso.org%2Fiso%2Fiso_catalogue%2Fcatalogue_tc%2Fcatalogue_detail.htm%3Fcsnumber%3D33422&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.bosch-semiconductors.com/ip-modules/can-protocols/can-xl/">"CAN_XL, CAN XL, CAN, Bosch_CAN, IP-modules"</a>. <i>Bosch semiconductors for Automotive</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2024-05-15</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Bosch+semiconductors+for+Automotive&amp;rft.atitle=CAN_XL%2C+CAN+XL%2C+CAN%2C+Bosch_CAN%2C+IP-modules&amp;rft_id=https%3A%2F%2Fwww.bosch-semiconductors.com%2Fip-modules%2Fcan-protocols%2Fcan-xl%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFDaigmorteBoyer2017" class="citation cs2">Daigmorte, Hugo; Boyer, Marc (2017), <a rel="nofollow" class="external text" href="https://dl.acm.org/citation.cfm?doid=3139258.3139261">"Evaluation of admissible CAN bus load with weak synchronization mechanism"</a>, <i>Proc. of the 24th Int. Conf. on Real-Time Networks and Systems (RTNS 2017)</i>, Grenoble, France: ACM</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=bookitem&amp;rft.atitle=Evaluation+of+admissible+CAN+bus+load+with+weak+synchronization+mechanism&amp;rft.btitle=Proc.+of+the+24th+Int.+Conf.+on+Real-Time+Networks+and+Systems+%28RTNS+2017%29&amp;rft.place=Grenoble%2C+France&amp;rft.pub=ACM&amp;rft.date=2017&amp;rft.aulast=Daigmorte&amp;rft.aufirst=Hugo&amp;rft.au=Boyer%2C+Marc&amp;rft_id=https%3A%2F%2Fdl.acm.org%2Fcitation.cfm%3Fdoid%3D3139258.3139261&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://ww1.microchip.com/downloads/en/AppNotes/00754.pdf">"Understanding Microchip's CAN Module Bit Timing"</a> <span class="cs1-format">(PDF)</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Understanding+Microchip%27s+CAN+Module+Bit+Timing&amp;rft_id=http%3A%2F%2Fww1.microchip.com%2Fdownloads%2Fen%2FAppNotes%2F00754.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.st.com/content/st_com/en/product-selector.html?querycriteria=productId=SC2185$$1=ESDCAN*">"ISO7637-3 diodes protection for CAN bus"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=ISO7637-3+diodes+protection+for+CAN+bus&amp;rft_id=http%3A%2F%2Fwww.st.com%2Fcontent%2Fst_com%2Fen%2Fproduct-selector.html%3Fquerycriteria%3DproductId%3DSC2185%24%241%3DESDCAN%2A&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.st.com/content/st_com/en/product-selector.html?querycriteria=productId=SC2185$$1=ESDCAN*">"CAN bus ESD protection"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=CAN+bus+ESD+protection&amp;rft_id=http%3A%2F%2Fwww.st.com%2Fcontent%2Fst_com%2Fen%2Fproduct-selector.html%3Fquerycriteria%3DproductId%3DSC2185%24%241%3DESDCAN%2A&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-interframe-space-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-interframe-space_21-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://rs232-rs485.blogspot.com/2009/11/can-bus-message-frames-overload.html">"CAN BUS MESSAGE FRAMES – Overload Frame, Interframe Space"</a>. 18 November 2009.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=CAN+BUS+MESSAGE+FRAMES+%E2%80%93+Overload+Frame%2C+Interframe+Space&amp;rft.date=2009-11-18&amp;rft_id=http%3A%2F%2Frs232-rs485.blogspot.com%2F2009%2F11%2Fcan-bus-message-frames-overload.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160425131652/http://vector.com/vi_controller_area_network_en.html">"Controller Area Network (CAN)"</a>. Vector Group. Archived from <a rel="nofollow" class="external text" href="https://vector.com/vi_controller_area_network_en.html">the original</a> on 25 April 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">25 Sep</span> 2013</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Controller+Area+Network+%28CAN%29&amp;rft.pub=Vector+Group&amp;rft_id=https%3A%2F%2Fvector.com%2Fvi_controller_area_network_en.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.vice.com/en_us/article/ae33jk/we-drove-a-car-while-it-was-being-hacked">"We Drove a Car While It Was Being Hacked"</a>. <i>www.vice.com</i>. 29 May 2014. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20191108154439/https://www.vice.com/en_us/article/ae33jk/we-drove-a-car-while-it-was-being-hacked">Archived</a> from the original on 8 November 2019.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.vice.com&amp;rft.atitle=We+Drove+a+Car+While+It+Was+Being+Hacked&amp;rft.date=2014-05-29&amp;rft_id=https%3A%2F%2Fwww.vice.com%2Fen_us%2Farticle%2Fae33jk%2Fwe-drove-a-car-while-it-was-being-hacked&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> <li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160316021829/http://www.bosch-semiconductors.de/media/automotive_electronics/pdf_2/ipmodules_3/can_protocol_license_1/Bosch_CAN_Protocol_License_Conditions.pdf">"License Conditions CAN Protocol and CAN FD Protocol"</a> <span class="cs1-format">(PDF)</span>. Archived from <a rel="nofollow" class="external text" href="http://www.bosch-semiconductors.de/media/automotive_electronics/pdf_2/ipmodules_3/can_protocol_license_1/Bosch_CAN_Protocol_License_Conditions.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2016-03-16<span class="reference-accessdate">. Retrieved <span class="nowrap">2016-03-15</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=License+Conditions+CAN+Protocol+and+CAN+FD+Protocol&amp;rft_id=http%3A%2F%2Fwww.bosch-semiconductors.de%2Fmedia%2Fautomotive_electronics%2Fpdf_2%2Fipmodules_3%2Fcan_protocol_license_1%2FBosch_CAN_Protocol_License_Conditions.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ACAN+bus" class="Z3988"></span></span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=CAN_bus&amp;action=edit&amp;section=38" title="Edit section: External links"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-External_links plainlinks metadata ambox ambox-style ambox-external_links" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/40px-Edit-clear.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/60px-Edit-clear.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/f/f2/Edit-clear.svg/80px-Edit-clear.svg.png 2x" data-file-width="48" data-file-height="48" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article's <b>use of <a href="/wiki/Wikipedia:External_links" title="Wikipedia:External links">external links</a> may not follow Wikipedia's policies or guidelines</b>.<span class="hide-when-compact"> Please <a class="external text" href="https://en.wikipedia.org/w/index.php?title=CAN_bus&amp;action=edit">improve this article</a> by removing <a href="/wiki/Wikipedia:What_Wikipedia_is_not#Wikipedia_is_not_a_mirror_or_a_repository_of_links,_images,_or_media_files" title="Wikipedia:What Wikipedia is not">excessive</a> or <a href="/wiki/Wikipedia:External_links" title="Wikipedia:External links">inappropriate</a> external links, and converting useful links where appropriate into <a href="/wiki/Wikipedia:Citing_sources" title="Wikipedia:Citing sources">footnote references</a>.</span> <span class="date-container"><i>(<span class="date">January 2024</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <dl><dt>Specifications</dt> <dd> <ul><li><a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=63648">ISO 11898-1 Standard (2015)</a> - includes CAN and CAN-FD specifications</li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20221010170747/http://esd.cs.ucr.edu/webres/can20.pdf">Bosch CAN Specification Version 2.0 (1991, 1997)</a> - also known as <i>Classical CAN</i> and <i>CAN-Classic</i></li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20151211125301/http://www.bosch-semiconductors.de/media/ubk_semiconductors/pdf_1/canliteratur/can_fd_spec.pdf">Bosch CAN-FD Specification Version 1.0 (2012)</a> - increase data rates up to 8<span class="nowrap">&#160;</span>Mbit/s</li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20221022035940/https://www.bosch-semiconductors.com/media/ip_modules/pdf_2/can_fd_light/20220825_can_fd_light.pdf">Bosch CAN-FD-Light (future)</a> - cost-optimized subset of CAN-FD</li> <li><a rel="nofollow" class="external text" href="https://www.bosch-semiconductors.com/ip-modules/can-protocols/can-xl/">Bosch CAN-XL (future)</a> - increase data rates up to 20<span class="nowrap">&#160;</span>Mbit/s</li></ul></dd></dl> <dl><dt>Other</dt></dl> <ul><li><a rel="nofollow" class="external text" href="https://doi.org/10.1007%2Fs11241-007-9012-7">Controller Area Network (CAN) Schedulability Analysis: Refuted, Revisited and Revised</a></li> <li><a rel="nofollow" class="external text" href="http://www.interfacebus.com/Can_Bus_Connector_Pinout.html">Pinouts for common CAN bus connectors</a></li> <li><a rel="nofollow" class="external text" href="http://marco.guardigli.it/2010/10/hacking-your-car.html">A webpage about CAN in automotive</a></li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20190616130249/https://www.cs.york.ac.uk/ftpdir/reports/2011/YCS/462/YCS-2011-462.pdf">Controller Area Network (CAN) Schedulability Analysis with FIFO Queues</a></li> <li><a rel="nofollow" class="external text" href="http://www.analog.com/static/imported-files/application_notes/AN-1123.pdf">Controller Area Network (CAN) Implementation Guide</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20121210233016/http://www.analog.com/static/imported-files/application_notes/AN-1123.pdf">Archived</a> 2012-12-10 at the <a href="/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a></li> <li><a rel="nofollow" class="external text" href="http://www.mhs-elektronik.de/userdata/downloads/BitCalc.zip">Freeware Bit-Timing calculator for Windows, supports a lot of microcontrollers, e.g. Atmel, STM32, Microchip, Renesas, ...</a> (ZIPfile)</li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20170801161111/https://elearning.vector.com/vl_can_introduction_en.html">Free e-learning module "Introduction to CAN"</a></li> <li><a rel="nofollow" class="external text" href="http://www.mil-1553.com/tutorials-arinc">ARINC-825 Tutorial (video)</a> from Excalibur Systems Inc.</li> <li><a rel="nofollow" class="external text" href="http://www.can-cia.org">Website of CiA</a></li> <li><a rel="nofollow" class="external text" href="http://www.can-newsletter.org">CAN Newsletter Online</a></li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20161213185005/http://inst.cs.berkeley.edu/~ee249/fa08/Lectures/handout_canbus2.pdf">Understanding and Using the Controller Area Network from UC Berkeley</a></li> <li><a rel="nofollow" class="external text" href="https://www.kvaser.com/can-protocol-tutorial/">CAN Protocol Tutorial</a></li> <li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160807075624/http://blog.st.com/can-bus-protection-stmicroelectronics-protects-what-protects-you/">ESD protection</a> for CAN bus and <a href="/wiki/CAN_FD" title="CAN FD">CAN FD</a></li></ul> <div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style></div><div role="navigation" class="navbox" aria-labelledby="Technical_and_de_facto_standards_for_wired_computer_buses" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Computer_bus" title="Template:Computer bus"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Computer_bus" title="Template talk:Computer bus"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Computer_bus" title="Special:EditPage/Template:Computer bus"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Technical_and_de_facto_standards_for_wired_computer_buses" style="font-size:114%;margin:0 4em"><a href="/wiki/Technical_standard" title="Technical standard">Technical</a> and <a href="/wiki/De_facto_standard" title="De facto standard"><i>de facto</i> standards</a> for <a href="/wiki/Wired_communication" title="Wired communication">wired</a> <a href="/wiki/Bus_(computing)" title="Bus (computing)">computer buses</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">General</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/System_bus" title="System bus">System bus</a></li> <li><a href="/wiki/Front-side_bus" title="Front-side bus">Front-side bus</a></li> <li><a href="/wiki/Back-side_bus" title="Back-side bus">Back-side bus</a></li> <li><a href="/wiki/Daisy_chain_(electrical_engineering)" title="Daisy chain (electrical engineering)">Daisy chain</a></li> <li><a href="/wiki/Control_bus" title="Control bus">Control bus</a></li> <li><a href="/wiki/Address_bus" class="mw-redirect" title="Address bus">Address bus</a></li> <li><a href="/wiki/Bus_contention" title="Bus contention">Bus contention</a></li> <li><a href="/wiki/Bus_mastering" title="Bus mastering">Bus mastering</a></li> <li><a href="/wiki/Network_on_a_chip" title="Network on a chip">Network on a chip</a></li> <li><a href="/wiki/Plug_and_play" title="Plug and play">Plug and play</a></li> <li><a href="/wiki/List_of_interface_bit_rates#Computer_buses" title="List of interface bit rates">List of bus bandwidths</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Standards</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/SS-50_bus" title="SS-50 bus">SS-50 bus</a></li> <li><a href="/wiki/S-100_bus" title="S-100 bus">S-100 bus</a></li> <li><a href="/wiki/Multibus" title="Multibus">Multibus</a></li> <li><a href="/wiki/Unibus" title="Unibus">Unibus</a></li> <li><a href="/wiki/VAXBI_bus" title="VAXBI bus">VAXBI</a></li> <li><a href="/wiki/MBus_(SPARC)" title="MBus (SPARC)">MBus</a></li> <li><a href="/wiki/STD_Bus" title="STD Bus">STD Bus</a></li> <li><a href="/wiki/System_Management_Bus" title="System Management Bus">SMBus</a></li> <li><a href="/wiki/Q-Bus" title="Q-Bus">Q-Bus</a></li> <li><a href="/wiki/Europe_Card_Bus" title="Europe Card Bus">Europe Card Bus</a></li> <li><a href="/wiki/Industry_Standard_Architecture" title="Industry Standard Architecture">ISA</a></li> <li><a href="/wiki/STEbus" title="STEbus">STEbus</a></li> <li><a href="/wiki/Amiga_Zorro_II" title="Amiga Zorro II">Zorro II</a></li> <li><a href="/wiki/Amiga_Zorro_III" title="Amiga Zorro III">Zorro III</a></li> <li><a href="/wiki/Computer_Automated_Measurement_and_Control" title="Computer Automated Measurement and Control">CAMAC</a></li> <li><a href="/wiki/FASTBUS" title="FASTBUS">FASTBUS</a></li> <li><a href="/wiki/Low_Pin_Count" title="Low Pin Count">LPC</a></li> <li><a href="/wiki/HP_Precision_Bus" title="HP Precision Bus">HP Precision Bus</a></li> <li><a href="/wiki/Extended_Industry_Standard_Architecture" title="Extended Industry Standard Architecture">EISA</a></li> <li><a href="/wiki/VMEbus" title="VMEbus">VME</a></li> <li><a href="/wiki/VME_eXtensions_for_Instrumentation" title="VME eXtensions for Instrumentation">VXI</a></li> <li><a href="/wiki/VXS" title="VXS">VXS</a></li> <li><a href="/wiki/VPX" title="VPX">VPX</a></li> <li><a href="/wiki/NuBus" title="NuBus">NuBus</a></li> <li><a href="/wiki/TURBOchannel" title="TURBOchannel">TURBOchannel</a></li> <li><a href="/wiki/Micro_Channel_architecture" title="Micro Channel architecture">MCA</a></li> <li><a href="/wiki/SBus" title="SBus">SBus</a></li> <li><a href="/wiki/VESA_Local_Bus" title="VESA Local Bus">VLB</a></li> <li><a href="/wiki/GSC_bus" title="GSC bus">HP GSC bus</a></li> <li><a href="/wiki/InfiniBand" title="InfiniBand">InfiniBand</a></li> <li><a href="/wiki/Ethernet" title="Ethernet">Ethernet</a></li> <li><a href="/wiki/Ultra_Port_Architecture" title="Ultra Port Architecture">UPA</a></li> <li><a href="/wiki/Peripheral_Component_Interconnect" title="Peripheral Component Interconnect">PCI</a></li> <li><a href="/wiki/PCI-X" title="PCI-X">PCI Extended (PCI-X)</a></li> <li><a href="/wiki/PCI_eXtensions_for_Instrumentation" title="PCI eXtensions for Instrumentation">PXI</a></li> <li><a href="/wiki/PCI_Express" title="PCI Express">PCI Express (PCIe)</a></li> <li><a href="/wiki/Accelerated_Graphics_Port" title="Accelerated Graphics Port">AGP</a></li> <li><a href="/wiki/Compute_Express_Link" title="Compute Express Link">Compute Express Link (CXL)</a></li> <li><a href="/wiki/Direct_Media_Interface" title="Direct Media Interface">Direct Media Interface (DMI)</a></li> <li><a href="/wiki/RapidIO" title="RapidIO">RapidIO</a></li> <li><a href="/wiki/Intel_QuickPath_Interconnect" title="Intel QuickPath Interconnect">Intel QuickPath Interconnect</a></li> <li><a href="/wiki/NVLink" title="NVLink">NVLink</a></li> <li><a href="/wiki/HyperTransport" title="HyperTransport">HyperTransport</a> <ul><li><a href="/wiki/Infinity_Fabric" class="mw-redirect" title="Infinity Fabric">Infinity Fabric</a></li></ul></li> <li><a href="/wiki/Intel_Ultra_Path_Interconnect" title="Intel Ultra Path Interconnect">Intel Ultra Path Interconnect</a></li> <li><a href="/wiki/Coherent_Accelerator_Processor_Interface" title="Coherent Accelerator Processor Interface">Coherent Accelerator Processor Interface (CAPI)</a></li> <li><a href="/wiki/SpaceWire" title="SpaceWire">SpaceWire</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Storage</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/ST-506/ST-412" title="ST-506/ST-412">ST-506</a></li> <li><a href="/wiki/Enhanced_Small_Disk_Interface" title="Enhanced Small Disk Interface">ESDI</a></li> <li><a href="/wiki/Intelligent_Peripheral_Interface" title="Intelligent Peripheral Interface">IPI</a></li> <li><a href="/wiki/Storage_Module_Device" title="Storage Module Device">SMD</a></li> <li><a href="/wiki/Parallel_ATA" title="Parallel ATA">Parallel ATA (PATA)</a></li> <li><a href="/wiki/Bus_and_Tag" title="Bus and Tag">Bus and Tag</a></li> <li><a href="/wiki/Digital_Storage_Systems_Interconnect" title="Digital Storage Systems Interconnect">DSSI</a></li> <li><a href="/wiki/HIPPI" title="HIPPI">HIPPI</a></li> <li><a href="/wiki/SATA" title="SATA">Serial ATA (SATA)</a></li> <li><a href="/wiki/SCSI" title="SCSI">SCSI</a> <ul><li><a href="/wiki/Parallel_SCSI" title="Parallel SCSI">Parallel</a></li> <li><a href="/wiki/Serial_Attached_SCSI" title="Serial Attached SCSI">SAS</a></li></ul></li> <li><a href="/wiki/ESCON" title="ESCON">ESCON</a></li> <li><a href="/wiki/Fibre_Channel" title="Fibre Channel">Fibre Channel</a></li> <li><a href="/wiki/Serial_Storage_Architecture" title="Serial Storage Architecture">SSA</a></li> <li><a href="/wiki/SATA_Express" title="SATA Express">SATAe</a></li> <li>PCI Express (via <a href="/wiki/Advanced_Host_Controller_Interface" title="Advanced Host Controller Interface">AHCI</a> or <a href="/wiki/NVM_Express" title="NVM Express">NVMe</a> logical device interface)</li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Peripheral</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Apple_Desktop_Bus" title="Apple Desktop Bus">Apple Desktop Bus</a></li> <li><a href="/wiki/Atari_SIO" title="Atari SIO">Atari SIO</a></li> <li><a href="/wiki/Digital_Control_Bus" title="Digital Control Bus">DCB</a></li> <li><a href="/wiki/Commodore_bus" title="Commodore bus">Commodore bus</a></li> <li><a href="/wiki/HP-IL" title="HP-IL">HP-IL</a></li> <li><a href="/wiki/HIL_bus" title="HIL bus">HIL</a></li> <li><a href="/wiki/MIDI" title="MIDI">MIDI</a></li> <li><a href="/wiki/RS-232" title="RS-232">RS-232</a></li> <li><a href="/wiki/RS-422" title="RS-422">RS-422</a></li> <li><a href="/wiki/RS-423" title="RS-423">RS-423</a></li> <li><a href="/wiki/RS-485" title="RS-485">RS-485</a></li> <li><a href="/wiki/Lightning_(connector)" title="Lightning (connector)">Lightning</a></li> <li><a href="/wiki/DMX512#DMX512-A" title="DMX512">DMX512-A</a></li> <li><a href="/wiki/IEEE-488" class="mw-redirect" title="IEEE-488">IEEE-488 (GPIB)</a></li> <li><a href="/wiki/IEEE_1284" title="IEEE 1284">IEEE-1284 (parallel port)</a></li> <li><a href="/wiki/IEEE_1394" title="IEEE 1394">IEEE-1394 (FireWire)</a></li> <li><a href="/wiki/UNI/O" title="UNI/O">UNI/O</a></li> <li><a href="/wiki/1-Wire" title="1-Wire">1-Wire</a></li> <li><a href="/wiki/I%C2%B2C" title="I²C">I²C</a> (<a href="/wiki/ACCESS.bus" title="ACCESS.bus">ACCESS.bus</a>, <a href="/wiki/Power_Management_Bus" title="Power Management Bus">PMBus</a>, <a href="/wiki/System_Management_Bus" title="System Management Bus">SMBus</a>)</li> <li><a href="/wiki/I3C_(bus)" title="I3C (bus)">I3C</a></li> <li><a href="/wiki/Serial_Peripheral_Interface" title="Serial Peripheral Interface">SPI</a></li> <li><a href="/wiki/IEC_61030" title="IEC 61030">D²B</a></li> <li><a href="/wiki/Parallel_SCSI" title="Parallel SCSI">Parallel SCSI</a></li> <li><a href="/wiki/Profibus" title="Profibus">Profibus</a></li> <li><a href="/wiki/USB" title="USB">USB</a></li> <li><a href="/wiki/Camera_Link" title="Camera Link">Camera Link</a></li> <li><a href="/wiki/PCI_Express#PCI_Express_External_Cabling" title="PCI Express">External PCIe</a></li> <li><a href="/wiki/Thunderbolt_(interface)" title="Thunderbolt (interface)">Thunderbolt</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Audio</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/ADAT_Lightpipe" title="ADAT Lightpipe">ADAT Lightpipe</a></li> <li><a href="/wiki/AES3" title="AES3">AES3</a></li> <li><a href="/wiki/Intel_High_Definition_Audio" title="Intel High Definition Audio">Intel HD Audio</a></li> <li><a href="/wiki/I%C2%B2S" title="I²S">I²S</a></li> <li><a href="/wiki/MADI" title="MADI">MADI</a></li> <li><a href="/wiki/McASP" title="McASP">McASP</a></li> <li><a href="/wiki/S/PDIF" title="S/PDIF">S/PDIF</a></li> <li><a href="/wiki/TOSLINK" title="TOSLINK">TOSLINK</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Portable</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/PC_Card" title="PC Card">PC Card</a></li> <li><a href="/wiki/ExpressCard" title="ExpressCard">ExpressCard</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Embedded</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Multidrop_bus" title="Multidrop bus">Multidrop bus</a></li> <li><a href="/wiki/CoreConnect" title="CoreConnect">CoreConnect</a></li> <li><a href="/wiki/Advanced_Microcontroller_Bus_Architecture" title="Advanced Microcontroller Bus Architecture">AMBA</a> (<a href="/wiki/Advanced_eXtensible_Interface" title="Advanced eXtensible Interface">AXI</a>)</li> <li><a href="/wiki/Wishbone_(computer_bus)" title="Wishbone (computer bus)">Wishbone</a></li> <li><a href="/wiki/SLIMbus" title="SLIMbus">SLIMbus</a></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div><small>Interfaces are listed by their speed in the (roughly) ascending order, so the interface at the end of each section should be the fastest.</small><br /><span class="noviewer" typeof="mw:File"><span title="Category"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/16px-Symbol_category_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/23px-Symbol_category_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/31px-Symbol_category_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <a href="/wiki/Category:Computer_buses" title="Category:Computer buses">Category</a></div></td></tr></tbody></table></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236075235"></div><div role="navigation" class="navbox" aria-labelledby="Automation_protocols" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239400231"><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Automation_protocols" title="Template:Automation protocols"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Automation_protocols" title="Template talk:Automation protocols"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Automation_protocols" title="Special:EditPage/Template:Automation protocols"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Automation_protocols" style="font-size:114%;margin:0 4em"><a href="/wiki/List_of_automation_protocols" title="List of automation protocols">Automation protocols</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Process automation</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/AS-Interface" title="AS-Interface">AS-i</a></li> <li><a href="/wiki/Bristol_Standard_Asynchronous_Protocol" title="Bristol Standard Asynchronous Protocol">BSAP</a></li> <li><a href="/wiki/CC-Link_Industrial_Networks" class="mw-redirect" title="CC-Link Industrial Networks">CC-Link Industrial Networks</a></li> <li><a href="/wiki/Common_Industrial_Protocol" title="Common Industrial Protocol">CIP</a></li> <li><a class="mw-selflink selflink">CAN bus</a> <ul><li><a href="/wiki/CANopen" title="CANopen">CANopen</a></li> <li><a href="/wiki/DeviceNet" title="DeviceNet">DeviceNet</a></li></ul></li> <li><a href="/wiki/ControlNet" title="ControlNet">ControlNet</a></li> <li><a href="/wiki/DF-1_Protocol" title="DF-1 Protocol">DF-1</a></li> <li><a href="/wiki/DirectNET_Protocol" title="DirectNET Protocol">DirectNET</a></li> <li><a href="/wiki/EtherCAT" title="EtherCAT">EtherCAT</a></li> <li><a href="/wiki/Ethernet_Global_Data_Protocol" title="Ethernet Global Data Protocol">Ethernet Global Data (EGD)</a></li> <li><a href="/wiki/Ethernet_Powerlink" title="Ethernet Powerlink">Ethernet Powerlink</a></li> <li><a href="/wiki/EtherNet/IP" title="EtherNet/IP">EtherNet/IP</a></li> <li><a href="/wiki/Factory_Instrumentation_Protocol" title="Factory Instrumentation Protocol">Factory Instrumentation Protocol</a></li> <li><a href="/wiki/Factory_Interface_Network_Service" title="Factory Interface Network Service">FINS</a></li> <li><a href="/wiki/FOUNDATION_fieldbus" class="mw-redirect" title="FOUNDATION fieldbus">FOUNDATION fieldbus</a> <ul><li><a href="/wiki/Foundation_Fieldbus_H1" title="Foundation Fieldbus H1">H1</a></li> <li><a href="/wiki/Higher_Speed_Ethernet" class="mw-redirect" title="Higher Speed Ethernet">HSE</a></li></ul></li> <li><a href="/wiki/Service_Request_Transport_Protocol" title="Service Request Transport Protocol">GE SRTP</a></li> <li><a href="/wiki/Highway_Addressable_Remote_Transducer_Protocol" title="Highway Addressable Remote Transducer Protocol">HART Protocol</a></li> <li><a href="/wiki/SDS_Protocol" title="SDS Protocol">Honeywell SDS</a></li> <li><a href="/wiki/HostLink_Protocol" title="HostLink Protocol">HostLink</a></li> <li><a href="/wiki/INTERBUS" title="INTERBUS">INTERBUS</a></li> <li><a href="/wiki/IO-Link" title="IO-Link">IO-Link</a></li> <li><a href="/wiki/MECHATROLINK" title="MECHATROLINK">MECHATROLINK</a></li> <li><a href="/wiki/MelsecNet" title="MelsecNet">MelsecNet</a></li> <li><a href="/wiki/Modbus" title="Modbus">Modbus</a></li> <li><a href="/wiki/Optomux" title="Optomux">Optomux</a></li> <li><a href="/wiki/PieP" title="PieP">PieP</a></li> <li><a href="/wiki/PROFIBUS" class="mw-redirect" title="PROFIBUS">PROFIBUS</a></li> <li><a href="/wiki/PROFINET" class="mw-redirect" title="PROFINET">PROFINET</a></li> <li><a href="/wiki/RAPIEnet" title="RAPIEnet">RAPIEnet</a></li> <li><a href="/wiki/SERCOS_interface" title="SERCOS interface">SERCOS interface</a></li> <li><a href="/wiki/SERCOS_III" title="SERCOS III">SERCOS III</a></li> <li><a href="/wiki/Sinec_H1" title="Sinec H1">Sinec H1</a></li> <li><a href="/wiki/SynqNet" title="SynqNet">SynqNet</a></li> <li><a href="/wiki/TTEthernet" title="TTEthernet">TTEthernet</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Industrial_control_system" title="Industrial control system">Industrial control system</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/MTConnect" title="MTConnect">MTConnect</a></li> <li><a href="/wiki/OPC_Data_Access" title="OPC Data Access">OPC DA</a></li> <li><a href="/wiki/OPC_Historical_Data_Access" title="OPC Historical Data Access">OPC HDA</a></li> <li><a href="/wiki/OPC_Unified_Architecture" title="OPC Unified Architecture">OPC UA</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Building_automation" title="Building automation">Building automation</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/1-Wire" title="1-Wire">1-Wire</a></li> <li><a href="/wiki/BACnet" title="BACnet">BACnet</a></li> <li><a href="/wiki/BatiBUS" title="BatiBUS">BatiBUS</a></li> <li><a href="/wiki/C-Bus_(protocol)" title="C-Bus (protocol)">C-Bus</a></li> <li><a href="/wiki/CEBus" title="CEBus">CEBus</a></li> <li><a href="/wiki/Digital_Addressable_Lighting_Interface" title="Digital Addressable Lighting Interface">DALI</a></li> <li><a href="/wiki/Digital_Serial_Interface" title="Digital Serial Interface">DSI</a></li> <li><a href="/wiki/DyNet" title="DyNet">DyNet</a></li> <li><a href="/wiki/EnOcean" title="EnOcean">EnOcean</a></li> <li><a href="/wiki/European_Home_Systems_Protocol" title="European Home Systems Protocol">EHS</a></li> <li><a href="/wiki/European_Installation_Bus" class="mw-redirect" title="European Installation Bus">EIB</a></li> <li><a href="/wiki/Factory_Instrumentation_Protocol" title="Factory Instrumentation Protocol">FIP</a></li> <li><a href="/wiki/KNX" title="KNX">KNX</a></li> <li><a href="/wiki/LonTalk" title="LonTalk">LonTalk</a></li> <li><a href="/wiki/Modbus" title="Modbus">Modbus</a></li> <li><a href="/wiki/OpenTherm" title="OpenTherm">OpenTherm</a></li> <li><a href="/wiki/OBIX" title="OBIX">oBIX</a></li> <li><a href="/wiki/Very_Simple_Control_Protocol" title="Very Simple Control Protocol">VSCP</a></li> <li><a href="/wiki/X10_(industry_standard)" title="X10 (industry standard)">X10</a></li> <li><a href="/wiki/XAP_Home_Automation_protocol" title="XAP Home Automation protocol">xAP</a></li> <li><a href="/wiki/XPL_Protocol" title="XPL Protocol">xPL</a></li> <li><a href="/wiki/Z-Wave" title="Z-Wave">Z-Wave</a></li> <li><a href="/wiki/Zigbee" title="Zigbee">Zigbee</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Power-system_automation" title="Power-system automation">Power-system automation</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/IEC_60870" title="IEC 60870">IEC 60870</a> <ul><li><a href="/wiki/IEC_60870-5" title="IEC 60870-5">IEC 60870-5</a></li> <li><a href="/wiki/IEC_60870-6" title="IEC 60870-6">IEC 60870-6</a></li></ul></li> <li><a href="/wiki/DNP3" title="DNP3">DNP3</a></li> <li><a href="/wiki/Factory_Instrumentation_Protocol" title="Factory Instrumentation Protocol">Factory Instrumentation Protocol</a></li> <li><a href="/wiki/IEC_61850" title="IEC 61850">IEC 61850</a></li> <li><a href="/wiki/IEC_62351" title="IEC 62351">IEC 62351</a></li> <li><a href="/wiki/Modbus" title="Modbus">Modbus</a></li> <li><a href="/wiki/PROFIBUS" class="mw-redirect" title="PROFIBUS">PROFIBUS</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Automatic_meter_reading" title="Automatic meter reading">Automatic meter reading</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Smart_meter#Protocols" title="Smart meter">ANSI C12.18</a></li> <li><a href="/wiki/Smart_meter#Protocols" title="Smart meter">IEC 61107</a></li> <li><a href="/wiki/IEC_62056" title="IEC 62056">DLMS/IEC 62056</a></li> <li><a href="/wiki/Meter-Bus" title="Meter-Bus">M-Bus</a></li> <li><a href="/wiki/Modbus" title="Modbus">Modbus</a></li> <li><a href="/wiki/Zigbee" title="Zigbee">Zigbee</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Automobile / <a href="/wiki/Vehicle_bus" title="Vehicle bus">Vehicle</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Avionics_Full-Duplex_Switched_Ethernet" title="Avionics Full-Duplex Switched Ethernet">AFDX</a></li> <li><a href="/wiki/ARINC_429" title="ARINC 429">ARINC 429</a></li> <li><a class="mw-selflink selflink">CAN bus</a> <ul><li><a href="/w/index.php?title=ARINC_825&amp;action=edit&amp;redlink=1" class="new" title="ARINC 825 (page does not exist)">ARINC 825</a></li> <li><a href="/wiki/SAE_J1939" title="SAE J1939">SAE J1939</a></li> <li><a href="/wiki/NMEA_2000" title="NMEA 2000">NMEA 2000</a></li> <li><a href="/wiki/Fleet_Management_System" title="Fleet Management System">FMS</a></li></ul></li> <li><a href="/wiki/Factory_Instrumentation_Protocol" title="Factory Instrumentation Protocol">Factory Instrumentation Protocol</a></li> <li><a href="/wiki/FlexRay" title="FlexRay">FlexRay</a></li> <li><a href="/wiki/IEBus" title="IEBus">IEBus</a></li> <li><a href="/wiki/SAE_J1587" title="SAE J1587">J1587</a></li> <li><a href="/wiki/SAE_J1708" title="SAE J1708">J1708</a></li> <li><a href="/wiki/Keyword_Protocol_2000" title="Keyword Protocol 2000">Keyword Protocol 2000</a></li> <li><a href="/wiki/Unified_Diagnostic_Services" title="Unified Diagnostic Services">Unified Diagnostic Services</a></li> <li><a href="/wiki/Local_Interconnect_Network" title="Local Interconnect Network">LIN</a></li> <li><a href="/wiki/MOST_Bus" title="MOST Bus">MOST</a></li> <li><a href="/wiki/SENT_(protocol)" title="SENT (protocol)">SENT</a> (SAE J2716)</li> <li><a href="/wiki/Vehicle_Area_Network" title="Vehicle Area Network">VAN</a></li> <li><a href="/wiki/Cyphal" title="Cyphal">Cyphal</a></li></ul> </div></td></tr></tbody></table></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236075235"></div><div role="navigation" class="navbox authority-control" aria-label="Navbox" style="padding:3px"><table class="nowraplinks hlist navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Help:Authority_control" title="Help:Authority control">Authority control databases</a>: National <span class="mw-valign-text-top noprint" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q728183#identifiers" title="Edit this at Wikidata"><img alt="Edit this at Wikidata" src="//upload.wikimedia.org/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"><ul><li><span class="uid"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4338572-2">Germany</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://id.loc.gov/authorities/sh99003725">United States</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="http://olduli.nli.org.il/F/?func=find-b&amp;local_base=NLX10&amp;find_code=UID&amp;request=987007534945405171">Israel</a></span></li></ul></div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐6b7f745dd4‐gwq9f Cached time: 20241125143518 Cache expiry: 465886 Reduced expiry: true Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.921 seconds Real time usage: 1.159 seconds Preprocessor visited node count: 5039/1000000 Post‐expand include size: 126142/2097152 bytes Template argument size: 15591/2097152 bytes Highest expansion depth: 15/100 Expensive parser function count: 12/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 106065/5000000 bytes Lua time usage: 0.540/10.000 seconds Lua memory usage: 16583907/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 949.766 1 -total 26.23% 249.125 3 Template:Reflist 17.27% 163.985 16 Template:Cite_web 16.95% 160.950 6 Template:Annotated_link 9.81% 93.180 1 Template:Computer-bus 9.41% 89.405 2 Template:Navbox 8.77% 83.335 1 Template:Multiple_issues 8.16% 77.465 1 Template:Infobox_connector 8.13% 77.182 1 Template:Short_description 7.05% 66.975 5 Template:Ambox --> <!-- Saved in parser cache with key enwiki:pcache:231284:|#|:idhash:canonical and timestamp 20241125143518 and revision id 1258456129. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=CAN_bus&amp;oldid=1258456129">https://en.wikipedia.org/w/index.php?title=CAN_bus&amp;oldid=1258456129</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:CAN_bus" title="Category:CAN bus">CAN bus</a></li><li><a href="/wiki/Category:Serial_buses" title="Category:Serial buses">Serial buses</a></li><li><a href="/wiki/Category:Industrial_computing" title="Category:Industrial computing">Industrial computing</a></li><li><a href="/wiki/Category:Industrial_automation" title="Category:Industrial automation">Industrial automation</a></li><li><a href="/wiki/Category:Bosch_(company)" title="Category:Bosch (company)">Bosch (company)</a></li><li><a href="/wiki/Category:Computer_networks_engineering" title="Category:Computer networks engineering">Computer networks engineering</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:Webarchive_template_wayback_links" title="Category:Webarchive template wayback links">Webarchive template wayback links</a></li><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_is_different_from_Wikidata" title="Category:Short description is different from Wikidata">Short description is different from Wikidata</a></li><li><a href="/wiki/Category:Wikipedia_introduction_cleanup_from_November_2020" title="Category:Wikipedia introduction cleanup from November 2020">Wikipedia introduction cleanup from November 2020</a></li><li><a href="/wiki/Category:All_pages_needing_cleanup" title="Category:All pages needing cleanup">All pages needing cleanup</a></li><li><a href="/wiki/Category:Articles_covered_by_WikiProject_Wikify_from_November_2020" title="Category:Articles covered by WikiProject Wikify from November 2020">Articles covered by WikiProject Wikify from November 2020</a></li><li><a href="/wiki/Category:All_articles_covered_by_WikiProject_Wikify" title="Category:All articles covered by WikiProject Wikify">All articles covered by WikiProject Wikify</a></li><li><a href="/wiki/Category:Wikipedia_external_links_cleanup_from_January_2024" title="Category:Wikipedia external links cleanup from January 2024">Wikipedia external links cleanup from January 2024</a></li><li><a href="/wiki/Category:Wikipedia_articles_that_are_too_technical_from_January_2024" title="Category:Wikipedia articles that are too technical from January 2024">Wikipedia articles that are too technical from January 2024</a></li><li><a href="/wiki/Category:All_articles_that_are_too_technical" title="Category:All articles that are too technical">All articles that are too technical</a></li><li><a href="/wiki/Category:Articles_with_multiple_maintenance_issues" title="Category:Articles with multiple maintenance issues">Articles with multiple maintenance issues</a></li><li><a href="/wiki/Category:Use_American_English_from_May_2023" title="Category:Use American English from May 2023">Use American English from May 2023</a></li><li><a href="/wiki/Category:All_Wikipedia_articles_written_in_American_English" title="Category:All Wikipedia articles written in American English">All Wikipedia articles written in American English</a></li><li><a href="/wiki/Category:Articles_containing_potentially_dated_statements_from_2018" title="Category:Articles containing potentially dated statements from 2018">Articles containing potentially dated statements from 2018</a></li><li><a href="/wiki/Category:All_articles_containing_potentially_dated_statements" title="Category:All articles containing potentially dated statements">All articles containing potentially dated statements</a></li><li><a href="/wiki/Category:Articles_needing_cleanup_from_August_2018" title="Category:Articles needing cleanup from August 2018">Articles needing cleanup from August 2018</a></li><li><a href="/wiki/Category:Cleanup_tagged_articles_with_a_reason_field_from_August_2018" title="Category:Cleanup tagged articles with a reason field from August 2018">Cleanup tagged articles with a reason field from August 2018</a></li><li><a href="/wiki/Category:Wikipedia_pages_needing_cleanup_from_August_2018" title="Category:Wikipedia pages needing cleanup from August 2018">Wikipedia pages needing cleanup from August 2018</a></li><li><a href="/wiki/Category:Pages_displaying_short_descriptions_of_redirect_targets_via_Module:Annotated_link" title="Category:Pages displaying short descriptions of redirect targets via Module:Annotated link">Pages displaying short descriptions of redirect targets via Module:Annotated link</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 19 November 2024, at 20:56<span class="anonymous-show">&#160;(UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=CAN_bus&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-6b7f745dd4-4s84h","wgBackendResponseTime":153,"wgPageParseReport":{"limitreport":{"cputime":"0.921","walltime":"1.159","ppvisitednodes":{"value":5039,"limit":1000000},"postexpandincludesize":{"value":126142,"limit":2097152},"templateargumentsize":{"value":15591,"limit":2097152},"expansiondepth":{"value":15,"limit":100},"expensivefunctioncount":{"value":12,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":106065,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 949.766 1 -total"," 26.23% 249.125 3 Template:Reflist"," 17.27% 163.985 16 Template:Cite_web"," 16.95% 160.950 6 Template:Annotated_link"," 9.81% 93.180 1 Template:Computer-bus"," 9.41% 89.405 2 Template:Navbox"," 8.77% 83.335 1 Template:Multiple_issues"," 8.16% 77.465 1 Template:Infobox_connector"," 8.13% 77.182 1 Template:Short_description"," 7.05% 66.975 5 Template:Ambox"]},"scribunto":{"limitreport-timeusage":{"value":"0.540","limit":"10.000"},"limitreport-memusage":{"value":16583907,"limit":52428800}},"cachereport":{"origin":"mw-web.codfw.main-6b7f745dd4-gwq9f","timestamp":"20241125143518","ttl":465886,"transientcontent":true}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"CAN bus","url":"https:\/\/en.wikipedia.org\/wiki\/CAN_bus","sameAs":"http:\/\/www.wikidata.org\/entity\/Q728183","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q728183","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2003-05-21T20:02:21Z","dateModified":"2024-11-19T20:56:47Z","image":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/d\/d1\/CAN_Logo.svg","headline":"serial communication standard"}</script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10