0
\$\begingroup\$

In a current design i have to form a Point-To-Point communications link in an industrial environment. Based on some research and thinkering i came up with the idea to use a CAN-Physical layer for this. The CAN-Protocoll will not be implemented as only a PtP-Link is required.

My requirements are:

  1. Point to Point physical Link
  2. Small Solution Size (Physical-Layer IC with external components)
  3. Some what on the low-cost Side
  4. Datarates of >4MBit/s supported @> 10m
  5. Solution Size must include TVS/ESD protection IEC 61000-4-2 Level 4. No lightning protection is needed.
  6. Must run of a single 5V0 supply (Logic can have seprate 3V3 - prefereable but no must)
  7. Must be available in "lowisch" volumes (500pcs per Order maximum -> Digikey, Mouser, etc.)
  8. Must not have more than two "data-wires" going off to the connector
  9. Must be suitable for half-duplex communication (Full-Duplex okay, but not required)
  10. Must be available in small form-factor packages that are vision-inspectable during production (No BGA)

My implementation:

Currently i am using a CAN-Transreceiver for automotive applications to form the half-duplex differential point-to-point link. I am not going to use the CAN-Protocoll. The Transreceiver is connected to a standard UART-Port of any MCU. My intentions are to send commands to the device and then reply a NACK or a Dataframe.

The device will be supplied (IOV+) with 5V0@70mA +/- 10%. I did add a T-Filter to reduce EMI - thereby using the ESD-Array for the power supply also.

On the "Master-side" the same circuit will be used to form the communications link.

I do not need the implementation to comply with the CAN-Specifications. I just need to get the link working reliable in a industrial environment (Common-mode voltages, transients etc.)

My questions: Are there any obvoius issues with this design? As i am not familiar with CAN in PtP im an not sure about the implementation. Also, als the ESD/TVS array is intended to be used for USB/HDMI stuff i am not sure if to use it. I am also not sure if the implementation can withstand reverse polarity conditions on the supply (IOV+/GND). The Transreceiver is supplied (5V0 and 3V3) from an LDO (Supplied from V+) which does implement this feature - but i am not sure, if the ESD/TVS-Array will breakdown in reverse polarity conditions.

I am also very new to topics like EMI/EMV and getting designs certified. I did look up some papers and guides and came up with my solution. I am intending to use the design in an industrial environment and like it to meet the required standards. Therefore, i did implement the T-Filter, split-termination and the RC-Filters on RX/TX. Are there any obvious erros in this implementation or anthing that catches the eye/is missing? I am not asking for a finit answer - more like a: Your design could meet the specifications -> get it tested / will never work -> because of ..., have a look at ... .

Furthermore, i do have serious doubts about the CAN-choice. I know about CAN i a multi-drop role - but never heard of it being used in PtP. I did choose this approach, as RS485/RS422 transreceiver do not come (Available at digikey) in a small enough package for a reasonable price ( < 1.5€ @500PCS). Also i could not find any other physical standard suitable for my requirements than RS422/RS485/CAN. I was thinkering to go with USB2.0 (16 MBit/s) but dropped the idea due to the limited range specification). Therefore: Does anyone have a idea/recommendation for a different physical layer? I am happy to read stuff up and learn.

Ressources:

IEC-61000-4-2

Current TVS-Element

Current Transreceiver

Transreceiver Appnote

Used LDO

Current schematic: Current Schematic

\$\endgroup\$
6
  • \$\begingroup\$ You don’t mention a data rate for this link, what data rate do you require? Also, using a CAN physical layer with uart signalling will surely make someone mad at you in the future - you will have to build your own debugging tools for instance. \$\endgroup\$
    – Bryan
    May 22, 2022 at 16:35
  • \$\begingroup\$ @Bryan Thank you for your response. The Datalink is intended to be run with 4MBit/s. At least the UART-Module of the MCU will be configured that way. \$\endgroup\$ May 22, 2022 at 17:13
  • 1
    \$\begingroup\$ At 4MBit/s CAN physical layer would be inappropriate - the recessive state of the bus is not actively driven but instead allowed to be pulled down (well, together) by the termination resistors. Even at the spec’d CAN limit of 1MBit/s I’ve seen some pretty gross waveforms, 4M will be just awful. I would recommend hunting around for a cheaper 485/422 transceiver \$\endgroup\$
    – Bryan
    May 22, 2022 at 17:19
  • \$\begingroup\$ Thanko you very much for your response @Bryan \$\endgroup\$ May 22, 2022 at 22:00
  • 1
    \$\begingroup\$ @Lundin To provide the rails for the MCU and other circuits. Also the 5V in gets routed thorugh the LDO to provide short-circuit and reverse polarity protection as well as ripple rejection from the long cable runs. \$\endgroup\$ May 23, 2022 at 12:04

2 Answers 2

4
\$\begingroup\$

There are very robust certified 10MBit RS485 line transceivers. They are perfect for these requirements. Some run native with 3.3V, no level shifter needed.

\$\endgroup\$
4
  • \$\begingroup\$ Thank you very much for your response. Do you have any recommended parts? I am not able to find them in suitable packages (max 3x3mm with leads) in a ~1,5€/pcs region @ 500pcs/order. \$\endgroup\$ May 22, 2022 at 22:01
  • \$\begingroup\$ I will have a look. 5V version or 3.3V? \$\endgroup\$
    – Jens
    May 22, 2022 at 22:20
  • 1
    \$\begingroup\$ At Digikey I see one in 10MSOP case for $2.36, everythig else is sold out, Mouser has one in MSOP8 for $1.39 \$\endgroup\$
    – Jens
    May 22, 2022 at 22:34
  • \$\begingroup\$ Thank you very much for your help! \$\endgroup\$ May 22, 2022 at 23:25
1
\$\begingroup\$

If you are using UART then use a RS-485 transceiver, which is intended for the very purpose of reliable UART communication with differential signals.

The main difference between a RS-485 transceiver and a CAN one is the signal voltage levels, where RS-485 goes between 0-5V and CAN uses 2.5V +/- 1V. Also, classic CAN transceivers are not intended for speeds > 1MBit so you would have to pick a CAN FD one. CAN is used for point-to-point communication all the time, nothing special with that.

ESD protection should be 8kV contact/15 KV air on all modern parts.

3.3V logic levels with 5V supply is common.

RS-485 (or CAN) means half duplex - if you want full duplex you'd use the same transceivers but an "RS-422 connection", meaning two differential signals in each connection for a total of 4.

Switching between CAN and RS-485 will not make a difference on BoM cost. The main difference is that CAN will require a MCU with CAN controller on-chip, which limits your selections of MCUs. They are not necessarily more expensive than other MCUs (ignoring the current silicon shortage fiasco which might make automotive parts more expensive due to shortage). Either solution needs termination and optionally external choke and/or tvs.

Implementing CAN software is more complex than UART, so there's a bit of extra R&D costs, including more tools required (although in case of CAN you get CRC calculation for free). The CAN data link layer is however far more rugged and modern than the UART one, so why you'd pick RS-485 over CAN FD for an industrial application, I have no idea - the cost argument is far-fetched. The overall trend in industrial systems is that old RS-485 buses are getting replaced with CAN.

You might be correct about CAN having more parts available when looking for something smaller than SO-8 packages. However, parts like the TJA1042 shows that UART is still not dead since the parts are getting updated. STR485 looks like another option fulfilling your spec, it comes in a DFN10 package, some 0.8mm smaller or so yet. However, with the current component shortage I would strongly consider SO-8 unless board space is really tight, because SO-8 follows the old MAX485 pinout, which is industry standard. Not picking SO-8 means you'll "marry" the manufacturer and there will be no second source.

\$\endgroup\$
4
  • \$\begingroup\$ Thank you very much for you response! Do i read you response corretly in the sense, that i can not use a CAN-Transreceiver connected to a uart port to just implement the physical layer (I only want to have differential signals and an robust ic)? Another comment said, that signal integrity is rather not good at CAN FD (4MBits) because the line is not actively driven on both states? What are your observations regarding this? \$\endgroup\$ May 23, 2022 at 12:08
  • \$\begingroup\$ @ElectronicsStudent You probably can use a CAN transceiver but I don't see the benefit. As for CAN FD, I have yet to use it outside classic mode, so I don't know the details of how it deals with recessive bits. CAN FD transceivers come with a "split" pin however, which can be used for the purpose of driving a common mode 2.5V. \$\endgroup\$
    – Lundin
    May 23, 2022 at 12:35
  • \$\begingroup\$ There are stand alone CAN controllers with SPI interface, if that's your thing. \$\endgroup\$
    – Lior Bilia
    May 23, 2022 at 14:23
  • \$\begingroup\$ @LiorBilia That's an inferior technology. Modern design uses on-chip controllers. The only reason why you'd ever use an external controller is because your MCU has specialized requirements but no CAN controller on the part meeting those requirements. \$\endgroup\$
    – Lundin
    May 24, 2022 at 6:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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