How to implement manual jog wheel

After successfully adding a marking laser to my atomstack (thanks berainlb for your help!), we would like to add a manual pulse generator to be able to position the laser to references at the laser’s location (the PC running lightburn is located some distance away). There are many devices available for DIY CNC machines (just google “jog handler mach3”). Also, a simple rotary encoder could be used together with an Arduino or similar.
Optimally, the Print And Cut wizard could be controlled with this device as well, meaning that there are buttons that select the first and second target positions.

Many solutions come to mind:

  • Take any kind of GRBL board, compile the code with added functionality to react to the encoder signal.
  • “Hack” the serial communication to the laser controller to inject the jog commands.
  • Use lightburn for it… And this is where I would need your help.

So, my thinking was that if lightroom would provide some channel for command line input/output, this should be an easy task. Is there an open command port to control the software via command line?

I thought about using keyboard shortcuts that are generated by another software, but using the keyboard to jog is not working smoothly with my setup, since each jog command executes a step motion. So sending multiple jog commands results in a lot of stop-and-go motions.

Has anybody implemented such a thing?

Cheers,
Matias

This sounds like using an origin, which is already supported in Lightburn.

Do you know how to use the origin setting?


Lightburn has repeatably stated that it’s only supporting the generic grbl code to ensure it’s compatible with most of the machines out there.

The scope to modify grbl might be an issue… If you move it without Lightburn knowledge, it’ll likely cause an issue… Lightburn thinks it’s in one place when it’s actually somewhere else.

:smile_cat:

I believe something like this is your best bet:

Hello Jack

Thanks a lot for your quick reply. However, could you elaborate your answer regarding the origins? I have looked several times through the link you provided and can’t understand how this may help us.

What we want to do is simply to send relative jog commands “$J=91 Xxxx Yyyy Ffff” with the defined relative xxx and yyy values and the predefined feed rate (speed) through lighburn to exactly fullfill what you stated: Make lighburn aware of any motion instead of commanding something externally…

When connecting directly to the laser, sending the commands works like a charm. So, how can we send them through lightburn?

Cheers,
Matias

The only place you can put grbl codes withing Lightburn, I think it’s in the device settings. Those only pre-job sends the grbl code and a post job grbl…

Nothing in between.


Just speculating, if Lightburn had to handle this, it could not generate all the code and be able to send it or save it. If you moved it’s location, mid stream, it would probably have to re compile the grbl to accommodate that dynamic location change. This would also hose up the optimizing that is done…

Doubt you do this from a saved file either…


What do you not understand about an origin.?

Everything on a machine has some reference point, that is your origin. There is absolute coordinates, where the position on your workspace will be reproduced in that location on the machine.

User origin. I commonly use this. I like my things about 2/3 of the way up, so I set the user origin to that. On the Ruida it’s on the machines console. You have to set it via software on most grbl machines.

Now the artwork will be placed relative to that origin and job origin. This is denoted by the green square in Lightburn work area.

You need to understand this or you will have problems with any cnc type machine… It get worse as you add more axes… :exploding_head:

:smile_cat:

Thanks berainlb for the link. I had a thorough look at it and if you tell me that this is our best bet, we will look into compiling our own grbl (or FluidNC) as soon as we find the time.

Also thank you Jack Wilborn. I’m still not sure if working with origins has anythingt to do with jogging commands. But you sparked some ideas.

Cheers and have a good time
Matias

Well …

What is is relative too? Where the head is on the machine is relative to the origin…


Which direction is this going to go? It depends on it’s origin… if the origin is different it goes a different direction…

We see this all the time when people have the origin in the wrong place or they’ve imported some artwork with a different origin.

:smile_cat:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.