{"id":52974,"date":"2025-05-21T22:47:03","date_gmt":"2025-05-21T21:47:03","guid":{"rendered":"https:\/\/www.microplanet.ma\/?post_type=product&#038;p=52974"},"modified":"2026-10-19T17:44:59","modified_gmt":"2026-10-19T17:44:59","slug":"mcp2515-can-bus-controller-module-tja1050-spi","status":"publish","type":"product","link":"https:\/\/www.microplanet.ma\/en\/produit\/mcp2515-can-bus-controller-module-tja1050-spi\/","title":{"rendered":"MCP2515 CAN Bus Controller Module with TJA1050 \u2013 SPI CAN 2.0B"},"content":{"rendered":"<h3>MCP2515 CAN Bus Controller Module with TJA1050 \u2013 SPI CAN 2.0B<\/h3>\n<p>This module combines the MCP2515 CAN 2.0B controller with a TJA1050 physical-layer transceiver. It provides a convenient CAN connection for Arduino, ESP32, Raspberry Pi, and other projects.<\/p>\n<h4>\ud83d\udd27 Technical specifications<\/h4>\n<ul>\n<li>CAN protocol: version 2.0B, up to 1 Mb\/s (as listed)<\/li>\n<li>Controller: MCP2515 over SPI (CS, SCLK, SI, SO), with INT interrupt<\/li>\n<li>Transceiver: TJA1050 (CANH \/ CANL levels)<\/li>\n<li>Supply: 5 V DC (typically 5 mA operating, 1 \u00b5A standby)<\/li>\n<li>Termination: 120 \u03a9 resistor, enabled using a solder jumper<\/li>\n<li>LED indicators: TX (transmit) and RX (receive)<\/li>\n<li>Operating temperature: \u221240 \u00b0C to +85 \u00b0C<\/li>\n<li>Dimensions: 44 \u00d7 28 mm; mounting-hole spacing: 23 \u00d7 38 mm<\/li>\n<\/ul>\n<h4>\ud83d\udca1 Typical applications<\/h4>\n<ul>\n<li>Automotive and industrial CAN networks<\/li>\n<li>Telemetry systems and distributed sensors<\/li>\n<li>Motor and actuator control and automation<\/li>\n<li>Embedded IoT projects requiring a robust bus<\/li>\n<li>Data bridges between microcontrollers and CAN equipment<\/li>\n<\/ul>\n<h4>Arduino code example (using the <strong>mcp_can<\/strong> library)<\/h4>\n<pre class=\"prism undefined-numbers lang-cpp\" data-lang=\"C++\"><code>#include &lt;SPI.h&gt;\n#include &lt;mcp_can.h&gt;\n\nconst int SPI_CS_PIN = 10;\nMCP_CAN CAN(SPI_CS_PIN);\n\nvoid setup() {\nSerial.begin(115200);\nwhile (CAN_OK != CAN.begin(CAN_500KBPS)) {\nSerial.println(\"Initialisation CAN \u00e9chou\u00e9e\");\ndelay(100);\n}\nSerial.println(\"CAN initialis\u00e9 \u00e0 500 kbps\");\n}\n\nvoid loop() {\n\/\/ Envoi d'un message CAN 11-bit ID 0x100, 8 octets\nbyte data[8] = {0xDE,0xAD,0xBE,0xEF,0x00,0x11,0x22,0x33};\nCAN.sendMsgBuf(0x100, 0, 8, data);\ndelay(1000);\n\n\/\/ Lecture\nif (CAN_MSGAVAIL == CAN.checkReceive()) {\nunsigned long id;\nbyte len;\nbyte buf[8];\nCAN.readMsgBuf(&amp;len, buf);\nid = CAN.getCanId();\nSerial.print(\"Re\u00e7u ID 0x\"); Serial.print(id, HEX);\nfor (byte i = 0; i &lt; len; i++) {\nSerial.print(\" \"); Serial.print(buf[i], HEX);\n}\nSerial.println();\n}\n}<\/code><\/pre>\n<h4>Code explanation<\/h4>\n<ul>\n<li>Initialize SPI and the MCP2515 module at 500 kbps with <code>CAN.begin(...)<\/code>.<\/li>\n<li>In <code>loop()<\/code>, send an 8-byte CAN frame with ID 0x100 using <code>sendMsgBuf()<\/code>.<\/li>\n<li>Then check for a message with <code>checkReceive()<\/code>, read its ID and data using <code>readMsgBuf()<\/code> and <code>getCanId()<\/code>, and display them in the serial monitor.<\/li>\n<\/ul>\n<h4>\ud83d\udee0\ufe0f Pinout and wiring<\/h4>\n<table>\n<thead>\n<tr>\n<th>Module pin<\/th>\n<th>Function<\/th>\n<th>Arduino UNO<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>VCC<\/td>\n<td>+5 V DC supply<\/td>\n<td>5 V<\/td>\n<\/tr>\n<tr>\n<td>GND<\/td>\n<td>Common ground<\/td>\n<td>GND<\/td>\n<\/tr>\n<tr>\n<td>CS<\/td>\n<td>SPI chip select (active low)<\/td>\n<td>D10<\/td>\n<\/tr>\n<tr>\n<td>SO (MISO)<\/td>\n<td>SPI Master In, Slave Out<\/td>\n<td>D12<\/td>\n<\/tr>\n<tr>\n<td>SCLK<\/td>\n<td>SPI clock<\/td>\n<td>D13<\/td>\n<\/tr>\n<tr>\n<td>SI (MOSI)<\/td>\n<td>SPI Master Out, Slave In<\/td>\n<td>D11<\/td>\n<\/tr>\n<tr>\n<td>INT<\/td>\n<td>Interrupt (CAN message received)<\/td>\n<td>D2<\/td>\n<\/tr>\n<tr>\n<td>CANH \/ CANL<\/td>\n<td>CAN bus screw terminals<\/td>\n<td>Connect to the bus<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<blockquote>\n<p><strong>Note:<\/strong> Enable the 120 \u03a9 termination by soldering the provided jumper if the module is at an end of the bus.<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Add a CAN 2.0B interface to Arduino, ESP32, Raspberry Pi, and other projects using the MCP2515 controller, TJA1050 transceiver, and SPI interface.<\/p>\n","protected":false},"featured_media":52975,"template":"","meta":[],"product_brand":[],"product_cat":[314,316],"product_tag":[],"class_list":["post-52974","product","type-product","status-publish","has-post-thumbnail","product_cat-developpement-en","product_cat-modules-capteurs-en","first","instock","sale","taxable","shipping-taxable","purchasable","product-type-simple"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>MCP2515 CAN Bus Module with TJA1050 | MicroPlanet<\/title>\n<meta name=\"description\" content=\"MCP2515 CAN 2.0B controller with TJA1050 transceiver, SPI interface, 120 \u03a9 termination jumper, TX\/RX LEDs, and Arduino UNO pinout.\" \/>\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.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MCP2515 CAN Bus Module with TJA1050 | MicroPlanet\" \/>\n<meta property=\"og:description\" content=\"MCP2515 CAN 2.0B controller with TJA1050 transceiver, SPI interface, 120 \u03a9 termination jumper, TX\/RX LEDs, and Arduino UNO pinout.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/\" \/>\n<meta property=\"og:site_name\" content=\"MicroPlanet Maroc\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ArduinoPlanet\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-19T17:44:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2025\/05\/216-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"1000\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\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=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/\",\"url\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/\",\"name\":\"MCP2515 CAN Bus Module with TJA1050 | MicroPlanet\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.microplanet.ma\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/216-1.png\",\"datePublished\":\"2025-05-21T21:47:03+00:00\",\"dateModified\":\"2026-10-19T17:44:59+00:00\",\"description\":\"MCP2515 CAN 2.0B controller with TJA1050 transceiver, SPI interface, 120 \u03a9 termination jumper, TX\\\/RX LEDs, and Arduino UNO pinout.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.microplanet.ma\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/216-1.png\",\"contentUrl\":\"https:\\\/\\\/www.microplanet.ma\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/216-1.png\",\"width\":1000,\"height\":1000},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/produit\\\/mcp2515-interface-de-controleur-bus-can\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.microplanet.ma\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Shop\",\"item\":\"https:\\\/\\\/www.microplanet.ma\\\/shop\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MCP2515 CAN Bus Controller Module with TJA1050 \u2013 SPI CAN 2.0B\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/#website\",\"url\":\"https:\\\/\\\/www.microplanet.ma\\\/\",\"name\":\"MicroPlanet Maroc\",\"description\":\"Arduino, Electronique DIY, Modules, Composants, Raspberry PI\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.microplanet.ma\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/#organization\",\"name\":\"MicroPlanet\",\"url\":\"https:\\\/\\\/www.microplanet.ma\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.microplanet.ma\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/logo5.png\",\"contentUrl\":\"https:\\\/\\\/www.microplanet.ma\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/logo5.png\",\"width\":400,\"height\":133,\"caption\":\"MicroPlanet\"},\"image\":{\"@id\":\"https:\\\/\\\/www.microplanet.ma\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/ArduinoPlanet\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MCP2515 CAN Bus Module with TJA1050 | MicroPlanet","description":"MCP2515 CAN 2.0B controller with TJA1050 transceiver, SPI interface, 120 \u03a9 termination jumper, TX\/RX LEDs, and Arduino UNO pinout.","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.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/","og_locale":"en_US","og_type":"article","og_title":"MCP2515 CAN Bus Module with TJA1050 | MicroPlanet","og_description":"MCP2515 CAN 2.0B controller with TJA1050 transceiver, SPI interface, 120 \u03a9 termination jumper, TX\/RX LEDs, and Arduino UNO pinout.","og_url":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/","og_site_name":"MicroPlanet Maroc","article_publisher":"https:\/\/www.facebook.com\/ArduinoPlanet\/","article_modified_time":"2026-10-19T17:44:59+00:00","og_image":[{"width":1000,"height":1000,"url":"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2025\/05\/216-1.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/","url":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/","name":"MCP2515 CAN Bus Module with TJA1050 | MicroPlanet","isPartOf":{"@id":"https:\/\/www.microplanet.ma\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/#primaryimage"},"image":{"@id":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/#primaryimage"},"thumbnailUrl":"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2025\/05\/216-1.png","datePublished":"2025-05-21T21:47:03+00:00","dateModified":"2026-10-19T17:44:59+00:00","description":"MCP2515 CAN 2.0B controller with TJA1050 transceiver, SPI interface, 120 \u03a9 termination jumper, TX\/RX LEDs, and Arduino UNO pinout.","breadcrumb":{"@id":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/#primaryimage","url":"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2025\/05\/216-1.png","contentUrl":"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2025\/05\/216-1.png","width":1000,"height":1000},{"@type":"BreadcrumbList","@id":"https:\/\/www.microplanet.ma\/produit\/mcp2515-interface-de-controleur-bus-can\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.microplanet.ma\/"},{"@type":"ListItem","position":2,"name":"Shop","item":"https:\/\/www.microplanet.ma\/shop\/"},{"@type":"ListItem","position":3,"name":"MCP2515 CAN Bus Controller Module with TJA1050 \u2013 SPI CAN 2.0B"}]},{"@type":"WebSite","@id":"https:\/\/www.microplanet.ma\/#website","url":"https:\/\/www.microplanet.ma\/","name":"MicroPlanet Maroc","description":"Arduino, Electronique DIY, Modules, Composants, Raspberry PI","publisher":{"@id":"https:\/\/www.microplanet.ma\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.microplanet.ma\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.microplanet.ma\/#organization","name":"MicroPlanet","url":"https:\/\/www.microplanet.ma\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.microplanet.ma\/#\/schema\/logo\/image\/","url":"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2023\/05\/logo5.png","contentUrl":"https:\/\/www.microplanet.ma\/wp-content\/uploads\/2023\/05\/logo5.png","width":400,"height":133,"caption":"MicroPlanet"},"image":{"@id":"https:\/\/www.microplanet.ma\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ArduinoPlanet\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/product\/52974","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/types\/product"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/media\/52975"}],"wp:attachment":[{"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/media?parent=52974"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/product_brand?post=52974"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/product_cat?post=52974"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.microplanet.ma\/en\/wp-json\/wp\/v2\/product_tag?post=52974"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}