{"id":234219,"date":"2024-09-29T20:26:35","date_gmt":"2024-09-29T20:26:35","guid":{"rendered":"https:\/\/www.emtrion.de\/can-on-dimm-am335-under-linux-2\/"},"modified":"2024-10-24T07:35:38","modified_gmt":"2024-10-24T07:35:38","slug":"can-on-dimm-am335-under-linux-2","status":"publish","type":"page","link":"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/","title":{"rendered":"CAN on DIMM-AM335 under Linux"},"content":{"rendered":"<h1><a id=\"dcan\" name=\"dcan\"><\/a>DCAN<\/h1>\n<div class=\"level1\">\n<p>The DIMM-AM335x features two CAN interfaces d_can0 and d_can1. Both are accessible on the baseboard Verno.<\/p>\n<p>d_can0 is connected to the D-SUB connector J15. d_can1 is connected to the pin header J20.<\/p>\n<p>Each interface can be enabled separately by the kernel parameter d_can in U-Boot. The commands on U-Boot are the following.<\/p>\n<pre class=\"uboot\">setenv d_can 'value'<\/pre>\n<pre class=\"uboot\">saveenv <\/pre>\n<p>What value to set for the appropriate interface shows the table below.<\/p>\n<p>&nbsp;<\/p>\n<table class=\"inline\">\n<tbody>\n<tr>\n<th class=\"leftalign\">d_can<\/th>\n<th>d_can0<\/th>\n<th>d_can1<\/th>\n<th>Remarks<\/th>\n<\/tr>\n<tr>\n<td class=\"centeralign\">0<\/td>\n<td class=\"centeralign\">&#8211;<\/td>\n<td class=\"centeralign\">&#8211;<\/td>\n<td class=\"rightalign\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td class=\"centeralign\">1<\/td>\n<td class=\"centeralign\">x<\/td>\n<td class=\"centeralign\">&#8211;<\/td>\n<td>default<\/td>\n<\/tr>\n<tr>\n<td class=\"centeralign\">2<\/td>\n<td class=\"centeralign\">&#8211;<\/td>\n<td class=\"centeralign\">x<\/td>\n<td class=\"rightalign\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td class=\"centeralign\">3<\/td>\n<td class=\"centeralign\">x<\/td>\n<td class=\"centeralign\">x<\/td>\n<td class=\"rightalign\">&nbsp;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>The driver interface complies with the SocketCAN interface. There is general documentation for SocketCAN available in the Linux kernel tree at <a title=\"socketcan documentation\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/networking\/can.txt\">https:\/\/www.kernel.org\/doc\/Documentation\/networking\/can.txt<\/a>.<\/p>\n<p>For basic testing you can use the canutils:<\/p>\n<p>For example: d_can0<\/p>\n<p># Configuration(if you reconfig the bitrate, you have to stop the interface before)<\/p>\n<pre class=\"uboot\">canconfig can0 bitrate 100000 ctrlmode triple-sampling on<\/pre>\n<p># Starting<\/p>\n<pre class=\"uboot\">canconfig can0 start<\/pre>\n<p># Sending 8 data bytes ten times<\/p>\n<pre class=\"uboot\">cansend can0 -i 0x10 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 --loop=10<\/pre>\n<p># Receiving on a configured and started can1<\/p>\n<pre class=\"uboot\">candump can1<\/pre>\n<p># Stoping<\/p>\n<pre class=\"uboot\">canconfig can0 stop<\/pre>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>DCAN The DIMM-AM335x features two CAN interfaces d_can0 and d_can1. Both are accessible on the baseboard Verno. d_can0 is connected to the D-SUB connector J15. d_can1 is connected to the pin header J20. Each interface can be enabled separately by the kernel parameter d_can in U-Boot. The commands on U-Boot are the following. setenv d_can [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-234219","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>CAN on DIMM-AM335 under Linux - emtrion<\/title>\n<meta name=\"description\" content=\"CAN support on DIMM-AM335 under Linux: Two CAN interfaces (d_can0, d_can1) via SocketCAN. Configuration and testing using canutils.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CAN on DIMM-AM335 under Linux - emtrion\" \/>\n<meta property=\"og:description\" content=\"CAN support on DIMM-AM335 under Linux: Two CAN interfaces (d_can0, d_can1) via SocketCAN. Configuration and testing using canutils.\" \/>\n<meta property=\"og:site_name\" content=\"emtrion\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-24T07:35:38+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/can-on-dimm-am335-under-linux-2\\\/\",\"url\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/can-on-dimm-am335-under-linux-2\\\/\",\"name\":\"CAN on DIMM-AM335 under Linux - emtrion\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/#website\"},\"datePublished\":\"2024-09-29T20:26:35+00:00\",\"dateModified\":\"2024-10-24T07:35:38+00:00\",\"description\":\"CAN support on DIMM-AM335 under Linux: Two CAN interfaces (d_can0, d_can1) via SocketCAN. Configuration and testing using canutils.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/can-on-dimm-am335-under-linux-2\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.emtrion.de\\\/en\\\/can-on-dimm-am335-under-linux-2\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/can-on-dimm-am335-under-linux-2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CAN on DIMM-AM335 under Linux\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/\",\"name\":\"emtrion\",\"description\":\"Embedded Software and Hardware Development\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"CAN on DIMM-AM335 under Linux - emtrion","description":"CAN support on DIMM-AM335 under Linux: Two CAN interfaces (d_can0, d_can1) via SocketCAN. Configuration and testing using canutils.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/","og_locale":"en_US","og_type":"article","og_title":"CAN on DIMM-AM335 under Linux - emtrion","og_description":"CAN support on DIMM-AM335 under Linux: Two CAN interfaces (d_can0, d_can1) via SocketCAN. Configuration and testing using canutils.","og_site_name":"emtrion","article_modified_time":"2024-10-24T07:35:38+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/","url":"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/","name":"CAN on DIMM-AM335 under Linux - emtrion","isPartOf":{"@id":"https:\/\/www.emtrion.de\/en\/#website"},"datePublished":"2024-09-29T20:26:35+00:00","dateModified":"2024-10-24T07:35:38+00:00","description":"CAN support on DIMM-AM335 under Linux: Two CAN interfaces (d_can0, d_can1) via SocketCAN. Configuration and testing using canutils.","breadcrumb":{"@id":"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.emtrion.de\/en\/can-on-dimm-am335-under-linux-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.emtrion.de\/en\/"},{"@type":"ListItem","position":2,"name":"CAN on DIMM-AM335 under Linux"}]},{"@type":"WebSite","@id":"https:\/\/www.emtrion.de\/en\/#website","url":"https:\/\/www.emtrion.de\/en\/","name":"emtrion","description":"Embedded Software and Hardware Development","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.emtrion.de\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages\/234219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/comments?post=234219"}],"version-history":[{"count":1,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages\/234219\/revisions"}],"predecessor-version":[{"id":234220,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages\/234219\/revisions\/234220"}],"wp:attachment":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/media?parent=234219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}