[Android Head-Units] donaldta:
No, the problem is that the AN 21-U's SWC is currently measuring resistance not voltage. One of the problems of measuring resistance on a live line is that you'll get false readings. In this case, the way sorin129 is programming it, the electrical state between holding the button down vs releasing it to program "Volume Up" is causing a false resistance reading. But it is recording the "no button press" state as the "Volume Up" function which is why it is automatically increasing the volume after he stops programming.

Also, while that tutorial is a pretty good precept for using a Multimeter on Steering Wheel Controls for identification; however, it was specifically written with the Fusion Brain in mind. It seems that the Fusion Brain actually prefers a low voltage references (0 to 5 volts) as described in the tutorial's "Solution A". This is the same voltages threshold that Sorin's SWC are exhibiting when pressing the buttons.

However, is appears that the out-of-box configuration for the AN 21-U's SWC prefers what the tutorial refers to as one or two wire resistance. But, since the Fusion Brain cannot measure resistance directly their "Solution C & D" proposes to add 5 volts to the circuit and another resistor connected to each ground to divide the voltage. So, they are changing the electrical conditions from an impedance to ground to voltage references to suit the Fusion Brain.

Well, from your feedback I believe in its current state it "wants" zero voltage and instead of a voltage source it wants a ground after the series of resistors that it currently uses to divide the voltage values per button press.

I think some people taken back at what a "voltage divider" does that they some it might have a heavier cost than it does. It basically just a series of resistors attached to ground that allows it to divide the source voltage. So, if you were able to buy just a resistor then it would cost less than dime. But, because you usually have to buy them in lots then it cost around 2 to 3 dollars.

Let me give you some examples:

+5.0V (voltage source) ---> 100 Ω ---> [2.5V] ---> 900 Ω ---> GND.

+5.0V (voltage source) ---> 12k Ω ---> [2.5V] ---> 12k Ω ---> GND

+12.0V (voltage source) ---> 400 Ω ---> [6.0V] ---> 400 Ω ---> GND

+12.0V (voltage source) ---> 900 Ω ---> [6.0V] ---> 900 Ω ---> GND

In the above scenarios, the two resistors in sequence are equal, so the voltage is divided by half at the interconnection point of the first and last resistor. But if you measure the voltage at opposite ends (the widest points) of the two resistors then it would read the same voltage as the source.

If you use unlike resistors then you can get different values. This is similar to how the SWC are wired when using voltage references.

For example in a SWC you might have,

+12.0V (voltage source) ---> "Volume Up" Button -----> 100 Ω ---> [4.0V] ---> 1.8k Ω ---> GND.

+12.0V (voltage source) ---> "Volume Down" Button -> 800 Ω ---> [3.6V] ---> 1.8k Ω ---> GND

+12.0V (voltage source) ---> "Media Next" Button ----> 600 Ω ---> [3.0V] ---> 1.8k Ω ---> GND

+12.0V (voltage source) ---> "Media Prev" Button -----> 360 Ω ---> [2.0V] ---> 1.8k Ω ---> GND

You can even even divide the circuit even further with a third resistor. (and so on, as necessary)

9V (voltage source) ---> 1k Ω ---> [6V] ---> 1k Ω ---> [3V] ---> 1k Ω ---> GND

9V (voltage source) ---> 8k Ω ---> [6V] ---> 8k Ω ---> [3V] ---> 8k Ω ---> GND