Hello there, welcome back!
I happen to work with OBD-II, CAN, and OpenXC at the time. And I needed to create a cable harness (aka, adapter) to access different CAN buses on the same OpenXC translator. The basic idea is explained here, plus some photos: https://github.com/openxc/openxcplatform.com/wiki/Using-the-can2-2-bus-with-a-vi-wired-for-can2-1.
The example cable there uses rather thick wires, which makes sense if you see the OBD-II crimp connectors. However, I didn’t have such wires, so a brilliant idea flashed in my mind: use the UTP (Unshielded Twisted Pair, used for Ethernet). Very convenient: 8 wrapped wires, exactly what is needed. Although I don’t have much experience in electronics and making hardware, I managed to make this harness. Take a look at the photos:
Here I want to warn you not to repeat this, because these are the downsides of this UTP-based cable:
UTP cable has solid wires, which means they can be bent and broken relatively easy. I had a few such occasions during the assembling.
UTP cable is rather rigid, and so the ends can’t be rotated independently.
Don’t repeat my mistake, get the appropriate wires first.