Hong Kong SAR Hong Kong SAR · USD
I2C CAN Bus Module

I2C CAN BUS MODULE · I2C TO CLASSICAL CAN MODULE

Connect your I2C host to a CAN network.

Add CAN communication to a controller with an I2C interface. The module combines an ATmega168PA, MCP2515 CAN controller and MCP2551 transceiver, so your host exchanges CAN messages through I2C rather than controlling a separate CAN chip directly over SPI.

I2C address 0x25 · I2C up to 400 kHz · CAN up to 1 Mbps · 3.3V / 5V supply · 20 × 40mm

Quick Start Guide ↗ Arduino Library & Examples ↗ Hardware Files ↗

Before you order: This is an I2C-to-CAN module for use with a separate host controller. Match the connector pinout, supply and signal levels to your host. The included Grove cable connects the module; a host board and USB programming cable are not included.

I2C CAN Bus Module — supplied product illustration

Why choose I2C CAN Bus Module?

  • Use an I2C interface already available on your host. Connect power, ground, SDA and SCL through the 4-pin connector.
  • Keep CAN handling on the module. The onboard microcontroller bridges the host interface to the CAN controller and transceiver.
  • Get started with known defaults. The default I2C address is 0x25 and the default CAN baud rate is 500 kbps.
  • Fit compact projects. A 20 × 40mm module and screw terminal make it practical to connect to a bench setup or prototype.
  • Access the firmware and design resources. Use the Arduino library and documentation, with hardware files available for deeper integration.

What can you build?

  • Embedded controller integration: add CAN message exchange to a host with I2C.
  • Robotics and sensor prototypes: pass readings or commands between your application and CAN nodes.
  • Protocol development: build your own CAN-based application without redesigning the CAN hardware.

Start with a CAN communication example.

  1. Connect the host side. Wire VCC, GND, SDA and SCL according to the pinout and your host signal levels.
  2. Check communication. Use address 0x25 with the supplied Arduino library and initialize the module.
  3. Connect the CAN side. Wire CANH and CANL, provide the appropriate ground reference and configure bus termination.
  4. Run an example. Match the CAN baud rate to the network, check send/receive behavior, then add your application logic.

Prepare for your first test: A host board with I2C, suitable power, CAN wiring and another CAN node or test interface. Grove connector compatibility must include the pinout and signal voltage.

Hardware at a glance

I2C CAN Bus Module specifications
Host interface I2C
Default I2C address 0x25
Maximum I2C clock 400 kHz
CAN controller / transceiver MCP2515 / MCP2551
Onboard microcontroller ATmega168PA
CAN protocol Classical CAN; no CAN FD
CAN baud rate Up to 1 Mbps; default 500 kbps
Supply 3.3V or 5V; match the host interface levels
Host connector 4-pin HY2.0 / Grove-compatible connector
CAN connection CANH / CANL screw terminal
Indicators Power/status and CAN TX/RX
Dimensions 20 × 40mm

What's included

I2C CAN Bus Module — supplied kit illustration
  • 1 × I2C CAN Bus Module
  • 1 × Grove cable
  • 1 × screwdriver

The host controller, its programming cable and additional CAN wiring are not included.

Frequently asked questions

Does this use SPI on the host side?

No. Your host communicates over I2C. The MCP2515 is managed internally by the module firmware.

Can I use it with a Raspberry Pi or another MCU?

A host with a suitable I2C interface can communicate with the module. Match power, logic levels and wiring, and implement the documented protocol. The supplied Arduino library is an Arduino starting point, rather than a complete driver for every operating system.

Does 1 Mbps CAN mean I can transfer all bus traffic over I2C?

No. CAN baud rate and host throughput are different. Message size, I2C transactions, firmware buffering and application timing determine how much traffic your host can handle. Test against your expected load.

Can I modify the onboard firmware?

The onboard ATmega168PA can be reprogrammed as described in the documentation, using a suitable USB-to-serial programming setup. This is optional; start with the supplied firmware and host library.

Does it support CAN FD?

No. This MCP2515-based module supports Classical CAN.

Where can I get setup help?

Use the documentation and example code below. For technical help, email support@longan-labs.cc with your order details, board version, wiring photo and a description of the issue. Our engineers usually reply within 24 hours on working days.

Documentation & downloads

Compliance documents

From prototype to a larger order

Need multiple units, a specific assembly configuration or a modified design? Longan Labs provides product customization services, including circuit design, firmware development and PCB assembly.

Send your quantity, host platform, connector requirements, project needs and target delivery date so we can review your request and provide a quotation.

Discuss your order →

Shipping & support

  • Ships from China. We deliver to most countries worldwide. Shipping charges are shown at checkout.
  • Tracked delivery. Our default carrier is 4PX, with typical delivery of 7–10 days to North America and Europe. Actual times vary by destination and customs clearance.
  • Need express shipping? Email order@longan-labs.cc to ask about DHL or FedEx and the additional cost.
  • Technical help. Contact support@longan-labs.cc for setup and troubleshooting. Our engineers usually reply within 24 hours on working days.
  • If a product arrives defective: contact us for troubleshooting. Once a product defect is confirmed, you can choose a refund or replacement without returning the original.
  • Bank transfer orders. Send your product list and quantities to order@longan-labs.cc for a quotation and payment instructions.

Designed by Longan Labs in Shenzhen. We develop open source CAN hardware and support makers, engineers and teams with documentation, technical assistance and custom product development.

Longan Labs

I2C CAN Bus Module

SKU: 1030017

$19.90

Shipping calculated at checkout.

Buy 2, save 5% | Buy 5, save 10% | Buy 10, save 15% | Buy 50, save 20%
In stock

Fast and reliable delivery
12-month warranty

I2C CAN BUS MODULE · I2C TO CLASSICAL CAN MODULE

Connect your I2C host to a CAN network.

Add CAN communication to a controller with an I2C interface. The module combines an ATmega168PA, MCP2515 CAN controller and MCP2551 transceiver, so your host exchanges CAN messages through I2C rather than controlling a separate CAN chip directly over SPI.

I2C address 0x25 · I2C up to 400 kHz · CAN up to 1 Mbps · 3.3V / 5V supply · 20 × 40mm

Quick Start Guide ↗ Arduino Library & Examples ↗ Hardware Files ↗

Before you order: This is an I2C-to-CAN module for use with a separate host controller. Match the connector pinout, supply and signal levels to your host. The included Grove cable connects the module; a host board and USB programming cable are not included.

I2C CAN Bus Module — supplied product illustration

Why choose I2C CAN Bus Module?

  • Use an I2C interface already available on your host. Connect power, ground, SDA and SCL through the 4-pin connector.
  • Keep CAN handling on the module. The onboard microcontroller bridges the host interface to the CAN controller and transceiver.
  • Get started with known defaults. The default I2C address is 0x25 and the default CAN baud rate is 500 kbps.
  • Fit compact projects. A 20 × 40mm module and screw terminal make it practical to connect to a bench setup or prototype.
  • Access the firmware and design resources. Use the Arduino library and documentation, with hardware files available for deeper integration.

What can you build?

  • Embedded controller integration: add CAN message exchange to a host with I2C.
  • Robotics and sensor prototypes: pass readings or commands between your application and CAN nodes.
  • Protocol development: build your own CAN-based application without redesigning the CAN hardware.

Start with a CAN communication example.

  1. Connect the host side. Wire VCC, GND, SDA and SCL according to the pinout and your host signal levels.
  2. Check communication. Use address 0x25 with the supplied Arduino library and initialize the module.
  3. Connect the CAN side. Wire CANH and CANL, provide the appropriate ground reference and configure bus termination.
  4. Run an example. Match the CAN baud rate to the network, check send/receive behavior, then add your application logic.

Prepare for your first test: A host board with I2C, suitable power, CAN wiring and another CAN node or test interface. Grove connector compatibility must include the pinout and signal voltage.

Hardware at a glance

I2C CAN Bus Module specifications
Host interface I2C
Default I2C address 0x25
Maximum I2C clock 400 kHz
CAN controller / transceiver MCP2515 / MCP2551
Onboard microcontroller ATmega168PA
CAN protocol Classical CAN; no CAN FD
CAN baud rate Up to 1 Mbps; default 500 kbps
Supply 3.3V or 5V; match the host interface levels
Host connector 4-pin HY2.0 / Grove-compatible connector
CAN connection CANH / CANL screw terminal
Indicators Power/status and CAN TX/RX
Dimensions 20 × 40mm

What's included

I2C CAN Bus Module — supplied kit illustration
  • 1 × I2C CAN Bus Module
  • 1 × Grove cable
  • 1 × screwdriver

The host controller, its programming cable and additional CAN wiring are not included.

Frequently asked questions

Does this use SPI on the host side?

No. Your host communicates over I2C. The MCP2515 is managed internally by the module firmware.

Can I use it with a Raspberry Pi or another MCU?

A host with a suitable I2C interface can communicate with the module. Match power, logic levels and wiring, and implement the documented protocol. The supplied Arduino library is an Arduino starting point, rather than a complete driver for every operating system.

Does 1 Mbps CAN mean I can transfer all bus traffic over I2C?

No. CAN baud rate and host throughput are different. Message size, I2C transactions, firmware buffering and application timing determine how much traffic your host can handle. Test against your expected load.

Can I modify the onboard firmware?

The onboard ATmega168PA can be reprogrammed as described in the documentation, using a suitable USB-to-serial programming setup. This is optional; start with the supplied firmware and host library.

Does it support CAN FD?

No. This MCP2515-based module supports Classical CAN.

Where can I get setup help?

Use the documentation and example code below. For technical help, email support@longan-labs.cc with your order details, board version, wiring photo and a description of the issue. Our engineers usually reply within 24 hours on working days.

Documentation & downloads

Compliance documents

From prototype to a larger order

Need multiple units, a specific assembly configuration or a modified design? Longan Labs provides product customization services, including circuit design, firmware development and PCB assembly.

Send your quantity, host platform, connector requirements, project needs and target delivery date so we can review your request and provide a quotation.

Discuss your order →

Shipping & support

  • Ships from China. We deliver to most countries worldwide. Shipping charges are shown at checkout.
  • Tracked delivery. Our default carrier is 4PX, with typical delivery of 7–10 days to North America and Europe. Actual times vary by destination and customs clearance.
  • Need express shipping? Email order@longan-labs.cc to ask about DHL or FedEx and the additional cost.
  • Technical help. Contact support@longan-labs.cc for setup and troubleshooting. Our engineers usually reply within 24 hours on working days.
  • If a product arrives defective: contact us for troubleshooting. Once a product defect is confirmed, you can choose a refund or replacement without returning the original.
  • Bank transfer orders. Send your product list and quantities to order@longan-labs.cc for a quotation and payment instructions.

Designed by Longan Labs in Shenzhen. We develop open source CAN hardware and support makers, engineers and teams with documentation, technical assistance and custom product development.

  • 5 stars: 9 (100%)
  • 4 stars: 0 (0%)
  • 3 stars: 0 (0%)
  • 2 stars: 0 (0%)
  • 1 star: 0 (0%)
P
PH
Several modules failed after short operation time

Typically after 4-10 operating hours module stops working properly. Reason unknown... If I then replace the module with a new one, it works again ... but only for a few hours until same issue occurs.

Unfortunately support doesn't reply to my emails.

Therefore I'd recommend to avoid those modules.

J
JMF
I2C Module

Will this unit after programming send canbus messages continuously after power is applied? Can it be used as a stand alone transmitter without anything else other than a 5 volt regulator in the system?

L
Longan Labs
3.3V support

@Austin, yes, I2c can bus module support 3.3V and 5V.

A
Austin
3.3V support

Can it work at 3.3V?

L
Longan Labs
Serial can vs I2C can

@Stephen, They look the same, the difference is that one uses UART and one uses I2C for communication.

S
Stephen
Serial can vs I2C can

what is the different between these 2 boards.

K
Kyle
Better than the SPI module

Most of the products on the market are SPI communication protocol, but there is no SPI protocol in my system, this I2C Module is very suitable for my project.

x
xrc
Module cannot produce a message ID greater than 255

The product works somewhat except a message ID of greater than 255 can not be produced due to a firmware 'bug'. Very poor quality control from this company they obviously hardly test the products they make. Only an 8th of the ID values supported buy standard CAN Bus are avaliable with this device. Do not buy this module.

c
ck-35
I2C module

I happen to need a I2C module. And this module just meets my expectation.