CAN-bus Expansion Card (Cananka)
The CAN-bus Expansion Card (Cananka) is a community-designed expansion card adding a CAN bus interface to any Framework laptop12. Created by Josip Medved (medo64) and first prototyped in March 2022, it uses a PIC18F25K80 microcontroller and an MCP2221A USB-to-UART bridge, supporting SLCAN and SocketCAN123.
Design
The card is based on Medved's existing Cananka USB-to-CAN adapter, shrunk to fit the expansion card form factor1. It uses a PIC18F25K80 MCU with an integrated CAN controller and an MCP2221A for USB-to-UART conversion1. The external connector is a 4-pin vertical JST PH header with GND, CAN L, CAN H, and V+ (not connected)23.
The card uses a full-size PCB (flush with the frame) and a 3D-printed case1. Two LEDs indicate UART communication and CAN bus activity2. Bus termination is software-controlled1.
The expansion card variant is non-isolated; an isolated full-size version exists in the main Cananka repository3.
Pinout
4-pin JST XH connector (pin 1 on the left, looking into the card)2:
| Pin | Signal |
|---|---|
| 1 | GND |
| 2 | CAN L |
| 3 | CAN H |
| 4 | V+ (not connected) |
Specifications
| Specification | Details |
|---|---|
| MCU | PIC18F25K80 (integrated CAN controller)1 |
| USB bridge | Microchip MCP2221A1 |
| Bus speed | Up to 1 Mbit/s (125 kbit/s default)23 |
| Interface | SLCAN (serial), SocketCAN (Linux)23 |
| Serial speed | Up to 460,800 baud3 |
| Isolation | Non-isolated (expansion card variant)3 |
| Termination | Software-controlled1 |
| Connector | 4-pin JST PH (vertical)12 |
| Indicators | 2 LEDs (UART activity, CAN activity)2 |
| PCB thickness | 0.8 mm1 |
| Source | Medo64/CanankaFEC (GitHub)3 |
| License | MIT3 |
Related Projects
| Project | Description |
|---|---|
| RS-232 Expansion Card | Medved's RS-232 serial card using MCP2221 + MAX232 |
| RS-485 Expansion Card | Medved's RS-485 half-duplex card using FT232RL |