Aller au contenu

GO Print

[STICKY] Dernière Version MARLIN pour DISCOEASY 200


Messages recommandés

Elle bouffe tellement de place que je ne peux plus utiliser l'écran. C'est pour ça que je demandais quels options je peux supprimer qui prennent beaucoup de place (dans la mémoire vive) où si on peut augmenter la mémoire vive de la mks.

Modifié (le) par Matgothmog
Lien vers le commentaire
Partager sur d’autres sites

Il y a 15 heures, Jean-Claude Garnier a dit :

Hello

Comment ça se passe ? Quand la bécane a été éteinte, normalement il faut refaire les références, sinon elle sait plus où elle habite...

Et si le bed a refroidi et que la pièce est décollée, vous faites quoi ?

Tu n'a pas tord de mon coté j'ai le plateau chauffant Ultrabase le PLA se décolle totalement si le bed est froid mais si tu utilise de la colle UHU baton en guise de laque pour renforcer ton l'accroche du print la sa bouge pas même froid. 😉 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 9 heures, Matgothmog a dit :

Elle bouffe tellement de place que je ne peux plus utiliser l'écran. C'est pour ça que je demandais quels options je peux supprimer qui prennent beaucoup de place (dans la mémoire vive) où si on peut augmenter la mémoire vive de la mks.

La sa dépasse mes connaissances... 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 23 heures, Matgothmog a dit :

Elle bouffe tellement de place que je ne peux plus utiliser l'écran. C'est pour ça que je demandais quels options je peux supprimer qui prennent beaucoup de place (dans la mémoire vive) où si on peut augmenter la mémoire vive de la mks.

Bonsoir, tu ne peux plus utiliser l’écran quand tu imprimes ou alors en permanence ?

le fait de devoir écrire en permanence sur la SD la position de l'imprimante , en dehors de réduire la durée de vie de la carte ... doit bouffer de la ressource qui empêche peut être de faire autre chose en même temps . Quant à ajouter de la mémoire, la je ne sais pas dire .

le place restante est faible certes , mais il reste de la place , je pense que la , on est plus sur un problème de ressource ou on en demande trop à la carte .

A la limite , pour en avoir le coeur net, faudrait tester en supprimant des options genre le #define EEPROM_CHITCHAT , et le UBL , qui est aussi un truc qui bouffe de la mémoire , mais pas de ressources .

Lien vers le commentaire
Partager sur d’autres sites

Je peux appuyer une fois pour accéder au paramètres, mais après quand je tourne le bouton ça ne fait rien effectivement comme si on en demandais trop à la carte. Quand je compile le Marlin il me dit que des dysfonctionnements pourrait survenir car il y a moins de 10%. Je pense que quand je parle de mémoire vive je veux parler de ressources. Il n'y a donc pas apparemment de solution ? Sinon quels options utilisent de la ressource ?

Lien vers le commentaire
Partager sur d’autres sites

  • 2 weeks later...

Bonjour,

Quelqu'un à remarqué que le Marlin en téléchargement chez Dagoma à l'air d'avoir complètement été repris? 

On dirait que c'est sorte de version Ultra Light ou épuré..  

Modifié (le) par Montaignec
Lien vers le commentaire
Partager sur d’autres sites

  • 2 weeks later...

Pour ceux qui demande pour le format de l'heure après quelque recherche il faut se référer au fichier duration_t.h après pour le code je vous laisse réfléchir, moi le temps l'elapse time ne fonctionne pas donc je n'ai pour l'instant aucun intérêt à changer le format.

Lien vers le commentaire
Partager sur d’autres sites

  uint8_t toDigital(char *buffer, bool with_days=false) const {
    uint16_t h = uint16_t(this->hour()),
             m = uint16_t(this->minute() % 60UL);
    if (with_days) {
      uint16_t d = this->day();
      //sprintf_P(buffer, PSTR("%ud %02u:%02u"), d, h % 24, m);      //remplacer ici
      sprintf_P(buffer, PSTR("%ih %im %is"), h, m, s);
      return d >= 10 ? 8 : 7;
    }
    else if (h < 100) {
      //sprintf_P(buffer, PSTR("%02u:%02u"), h % 24, m);               //remplacer ici
      sprintf_P(buffer, PSTR("%ih %im %is"), h, m, s);
      return 5;
    }
    else {
      //sprintf_P(buffer, PSTR("%u:%02u"), h, m);                  //remplacer ici
      sprintf_P(buffer, PSTR("%ih %im %is"), h, m, s);
      return 6;
    }
  }
};

 

Je pense que dans le programme remplacer par celui voulu :

(y) sprintf_P(buffer, PSTR("%iy %id %ih %im %is"), y, d, h, m, s);
(d) sprintf_P(buffer, PSTR("%id %ih %im %is"), d, h, m, s);
 (h) sprintf_P(buffer, PSTR("%ih %im %is"), h, m, s);
(m) sprintf_P(buffer, PSTR("%im %is"), m, s);
sprintf_P(buffer, PSTR("%is"), s);

 

Je fais le test

Lien vers le commentaire
Partager sur d’autres sites

Bonjour ,

Après test c'est bien dans ce fichier que nous changeons le format du temps, avec le code que je vous présente vous aurez le temps en h:m:s, si vous souhaitez avoir plus de 24H je pense qu'il suffit d'enlever le %24, à vérifier. 

 

 

uint8_t toDigital(char *buffer, bool with_days=false) const {
    uint16_t h = uint16_t(this->hour()),
             m = uint16_t(this->minute() % 60UL),
             s = uint16_t(this->second() % 60UL);


    
    if (with_days) {
      uint16_t d = this->day();
      //sprintf_P(buffer, PSTR("%ud %02u:%02u"), d, h % 24, m);
      sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);
      return d >= 10 ? 8 : 7;
    }
    else if (h < 100) {
      //sprintf_P(buffer, PSTR("%02u:%02u"), h % 24, m);
      sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);
      return 5;
    }
    else {
      //sprintf_P(buffer, PSTR("%u:%02u"), h, m);
      sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);
      return 6;
    }
  }
};

Lien vers le commentaire
Partager sur d’autres sites

Merci pour le post .

Petit bemol cependant de mon coté : sur une MKS gen V1.4 avec TMC2208 en mode SPI , pas de communications avec les drivers .

==> Passage sur la branche Bugfix 1.1.X : plus de soucis 🙂

Lien vers le commentaire
Partager sur d’autres sites

Le 26/11/2018 at 15:54, Melvin a dit :

Bonjour ,

Après test c'est bien dans ce fichier que nous changeons le format du temps, avec le code que je vous présente vous aurez le temps en h:m:s, si vous souhaitez avoir plus de 24H je pense qu'il suffit d'enlever le %24, à vérifier. 

 

 

uint8_t toDigital(char *buffer, bool with_days=false) const {
    uint16_t h = uint16_t(this->hour()),
             m = uint16_t(this->minute() % 60UL),
             s = uint16_t(this->second() % 60UL);


    
    if (with_days) {
      uint16_t d = this->day();
      //sprintf_P(buffer, PSTR("%ud %02u:%02u"), d, h % 24, m);
      sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);
      return d >= 10 ? 8 : 7;
    }
    else if (h < 100) {
      //sprintf_P(buffer, PSTR("%02u:%02u"), h % 24, m);
      sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);
      return 5;
    }
    else {
      //sprintf_P(buffer, PSTR("%u:%02u"), h, m);
      sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);
      return 6;
    }
  }
};

bonjour j'ai essayé de modifier le fichier duration_t.h mais cela ne marche pas ou j'ai fais une erreur

voici mon fichier duration_t;h avant modif

 possible de me le modifier et de me le renvoyer ce serai sympa

duration_t.h

Modifié (le) par cams08
Lien vers le commentaire
Partager sur d’autres sites

Je viens d'ouvrir ton fichier et soit j'ai un problème soit tu n'as pas ajouté les modifications... 

Modification Duration_t.h

·         Ligne 151 -> Ajout « s = uint16_t(this->second() % 60UL); »    (Attention à bien remplacer le ; après les minutes par ,) 

·         Lignes 156-157, 162-163, 167-168

//sprintf_P(buffer, PSTR("%ud %02u:%02u"), d, h % 24, m) ;

               sprintf_P(buffer, PSTR("%02u:%02u:%02u"), h % 24, m % 60, s);

Lien vers le commentaire
Partager sur d’autres sites

Le 24/02/2018 at 19:50, cams08 a dit :

bonjour

je suis parvenu a déplacer l'horloge

mais un autre problème avec des impression de plus d'une journée

comment ne pas afficher par exemple

1d 03:45 mais plutôt  27:45

chevauchement du temp restent avec temperature plateau voir photo

 

 

IMG_1622.jpg

bonjour

c'est ce problème que je cherche a enlever 

sur la photo on vois bien que l'affichage du temp restant chevauche la temperature du plateau 

mais si le temp était en heures et minutes a la place d'être en jours heures et minutes plus ce problème   ( 3d 03:10  serait   75:10)

 

voici le code qui affiche le temp restant dans l'onglet  ultralcd_impl_DOGM.h  marlin 1.1.8

  /////////////////////////////////////////////////////////affichage temps restant//////////////////////////////////////////////////////////////////////
      
      if (card.isFileOpen()){ //si on est en train d'imprimer depuis la SD
      
      u8g.drawCircle(64, 19, 7); //cercle
      u8g.drawBox(64,14,1,5); //grande aiguille
      u8g.drawBox(65,19,3,1); //petite aiguille
  
      //if (card.percentDone() != 0 && print_job_timer.duration() != 0) { //si impression a débuté (évite divison par 0)
      if (card.percentDone() >= 10 && print_job_timer.duration() >= 1) { //affiche le temps à partir de 10%)
        char rbuffer[10];
        duration_t remaining = ( ( 100-card.percentDone() )*( print_job_timer.duration()-130) )/card.percentDone(); //(130 = temps approx du bed leveling)
       bool rhas_days = (remaining.value > 60*60*24L);
        uint8_t rlen = remaining.toDigital(rbuffer, rhas_days);
        u8g.setPrintPos(50, 7);
        lcd_print(rbuffer);
      }
   }
  ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

si un membre du forum pouvais me donner la solution ce serai sympa

merci

Lien vers le commentaire
Partager sur d’autres sites

bonjour

c'est fait

 jours passés en heures et aussi quelques petites modifications

IMG_1806.jpg

Marlin-1-1-9.zip

Marlin 1.1.9
Carte : MKS Base v1.0
Cable EndStop : Comme sur la carte (pas le câblage de référence Dagoma)
Numéro de Couche 
Ecran  Temps restant

Plateau chauffant 
3DTouch  Tiges Trapézoidales 


 

Modifié (le) par cams08
Lien vers le commentaire
Partager sur d’autres sites

bonjour pour le bltouch il faut juste  commenter  ces lignes dans le fichier  configuration.h

#define Z_PROBE_SERVO_NR 0   // Defaults to SERVO 0 connector.
#define Z_SERVO_ANGLES {10,90}  // Z Servo Deploy and Stow angles

et décommenter  la ligne  

//#define FIX_MOUNTED_PROBE

pour le capteur dagoma 

modifier aussi la ligne 

#define Z_MAX_POS 320   c'est la hauteur de ma discoEasy    origine dagoma 200
 

Modifié (le) par cams08
Lien vers le commentaire
Partager sur d’autres sites

Merci beaucoup, je vais me débrouiller avec tout cela. J'ai déjà modifier ma version perso de Marlin 1.1.8 et cela fonctionne très bien.

Pour la version 1.1.9 je doit également revenir aux End stop d'origine de la Discoeasy.

Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...