Hi,
I have an AST-CAN485 Dev Board and I have been having issues with both sending and receiving CAN messages. I was able to correctly send and receive RS-485 messages and communicate with at least one Modbus RTU server, but I have been unable to replicate this success over CAN. I am powering and programming the board using the recommended SparkFun FTDI Basic Breakout - 5V board.
Using the given example CAN Tx code, when I try to send any message over CAN, the controller accepts the command and then in the status check loop, it immediately errors out with a MOb error code of 0x10, i.e. a MOb bit error. This is the case for having the AST-CAN485 on a working bus with other nodes talking and for just the AST-CAN485 by itself.
When I try to listen to an external CAN bus using the given Rx example code, the command is accepted, but instead of throwing an error, it gets caught in the CAN status loop, never changing from CAN_STATUS_INCOMPLETE.
Physically, I have checked continuity between the output header pins I soldered on the board and the pins on the CAN transceiver and there are no issues there. I have also inspected the solder for any shorts and there are none between the pins. All CAN buses have been properly terminated with two 120 Ohm resistors as well.
Digitally, I have attempted to connect the board to a working CAN bus, verified as working by monitoring traffic separately, with no response from the AST-CAN485. I have made certain that the baud rate is set to the correct value, 500Mbps, even trying to slow it down while off the main bus in case the transceiver could not handle the faster output, even though it should, with no luck. I have also used an oscilloscope to monitor the pins, again verifying that we could see the correct output on the working CAN bus, and saw no change in voltages through the pins on the AST-CAN485, proving that the CAN transceiver is not successfully outputting anything on the pins.
I’m not sure what the next step to troubleshoot this is, so any advice would be greatly appreciated.