Marlin Firmware original configurado para a Ender 3 + BLTouch

Essa é a versão 1.1.9  do Marlin Firmware original configurado para a impressora Creality Ender 3 com sensores BL Touch originais ou genéricos. As configurações do Marlin original foram cuidadosamente modificadas para incluir a calibração original da Creality.

Este firmware foi concebido para placas de 8-bits e não funcionará em placas de 32-bits. Para SKR Mini E3 v2.0 consultar este artigo.

Características

  • Fimware Marlin original com a calibração original da Creality.
  • Suporte ao BLTouch original/generico até a versão 3.x (pode exigir alteração da voltagem para 5V no menu LCD).
  • Não é preciso remover nenhum capacitor da placa mãe para o funcionamento dos sensores.
  • Instalação através do Arduino IDE (menor tamanho de arquivo e atualizações mais frequentes).
  • Código fonte modificado para previnir que o sensor BLTouch seja ativado durante o "bip" enviado pelos comandos do LCD (a instalação original do BLTouch não contempla a desativação do som e isso impacta na operação do sensor).
  • Proteção térmica ativada.
  • Não apaga da memória as configurações de nivelamento após o comando G28 (Home).
  • Menu customizado com modo de manutenção, modo de emergência e sequência completa de nivelamento (aquecimento da superfície, espera, homing, nivelamento e gravação das configurações).
  • Nivelamento ultra-preciso com algorítmo bilinear, 25 pontos de prova e dupla verificação (demora aproximadamente 5 minutos para executar ou 10 incluindo o aquecimento da mesa).
  • Executa o nivelamento e configuração do BLTouch a partir dos menus LCD.
  • Menus compactos habilitados.
  • Micro ajustes (baby steps) usando números mágicos (múltiplos inteiros de posição do motor de passo).
  • Todas as alterações no código fonte foram marcadas com o comentário "Customized DBP".

Requisitos

  • BLTouch instalado no pino 27 (antigo pino do alto falante)
  • Chave do fim de curso Z removida ( se permancer instalada pode impedir o movimento do eixo Z)
  • IMPORTANTE! A altura do sensor BLTouch deve ser ajustada conforme o indicado nos manuais oficiais. Existem versões diferentes do sensor BLTouch e a maior parte dos vídeos no YouTube ensinam uma configuração errada.
  • Bootloader instalado
  • Aplicativo Arduino IDE

Instruções

  • Configurar o Arduino IDEpara baixar a placa Sanguino. Adicionar a seguinte URL ao gerenciador de placas (File->Preferences->Additional boards manager):
  • Instalar as seguintes placas/biblotecas no Arduino IDE:
    • U8Glib
    • Sanguino
  • Após cumprir os requisitos acima, descompactar o arquivo completo desta versão do Marlin em uma pasta. Abrir o arquivo "Marlin.ino" a partir do Arduino IDE.
  • Procure a aba configuration.h e altere os valores de X_PROBE_OFFSET_FROM_EXTRUDER, Y_PROBE_OFFSET_FROM_EXTRUDER Z_PROBE_OFFSET_FROM_EXTRUDER para as coordenadas relativas da ponta de testes em relação ao bico da extrusora. As configurações padrão são válidas para este suporte. Você pode alterar estas configurações posteriormente usando o comando M851.
  • Compilar e carregar o firmware na impressora. Usar as configurações abaixo:
    • Configuração da placa: ATMega 1284P 16Mhz
    • Configuração do programador: AVRISP MKII
    • Porta COM: Depende do seu computador. Normalmente a única porta disponível é a correta.
  • Pré-nivelar a mesa manualmente. Essa ação é importante porque o BLTouch tem um alcance limitado e mesmo que ele possa detectar as distâncias, quanto menos o eixo Z se mover durante a impressão, melhor a qualidade.
    1. Resfriar a mesa e o extrusor. A mesa não precisa estar quente para este ajuste inicial.
    2. Desabilitar os motores de passo (usar o menu LCD)
    3. Colocar um cartão de crédito entre o bico injetor e a mesa, a espessura do cartão será nossa referência de distância para o extrusor. Não é necessário usar um objeto mais fino pois o nivelamento automático se encarrega dessa diferença sem dificuldades.
    4. Mover o eixo Z com a mão até o o bico tocar no cartão.
    5. Mover o bico extrusor para diversos pontos da mesa. Ajustar as manoplas de nível da mesa para manter a espessura do cartão nos diversos pontos. Não mover o eixo Z durante esta operação.
  • Aquecer a mesa até a temperatura de operação e acessar os seguintes menus: Prepare -> Bed Leveling -> Level bed, usar comando customizado Heat and Level ou o gcode G29 a partir do terminal. Eu recomendo executar o G29 a partir do monitor serial do Arduino IDE para verificar quaisquer problemas na instalação do sensor ou nas configurações dos offsets.
  • Após o nivelamento, salvar as configurações usando o menu LCD ou o comando M500. Se você usou a opção Heat and Level no menu customizado, não será necessário salvar as alterações. Note que o comando Heat and Level tem uma pausa programada de 2 minutos após o aquecimento para garantir que todo o calor tenha espalhado uniformemente na mesa e a dilatação tenha ocorrido.
  • Adicionar os seguintes comandos na sequência de inicialização do seu slicer logo após a linha com o comando G28: M420 S1 . Este gcode tem a função de carregar as configurações salvas de nivelamento da mesa antes de cada impressão. Não é necessário nivelar a mesa a cada impressão, se as manoplas de nível não foram movidas é possível imprimir por centenas de horas sem precisar renivelar.
  • Após ajustar o nível, imprimir algo para ajusar o offset do Z. Na configuração padrão, o bico extrusor sempre estará mais longe da mesa do que deve e o offset Z precisa ser ajustado para um valor negativo para garantir a aderência da primeira camada. Use o menu LCD para ajustar este offset: Prepare -> Bed Leveling -> Z Offset. Não se esqueça de salvar as configurações após o ajuste do offset.

Instalação usando a versão compilada (HEX) do Firmware

Ao utilizar a versão compilada do firmware você pode atualizar a sua impressora sem a necessidade de instalar o Arduino IDE.

Para carregar a versão compilada você precisa da ferramenta AVRDUDE 6.3. Para conveniênia dos usuários a versão para Windows desta ferramenta foi incluída no ZIP do arquivo HEX. O comando para gravar o Firmware deve ser executado no PowerShell do Windows:

./avrdude -p atmega1284p -c arduino -P COM3 -b 115200 -v -U flash:w:firmware.hex:i 

A porta serial varia entre COM1 e COM8, dependendo do local aonde foi mapeada a conexão com a impressora. firmware.hex é o arquivo que está sendo carregado.Se você estiver utilizando um sistema operacional baseado em linux, a porta deixa de ser COM e passa a ser algo similiar a  /dev/ttyUSB0.

Após instalar o firmware não se esqueça de ajustar os offsets do sensor. No comando abaixo, substitua os valores (-42, -5, 0) pelas coordenadas relativas X,Y,Z da sua sonda.

M851 X-42 Y-5 Z0
M500

 

Files
Versão
1.1.9.1+ Bugfix + BLTouch for Ender 3 (Aug 3rd, 2020)
Plataformas suportadas
Arduino IDE or PlatformIO
Tamanho do arquivo
4.2 MB
Checksum
File 1 SHA256: 1DCD5D998C999C80D72A4153BDF27D3A2682FA5F6E869029EEB282FEE2842739
File 2 SHA256: C69961C0E223D1189FFBC2258DD30D49557BE986C5505011ABBFD479CCE61169
File 3 SHA256: D3CEFC5D5EB7C6536EFDBCED861201DA5E59272FFB0193549E2B469740452F44
Capturas de tela

Categorias