Skip to the content
PCBKitNew board
2 layers52 × 36 mmCyphalPicoBase CAN, the printed circuit board in 3D

Board for the Raspberry Pi Pico to connect via CAN using OpenCyphal and UCANPHY Micro

Size
52 × 36 mm
Copper layers
2
Thickness
1.6 mm
Parts
62
Nets
70
Pads
268
Tracks, vias
592, 62
Pours
2
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
5 Jun 2022
Updated
10 Dec 2023

Overview

CyphalPicoBase CAN is an open-source printed circuit board by generationmake, from the generationmake/CyphalPicoBase-CAN repository on GitHub, published under the CERN-OHL-W-2.0 licence. It is a 2-layer board of 52 × 36 mm with 62 parts on 70 nets, routed with 592 tracks and 62 vias.

It is built around the SN65HVD230D, M24C64-RMN6TP and MCP2515T-I/SO-HX, with the SM04B-GHS-TB, SM04B-SRSS-TB and KT-0603R among its other parts. Its parts include 25 resistors, 11 capacitors, 8 connectors, 4 diodes and 4 inductors. It belongs with the RP2040 boards of this library.

Main components

11

README

README.md

CyphalPicoBase/CAN

Board for the Raspberry Pi Pico to connect via CAN using OpenCyphal and UCANPHY Micro.

You can buy one here 💸.

Description

The CyphalPicoBase/CAN provides the following functions:

  • CAN connectivity to a OpenCyphal CAN bus using a Microchip MCP2515 CAN controller (datasheet)
  • Onboard I2C EEPROM to store settings
  • measurement of CAN bus voltage using GP26
  • onboard temperature measurement using the internal temperature sensor of the Raspberry Pi Pico
  • two status LEDs (D4 and D5)
  • Raspberry Pi Pico directly mounted on bottom layer
  • connectors to several external functions (see list below)

Firmware

Pin Usage and connectors

Raspberry Pi Pico (CN1)

PinPin NameSignalDescription
1GP0UART0_TXreserved for future use (GNSS)
2GP1UART0_RXreserved for future use (GNSS)
3GNDGND
4GP2
5GP3
6GP4I2C0_SDAfor eeprom and qwiic connector
7GP5I2C0_SCLfor eeprom and qwiic connector
8GNDGND
9GP6GPI0input 0
10GP7GPI1input 1
11GP8GPI2input 2
12GP9GPI3input 3
13GNDGND
14GP10GPO0output 0
15GP11GPO1output 1
16GP12reservedNeopixel
17GP13reservedradiation detector
18GNDGND
19GP14SERVO0servo 0
20GP15SERVO1servo 1
21GP16SPI_MISOSPI for MCP2515
22GP17MCP2515_CSSPI for MCP2515
23GNDGND
24GP18SPI_CLKSPI for MCP2515
25GP19SPI_MOSISPI for MCP2515
26GP20MCP2515_INTinterrupt for MCP2515
27GP21STATUS_LED2internal status LED 2
28GNDGND
29GP22STATUS_LED3internal status LED 3
30RUNRESETReset for Board
31GP26INPUT_VOLTAGEmeasure input voltage
32GP27ANALOG_INPUT0analog input
33GNDGND
34GP28ANALOG_INPUT1analog input
35ADC_VREF
363V3 (OUT)3V3-railsupply voltage for board
373V3_EN
38GNDGND
39VSYS
40VBUS5V-railsupply voltage for board

Pinout

I2C (CN2)

compatible to the Sparkfun qwiic standard (https://www.sparkfun.com/qwiic). JST SH 1mm 4-pin.

pin numbersignal
1GND
2+3V3
3I2C_SDA
4I2C_SCL

serial (CN3)

JST SH 1mm 4-pin.

pin numbersignal
1GND
2+3V3
3SER_TX
4SER_RX

CAN (CN4 and CN5)

UCANPHY Micro connector, according to the UCANPHY_Specification (https://forum.opencyphal.org/t/cyphal-can-physical-layer-specification-v1-0/1471). JST GH 1.25mm 4-pin.

pin numbersignal
1+5V
2CANH
3CANL
4GND

servo connector (CN7)

This is a regular 0.1-inch pin header.

Standard RC servos can be directly plugged into this connector

pin numbersignal
1servo0
2servo1
3+5V
4+5V
5GND
6GND

input/output connector (CN8)

This is a regular 0.1-inch pin header.

pin numbersignal
1+5V
2GND
3ANALOG_INPUT1
4GND
5ANALOG_INPUT0
6GND
7INPUT0
8GND
9INPUT1
10GND
11INPUT2
12GND
13INPUT3
14GND
15OUTPUT0
16GND
17OUTPUT1
18GND
19+5V
20GND
21+3.3V
22GND
23RESERVED0
24GND
25NEOPIXEL
26GND

+5V can be fed over this connector to the servo connector (CN7) and the neopixel connector (CN12) if power supply over the CAN connector is not sufficicant.

neopixel connector (CN12)

connector for Adafruit Neopixel RGB leds (https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels). JST PH 2mm 3-pin.

pin numbersignal
1neopixel
2+5V
3GND

enclosure

There exists a 3D printable enclosure to encapsulate the PCB.

CyphalPicoBase-CAN enclosure

PCB

Top

Bottom

Parts

62
QtyValueFootprintReferences
1410kResistor_SMD:R_0603_1608MetricR1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R14, R17, R18, R19
8100RResistor_SMD:R_0603_1608MetricR11, R12, R20, R21, R22, R23, R24, R25
8100nFCapacitor_SMD:C_0603_1608MetricC1, C2, C3, C4, C5, C6, C9, C10
4MHP_3.2_5.8MECH_mounting_holes:MHP_3.2_5.8MECH1, MECH2, MECH3, MECH4
210pFCapacitor_SMD:C_0603_1608MetricC7, C8
23k3Resistor_SMD:R_0603_1608MetricR15, R16
2SM04B-GHS-TBConnector_JST:JST_GH_SM04B-GHS-TB_1x04-1MP_P1.25mm_HorizontalCN4, CN5
2SM04B-SRSS-TBgenerationmake:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalCN2, CN3
1100 uF / 6,3 VCapacitor_SMD:CP_Elec_5x5.3C11
1100kResistor_SMD:R_0603_1608MetricR13
1DNIConnector_PinHeader_2.54mm:PinHeader_2x13_P2.54mm_VerticalCN8
1DNIPackage_TO_SOT_SMD:SOT-23D1
1DNIConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_HorizontalCN7
1KT-0603RLED_SMD:LED_0603_1608MetricD5
1Labelgenerationmake:qwiic_logoL4
1Labellabels:generationmake_small_solderL2
1Labellabels:opencyphal_smallL3
1Labellabels:generationmake_small_silkL1
1M24C64-RMN6TPPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU3
1MBR0530TDiode_SMD:D_SOD-123D2
1MCP2515T-I/SOPackage_SO:SOIC-18W_7.5x11.6mm_P1.27mmU8
1NCD0603Y1LED_SMD:LED_0603_1608MetricD4
1PTS636 SM43 SMTR LFSButton_Switch_SMD:SW_SPST_CK_RS282G05A3SW1
1RASPBERRYPI_PICOgenerationmake:RASPI_PICO_SOLDER_KopieCN1
1S3B-PH-SM4-TBgenerationmake:JST_PH_S3B-PH-SM4-TB_1x03-1MP_P2.00mm_HorizontalCN12
1SN65HVD230Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU9
1X322516MLB4SIcrystals:Crystal_SMD_3.2x2.5mm_4PadY1
1nSMD050-33VFuse:Fuse_1206_3216MetricF1

Questions

How big is the CyphalPicoBase CAN PCB?

It measures 52 × 36 mm and has 2 copper layers, 1.6 mm thick.

What parts does the CyphalPicoBase CAN use?

62 parts, built around the SN65HVD230D, M24C64-RMN6TP, MCP2515T-I/SO-HX and SM04B-GHS-TB. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the CyphalPicoBase CAN KiCad files?

From the generationmake/CyphalPicoBase-CAN repository on GitHub, at the commit this page was made from: the board is kicad_source/CyphalPicoBase-CAN.kicad_pcb and its schematic kicad_source/CyphalPicoBase-CAN.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the CyphalPicoBase CAN design in my own project?

Its repository publishes it under the CERN-OHL-W-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers104 × 66 mmVallox rs485-controller, the printed circuit board in 3D

    Vallox rs485-controller

    Miroeilola/vallox-rs485-controller

    Replacement control panel for legacy Vallox SE ventilation units. Vallox DIGIT RS-485 protocol, bus-powered, ESP32, Home Assistant.

    65 parts
  • 2 layers65 × 56.5 mmCAN Shield, the printed circuit board in 3D

    CAN Shield

    RonakornST/CAN_Shield

    21 parts
  • 4 layers90 × 160 mmTool power supply v1, the printed circuit board in 3D

    Tool power supply v1

    UBC-Hacker-Fab/tool-power-supply

    general power supply for tools

    125 parts1
  • 4 layersProtopico, the printed circuit board in 3D

    Protopico

    MyloWhylo/ProtogenPCBs

    Repository for ProtoPico and BackpackController

    81 partsMIT
  • 2 layers40 × 22.5 mmTemplate, the printed circuit board in 3D

    Template

    marinecircuits/kicad-template

    Template for my KiCad projects

    4 parts
  • 2 layersVca mix, the printed circuit board in 3D

    Vca mix

    sgreene30/Synthesis-Projects

    190 parts