API-URL für das Absenken der Plattform und Einziehen des Filaments

Hallo zusammen,


Nachdem ich nun den Repetier-Server seit geraumer Zeit mit meinem Ultimaker2+ laufen habe, bin ich nun dabei einen externen Filament Sensor zu bauen. Dieser soll via API den Druck ggf. anhalten. Das ist nach einiger Sucherei im Netz (leider wird das Pausen Kommando nicht in der FAQ beschrieben) nun problemlos möglich.

Wenn ich nun per Hand die Plattform absenke und dann über das Menü des Ultimakers einen Wechsel einleite, ist dieser mit einiger Verzögerung wegen Wechsel in den USB Modus möglich. Leider fährt der UM zunächst den Extruder auf X0 und Y0 somit muss ich zuvor der Plattform per Hand absenken. Glücklicherweise ist der Neustart nicht das Problem weil automatisch x y und z angepasst werden.

Somit verbleibt mein Problem nur das Absenken der Plattform und das Einziehen des Filaments, damit es keine Flecken auf dem Druck gibt. und genau hier liegt mein Problem. Ich denke was ich suche ist das "move" Kommando, welchem ich ja mitgeben kann was es machen soll. Nur leider bekomme ich das über die API nicht hin. Nach meinen Ansätzen mit dem Pausen Kommando müsste die URL etwa wie folgt aussehen:

192.168.8.8:3344/printer/api/Ultimaker_2?a=move&data=z20&apikey=177a3e07-1307-........

Ich bekomme von Server nur ein {} zurück aber machen tut er nichts.
Habe ich einen Denkfehler oder mache ich generell etwas falsch?
Danke schon mal für Infos

Steve




Comments

  • Siehe https://www.repetier-server.com/manuals/programming/API/index.html

    User websocket commands directly

    In the websocket chapter you will see all the small commands you normally use while you are displaying server status. Soem of them might also be useful for simple apps just wanting to show some informations. For these we offer a access over the REST api. The only thing that does not work are events as they are reported to open sockets only.

    http://localhost:3344/printer/api/<slug>?a=<websocket command>&data=<json object properly url-escaped>&apikey=<API key>>

    The above schema can be used to send any websocket command as REST call. Use GET or POST just as you like. For bigger data POSt should be preferred. You can replace apikey with sess, but you would normally do this only if you have no session open, so apikey is the normal way to use it.

    Dein fehler ist das du data nicht als json übergibst.  Auch ist move relativ also besser gleich den richtigen gcode nutzen

    send

    Parameter: cmd (string) = g-code to execute

    Response

    {}

    Sends a g-code directly to the printer.

    data ware hier {"cmd":"G1 Z20 F600"} allerdings urlencoded.


  • Hallo,

    danke für die Schnelle Antwort. Warum ist direkt G-Code besser wenn ich fragen darf? Will es gerne so machen nur auch gerne verstehen :D

    Danke schon mal für die Tips.

    Steve
  • move ist im grunde komplizierter und wandelt es letztendlich nach vielen Tests in gcode um. Am ende ist also beides gleich, abe rmove object hat glaube ich 4 parameter die man übergeben muss.
  • Ah Ok super danke....

    Wenn ich alles fertig habe, kann ich ja hier mal posten, wie es funktioniert.

    Grüße
Sign In or Register to comment.