probonopd / RF100-Firmware

Conrad Electronic Renkforce RF100 Firmware
https://www.conrad.de/de/renkforce-rf100-3d-drucker-starter-kit-inkl-filament-1507428.html
GNU General Public License v3.0
7 stars 5 forks source link

Bed Leveling and Load/Unload Filament missing in source code? #5

Open probonopd opened 7 years ago

probonopd commented 7 years ago

According to http://www.rf1000.de/viewtopic.php?f=89&t=1827&start=20 these may be missing in the source code since Conrad "gets only the compiled file". This would be a clear GPL violation.

probonopd commented 7 years ago

Someone is re-engineering the 3-point bed levelling here: http://www.rf1000.de/viewtopic.php?p=18958#p18958

But it seems there is another way, using AUTO_BED_LEVELING_3POINT in combination with PROBE_MANUALLY:

Even if you have no bed probe you can still use any of the core AUTO_BEDLEVELING* options below by selecting this option. With PROBE_MANUALLY the G29 command only moves the nozzle to the next probe point where it pauses. You adjust the Z height with a piece of paper or feeler gauge, then send G29 again to continue to the next point. You can also enable LCD_BED_LEVELING to add a “Level Bed” Menu item to the LCD for a fully interactive leveling process.

The question is whether this is actually the best way to do it, or whether doing it in software with LCD_BED_LEVELING would be even better than the original... http://www.renkforce-rf100.ch/firmware/firmware-rf100/index.html says

Das manual_Bed_Leveling fährt jetzt bei jeden Punkt auf z = 0 mm und lässt sich mit dem Poti auf jede beliebige Z-Höhe einstellen. (Wunsch von Jürgen ).

https://github.com/MarlinFirmware/Marlin/wiki/Manual-Mesh-Bed-Leveling says:

On your LCD controller you'll find the "Bed Leveling" option at the end of the "Prepare" menu. As soon as you select this option, the printer will begin to move the nozzle from point to point collecting measurements. At each point, use the encoder to adjust the nozzle's Z position until the tip is just at paper-thickness from the bed, then press the encoder button to move to the next point. If G28 does an extra move (to sync with the mesh position) then you know mesh leveling is active.

probonopd commented 7 years ago

As for change filament, see

probonopd commented 6 years ago

Bed Leveling could be approximated by ultralcd.cpp http://www.rf1000.de/viewtopic.php?t=1889#p18958

static void lcd_level_bed() {
START_MENU();
MENU_ITEM(back, MSG_PREPARE, lcd_prepare_menu);
MENU_ITEM(gcode, MSG_FIRST_POINT, PSTR("G28\nG0 Z15 F600\nG0 X40 Y100 F1600\nG0 Z0 F300"));
MENU_ITEM(gcode, MSG_SECOND_POINT, PSTR("G0 Z15 F600\nG0 X10 Y20 F2000\nG0 Z0 F300"));
MENU_ITEM(gcode, MSG_THIRD_POINT, PSTR("G0 Z15 F600\nG0 X90 Y20 F1900\nG0 Z0 F300"));
END_MENU();
}