gSender Error opening port on Marlin

Hi all,

I hope I put this post in the right category, happy to move it if not!

I am running into an issue with my initial setup of gSender. I setup gSender on a Debian box I have, and have it connected up to my CNC (Snapmaker 2.0) over USB. The Snapmaker 2.0 uses Marlin, and when I attempt to connect gSender to it, I receive an error of “Error opening port /dev/ttyUSB0”. I’m not sure where I can get more information on why it may be failing to open the port. Is there a way to enable more detail diagnostics or check error logs?

Additional info: I’ve restarted the machine(s) already, and also I have a OctoPrint setup as well (basically gSender for 3D printing), this connects to the Snapmaker just fine, so I know the computer and COM port are connected properly and functioning.

Any help that can be provided would be greatly appreciated!

We don’t support Marlin, only grbl and grblHAL.

Wow! thank you for the quick reply.

I had assumed gSender would support Marlin since cncjs appeared to.

Would that explain my issue with connecting? I’m pretty sure if I sent GRBL commands to Marlin everything would be just fine (I’ve done this before).

I’m not familiar enough with Marlin as a firmware but at a quick glance it looks like there is some code related to setting DTR/RTS pins on connection for Marlin that wouldn’t be present using the grbl/grblHAL controllers.

Oh okay, well that would make sense then. Are there logs I could check to confirm that?

Do you know how significant the effort would be to add Marlin support? (I’d be happy to make a branch and open a PR, I’m just wondering how easily that may be done)

Quick Edit:

Does gSender support GRBL-M3?

Tyler - I recently created a new Debian system for my CNC, and had trouble connecting to a CNC controller (OpenBuilds BlackBox) that I had used successfully with gSender. In my case it was a port permissions error. Might be worth a check.

As Kevin mentioned, gSender is built for grbl/grblHAL, so not sure if this’ll end up working for you or not, but easy enough to check.

You need to make sure that your user is in the -dialout- group for access to the USB port.

You can check your setup by issuing the id command. Look for the group ‘dialout.’

Here is my correct output:

uid=1000(osh) gid=1000(osh) groups=1000(osh),20(dialout),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),100(users),106(netdev),111(bluetooth),113(lpadmin),116(scanner)

If you are NOT showing as in group dialout, issue the following:

sudo usermod -a -G dialout your_user_name

(This assume your user has sudo access for elevated commands.)

You will have to log out and log back in to your Debian system to test.


That indeed did the trick!

I can successfully use the console, but none of the jog commands are enabled for some reason, wonder if this is because of GRBL or if there’s custom setup I need to do to enable them?

Glad to hear that helped!

For initial testing, I’d make sure both hard and soft limits are disabled.
But beyond that – not sure.