FastPrint / Printer /MarlinConnector.cs
Mentors4EDU's picture
Upload 6 files
b6a0fc3 verified
using System.IO.Ports;
using System.Threading.Tasks;
namespace FastPrint.Printer
{
public class MarlinConnector
{
private SerialPort port;
public MarlinConnector(string portName, int baudRate = 115200)
{
port = new SerialPort(portName, baudRate);
}
public async Task ConnectAsync()
{
if (!port.IsOpen)
port.Open();
await SendCommandAsync("M115"); // Get firmware info
}
public async Task SendCommandAsync(string gcode)
{
if (port.IsOpen)
await port.BaseStream.WriteAsync(System.Text.Encoding.ASCII.GetBytes(gcode + "\n"));
}
public void Disconnect()
{
if (port.IsOpen)
port.Close();
}
}
}