I’ve now etched and assembled three of the CAN transceiver modules, two with shield headers and one without as a breakout. I probably should have made them all breakouts because you can’t easily get at the Arduino pins when the transceiver is plugged in. I had to epoxy the headers to the transceiver board because on the single sided board there isn’t enough copper for good physical support. Also discovered the bearings in my Dremel tool are going bad. In the good news department, my Cupric Chloride bath worked OK on the second batch of boards after about five hours of air bubbling to regenerate after I dumped in two feet of number six wire to get the Cupric concentration up. I’m not a chemist, I don’t know what I’m doing, but it works.
Two Arduinos are now wired together in a CAN network. One is reading a photocell, also an LM34 temperature sensor and it’s transmitting those measurements every second to the other node. At the destination, temperature and light readings are shown on a 16×2 Liquid Crystal display. The software is based on one of FazJaxton’s examples.
There is 100 feet of CAT5 cable between the two transceivers in the photo. Only the blue pair is connected, CAN doesn’t need a ground. In a home monitoring network, CAT5 is a logical choice as it is easy to find. and the other pairs could be used to feed power to the remote sensor nodes. Don’t know if CAN will coexist with 100bT Ethernet, will have to try that some time. Another possibility is standard telephone wire (IW) but would have to find the twisted kind. Most telephone wiring is two pair and only one pair is used. So if the stars are aligned correctly, you could use the other pair in your existing phone jacks for CAN.
Two node CAN network
It’s a bit of a pain to develop two Arduino nodes at the same time as the USB serial ports keep moving around every time you unplug a cable which confuses the IDE.
Maybe tomorrow a third node.