Introduction: Touch Screen Cable Tracer
Diagnose the type and integrity of USB and RJ45 cables with this Touchscreen Cable Tracer. Identify the exact wiring configuration, diagnose broken wiring, and plug pin connections.
- Test over 10 cables types using RJ45, USB B/B3, USB A/A3, USB C, USB Mini, USB Micro/Micro3
- Touch screen menu Auto Detect Mode and Manual Mode for a deeper diagnosis
- Displays Loop-back of pins on any of the input and output ports in use
Based on the popular Arduino Cable Tracer the Touch Screen Cable Tracer is 70% smaller, uses an Arduino shield that eliminates over 20 hours of meticulous soldering, and uses snap-together parts with minimal soldering.
Step 1: Gather the Materials
I have tried to minimise the number of parts to make this more accessible to makers of all skill levels
- Arduino Mega 2560 Board or Arduino Due
- Cable Tracer Arduino Mega Shield - Two options
- ILI9325 2.8" TFT Touch Screen x 1 (Note: ILI9325 is required is you use Arduino Due)
- Case - 3d Printed model with 3 parts provided in instructable
- 1m length USB A cable x 1 - used to connect USB charger to Cable Tracer unit
- USB A charger - used to power the unit
- 3 x M3 diameter 8mm length screws
- 3 x 3mm washers - 3d printed model provided
- Double Row Header Connector Strip 2.54mm - 1 of 18x2
- Single Row Header Connector Strip 2.54mm - 5 of 8x1 and 1 of 6x1
Step 2: Prepare the Arduino
It's important to step through these instructions to ensure each of the components are progressively tested.
Load the Code into Arduino Mega
Place the Arduino Mega on a hard flat, non-conductive surface.
Load the Arduino IDE into your Windows/Mac machine following the instructions outlined here on the Arduino.cc site here
Connect the Arduino Mega to your USB port using the USB A to B cable provided by the manufacturer of the board. Ensure the board is on a non-conductive surface so there will be no electrical shorts.
In order to get the Screen to work with the Arduino Mega, there need to be very specific libraries loaded in the Arduino IDE. I have included these in a ZIP folder below for convenience.
Start by removing the following libraries from the /Arduino/Libraries folder on your PC/Mac
Then download the CableTracerLibraries.zip from here.
Extract the files into the /Arduino/Libraries folder on your PC/Mac
Load the code provided below. Press the upload button and once the code is loaded successfully disconnect the USB cable from power.
Test the 2.8" TFT screen on the Arduino Mega
With the USB cable or power cable disconnected from the Arduino Mega insert the Screen carefully into the Mega ensuring the pins are aligned.
Apply power to the USB port and check that the Splash Screen is displayed correctly and the touch screen menu works correctly.
NOTE: If you get a White screen after loading the code you may find your screen uses a different controller. I have provided two variations of the code which should address the issue.
Attach the external USB Power Cable to the Arduino Mega - Note: This is not mandatory and if you want to avoid soldering wires to the PCB you can add a standard power supply connector to the Arduino Mega similar to this here.
I have chosen to use a USB A Cable to power and provide the ability to update the code of the unit without the need to disassemble the unit. Retain the USB A plug connector cut off the other end giving you approx 1m of cable. Strip the cable back to expose the 4 wires - Red, Black, Green and White
Step 3: Print the 3d Case
The Case has four component pieces to print as can be seen in the pictures above
- Case Lid
- Case Base
- Lid Decal
- Washers x3
I used PLA and chose a combination of Blue and Green however it is over to you on colour combinations.
The files can be found here on Thingiverse.
Note: Due to popular request a new option for a deeper base unit to accommodate batteries has been added and a new PCB rim added to make the PCB sit more snuggly in case.
Step 4: Building Your Own Cable Tracer Shield
This section is for you if you choose to build your own Cable Trace Shield. It outlines how you can order a prefabricated PCB and have most of the components pre-installed on one side of the PCB. Interestingly the whole process from time from order to delivery by DHL from JLPCB to New Zealand took less than 7 days which was impressive considering this was during a COVID L4 lockdown!
I have provided the schematic so you can choose to design and order your own Cable Tracer Shield PCB from JLPCB or use the files provided to just order to my design specification.
When ordering you can also choose to have just the PCB manufactured and then install your own components or you can employ JLPCB to provide and install most of the parts on one side only at manufacture.
Option 1 - Order PCB using my design
- Navigate to the JLPCB site and create a new account. The overall process is painless requiring you to upload the PCB design, Parts, and Placement files then you are presented with a Quote with freight.
- Go to the "Order Now" section of the site
- Download the TechKiwiGadgets files located here.
- Use the "Add Gerber File" button to upload the Gerber File. This will import the design and give you a view of the PCB and its attributes. Scroll down to the bottom of the page and review the settings. As this is a tested design I recommend leaving the parameters and just focus how many boards you want to be ordered.
- If you want components installed you need to turn on the switch for "SMT Assembly" which will bring up additional fields. You will be asked to upload two further files which again have been provided below.
- Upload the component BOM file
- Upload the Pick and Place file provided
- Points worth noting before finalizing the order
- "SMT Assembly" can only be added to one side of the PCB in the manufacturing process. For this reason, I manually soldered in the Header Pins for the Arduino Mega.
- Some components may be unavailable due to stock variability. In some cases, there are alternatives that can be selected. If not available then it becomes a component you need to source and add manually.
Option 2 - Design your own PCB
- Firstly, navigate to the JLPCB site here and create a new account.
- Once logged in Navigate to EasyEDA designer tool here
- Tutorials for EasyEDA can be found here and there are multiple YouTube tutorials available so I will not go into a blow-by-blow description of how to design a PCB.
- However, I have provided you with a schematic circuit diagram above that you can copy and select your own components and board layout.
Step 5: Assemble the Cable Tracer
Assembly at this point is very simple!
- Preparation - Using a firm non-conductive surface, carefully separate the LCD from Arduino Board ensuring you do not flex the LCD or put pressure on the orange ribbon cable.
- Attach the LCD - Gently press the LCD into the Cable Tracer Sheild ensuring the pins are aligned to the header sockets. Once in place double-check all pins are in the correct position.
- Attach the Arduino - Take the Arduino and carefully press into the header pins provided on the underside of the Cable Tracer Sheild.
- Perform a Quick Test - At this point, it is worth plugging the unit into a USB power source to do a quick functional test and to ensure there are no issues. With no external cables attached, there should be no connections counted at the bottom left of the screen and the touch screen should be operating.
- Mount Shield in Lower Case - Orient the lower case and Cable Tracer Sheild so that they close together. Carefully thread the USB A cable through the "Chord Grip" taking care that when the unit sits in the base uninhibited by the cable. See the photo provided.
- Screw Shield into the Lower Case - I have provided a 3d model to print 3 x washers. These protect the upper circuit track from metal screw damage when they are screwed into the base. So carefully put those in place ensuring not to over tighten.
- Secure the Decal into the Lid - Take the Colourful Decal and press this into the Lid so that it clicks into place. It will only fit one way. Once pushed into place put a small dab of hot glue in each corner to avoid movement.
- Attach the Lid - The lid and base have been specifically designed and printed to fit the Cable Tracer Base unit snuggly. If there are any issues message me and I will send you the source files so you can adjust the model. Do not glue the lid and base together until testing is completed.
Step 6: Get to Work Testing Cables!
Now the exciting part. Hopefully, you now have a fully functioning unit. The Cable Tester is designed to Test over 10 cables types using RJ45, USB B/B3, USB A/A3, USB C, USB Mini, USB Micro/Micro3.
The Cable Tracer has two modes - AUTO and Manual
This mode is the default mode and uses predetermined cable conditions to identify and then display input and output cable configurations.
You will notice that there are two counters in the bottom LHS of the screen. "Pre" and Post" are used to trigger a redraw of the screen configuration. If there is a change in cable connectivity then this will be triggered.
In order to use manual mode, you need to disconnect any cables under test. Then at the home screen touch the "Manual" Button
You will now be presented with a menu of cable options that you can choose from. These options force the cable tracer to display the Cable Connectors selected. Plug one end in at a time to see the effect of doing this. You will be able to see which pins are looped back at the end of the cable before connecting to the other end. This is useful to identify shorted cables, open pins, damaged or loose plugs.
Using the Tester
My advice is to start with Auto Mode when first testing cables. If the test cable is unusual or sufficiently damaged that the Auto Mode is not identifying the cable then switch to manual mode.
I have found many examples of where the unit has identified underlying problems
- USB C cables missing 2 or 3 ground or VCC pins when they should have 4 of each
- USB C cables that won't charge some devices because the device requires data pins to be looped back (see earbud example in first picture above)
- USB cables with shorted pins or open pins that will change but not transfer data between devices
- USB B V2 Cables used attempted to be used when USB B V3 required
- RJ45 crossover cables mixed up with straight-through patch panel cables
Not All Cables are the same - Despite their appearance!!
There are other instances of USB A to USB C cables that look identical to the eye however are using V2 and V3 USB standards which can be seen in the video above.
Now you have your own cable tracer you can use this to diagnose charging issues for friends and also clean out the house of all of those faulty or unusable cables that are sitting in various draws around the house - happy hunting!