Met een BLtouch V3.1 Auto Leveling Sensor kun je automatisch bed-leveling uitvoeren. Je hoeft je dan dus niet meer druk te maken of je nozzle op de juiste print hoogte print. Een heel gemak en geruststelling. Om de BL-Touch V3.1 te kunnen gebruiken op een Big Tree SKR Mini E3 V1.2 bord met Marlin software met jouw X,Y ‘Nozzle to Probe’ offsets zul je deze zelf moeten compileren. In deze blog leg ik uit welke stappen je hiervoor allemaal moet volgen.

Installeren BL-Touch

Je bevestigt de BL-Touch met een afstandshouder aan je print-kop. Voor het aansluiten op de Big Tree SKR mini E3 V1.2 zag ik dat er een foutje zat in de aansluiting. Kijk je nl. naar het schema van dit bord dan zie je voor SERVOS (waarop je de 3-polig connector van je BL-Touch V3.1 aansluit):

GND   +5V    PA1




Kijk je echter naar de kabel die bij de BL-Touch wordt meegeleverd dan zie je:


Rood (VCC) – Blauw (GND) – Geel (SIG).

Dit betekent dus dat VCC en GND omgewisseld zijn en je dus Rood en Blauw op je connector van de BL-Touch V3.1 die naar je bord gaat moet omwisselen. Na deze aanpassing kun je de 3-polige stekker van BL-Touch V3.1 in de SERVOS poort en de 2-polige stekker in de PROBE poort van je Big Tree SKR Mini e3 bord stoppen.

Downloaden Source-Code Marlin

De Marlin software kun je rechtstreeks vanaf hier downloaden. Ikzelf prefereer echter om gebruik te maken van GIT zodat je gemakkelijker je source-files kunt updaten. Naast de Marlin software moet je ook de voorbeeld configuratie files downloaden die de juiste instellingen voor diverse borden bevat.

git clone https://github.com/MarlinFirmware/Marlin/                                                            
git clone https://github.com/MarlinFirmware/Configurations.git

Je zult met bovenstaande commando’s zien dat er 2 directories zijn aangemaakt: ‘Configurations’ en ‘Marlin’.

De ‘bugfix-2.0.x’ branch van bovenstaande GIT repositories bevat altijd de allerlaatste fixes van bugs. Je kunt naar deze branch switchen met het volgende commando (doe dit voor beide directories):

git checkout bugfix-2.0.x

Aangezien ik nu het Big Tree SKR Mini E3 V1.2 moederbord gebruik voor de Creality Ender 3 Pro moet je alle files van de directory ‘/Configurations/config/examples/Creality/Ender-3 Pro/BigTreeTech/SKR Mini E3 1.2/’ copiëren naar de directory ‘/Marlin/Marlin/’.

Open file ‘/Marlin/Marlin/Configuration.h’ in een editor en verander de volgende zaken:

  • Enable BLTOUCH


  • Pas BL-Touch offsets voor nozzle aan


  • Enable Z_SAFE_HOMING


  • Stel ‘Grid Points per Dimension’ in


Bug in Marlin Code voor Bigtree SKR Mini e3

Er blijkt een bug te zitten in de huidige 2.0.5.x source-code van Marlin m.b.t. de Bigtree SKR Mini e3 bord. Zie ook deze thread. Pas het volgende nog aan in de file ‘/Marlin/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3.h’



Compileer en Build Software

Installeer Microsoft Visual Studio en start deze op. Installeer vervolgens de ‘PlatformIO’ plugin volgens deze instructies.

Kies nu in Microsoft Visual Studio ‘Open Project’ (/Marlin/platformio.ini). Hierna moet je de ‘platformio.ini’ file editten. Verander de regel met ‘env_default’ naar STM32F103RC_btt_512K.




Je kunt nu de firmware bouwen door CTRL+ALT+B te drukken. Je vind de uiteindelijke ‘firmware.bin’ file in de ‘/Marlin/.pio/build/STM32F103RC_btt_512K’ directory. Zie deze link als je problemen hebt met het compileren.

Flash Firmware

Zet nu de ‘firmware.bin’ file op je SD card en stop deze in te printer voordat je deze aanzet. De printer zal nu bij het opstarten de firmware uploaden en de file renamen naar ‘firmware.cur’.

Na een update van je Marlin software moet je (naast het wissen van je EEPROM in menu) alle settings van je printer weer op de ‘factory default’ zetten door het GCODE commando ‘M502’ (= reset) te sturen gevolgd door ‘M500’ (= store). Voor het versturen van GCODE commando’s gebruik ik nu het Terminal scherm van OctoPrint.

Verander verder in Ultimaker Cura aan je start G-CODE (Preferences > Configure Cura > Printers > Machine Settings) dat deze voortaan gebruik maakt van Auto Bed-Leveling.



Verander

G28

in

G28     ; Home
G29     ; Auto bed-level (BL-Touch)

Eénmalig afstellen bed-leveling

Verhit je bed op de temperatuur waar je normaal op print en voer de volgende stappen éénmalig uit:

  • Verwarm je bed voor
  • Kies ‘Motion > Autohome’
  • Kies ‘Move Axis > Move Z’ en beweeg nozzle naar printbed totdat je papier onder Nozzle nog net kunt bewegen. Indien je geen negatieve waarde kunt bereiken dan moet je ‘Soft Endstops’ uitzetten met GCODE commando ‘M211 S0’. Als je de Nozzle hebt afsteld moet je deze waarde opschrijven (A)
  • Ga naar ‘Configuration > Probe Z Offset’ en schrijf deze waarde op (B)
  • Tel A + B op en voer deze waarde in als nieuwe Z Offset (eventueel nog 0.1 aftrekken voor dikte van je papier)
  • Zet voor de zekerheid ‘Soft Endstops weer aan met GCODE commando ‘M211 S1’
  • Sla nu de instellingen op bij ‘Configuration > Store Settings’

Conclusie

Het installeren van de BL-Touch V3.1 is me niet meegevallen. Naast een fout schema ben ik wel even bezig geweest om de bug in de Marlin Software te vinden. Verder is nergens echt goede duidelijk informatie te vinden hoe je het precies moet aansluiten en instellen. Indien het eenmaal werkt dan is een BL-Touch V3.1 sensor ideaal. Je hoeft na het éénmalig instellen je nooit meer druk te maken of je bed-leveling goed staat ingesteld.