* [New Feature] I2C position encoder support
I plan to continue improving/cleaning this up, as there areas that need work.
* let the cleanups begin.
* progress
* more progress
* comments, rename files, etc.
* clean
* Cleanups per thinkyhead
* a few more cleanups
* cleanups, bugfixes, etc.
* remove unnecessary passes_test(), additional cleanups/optimizations
* cleanups
* misc.
* Fix up I2CPEM.init() and a few other things.
* organize, fix, rename, etc.
* more optimization
* a few more tweaks
* Remove requirement for LCD when UBL is used.
* fix previous oversights
* further refinement - error messages for P2 & P4
* require R on G26 when not using LCD; default to all points
* Unify M600 and M125 pause features
* Cleanup per thinkyhead's comments
* Rename filament_change_menu_response to advanced_pause_menu_response
* Include HAS_BED_PROBE in QUIET_PROBING
* Update gMax example file
* is_idle() is out of scope without the braces
* Convert FT-i3-2020 to Advance Pause names...
* Allow pause even if not printing
* Misc. Clean Up
Mostly UBL related clean up.
- But fixed a bug in the thermistortables.
- Made G26 more responsive to user aborts.
- Added sanity checks for older name for UBL_MESH_VALIDATION.
- Made G29 P4 able to edit invalidated mesh points
- Restore a reasonable Fade Height for UBL when creating new state information
- Get UBL's Topology Map to look a little bit better
- Make sure the user doesn't see a blank screen when doing Mesh Editing.
* Huh??? GitHub Desktop screwed up!
* get the planner object in scope
* Fix out of scope z_fade_height
* Travis timed out...
I need a change so I can force a new commit and sync.
The OLED is driven by an SSD1306, connected to the board via
I2C, the rotary encoder is connected to 3 GPIO pins.
Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>