0
\$\begingroup\$

I have many (tens) sensors which talk I²C spread over larger area (10s of meters), and I am considering to connect them to CAN. I am looking for advise on how to do it, with lower cost ($20 or so would be ok per one sensor).

I don't think there is anything ready-made; except CAN/RS485 from Artesyn, https://www.artesyn.com/power/assets/trn_can_rs485_interface_adapte1321396157_techref.pdf, which is a I²C master connected over CAN - but maybe only works for their application (PSU), and maybe is expensive.

I looked at Arduino with CAN-BUS shield (too big in dimensions), Microduino, Teensy and a few other boards. I don't mind doing the programming (periodically, about 2 Hz, read from I²C sensor and send out over CAN), but I would like the hardware to be open (like Arduino), compact (let's say max 4x4 cm) and inexpensive.

Any recommendations, or even perhaps ideas how to make this differently, are appreciated.

\$\endgroup\$
2
  • 1
    \$\begingroup\$ Are you determined to use CAN? Because you could use Onewire for the distribution instead, and the DS28E17 for the Onewire/I²C translation. \$\endgroup\$ – Janka Mar 4 '18 at 15:00
  • \$\begingroup\$ Good idea, I am checkig 1-wire out now and it looks very suitable for me. Can you post it as an answer so that I can accept it? Thanks! \$\endgroup\$ – eudoxos Mar 5 '18 at 1:36
1
\$\begingroup\$

If you aren't determined to use CAN, you could use Onewire for the distribution instead, and the DS28E17 for the Onewire/I²C translation.

It's not fast, but for hooking up some I²C sensors seldomly read it may suffice. To my practical experience, it's also reliable in noisy environments over 50m and more. The chips have factory ids, so no address conflicts. The one thing you have to keep in mind it's DC-coupled. You may want to use an optocouple on the host side to break ground loops.

There are Linux kernel drivers for Onewire, some of the host adapters and the DS28E17, if that's important for you.

\$\endgroup\$
2
\$\begingroup\$

There are LPC11C00 microcontrollers with integrated CAN transceiver. Should be trivial making a board without isolation. But these parts are only active until 2020.

But you could also get a small STM Nucleo board (eg: NUCLEO-F042K6) and put one small custom board with the CAN transceiver underneath.

but I would like the hardware to be open

You can make the board open yourself. Contribute.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.