How to calibrate the display encoder?

So I have switched from marlin to repetier and so far, after a few test prints, I like it a lot more.

There is still one thing which was easy to do in Marlin and which I cannot seem to figure out in Repetier.

I have a RepRapDiscount Full Graphics Smart Controller. How do I calibrate the encoder? Currently the encoder just scrolls like crazy through the menus. Sometimes one click scrolls down one items, sometimes three. This is the relevant part of my marlin code:

// ENCODER SETTINGS
//
// This option overrides the default number of encoder pulses needed to
// produce one step. Should be increased for high-resolution encoders.
//
#define ENCODER_PULSES_PER_STEP 4

//
// Use this option to override the number of step signals required to
// move between next/prev menu items.
//
#define ENCODER_STEPS_PER_MENU_ITEM 1

Does anyone know which varianble I should tweak in Repetier?

Thank you!

Comments

  • We have this instead:

    /* 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

    only problem is you have to find the position in ui.h or DisplayList.h if using dev version since the display type already sets this and overrides the setting in configuration.h (most displays at least do). Looks like they have changed the encoder meanwhile or you have a clone with different speed.
  • edited March 2017
    Thanks.

    The parameter #define UI_ENCODER_SPEED was already set to 2 in all instances in ui.h
    The encoder still scrolls 2 lines at a time. Sometimes it scrolls just 1 line per click but not always.

    There must be some way to calibrate it properly...
  • edited March 2017
    I also tried setting it everywhere to 0 to see if anything changes but.. no, it doesn't.

    EDIT: I got it. In my case, the value in configuration.h overrides the value in ui.h, so I set it there and now it works.
  • Sorry, I also forgot to mention that in order to work correctly, #define UI_DYNAMIC_ENCODER_SPEED should be 0
Sign In or Register to comment.