通过串行端口将 gcode 字符串发送到 3D 打印机

Sending gcode string to 3D printer through a serial port

我试图通过串行通信将 Gcode 发送到打印机,从而在我的 FlashForge Creator Pro(双)3D 打印机上显示消息。

当我打开ReplicatorG软件并放置字符串时:

M70 P5; Hello World.

然后单击 "Build" 一切正常,机器显示正常。但是,当我在我的代码中使用它时 (nodejs/node-serialport) 它不起作用:

require('serialport')

var sp = new SerialPort("/dev/tty.usbmodem1441", {
  baudrate: 56700,
  parser: serialport.parsers.readline("\n")
});

sp.on("open", function(){
  console.log('open');

  sp.on('data', function(data) {
    console.log('data received: ' + data);
  });

  sp.write("M70 P5; Hello World.", function(err, results) {
    console.log('err ' + err);
    console.log('results ' + results);
  });
});

用于连接打印机的波特率取自 ReplicatorG The Creator Dual 驱动程序,该驱动程序在 ReplicatorG 发送时也使用该驱动程序。

控制台发出 "open" 事件,没有任何错误。

我尝试在命令的开头和结尾添加“%”字符,并通过添加“\n”分隔各行,但尚未成功。我做错了什么?

我终于找到办法了:

我的 flashforge 是 运行 sailfish 7.7,它不识别 gcode 命令。相反,它需要一个 x3g 文件,然后将其写入串行端口。

我找到了使用 GPX 的方法: https://github.com/whpthomas/GPX

允许我输入一个 gcode 文件并自动将其写入串口。

我希望这对其他人有帮助。