Encoder not clicking thru menu properly
Hello,
Help!
RepRapDiscount Rumba Basic board and Smart LCD Controller XXL.
Repetier 0.9.2 Firmware
When trying to use the encoder it just bounces back and forth between 2 menu items no matter what settings used in configuration.h.
Below is my current configuration.h.
This issue happens with multiple Smart LCD Controllers, standard and XXL.
________________________________
#ifndef SDSUPPORT // Some boards have sd support on board. These define the values already in pins.h
#define SDSUPPORT 0
#undef SDCARDDETECT
#define SDCARDDETECT -1
#define SDCARDDETECTINVERTED 0
#define SD_EXTENDED_DIR 1 /** Show extended directory including file length. Don't use this with Pronterface! */
#define SD_RUN_ON_STOP ""
#define SD_STOP_HEATER_AND_MOTORS_ON_STOP 1
#define ARC_SUPPORT 1
#define FEATURE_MEMORY_POSITION 1
#define FEATURE_CHECKSUM_FORCED 1
#define FEATURE_FAN_CONTROL 1
#define FEATURE_FAN2_CONTROL 0
#define FEATURE_CONTROLLER 2
#define ADC_KEYPAD_PIN -1
#define LANGUAGE_EN_ACTIVE 1
#define LANGUAGE_DE_ACTIVE 0
#define LANGUAGE_NL_ACTIVE 0
#define LANGUAGE_PT_ACTIVE 0
#define LANGUAGE_IT_ACTIVE 0
#define LANGUAGE_ES_ACTIVE 0
#define LANGUAGE_FI_ACTIVE 0
#define LANGUAGE_SE_ACTIVE 0
#define LANGUAGE_FR_ACTIVE 0
#define LANGUAGE_CZ_ACTIVE 0
#define LANGUAGE_PL_ACTIVE 0
#define LANGUAGE_TR_ACTIVE 0
#define UI_PRINTER_NAME "Delta Plus"
#define UI_PRINTER_COMPANY "AnyCubic"
#define UI_PAGES_DURATION 3000
#define UI_ANIMATION 0
#define UI_SPEEDDEPENDENT_POSITIONING 0
#define UI_DISABLE_AUTO_PAGESWITCH 1
#define UI_AUTORETURN_TO_MENU_AFTER 40000
#define FEATURE_UI_KEYS 1
#define UI_ENCODER_SPEED 1
#define UI_REVERSE_ENCODER 1
#define UI_KEY_BOUNCETIME 10
#define UI_KEY_FIRST_REPEAT 500
#define UI_KEY_REDUCE_REPEAT 50
#define UI_KEY_MIN_REPEAT 50
#define FEATURE_BEEPER 0
#define CASE_LIGHTS_PIN -1
#define CASE_LIGHT_DEFAULT_ON 1
#define UI_START_SCREEN_DELAY 1000
#define UI_DYNAMIC_ENCODER_SPEED 1
Comments
#define UI_ENCODER_SPEED 1
with 0 or 2 instead depedning on what works better. 0 is slower whcih I think is what zou need.
Marlin firmware with the same board and lcd controllers works fine.
Encoder is setup to use the same pins in marlin and Repetier.
Works fine in Marlin, only cycles between 2 options in Repetier.
If you can only toggle the A or B channel of the encoder is not connected resp. wrong pin number set. In dev version these are in DisplayList.h for the different boards set. Make sure it has same pins as marlin.
"Encoder is setup to use the same pins in marlin and Repetier."
not sure what you mean by toggle the A or B channel.
for your board. Only if we get alternating signals on both pins it changes to next. They build a change pattern and since you seem to get only 50% of the pattern you only toggle between 2 entries. SO I assume one pin number is wrong for your board/display combination.
Here is the repetier firmware I am using.
And here are the working marlin firmware:
Add in repetier
#error Gets used
where you set the values just to be sure it is using these values. Should cause then an error message.
But hten I have no idea what else it could be since you say in marlin it works and I know repetier normally also works.
DO you mean like this?
because that generates a huge error,
#error Gets used
in DisplayList.h where you think the
that get used are. If you then get the error message you know it is using these pins and not from an other else it catched for some reason.
If so when compiling I get:
https://pastebin.com/2RvrP3CT
And a link to a RAR of the entire firmware:
http://www.pdxmc.com/uploads/Anycubic/Rumba-Repetier.rar
referring your configuration.h you have double use of Pin 11 , that cannot work.
in Feature servo #define SERVO0_PIN 11
if you use a servo, Change the pin , if you don´t use servo
Change from #define FEATURE_SERVO 1
to #define FEATURE_SERVO 0
btw:
You da man!
Repetier firmware builder set that pin, and i didn't even find it!
Now that i disabled servo pin 11 for now, the LCD WOrks!
Yeah, that double pin setup was removed was a misunderstanding about an earlier post.
I have disabled the servo settings as suggested, but it did nothing. Not sure which display controller setting to use.
/* Normally cou want a next/previous actions with every click of your encoder.
Unfortunately, the encoder have a different count of phase changes between clicks.
Select an encoder speed from 0 = fastest to 2 = slowest that results in one menu move per click.
*/
#define UI_ENCODER_SPEED 1
https://wetransfer.com/downloads/a05621b3d216ada38f73997c53b557e720180707122435/f8d621c6edbb0ee3f280271ec604860a20180707122435/af94ca