Vai al contenuto

Messaggi raccomandati

Inviato
1 ora fa, jagger75 dice:

domandina stupida stupida ma ci sta una guida (come nel caso della compilazione dei gcode che mi dice ogni comando cosa fa) nel caso di marlin che mi spiega ogni riga //define ..... ecc ecc  cosa fa?

cosi giusto per iniziare a conoscere marlin e sapere dove e come mettere le mani e cosa stai decommentando o commentando?

diciamo che modificando qua e la mi sta inziando a piacere rompere le palle alla compilazione di marlin 🙂 

cioè non sono programmatore ma da dove nascono ste righe di comando e perche fanno cio che fanno?

vabbe questa magari è troppo approfondita come cosa pero gia sapere le righe cosa fanno sarebbe un passo avanti per me

 

comincia con il sapere che #define vuol dire #definisci quindi, come nel caso del bltouch dove gli devi definire il pin di comunicazione (almeno lo devi fare sulla ender 3)

#define SERVO0_PIN 27 vuol dire definisci, o imposta il numero 27 dentro al campo chiamato SERVO0_PIN

Inviato
Il 31/12/2019 at 16:58, jagger75 dice:

no sinceramente mettendo il gcode nella micro sd della scheda madre non ho provato cmq sia non potrei farlo nella gt2560

io so solo che posseggo 

micro sd con adattatore da 1gb 2gb 4gb 16gb sd grande da 4gb 8gb 16gb 32gb

di tutte 3 sono sandisk il resto tutte kingstone

provate tutte nel lettore dietro lcd con formattazione fat32 fat16 e formattate anche dalla canon reflex per non farmi mancare nulla

ho provato su tutte a copia incolla file dopo salvati i gcode con  cura e da prusa licer

provato anche a salvataggio diretto su sd da cura e da thinkercad 

presumo che le prove su sd le abbia fatte tutte ormai sigh sigh 

domandona io compilo il firmware nel caso specifico marlin2.0 con plattformio su atom quando do salva vado a prelevare il file bin e metterlo sulla micro sd 

se adesso ricompilo di nuovo o modifico i configuration .h e .adv e poi do salva si modifica sempre lo stesso file.bin di prima cioè lo ricopio di nuovo nella scheda o se ne crea un altro?o devo compilare da capo un marlin nuovo?

cmq quelli che hoi caricato attulamento sono questi

Configuration_adv.h 108 kB · 2 downloads   Configuration.h 78 kB · 0 downloads

SE NON CI SI SENTE BUONA FINE ED BUON INIZIO A TUTTI INTANTO 😉 

 #if HAS_SDCARD_CONNECTION
    /**
     * Set this option to one of the following (or the board's defaults apply):
     *
     *           LCD - Use the SD drive in the external LCD controller.
     *       ONBOARD - Use the SD drive on the control board. (No SD_DETECT_PIN. M21 to init.)
     *  CUSTOM_CABLE - Use a custom cable to access the SD (as defined in a pins file).
     *
     * :[ 'LCD', 'ONBOARD', 'CUSTOM_CABLE' ]
     */
    //#define SDCARD_CONNECTION LCD
  #endif

 

Puoi pf provare togliendo quel commento nel #define in rosso? E' nel configuration_adv.h

Inviato
3 ore fa, jagger75 dice:

cioè non sono programmatore ma da dove nascono ste righe di comando e perche fanno cio che fanno?

vabbe questa magari è troppo approfondita come cosa pero gia sapere le righe cosa fanno sarebbe un passo avanti per me

Concentrati almeno all'inizio sulle sezioni di interesse. Ovviamente parti da dei file config validi per la tua macchina (sono nella cartella cpnfig/examples del Marlin) e modificali per le caratteristiche della tua macchina. Tieni conto che le funzionalità più avanzate sono spesso commentate (per cui non si applica la specifica funzione). I file di configurazioni sono molto ben commentati, occorre leggersi quanto scritto nei vari "//" di sezione e per approfondire c'è il sito Marlin come ti hanno già detto. 

Marlin è scritto in C/C++ i #define (definisci) servono per definire le preprocessor macro, prima di compilare tutti i define vengono sostituiti come da indicazioni per cui se dici:

#define TEST 1

tutte le volte che il programma trova TEST nel codice lo sostituirà con degli 1. Questo viene fatto PRIMA di compilare il programma. 

Altra roba che trovi spesso nei file di configurazione sono #ifdef e #ifndef (stanno per "se definito" o "se non definito") e servono per scrivere dei semplici cicli condizionali (if)

#ifdef TEST // solo se hai definito test (il #define al punto precedente)
    int var = TEST; // allora assegna alla variabile var il valore di TEST ( = 1)
#endif // chiude il ciclo condizionale

Lascio ai veri programmatori questioni più complesse...

Inviato

Allora diciamo che per l appunto sto già spulciando nel sito marlin dove ce la spiegazione di ogni comando base diciamo la lista che intendo io è  una un po più completa per esempio 

Nella pagina di spiegazione delle righe di config.adv non ci sta la spiegazione della riga Sd connection lcd 

Come mi suggeriva @invernomuto ma giusto per capire cosa sto.commentando o decommentando poi si almeno quelli base una spulciato e un po di prove sul sito marlin lo sto facendo 

Ma tante righe non ci sono però vabbè dai prima o poi almeno la base me la faccio entrare in testa 

Cmq i commenti sopra o di fianco alle righe di compilazione sono molto utili avete ragione.

Unica cosa che non ho capito una volta compilato e dato la verifica sia su ide che su plattformio o qualsiasi altra cosa se.il.risultato è  positivo vuol dire che non c'è  nessun comando in conflitto (per così dire) giusto?poi però per vedere se fa quel che ho chiesto devo solo che caricarlo su una macchina per forza giusto?

Cioè  l ide non sa cosa voglio fare in realtà  meccanicamente ma si preoccupa solo di dirmi che cio che ho compilato non da errori e basta giusto?poi il riscontro di movimentazione me lo da la.macchina e basta giusto?

Per @invernomuto cmq la riga sd_connection_lcd nel configurazione.adv è  decommentata cioè  ha i due // 

Sto infatti smanettando la parte sd per vedere se capisco da solo se c'è  qualche errore a livello firmware e capire come si fa a sistemarlo giusto per iniziare a smanettare col.marlin 

Inviato
2 ore fa, jagger75 dice:

Unica cosa che non ho capito una volta compilato e dato la verifica sia su ide che su plattformio o qualsiasi altra cosa se.il.risultato è  positivo vuol dire che non c'è  nessun comando in conflitto (per così dire) giusto?poi però per vedere se fa quel che ho chiesto devo solo che caricarlo su una macchina per forza giusto?

Cioè  l ide non sa cosa voglio fare in realtà  meccanicamente ma si preoccupa solo di dirmi che cio che ho compilato non da errori e basta giusto?poi il riscontro di movimentazione me lo da la.macchina e basta giusto?

Certamente, verifica solo che i parametri non siano in conflitto e che il software compili, poi se quello che hai scritto è compatibile o meno con la tua macchina sono affari tuoi, il compilatore non può saperlo. Io ho caricato il firmware della mia delta sulla cartesiana, non ti dico quando ho fatto l'homing...

Cita

Per @invernomuto cmq la riga sd_connection_lcd nel configurazione.adv è  decommentata cioè  ha i due // 

Sto infatti smanettando la parte sd per vedere se capisco da solo se c'è  qualche errore a livello firmware e capire come si fa a sistemarlo giusto per iniziare a smanettare col.marlin 

Qui non ho capito: quando ti dico di decommentare devi TOGLIERE i due //

In c/c++ il compilatore ignora in una riga tutto quello che è dopo // (oppure racchiuso fra /* e */).

Per cui se vuoi dirgli di forzare la lettura dello slot SD su LCD devi scrivere: #define SDCARD_CONNECTION LCD

Inviato

Si appunto mi sono spiegato male intendevo dire che quando mi hai detto di controllare che quella riga  sia decommentata ti stavo confermando che ci stavano le // e che le avrei tolte 

Era solo per conferma 😁

Per tutto il resto ok ho capito tutto (si fa per dire)mi rimetto a studiare a 45 anni 😥ok 

😁👍

  • Like 1
Inviato
44 minuti fa, jagger75 dice:

Si appunto mi sono spiegato male intendevo dire che quando mi hai detto di controllare che quella riga  sia decommentata ti stavo confermando che ci stavano le // e che le avrei tolte 

Era solo per conferma 😁

Per tutto il resto ok ho capito tutto (si fa per dire)mi rimetto a studiare a 45 anni 😥ok 

😁👍

E che vuoi che sia... Io mi sono messo a studiare le fdm, e ho 8 anni più di te 😁

  • Like 1
Inviato
2 ore fa, jagger75 dice:

Per tutto il resto ok ho capito tutto (si fa per dire)mi rimetto a studiare a 45 anni 😥ok 

😁👍

Perché, c'è un'età a cui si smette di imparare le cose che piacciono? Io ho 43 anni, non si molla 😄

  • Like 2
Inviato
12 ore fa, jagger75 dice:

Ma di per carità va bene così 

Ho provato a leccarlo il libro ma non funziona nemmeno ad annusarlo perciò va bene così 😁

pensavo... hai provato a metterlo sotto al cuscino quando dormi? magari per osmosi....🤣

  • Haha 1

Partecipa alla conversazione

Puoi pubblicare ora e registrarti più tardi. Se hai un account, accedi ora per pubblicarlo con il tuo account.

Ospite
Rispondi a questa discussione...

×   Hai incollato il contenuto con la formattazione.   Rimuovere la formattazione

  Sono consentiti solo 75 emoticon max.

×   Il tuo collegamento è stato incorporato automaticamente.   Mostra come un collegamento

×   Il tuo contenuto precedente è stato ripristinato.   Pulisci editor

×   Non puoi incollare le immagini direttamente. Carica o inserisci immagini dall'URL.


×
×
  • Crea Nuovo...