Most people seem to think that a CAN bus transceiver is required to use the CAN interface. That's not really the case. While you can't connect the pins directly, using a diode on each Teensy and a pull-up resistor to 3.3V for the bus is sufficient. (You can't have any devices with real CAN bus transceivers on the same bus.)
This is described in Siemens ApNote AP2921.
It works quite well - I have used a 4 meter long bus running at 1MHz with no issues (diodes are signal diodes with 0.6V voltage drop, pull-up is 2.2kOhm). The CAN interface has automagic CRC hardware error detection and re-transmission for corrupted packets.
For people scared by the horrible CAN bus section in the Kinetis manuals, the CAN libraries are actually very easy to use.
This is described in Siemens ApNote AP2921.
It works quite well - I have used a 4 meter long bus running at 1MHz with no issues (diodes are signal diodes with 0.6V voltage drop, pull-up is 2.2kOhm). The CAN interface has automagic CRC hardware error detection and re-transmission for corrupted packets.
For people scared by the horrible CAN bus section in the Kinetis manuals, the CAN libraries are actually very easy to use.