Jumping to Babystepping while printing,
If you look at the current RC-8's RCBugFix... I added a 'Double Click' option. If the option is enabled (in Configuration_adv.h) and the LCD Panel is at its status screen.... You can double click the encoder wheel and instantly go to Z-BabyStepping. I use it all the time. I deliberately set my nozzle height a tiny bit too high and I use the Z-BabyStepping to get the height exactly correct while the printer is drawing the skirt around the part. It is a good way to make sure you get perfect adhesion on your print.
You can hook in at the same place to watch for different buttons being pressed and use the same code to jump to different routines.
If you are not fluent in C, you are going to have a difficult time... But the simplest way to do this is go into Marlin's idle() task in Marlin_main.cpp and add a check to see if the button you care about is pressed.
If it is... call void lcd_goto_screen(screenFunc_t screen, const uint32_t encoder = 0); (in ultralcd.cpp) with the function name you want activated. The next LCD update cycle will put up that screen.
But like I say... If you are not fluent in C, this is a very difficult piece of code to try to use as a learning experience.
Edited 3 time(s). Last edit at 04/24/2017 12:53AM by Roxy.