Tatara Steel Frame problema Y End Stop Soluzione Software

Dopo aver progettato e costruito  il Frame Tarara Steel  e aver trapiantato la meccanica e l’elettronica della ANET A8 abbiamo scoperto un piccolo problema quando viene usata la scheda madre di controllo e il firmware Stock:

Quanto vi posizionate a Y 0 la punta dell’estrusore si trova 5mm all’interno della superficie di stampa (e a Y 220 si trova 5mm al di fuori)

Questo perchè abbiamo spostato, per ragioni di design troppo lunghe da spiegare qui,  verso il centro di 5mm la posizione dell’end stop in Y, e siccome sulle nostre macchine di test usiamo sempre firmware ri-flashati non abbiamo considerato che  potrebbe essere un problema.
Ma alcuni utenti amano la meccanica: aggiornarsi al Frame Tatara Steel.
Ma odiano l’elettronica/programmazione: Cercare di capire come modificare un firmware.

Per facilitarvi l’operazione vi forniamo qui le informazioni necessarie per riportare il vostro Y 0 al bordo della vostra superficie di stampa, operazione che richiede di cambiare semplicemente 1 valore nel firmware.

Consideriamo che avete gia un firmware MARLIN installato e funzionante sulla vostra scheda di controllo.

Gli esempi qui riportati suppongono usiate MARLIN come firmware o un suo derivato.

Il valore che dovete cambiare è  Y_MIN_POS  che si trova nel file Configuration.h

Volori per il frame ANET A8 originale

Change Y_MIN_POS value to -5
Valori per il frame TATARA Steel  

In alcuni casi (rispetto alla posizione della vostra sonda di auto livellamento se ne avete una) il compilatore potrebbe darvi questo errore:

#error “The given FRONT_PROBE_BED_POSITION can’t be reached by the Z probe.”

in questo caso dovete modificare il valore di FRONT_PROBE_BED_POSITION in funzione della vostra configurazione Hardware (Estrusore non originale, sensore di  auto livellamento in Z, ecc.)

Flashate il vostro firmware e fate un G28 e controllate che il vostri Y0 e Y 220 si trovino ora hai bordi dalla vostra superficie di stampa.
Fate un G29 se avete un sensore di auto livellamento e come sempre siate pronti a spegnere la vostra stampante nel caso qualcosa andasse storto: il sensore di auto livellamento in Z si trova fuori dal piatto e l’estrusore si schianta sulla superficie di stampa.

Per qualsiasi problema scrivete sul gruppo FaceBook: Tatara – Anet A8 Steel Frame – Official Owner Group

Come impostare il firmware SkyNet/Marlin per l’uso dell’auto sensore su una stampante ANET

Questa è una mini guida su come parametrare il firmware SkyNet3d/Marlin associato all’uso di un sensore di auto livellamento su una stampante 3D Anet A8.

Si suppone che il vostro sensore sia correttamente posizionato ed collegato in modo corretto.
Si suppone che i driver (CH340) della stampante siano già correttamente installati.
Collegate la vostra stampante al PC attraverso un cavo usb e accendetela.

Scaricate il firmware SkyNet o meglio ancora Marlin (che ormai include i file di configurazione della Anet A8/A6):

https://github.com/MarlinFirmware/Marlin

http://marlinfw.org/

https://www.facebook.com/skynet3ddevelopment/

https://github.com/SkyNet3D
or
https://github.com/thijsk/Skynet3d

Scompattate la cartella dello ZIP che avete scaricato.

Navigate nella cartella SkenetV2.3.1 -> Configuration

e scegliete la configurazione che corrisponde alla vostra, aprite la cartella corrispondente. Selezionate e copiate il file Configuration.h
Tornate alla radice della cartelle SkenetV2.3.1 

e incollate il file Configuration.h che avete precedentemente copiato. Sovrascrivendo quello esistente.

lanciate il programma arduino che trovate nella cartella arduin0-1.8.0

Dal IDE arduino aprite

il file Marlin.ino o SkynetV2.3.1.ino che trovate all’interno della cartella SkynetV2.3.1

Cercate il Tab Configuration.h

Fate Ctrl+F e cercate: //Probe offsets

Ora dovete controllare che la distanza del centro del vostro sensore al centro del nozzle corrisponda a ciò che è inserito nel codice del firmware.
Misurate con un calibro.

Modificate le linee:
#define X_PROBE_OFFSET_FROM_EXTRUDER

e

#define Y_PROBE_OFFSET_FROM_EXTRUDER

in funzione alle vostre misure. Le cifre sono espresse in millimetri.
Se il vostro sensore è posizionato davanti a sinistra rispetto al nozzle i numeri dovranno essere in negativo. Se è davanti a destra X sara negativo e Y sarà positivo, ecc.

Ora nell’IDE arduino selezionate come scheda: Anet v1.0

e la porta seriale dove è collegata le vostra stampante

ora compilate e caricate il nuovo firmware sulla vostra carta

Se tutto è andato per il verso giusto la vostra stampante dovrebbe avere un nuovo Firmware e essere pronto per impostare l’auto livellamento:
https://research.paolorudelli.com/2017/03/07/calibrare-il-sensore-di-autolivellamento-induttivo-con-skynetmarlin-e-repetier-host/

per altri parametri, quali mm/steps, accelerazione ecc. vi consiglio di usare l’interfaccia di repetier host fino a che non avete preso confidenza con il firmware SkyNet/Marlin.

Per ogni aiuto scrivete sul gruppo FaceBook:
https://www.facebook.com/groups/608564376013968

PS: Se vi serve il boot loader per la scheda Anet potete scaricarlo qui:
https://github.com/SkyNet3D/anet-board
Vi consiglio di installare la versione Optiboot che usa meno memoria

Collegare un Sensore di Auto livellamento ad una Mother Board ANET

Questa è una mini guida su come installare il sensore di auto livellamento su una stampante 3D Anet A8.

Ci sono diversi tipi di sensori che potete applicare alla vostra ANET A8, quelli di cui noi ci occuperemo in quests mini guida sono:
quello “originale” della ANET di forma squadrata di colore azzurro solitamente marcato TRONXY, quelli di forma cilindrica di colore blu o ocra con diversi diametri che possono essere sia di tipo induttivo che capacitativo con sigle del tipo  LJ12A3-4-Z/BY o LJC18A3-H-Z/BX.

Per farsi un’idea più ampia delle tipologie di sensori vi suggerisco di guardare l’eccellente video di Thomas Sanladerer:
https://youtu.be/il9bNWn66BY

Questi sensori costano pochi €/$ fate attenzione a non farvi truffare.

La maggioranza di questi sensori funzionano in modo ottimale se alimentati con tensioni di corrente tra i 6V e i 36V, l’ideale è alimentarli con una tensione di corrente di 12V,  la stessa tensione che usiamo per alimentare la motherboard della ANET. Purtroppo l’alimentazione fornita sul pin centrale del connettore per l’end stop della anet fornisce solo 5V  e i circuiti logici non sono in grado di assorbire una tensione di corrente di 12V e brucerebbero.
Per ovviare a questo problema possiamo alimentare il nostro sensore con il 12V che recupereremo dal nostro alimentatore ma saremo obbligati a regolare la tensione di uscita del nostro sensore per abbassarla a 5V ( o ad un intervallo di tensione tra 3.3V-5V).
Per fare questo abbiamo diverse soluzioni: diodo zener, transistor, optoisolatore e chi più ne ha più ne metta. Ma noi qui esploreremo la soluzione più semplice e più economica: il partitore di tensione (attenzione a non confonderlo con un regolatore di tensione).

Con due semplice resistenze dai valori  correttamente stabiliti possiamo abbassare la tensione in uscita  del nostro sensore ai desiderati 5V.

lo schema di un partitore di tensione è questa:

E

Per le formule e calcoli vi rinvio alla pagina di wikipedia.

Quello cha a noi interessa è che ci servono 2 resistenze da 15K Ohm e 10K Ohm, moltre altre ‘accoppiate’ di resistenze sono possibili per portare la tensione da 12V a 5V e potete sempre calcolarle se volete adattare delle resistenze che avete già in casa.

e vanno collegati in questo modo:

Una volta collegato il tutto collegate il sensore ai 12 V e controllate l’uscita del segnale col un multimetro mentre il sensore si attiva, se il voltaggio non è tra i 3V e i 5V qualcosa non va.

FAQ

Perché non posso collegare il sensore a 5V?
Potete benissimo collegarlo ma la precisione non sarà delle migliore e correte il rischio che alcune volte il sensore non si attivi causando molti danni alla vostra stampante.

Voglio provare il sensore ANET originale anche a 5V almeno per controllare se non ci sono difetti. Perchè non funziona?
Probabilmente il connettore è collegato erroneamente,  controllate il colore dei fili, molto probabilmente dovete invertire il marrone con il blu: il segnale con l’alimentazione. Verificate il colore dei fili sullo schema sopra.

Per ogni aiuto scrivete sul gruppo FaceBook:
https://www.facebook.com/groups/608564376013968

Calibrare il sensore di autolivellamento induttivo con skynet/marlin e repetier-host

Questa è una mini guida per settare SkyNet/Marlin per l’auto livellamento.

IMPORTANTE: i sensori induttivi e in ancor maggiore misura i capacitivi sono sensibili al calore, per cui effettuate la regolazione a temperatura operativa del piatto di stampa, o rischiate che non si attivino in modo aleatorio producendo danni.

Si suppone che il vostro sensore sia collegato in modo corretto, alimentato con la giusta tensione e funzionante e inoltre che il vostro firmware skynet/marlin sia correttamente configurato per il vostro sensore e in funzione a dove quest’ultimo è posizionato rispetto al nozzle.

NB: se usate un sensore capacitivo ricordate di regolare attraverso l’apposita vitina, posta in altro del sensore, una distanza di attivazione tra 0.5mm e 1.5mm

Lanciare repetier host e andare sul controllo manuale

 

  • se ri calibrate fare un M851 Z0 e M500 per re impostare l’offset dell’asse Z a zero.
  • Posizionare il sensore più basso del nozzle
  • Fare Home o inserire il comando G28
  • alzare il sensore più alto del nozzle allentando le viti o il bullone.
  • In repetier host  la misura di Z dovrebbe essere a 10,00
  • abbassare il nozzle usando i comandi manuali dall’interfaccia di repetier host fino a che ci sia lo spessore di un foglio di carta tra il nozzle il piano. Se non riuscite ad abbassare sufficientemente il nozzle (Z risulta essere a 0,00) eseguire il comando G92 Z10 e continuate ad abbassare manualmente.
    EDIT: se usate Marlin >1.1 dovete disabilitare i soft end stop prima del G92 com il comando M211 Z0 S0
  • Posizionare il sensore a 1-1.5 mm più alto del bed e stringete le viti/bullone.
  • Fare Home o inserire il comando G28.
  • In repetier host  la misura di z dovrebbe essere a 10,00
  • Abbassare di 10mm il nozzle usando i comandi manuali dall’interfaccia di repetier.
  • ora repetier host dovrebbe indicare Z 0,00
  • eseguire il comando G92 Z10 e continuate ad abbassare usando i comandi manuali dall’interfaccia di repetier host fino a che ci sia lo spessore di un foglio di carta tra il nozzle il piano.
  • annotare il  valore di Z nell’interfaccia di repetier host
  • inserire M851 Z(il valore di Z che leggete)
    ad esempio M851 Z-2.20 (setta l’offset Z)
  • Fare M500 per salvare la configurazione
  • Fare M501 e verificate che la configurazione sia salvata correttamente
  • Rehabilitate i soft end stop con M211 Z0 S1
  • Fare un home (G28) e prima di fare un G29 (autolivellamento) siate pronti a staccare la stampante dalla corrente nel caso abbiata fatto qualcosa di errato e il nozzle inizi a schiacciare sul piatto.
    Se tutto va a buon fine dovreste avere correttamente tarato il vostro sensore di auto livellamento per SkyNet/Marlin

 

Per ogni aiuto scrivete sul gruppo FaceBook:
https://www.facebook.com/groups/608564376013968

mosquitto install on ubuntu

 


 

reference:

Install Mosquitto MQTT Broker on Ubuntu 16.04 LTS (Xenial Xerus)

config: /etc/mosquitto/mosquitto.conf


add on mosquitto.conf file:
allow_anonymous false

add user:
generate the pw file with:

add more users

reference:
http://mosquitto.org/man/mosquitto-conf-5.html
https://mosquitto.org/man/mosquitto_passwd-1.html

 

activate SSL

reference:

MQTT Mosquitto broker with SSL/TLS transport security
http://rockingdlabs.dunmire.org/exercises-experiments/ssl-client-certs-to-secure-mqtt
https://mosquitto.org/man/mosquitto-tls-7.html

install node red on ubuntu or variant + setup secure

 

Install NODE.js and npm

optional to upgrade npm:

Install node RED

If need external access add port forward at 1880

reference:
http://nodered.org/docs/getting-started/installation.html

https://www.digitalocean.com/community/tutorials/how-to-connect-your-internet-of-things-with-node-red-on-ubuntu-16-04

Secure node red access

uncomment:

generate hash pw with:

Reference :
http://nodered.org/docs/security.html

Secure dash UI access

uncomment:

generate hash pw with:

reference:

https://github.com/node-red/node-red-dashboard/blob/master/README.md

http://nodered.org/docs/security.html

SSL & Let’s encrypt on ddns acount

port forward on your router to your local ip computer where you run node-red: refer to your router user manual

install light web server if you don’t have one installed (need only to setup let’encrypt cert) NB: you can use also ngix proxy solution see below)

certboot install:

var/www/html/ with the proper dir of your installed server and yoursite.ddns.net with your site

result must be somethin like this:

the cert are stored at:

result:

or

copy cert1.pem privkey1.pem to your .node-red directory

on settings.js uncomment

and

add cron to renew your cert:
test if renew work

add in cron (see reference)

reference:

https://www.hardill.me.uk/wordpress/2015/05/11/securing-node-red/

http://nodejs.org/api/https.html#https_https_createserver_options_requestlistener

https://certbot.eff.org/#ubuntuxenial-other

https://help.ubuntu.com/community/lighttpd

How to Schedule Tasks on Linux: An Introduction to Crontab Files

 

Proxy with NGInX

( if need to uninstall lighttpd this also stop service)

check if lighthttp is stoped

reboot

install NGInX

 

Reference:

https://www.digitalocean.com/community/tutorials/how-to-connect-your-internet-of-things-with-node-red-on-ubuntu-16-04

https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-16-04