Epyon
Well-known member
For my next project, I'm trying to build I/O modules that are compatible with my home automation system which uses CAN bus. All modules have an 8 bit address. Input modules put messages on the bus when certain actions are performed (e.g. pushing a button). Output modules can be programmed to listen to the messages coming from the addresses of selected input modules and then perform an action (e.g. switching a relay). I'm focussing on creating an output module that has more outputs than the vendor currently offers. The protocol is described here. I'll be using a T3.2 for this.
Modules are assigned addresses and programmed through the CAN bus with a proprietary software tool. In a later stadium I want to emulate the program functions as well.
I have worked extensively with serial protocols, but this is my first time touching CAN. Searching the forum yielded in more questions than answers , so here's a small sanity check.
- Apparently there are multiple forks of FlexCAN. Which one would be preferred for a beginner (e.g. most documented or simple API)?
- I have some MCP2551 breakout boards lying around, these can be used with the T3.2 and appropriate library? The CAN bus of the home automation system is 12V and probably ISO 11898-3, because the system wiring can be made in bus, star, ring or combinations thereof. If not, any suggestions for transceivers?
- Can I use the Teensy and the CAN transceiver to (nonintrusive) snoop on traffic on the CAN bus in order to test/reverse engineer the HA protocol?
- Is CAN communication on the Teensy event driven, e.g. can I interrupt my program if a message on the CAN bus is detected or do I need to poll a buffer?
Many thanks for all guidance you can give me .
Modules are assigned addresses and programmed through the CAN bus with a proprietary software tool. In a later stadium I want to emulate the program functions as well.
I have worked extensively with serial protocols, but this is my first time touching CAN. Searching the forum yielded in more questions than answers , so here's a small sanity check.
- Apparently there are multiple forks of FlexCAN. Which one would be preferred for a beginner (e.g. most documented or simple API)?
- I have some MCP2551 breakout boards lying around, these can be used with the T3.2 and appropriate library? The CAN bus of the home automation system is 12V and probably ISO 11898-3, because the system wiring can be made in bus, star, ring or combinations thereof. If not, any suggestions for transceivers?
- Can I use the Teensy and the CAN transceiver to (nonintrusive) snoop on traffic on the CAN bus in order to test/reverse engineer the HA protocol?
- Is CAN communication on the Teensy event driven, e.g. can I interrupt my program if a message on the CAN bus is detected or do I need to poll a buffer?
Many thanks for all guidance you can give me .