I'm building an audio cable tester/soldering station. XLR cables have 3 pins and they can be wired in a few ways depending on what you want to do. The basic cable is connected 1 for 1 and I want to make a system to verify if each pin is connected to the good ones on the other connector.
Picture the male and female connectors side by side. The 3 pins on the male connectors will be connected to 3 digital outputs and the 3 pins on the female connector will be connected to 3 digital inputs. That way, I can turn one of the outputs High and check my 3 inputs to see where that pin on the male connector is wired on the female connector. Then I can walk the remaining outputs and find out how the rest of the cable is wired.
That part is all good, I can output the wiring via the Serial.print() command and the result is good. The thing is that I would like to show the result with LEDs. It brings me up to 9 LEDs in a 3x3 matrix. I can use 9 outputs to show the result, but it seem like there could be a much better way.
The two solutions I see are the following:
- Buying addressable LEDs and interface them with my Uno
- Use 6 outputs, one for each row and one for each column. Each row represents one pin on the male connector, each row represents one pin on the female connector. So while I walk my 3 pins I can turn on the corresponding row and columns, then turn off that row and go to the next one, turn on the corresponding columns, etc. I feel like this would work, but I'm wondering if the LEDs will flicker or if the refresh will be fast enough not to be noticeable.
What would you suggest? Am I on the wrong track with solution #2? Is there another way that does not require that many outputs? I'm already up to 12 IO pins taken with #2 and 15 with #1. It seem like a lot for such a simple build...