Need Help with Viki 2.0 LCD rotary encoder not working

Basic Information:

Printer Model: Airwolf3D Axiom
MCU / Printerboard: Upgraded to BTT SKR 2
Host / SBC: Raspberry Pi 3 Model B v1.2
klippy.log

Describe your issue:

I am in the process of retrofitting a Airwolf3D Axiom with a SKR 2 board. I would like to use the original LCD which is a Viki 2.0 which is basically same as mini12864 LCD. It worked fine with original board running marlin. I got the LCD working great, all buttons work as intended except the rotary encoder knob. I can press the button on the knob to go to menus but scrolling through the menus (rotating to knob) does not work. I tried doing a test to see the state of the encoder_pins:

[gcode_button test_encoder_a]
pin: ^EXP2_3
press_gcode: {action_respond_info("Encoder A pressed")}
release_gcode: {action_respond_info("Encoder A released")}

[gcode_button test_encoder_b]
pin: ^EXP2_5
press_gcode: {action_respond_info("Encoder B pressed")}
release_gcode: {action_respond_info("Encoder B released")}

If I save and restart I instantly get Encoder A pressed and Encoder B pressed. So I learned that these pins are inverted. Tried again with inverted and I get nothing.

Next it pulled out the DMM and checked the voltage on the pins when rotating the knob. When the knob is rotating it bounces from 3.25v to 1.81v. Is this correct? I am thinking if the pins are inverted they should be going lower than 1.81v. Is that voltage to high for SKR 2 pins to consider low? Also should the pins still be pulled high ^ if they are inverted or should they be pulled low? Please help if you can, this is driving me crazy.

printer.cfg (5.2 KB)

klippy.log (660.2 KB)

Sounds to me like the encoder isn’t properly grounded. Probably a bad solder joint finally got enough resistance to cause issues. The question is how much time/effort are you willing to put into saving a $10 board?

Yes that is what I am starting to think. I wanted to try to keep original retro look but all this is not worth me ripping my hair out. I already hooked up a spare BTT mini12864 I have and it works fine. I think I am just going to design an adapter plate and call it a day.

Also what I have researched about the Viki 2.0 it does have weird grounding. So much that you need an extra ground cable from LCD board mount to controller board mount…