I have been developing an expansion board for my RPi Zero, which contains a power supply based on the buck converter TPS62130 (5V/3A) by Texas Instruments, a USB Hub and a CAN Controller/Transceiver MCP25625.
The controller/transceiver is being fed with two voltage leves, 5V from the buck converter to the transceiver and 3.3V from a voltage regulator LM1117-3.3v to the controller. I used a voltage regulator because the 3.3V output from the RPi Zero would not be able to supply the necessary current.
The MCP25625 is basically the MCP2515 controller and the MCP2551 transceiver in the same chip.
Since MCP25625 has the same "register structure" that the MCP2515, I've been trying to use some tutorials for MCP2515.
I am using Raspian with kernel version 4.9
I have modified /boot/config.txt to include:
dtparam=spi=on dtoverlay=mcp2515-can0,oscillator=8000000,interrupt=12 dtoverlay=spi-bcm2835
But every time I use
sudo ip link set can0 up type can bitrate 250000
All I get is
Cannot find device "can0" !!
Every single time!
When I run dmesg I get:
mcp251x spi0.0: Cannot initialize MCP2515. Wrong wiring? mcp251x spi0.0: Probe failed, err=19
The board is a PCB and everything is soldered just fine, but perhaps I've made some silly mistake in my circuit. Or maybe I'm forgetting some middle step.
I am attaching part of my schematics in the hopes someone will find my mistake.
Is it really possible to simply change the MCP2515 for the MCP25625?
Have I made some silly mistake in the circuit?