Merging modern software development with electrons and metal
Random header image... Refresh for more!

My CANOpen Adapters

CANOpen Adapters

CANOpen Adapters

I’ve finally create Trac pages for my CANOpen adapters.  I will be highlighting each adapter in a blog post, starting with the CO-DB9-RJ45-2.

I created these adapters for two reasons:

  1. I’ve standardized on RJ45 cables for my CANOpen networks, because daisy-chained RJ45 cables are cheap, simple, and work well.  However, many of my CANOpen devices do not use RJ45’s, so I created adapter boards from their connectors to dual RJ45 jacks that are perfect for daisy chaining.
  2. Some devices require power on CAN_V+ to power their CAN line drivers.  Unfortunately, most CAN interfaces do not provide any power, or any way to get power, to the CAN_V+ wire.  Also, I need to provide incompatible voltages to different devices.  So I added flexible connections for CAN_V+ to my boards.

After using the boards, I’ve found a couple things that could be improved; the details will be covered in the board’s blog post.

Most of the boards use a similar setup for CAN_V+:

  • CAN_V+ from the power terminal block (TB1) is always connected to the device’s connector.
  • CAN_V+ from TB1 can be connected to the right and/or left RJ45 jack using jumpers.

This setup gives a lot of flexibility: you can power each device that needs CAN_V+ individually, you can power part of the network (left or right), you can power the whole network (left and right), or you can have separate power domains (by not connecting one or both of the jumpers).

If you start doing fancy stuff (such as different CAN_V+ voltages on different network segments), be careful.  For example, if you have an AMC DX15 segment (+12V) and a Baldor e100 segment (+24V), and accidentally move the AMC to the Baldor segment, you will fry the AMC’s CAN line drivers.

The CO_RJ45_PWR board is a little different, since it’s in-line.  Basically, CAN_V+ from the incoming RJ45 jack (J1) is always connected to the 8-position terminal block (P1), and CAN_V+ from the power terminal block (TB1) can be connected to J1 or J2 (outgoing RJ45 jack) using jumpers.

I had the PCBs made at Gold Phoenix, which is a good choice if you need several boards each of different types.  There are many other good PCB fabs.  I am not providing my Gerber files, since different PCB manufacturers may require different formats (units, resolution etc); there are plenty of resources on how to create Gerbers from Eagle on the internet.  If you can’t figure it out, you can always use a PCB fab house that takes Eagle PCB files directly.

Update 3/31/2012: Here are links to the different boards.

  • The CO-DB9-RJ45-2 converts a DB9M CANOpen connector to dual RJ45 jacks.
  • The CO-HDR-RJ45 converts a 5-pin, 5.08mm CANOpen terminal block header to dual RJ45 jacks.
  • The CO-M12-RJ45 converts a M12 CANOpen connector to dual RJ45 jacks.
  • The CO-TB-RJ45 converts a 5-pin terminal block to dual RJ45 jacks.
  • The CO-RJ45-PWR provides inline monitoring and access to CAN_V+ for RJ45 networks.


1 Gary Aragon { 06.13.12 at 7:50 am }

Good work on your CANOpen adapters. It looks as though you put a lot of thought into the designs. Would you be willing to sell some of these adapters. My company could use quite a few of your adapters. Thanks for your time.
Gary Aragon

2 Tony { 06.13.12 at 3:59 pm }


I’m not ready to sell anything yet. All the adapter designs are open source hardware. The trac pages have the BOM. You can download the Eagle PCB files, and freely adapt them to better meet your needs (I designed them with experimenting in mind; for industrial applications, you may want to look at changes such as modifying them to fit into a case). They will load fine in the lowest cost (free for personal, ~$50 for commercial use) Eagle PCB version.

I don’t provide the Gerbers, because Gerbers aren’t universal; what works for one PCB fab house might not work at another. If you find creating Gerbers intimidating (and I know it can be — fortunately I had help from a knowledge PCB designer), you can use a board house that takes Eagle PCB files, or I can upload appropriate files to a PCB marketplace such as Batch PCB.

I used Gold Phoenix to fab the boards; they don’t hold your hand, but they do have a good deal if you need to get a variety of designs fabbed. At work, we’ve been very happy with Sierra Proto Express.

BTW, if you need RJ45 terminators, there’s an easy way to make your own: buy toolless IDC RJ45 plugs (e.g. from Cables To Go), get small 120 Ohm resistors, spay insulation on the resistor leads, and the connect the leads between pins 1 & 2. Sometime I’ll write up the procedure up with pictures.

Leave a Comment