Seite 6 von 15

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: So 26. Aug 2018, 21:39
von Nibbels
nikibalboa hat geschrieben:Also ich habe noch 1156 bytes RAM frei. Hab ich das richtig verstanden das der RAM für die Mod funktionen schon beim flashen reserviert wird oder erst wenn die Funktion genutzt wird? Wie Zb. Der wooble fix.

Lg
Ganz klar: Ich tappe hier wegen der Ursache noch im Dunkeln!
Ich versuche das durch einige Logs mit Zeitstempeln zu schätzen, wie der Drucker sich zum Fehlerzeitpunkt verhält, aber ich kann das erst richtig angehen, wenn ich selbst den Fehler nachstellen kann. Sonst keine Chance, ausser raten.

Und das mit dem zu wenig Ram war so ein Ratespiel.

Auch Zaldo hatte mal was geschrieben, das auf einen willkürlichen Reset hingedeutet hatte. Aber an einer völlig anderen Stelle im Z-Offset-Scan, der laut meiner Information wirklich nur bei ihm Probleme macht.

LG

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: Sa 1. Sep 2018, 00:07
von Nibbels
Ich habe eben eine Version 1.42.11.Mod auf Github hochgeladen.
https://github.com/RF1000community/Repe ... c0c5f50c74

Es wurden ein paar kleine Details verbessert/repariert.
Und die SdFat Library ist nun auf Version 1.0.7. Auch hier wurde vom Entwickler ein kleiner Bug repariert, den wir nun ebenso eliminiert haben.

Wir hatten über Arduino 1.6.5 diskutiert.
Arduino 1.6.5 kommt nicht damit klar, dass Code ausserhalb des Hauptverzeichnisses in Unterverzeichnissen liegen kann. Es existieren Gerüchte, es sei möglich, wenn es den Code als Library erkennt. Es gibt evtl. noch irgendwelche Tricks die ich selbst aber nicht herausfinden konnte.

Diese 1.8+ Versionen von Arduino kommen wunderbar damit klar.
-> Weil das ziemlich kompliziert ist und meine Zeit begrenzt ist, werde mich um Support für Arduino 1.6.5 vermutlich nicht weiter kümmern.
Man sollte einfach Arduino > 1.8 verwenden. Vermutlich funktioniert Arduino > 1.6.10, habe ich aber nicht getestet, nur gelesen.

Ganz neu 2018.08.23 ist z.B. Arduino 1.8.6
https://www.arduino.cc/en/Main/ReleaseNotes
https://www.arduino.cc/download_handler ... indows.exe

Sollte dennoch jemand herausfinden, wie man eine Header-Datei durch #include in einem /src/SdFat/-Unterverzeichnis für Arduino 1.6.5 sichtbar machen kann, wäre ich über Hinweise dankbar.

Diese gemeldeten Crashes, wenn man das neue Unload-Filament/Load-Filament übers Menü ausführt sind noch unbearbeitet. Mir fehlt ein Gerät, wo der Fehler auftritt. Leider kann ich das so nicht nachvollziehen.
Ich habe aber inzwischen die alten Load-Unload-Methoden als Alternative eingebaut.

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: Sa 1. Sep 2018, 00:57
von AtlonXP
Eben habe ich mir die FW gezogen.

Ich werde sie in den nächsten Tagen irgendwann aufspielen.
Leider ist meine Zeit auch begrenzt. :-(

Ich schätze, das nächste Testgerät steht in Neckarsulm. :coolbubble:

LG AtlonXP

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: Sa 1. Sep 2018, 07:58
von nikibalboa
Ich würde ja gerne beim beheben mithelfen nur leider sind meine programmier Kenntnisse zu wenig.
Falls das helfen sollte in der 1.38.x wo das soft laden und entladen eingebaut wurde hats noch funktioniert.

Lg nikibalboa

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: Sa 1. Sep 2018, 11:24
von Nibbels
nikibalboa hat geschrieben:Ich würde ja gerne beim beheben mithelfen nur leider sind meine programmier Kenntnisse zu wenig.
Falls das helfen sollte in der 1.38.x wo das soft laden und entladen eingebaut wurde hats noch funktioniert.

Lg nikibalboa
Ich habe genau einen GCode oder bessergesagt MCode eingebaut.
Dieser ersetzt das alte MCode Script.
Das Problem ist: Wird dieser neue MCode auf manchen Druckern über das Menü gestartet, schmiert der Drucker offensichtlich ab.

Ich glaube, dass der GCode ansich funktioniert, man ihn aber nicht über das Menü starten darf.
(Gibts Gegenstimmen?)



Hier sind alle Scripte:

Code: Alles auswählen

// ##########################################################################################
// ##   Script configuration
// ##########################################################################################

/** \brief Automatic filament change, unmounting of the filament - ensure that G1 does not attempt to extrude more than EXTRUDE_MAXLENGTH */
#define UNMOUNT_FILAMENT_SCRIPT_SOFT        "M3914 P4500"
#define UNMOUNT_FILAMENT_SCRIPT_HARD        "M109 S" xstr(UI_SET_PRESET_EXTRUDER_TEMP_PLA) "\nG21\nG92 E0\nG1 E-90 F500\nG92 E0\nM104 S0"

/** \brief Automatic filament mount, mounting of the filament with heating. Stop @ XXXX digits */
#define MOUNT_FILAMENT_SCRIPT_SOFT          "M3913 P3500 F3"
#define MOUNT_FILAMENT_SCRIPT_HARD          "M109 S" xstr(UI_SET_PRESET_EXTRUDER_TEMP_ABS) "\nG21\nG92 E0\nG1 E90 F100\nG92 E0\nM104 S0"
Und hier setze ich manuell die Temperaturen ein, die Voreingestellt sind:

Code: Alles auswählen

#define UNMOUNT_FILAMENT_SCRIPT_SOFT        "M3914 P4500"
#define UNMOUNT_FILAMENT_SCRIPT_HARD        "M109 S180\nG21\nG92 E0\nG1 E-90 F500\nG92 E0\nM104 S0"

#define MOUNT_FILAMENT_SCRIPT_SOFT          "M3913 P3500 F3"
#define MOUNT_FILAMENT_SCRIPT_HARD          "M109 S210\nG21\nG92 E0\nG1 E90 F100\nG92 E0\nM104 S0"
Hier steht natürlich ein \n immer für ein Enterzeichen.
Also ist z.B. bei MOUNT_FILAMENT_SCRIPT_HARD dieser GCode aktiv:

Code: Alles auswählen

M109 S210 ;heizen und auf Zieltemperatur warten
G21 ;Einheiten der Bewegungsbefehle (G0-G3) sind in Millimeter
G92 E0 ;reset filamentausgabe koordinate
G1 E90 F100 ;extrudiere
G92 E0 ;reset filamentausgabe koordinate
M104 S0 ;temperatur aus
Diese Liste sollte funktionieren, das ist die alte Variante, die man nun über Load->"Push Through" oder Unload->"Oldstyle" erreicht.



Nur diese Codes funktionieren übers Menü nicht immer:

Bei MOUNT_FILAMENT_SCRIPT_SOFT steht nur

Code: Alles auswählen

M3913 P3500 F3
als Script drin.
Der heute aktuelle Quellcode dazu steht hier:
https://github.com/Nibbels/Repetier-Fir ... cpp#L10629
Bei UNMOUNT_FILAMENT_SCRIPT_SOFT nur

Code: Alles auswählen

M3914 P4500
Der heute aktuelle Quellcode dazu steht hier:
https://github.com/Nibbels/Repetier-Fir ... cpp#L10673

Und soweit ich informiert bin funktionieren die Befehle als GCode, aber nicht wenn man sie aus dem Menü heraus startet.

Meine Theorien:
- Irgendeine Funktion, die ich noch nicht gefunden habe, macht einen unendlichen rekursiven Loop.
- Der freie Speicher ist am Limit.
- Der Watchdog wird aus irgendeinem Grund zu spät getriggert, aber das ist vermutlich nur ein Symptom.
Es liegt wohl nicht an der Art des Mainboards (RF1000 vs. RF2000) aber manche Drucker haben das Problem und ich nicht.

LG

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: So 2. Sep 2018, 18:40
von Nibbels
Ich hatte am Wochenende etwas Zeit und an der Firmware herumgebaut.
Tritt der Absturz bei Load-/Unload-Filament in Version 1.42.15 noch auf?

LG

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: So 2. Sep 2018, 21:51
von nikibalboa
Super, ich werds morgen gleich mal testen.

Lg

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: So 2. Sep 2018, 23:57
von zero K
Guten Abend
MOD 1.42.15
Also bei mir funktioniert das Laden der Filamente an beiden Extrudern ohne Neustart, unload habe ich noch nicht probiert.

Gute Nacht.

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: Mo 3. Sep 2018, 00:02
von zero K
Nibbels hat geschrieben:Ich habe eben eine Version 1.42.11.Mod
Diese gemeldeten Crashes, wenn man das neue Unload-Filament/Load-Filament übers Menü ausführt sind noch unbearbeitet. Mir fehlt ein Gerät, wo der Fehler auftritt. Leider kann ich das so nicht nachvollziehen.
Ich habe aber inzwischen die alten Load-Unload-Methoden als Alternative eingebaut.
Gibt es in der Firmware so etwas wie einen Debugmodus?

Gruß zero k.

Re: Community Mod RFx000 Firmware :: Neue Stable (Stand 1.42.03 / 28.07.2018)

Verfasst: Mo 3. Sep 2018, 10:01
von Nibbels
Es gibt ein paar mehr ausgabezeilen, die man per gcode anschalten kann.
Warum das script nun gehen könnte: Ich hab eine schleife ohne einsprung in die "wiederkehrenden jobs" dringehabt. Ob man das gebraucht hat oder nicht war wohl ein grenzfall.

Es gäbe da noch so einen debug pin. Hab das aber nie richtig angeschaut.

LG