{"product_id":"adafruit-picowbell-can-bus-for-pico-mcp2515-can-controller","title":"Adafruit PiCowbell CAN Bus for Pico - MCP2515 CAN Controller","description":"\u003cp\u003eDing dong! Hear that? It's the PiCowbell ringing, letting you know that the new\u003cspan\u003e \u003c\/span\u003e\u003cstrong\u003eAdafruit PiCowbell CAN Bus\u003c\/strong\u003e is in stock and ready to assist your\u003cspan\u003e \u003c\/span\u003e\u003ca href=\"\/en-eu\/products\/raspberry-pi-pico\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eRaspberry Pi Pico\u003c\/a\u003e\u003cspan\u003e \u003c\/span\u003eand\u003cspan\u003e \u003c\/span\u003e\u003ca href=\"\/en-eu\/products\/raspberry-pi-pico-w\" target=\"_blank\" rel=\"noopener noreferrer\"\u003ePico W\u003c\/a\u003e\u003cspan\u003e \u003c\/span\u003eproject connect to CAN bus networks for automotive or robotics projects.\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/en.wikipedia.org\/wiki\/CAN_bus\"\u003eCAN Bus is a small-scale networking standard\u003c\/a\u003e, originally designed for cars and, yes, busses, but is now used for many robotics or sensor networks that need better range and addressing than I2C and don't have the pins or computational ability to talk on Ethernet. CAN is 2 wire differential, which means it's good for long distances and noisy environments.\u003c\/p\u003e\n\u003cp\u003eMessages are sent at about 1Mbps rate - you set the frequency for the bus and then all 'joiners' must match it, and have an address before the packet so that each node can listen in to messages just for it. New nodes can be attached easily because they just need to connect to the two data lines anywhere in the shared net. Each CAN device sends messages whenever it wants, and thanks to some clever data encoding, can detect if there's a message collision and retransmit later. \u003c\/p\u003e\n\u003cp\u003eIf you'd like to connect your Raspberry Pi Pico to a CAN Bus, the \u003cstrong\u003eAdafruit PiCowbell CAN Bus \u003c\/strong\u003ehas a MCP2515 controller and TJA1051\/3 transceiver! \u003ca href=\"https:\/\/www.microchip.com\/en-us\/product\/MCP2515\"\u003eThe controller used is the MCP2515, an extremely popular and well-supported chipset\u003c\/a\u003e that has drivers in Arduino and \u003ca href=\"https:\/\/github.com\/adafruit\/Adafruit_CircuitPython_MCP2515\"\u003eCircuitPython\u003c\/a\u003e and only requires an SPI port and two pins for chip-select and IRQ. Use it to send and receive messages in either standard or extended format at up to 1 Mbps.\u003c\/p\u003e\n\u003cp\u003eAdafruit have added a few nice extras to this PiCowBell to make it useful in many common CAN scenarios:\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003ca href=\"https:\/\/www.adafruit.com\/product\/3661\"\u003e\u003cstrong\u003e5V charge-pump voltage generator\u003c\/strong\u003e\u003c\/a\u003e, so even though you are running 3.3V on a Pico board, it will generate a nice clean 5V as required by the transceiver.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e\u003ca href=\"https:\/\/www.adafruit.com\/product\/725\"\u003e3.5mm terminal block\u003c\/a\u003e\u003c\/strong\u003e pre-soldered in to get quick access to the High and Low data lines as well as a ground pin.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e120-ohm termination resistor on board\u003c\/strong\u003e, you can remove the termination easily by cutting the jumper marked Term on the top of the board.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePre-connected CS and INT pins\u003c\/strong\u003e on Pico GPIO #20 and #21. You can cut the bottom solder jumpers and use the breakout pads to connect to any two IO pins you like\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eEach order comes with an assembled PCB and header. You will need to solder in the header yourself, but it's a quick task.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePlease Note! \u003c\/strong\u003eThere are a lot of possible configurations, and we stock various headers depending on how you want to solder and attach. Especially if you want the Pico on top so that the BOOTSEL button and LED are accessible.\u003c\/p\u003e\n\u003col\u003e\n\u003cli\u003e\n\u003ca href=\"\/en-eu\/products\/pico-stacking-headers\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eUse the Pico Stacking Headers\u003c\/a\u003e\u003cspan\u003e \u003c\/span\u003eif you want to be able to plug into a breadboard or other accessory with sockets.\u003c\/li\u003e\n\u003cli\u003e\n\u003ca href=\"\/en-eu\/products\/female-headers\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eUse the Pico Socket Headers\u003c\/a\u003e\u003cspan\u003e \u003c\/span\u003eif you want to plug directly in and have a nice solid connection that doesn't have any poking-out-bits.\u003c\/li\u003e\n\u003cli\u003eSolder the PCB directly to the Pico headers - of course, this is very compact and inexpensive, but you won't be able to remove the PiCowbell.\u003cbr\u003e\n\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003cp\u003eThe PiCowbell CAN Bus provides you with:\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eRight angle JST SH connector for I2C \/ Stemma QT \/ Qwiic\u003c\/strong\u003e\u003cspan\u003e \u003c\/span\u003econnection. Provides 3V, GND, IO4 (SDA), and IO5 (SCL)\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eReset button\u003cspan\u003e \u003c\/span\u003e\u003c\/strong\u003e- Press to restart your program\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEvery pad on the 'bell has a duplicate hole pad\u003c\/strong\u003e\u003cspan\u003e \u003c\/span\u003enext to them for solder-jumpering\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eThe ground pads have white silkscreen rectangles\u003c\/strong\u003e\u003cspan\u003e \u003c\/span\u003eto easily identify, plus one long ground strip near the reset button\u003c\/li\u003e\n\u003cli\u003e\u003cstrong\u003eGold-plated pads for easy soldering\u003c\/strong\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eIf using the Philhower Arduino core, the Wire peripheral is already set up to use IO4 and IO5, and SPI is default on IO16, IO18 and IO19. If using CircuitPython or MicroPython, you'll need to let the code know to look at 4+5 for SDA+SCL pins, and configure the SPI port for SCK=18, MOSI=19 and MISO=16.\u003c\/p\u003e\n\u003ch2\u003eTechnical Details\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https:\/\/www.microchip.com\/en-us\/product\/MCP2515\"\u003eMCP2515 Specifications\u003c\/a\u003e (\u003ca href=\"https:\/\/www.microchip.com\/en-us\/product\/MCP2515\"\u003emore at product page here\u003c\/a\u003e)\u003c\/strong\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ctable role=\"presentation\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eBitrate Max [MBits\/s]\u003c\/td\u003e\n\u003ctd\u003e1\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCAN Controllers\u003c\/td\u003e\n\u003ctd\u003e1\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eInternal CAN Clock\u003c\/td\u003e\n\u003ctd\u003eNo\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLPM Current Max [uA]\u003c\/td\u003e\n\u003ctd\u003e0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMessage RAM [KB]\u003c\/td\u003e\n\u003ctd\u003e0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOperating Voltage Min. [V]\u003c\/td\u003e\n\u003ctd\u003e2.7\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOperating Voltage Max. [V]\u003c\/td\u003e\n\u003ctd\u003e5.5\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRx Buffers\u003c\/td\u003e\n\u003ctd\u003e2\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSPI Interface\u003c\/td\u003e\n\u003ctd\u003eYes\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSerial Bus Speed [MHz]\u003c\/td\u003e\n\u003ctd\u003e10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStandby Current Max [uA]\u003c\/td\u003e\n\u003ctd\u003e0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOperating Temperature Min. [°C]\u003c\/td\u003e\n\u003ctd\u003e-40\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOperating Temperature Max. [°C]\u003c\/td\u003e\n\u003ctd\u003e125\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTime Stamp (Bits)\u003c\/td\u003e\n\u003ctd\u003e0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTX Buffers\u003c\/td\u003e\n\u003ctd\u003e3\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTX Event FIFO\u003c\/td\u003e\n\u003ctd\u003e0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTX Queue\u003c\/td\u003e\n\u003ctd\u003e0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCAN FD\u003c\/td\u003e\n\u003ctd\u003eNo\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eTJA1051\/3 \u003ca href=\"https:\/\/www.nxp.com\/docs\/en\/data-sheet\/TJA1051.pdf\"\u003eDatasheet\u003c\/a\u003e\u003c\/strong\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eProduct Dimensions: 52.0mm x 20.2mm x 10.0mm \/ 2.0\" x 0.8\" x 0.4\"\u003c\/p\u003e\n\u003cp\u003eProduct Weight: 5.1g \/ 0.2oz\u003c\/p\u003e\n\u003cdiv class=\"col-lg-2 col-md-3 col-sm-3 col-xs-4\"\u003e\u003cimg height=\"80\" width=\"145\" alt=\"RoHS 2 2011 65 EU Compliant\" src=\"https:\/\/www.adafruit.com\/includes\/templates\/shop2019\/images\/RoHS2_2011_65_EU.svg\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"col-lg-2 col-md-3 col-sm-3 col-xs-4\"\u003e\u003cimg height=\"80\" width=\"145\" alt=\"RoHS 2 2015 863 EU Compliant\" src=\"https:\/\/www.adafruit.com\/includes\/templates\/shop2019\/images\/RoHS2_2015_863_EU.svg\"\u003e\u003c\/div\u003e","brand":"Adafruit","offers":[{"title":"Default Title","offer_id":40804496769107,"sku":"ADA5728","price":12.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0174\/1800\/files\/5728-00.jpg?v=1684936842","url":"https:\/\/shop.pimoroni.com\/en-eu\/products\/adafruit-picowbell-can-bus-for-pico-mcp2515-can-controller","provider":"Pimoroni Ltd","version":"1.0","type":"link"}