CAN Interface - Rowan-Rocketry/SRAD-Avionics GitHub Wiki
Philosophy
The Controller Area Network (CAN) is a popular method for allowing multiple devices to interface with each other in a reliable and cost-effective manner. It is the communication system of choice for the automotive industry, and it is popular with FIRST robotics teams because it makes it easy to connect discrete devices in a unified system.
Essentially, by implementing CAN, we are able to better meet our goals for a simplistic modular system.
Parts Search
July 16th, 2024
Started looking at CAN transceivers. The original devices found required a 5V input, because CAN typically operates with a 5V differential pair. This is not plausible for our use case, because all other components operate at 3.3V, and our 3.7V battery would require a voltage step-up for each CAN device. Using a 5V, 9V, or 12V battery solution would not be feasible, since we hope to charge the battery with a 5V USB cable.
Fortunately, 3.3V CAN transceivers (apparently) exist! Originally, the SN65HVD23 was selected. It is manufactured by Texas Instruments, and is available on DigiKey. After learning more about CAN transceivers, a schematic was put together that included this chip. It was only after finishing the schematic that I realized that the chip only supported CAN and not the newer FD CAN.
July 17th, 2024
Finding a replacement that supported FD CAN was quite easy. In fact, many TI solutions exist under the TCAN3x series. While the TCAN34x are the newest, the simplest solution that was ready to go in KiCAD was the TCAN332G. This chip was essentially a drop-in replacement for the one already implemented, so almost all of the existing schematic could be used. Even the layout notes were the same!