...ich bin weiter sehr gespannt! :-)
Druckbare Version
...ich bin weiter sehr gespannt! :-)
Jetzt geht es wohl langsam etwas weiter, ich hab das etwas anders verteilt:
-einen Arduino Nano als Sender (SD-Karte bzw. Tastatatureingabe) mit Display, ext. EEPROM, SPI-RAM , Tastatur
-einen Arduino Nano als Empfänger von Fehlernachrichten etc. mit separatem Display
-den UNO mit der grb v9.j zur Ansteuerung der Motoren.
So hab ich noch Erweiterungsmöglichkeiten und zusätzliche Anzeigen
Als IDE verwende ich die 1.6.9, habe aber die seriellen Buffer (in hardware ...) auf 128 byte erweitert. Auch hab ich grbl (im Wesentlichen in report.h/c) leicht modifiziert (keine Fehlertexte, nur noch Nummern, die man dann auf dem Nano auswerten kann.
Das Problem mit den dubiosen Fehlermeldungen scheint behoben, verursacht wohl durch einen Bufferüberlauf (max 127 byte kann grbl buffern) .
Ich merke mir dazu, wieviel /eher wenig Buffer noch frei ist und erhöhe ihn, wenn ich eine Rückmeldung von grbl bekomme.
Ich habe die Aufteilung zwischen den beiden Arduino Nanos( dem G-Code-Sender und dem Empfänger der Nachrichten von grbl) noch etwas geändert:
Der Sender sendet jetzt nur die GCodes von der SD-Karte, aber nur soviel, dass der Buffer (128 Byte) nicht überläuft.
Bekommt er eine Nachricht/Quittierung von grbl ("ok"), prüft er, ob er die nächste G-Code-Zeile schon senden kann.
Der zweite Arduino NANO gibt eventuelle Fehlernachrichten von grbl auf dem Display aus, auf ihm kann man sich aber auch die grbl-Parameter ansehen bzw. modifizieren . Ausserdem kann man von ihm aus per Keyboard GCode Zeilen eingeben und an grbl senden.
Da das doch relativ mühsam ist, besteht auch die Möglichkeit, über einen Dreh-Encoder und wenigen Tastatur-Eingaben die wichtigsten GCodes (G00/G01) relativ einfach einzugeben.
Die x,-y, z- Positionen sowie die Vorschubsgeschwindigkeit (Feed) werden über den Drehencoder eingegeben, dessen Schrittweite auf 1mm oder 0,1mm gestellt werden kann .
Der Drehencoder behält auch die vorige Postion bei, wenn man z.B. von x nach y wechselt und wieder zurück. Er arbeitet mit Interrupts ("Change-Pin an A2 und A3") .
Das Keyboard (momentan 7x7) und das externe EEProm hängen anI2C Bus, das NV- RAM (23LCV..) am SPI-Bus.
Als Display verwende ich ein ILI9341 (2,8") aber nicht als HW-SPI (wird von UTFT nicht unterstützt, die Adafruit Lib ist zwar schnell, aber mir gefallen die fonts nicht). Werde aber eventuell das ILI9341 von Adafruit mal an SPI testen.
Gruss mausi-mick
Bei youtube hab ich mal 3 Videos geladen,
auf jog grbl 08 die Settings von $0 bis $27 (Anzeige wie bisher mit $$)
jog grbl 09 die Settings von $100 bis $132 (Anzeige mit $Y)
in jog grbl 10 ist die G-Code Generierung im "Simple-Mode" dargestellt mit Werteingabe x,y,z, feed über Drehencoder
Jog-10: https://www.youtube.com/watch?v=Drh636d-dyI
Jog-09: https://www.youtube.com/watch?v=9J3BEn3ThrU
Jog-08: https://www.youtube.com/watch?v=3qhKISY_-84