Handheld Radio Rotary Encoder Not Working - Page 1
Forum section: electronics / repair

author: DaneH3
author_rank: Contributor
timestamp: October 04, 2018, 02:01:44 am
content: So I recently repaired my Icom IC-24AT to working order and realized that the top knob that is used for tuning up and down on the spectrum was only able to switch channels upward.Basically, the switch would turn both directions as normal, but would only register clicks going "up".I disassembled the radio for what I thought would be thelasttime, took a look at the pins that connected the Adenca unit (shown in attachments) to the logic board. The solder joints that join them to the ribbon cable look fine on both boards (pictures attached). I used a continuity tester across the ribbon cable to the respective pins but none showed as passing through except for the middle (ground) pin.(The other button on the Adenca unit works fine)I'm not sure how the switch works in this circuit since it only has two connectors (not sure if it is technically a "rotary encoder" I only say that because it rotates infinitely in both directions like one)After poking around and inspecting the joints, I tried turning on the radio again and now the rotary switch works inneitherdirection.Currently, my only thought is to reflow the solder joints, but that's difficult as I have to remove the Adenca unit to do so.Manual for the radio is here:http://www.radiomanual.info/schemi/ICOM_VU/IC-24AT_ET_serv.pdfAny ideas out there? Any and all help is appreciated.Thanks,Dane

author: CJay
author_rank: Super Contributor
timestamp: October 04, 2018, 05:46:56 am
content: I think the metal lug thats soldered through the boards is the third pin and I think it's a pulse type device, it pulses one pin with CW rotation, the other pin with CCW so it should be really simple to debug

author: KL27x
author_rank: Super Contributor
timestamp: October 07, 2018, 02:07:14 am
content: This is definitely not a solder/joint problem. Or it wasn't, initially.If it worked in one direction, at least, then all of the pins are connected.The problem with mechanical encoders is bounce/noise.Some people seem to think this is a problem that has been solved, once and for all, and the answer is simply "software algorithm." Yet I see this problem in many of my devices using encoders. These are consumer devices, not Adafruit kits... and Treez can't be designing and coding all of these things.The software has to filter out false positives. But it has to also keep up with the speed that a human can turn the wheel/knob. And this can be a fine line on a noisy encoder. So as it wears in, it will stop being recognized in one (or both) directions.Since the software is tuned for this particular encoder, now you have to buy the exact same encoder to ensure it works (for awhile), once again.I swear one day I am going to make an encoder emulator to replace faulty encoders with a set of push buttons with a digital output.

author: DaneH3
author_rank: Contributor
timestamp: October 07, 2018, 02:50:13 am
content: Quote from: KL27x on October 07, 2018, 02:07:14 amI think this model of encoder still exists, thankfully. Are you sure outright replacing it seems like the solution? Replacements are around $25.I have considered replacing the encoder but I can't help but think about how it worked (albeit in one direction) and then stopped all of a sudden, making me think it's something else.Is there any way you would test this theory of the worn out knobbeforeI shell out the money for a new one?Thanks,Dane

author: cvanc
author_rank: Frequent Contributor
timestamp: October 07, 2018, 11:40:58 am
content: Check for bad soldering on the board attached to the encoder. For instance C3 looks like it's not even connected at one end. And trouble around that SMD diode might affect encoder operation?Good luck.

author: KL27x
author_rank: Super Contributor
timestamp: October 09, 2018, 08:03:04 pm
content: QuoteThere are only 4 (or 5, if it has a push button) connections for an encoder.There is, say, a ground connection and power connection and two outputs. There are electromechanical contacts in there that close and open and get sent through the output lines. The micro on the other end receives these two outputs A and B, and based on the order and timing of these pulses (which is calledgrayscalegray code, I think), it determines if the knob has meaningfully moved in the up or down direction.Both outputs are necessary to produce a step in either direction. All of the solder joints must be good. In both my faulty devices, up works fine, and down works 1/20 times. But 1/10 times, a down click gets recorded as multiple up ticks. So it takes about a thousand tries to get all the way down where you want without having to start over.As the encoder ages, the signal noise and bounce changes. And the firmware guy who wrote and tested the code while using a brand new encoder will eventually learn what he overlooked. But that doesn't help you.Theoretically, you might be able to get it working again with small LCR filter circuit on each output. Small decoupling cap and then a small value resistor between the encoder and the receiving micro. But you have no idea what the software filter and algorithm is on that receiving end. It could work, or it could be hopeless.This why I want to replace the encoders in these two devices with two push buttons outputting gray code through a micro. Once the output is tuned to the right speed, it will never change based on how fast or slow you turn the knob, and it will have no mechanical bounce or wear. This takes the firmware guy on the receiving end out of the equation.

author: DaneH3
author_rank: Contributor
timestamp: October 09, 2018, 10:07:52 pm
content: Quote from: cvanc on October 07, 2018, 11:40:58 amWhile C3 looks poorly installed in the picture, it looks fine in person. All of the solder joints on the board appear well secured and pass a test of continuity.As for the SMD, I'm not quite sure how I'd check that. I assume it isn't the diode based on the fact that it only interacts withoneof the legs of the knob, and neither leg registers.Poking around with an LCR and my other things hasn't yielded any obvious reasons as to why this board isn't working the way it should, so I'm still at a loss.Quote from: KL27x on October 09, 2018, 08:03:04 pmThis one only has two (three if you count ground). Does that make it not an encoder? I'm assuming the way it works is that it puts a voltage across both the "up" and "down" pins and simply detects which is connected to ground through a pulse from the switch moving.Quote from: KL27x on October 09, 2018, 08:03:04 pmWhile this information is clever and quite useful, I don't think I can use it to repair the radio, especially since I only plan on restoring it and not modifying anything.In terms of the bounciness problem possibly screwing with the registering of the input, is there a way I could use possibly an oscilloscope to analyze the signal and determine once and for all if the rotary switch is the problem?

author: Nusa
author_rank: Super Contributor
timestamp: October 09, 2018, 11:25:40 pm
content: Quote from: DaneH3 on October 09, 2018, 10:07:52 pmOf course you can, assuming it's an encoder with a ground and two outputs. Just use one channel on each output pin and ground on switch ground and you should be able to see exactly what happens when you turn the knob. If it's working correctly, only one output should change state at a time, probably with some switch bounce, alternating between the two outputs. It may actually behave better in one direction than the other, depending on how the switches have worn over time.If it is the switch, disassembling it and examining/cleaning it might be worth a shot.

author: DaneH3
author_rank: Contributor
timestamp: October 09, 2018, 11:29:32 pm
content: Quote from: Nusa on October 09, 2018, 11:25:40 pmI'll try this as soon as I can, and report back when I've done some testing.Thanks,Dane