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.
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.
- Connect the host side. Wire VCC, GND, SDA and SCL according to the pinout and your host signal levels.
- Check communication. Use address 0x25 with the supplied Arduino library and initialize the module.
- Connect the CAN side. Wire CANH and CANL, provide the appropriate ground reference and configure bus termination.
- 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
| 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
- 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
- Product documentation, setup & troubleshooting
- Arduino library & examples
- Schematics & hardware files (ZIP)
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.
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.
I2C CAN Bus Module
SKU: 1030017
Volume pricing
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.
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.
- Connect the host side. Wire VCC, GND, SDA and SCL according to the pinout and your host signal levels.
- Check communication. Use address 0x25 with the supplied Arduino library and initialize the module.
- Connect the CAN side. Wire CANH and CANL, provide the appropriate ground reference and configure bus termination.
- 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
| 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
- 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
- Product documentation, setup & troubleshooting
- Arduino library & examples
- Schematics & hardware files (ZIP)
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.
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.