Updates for 2022

That’s exactly what I was trying to describe

given the speed of the maslow, this will still be very slow to walk though.
Would you really save much time compared to just running the entire gcode again?
(you save some because you don’t wait for slow Z moves and all moves can be done
at G0 speeds rather than the g1 feed rates, but that’s not a huge percentage of
the time saved)

It would probably be ideal to do this walk though in webcontrol, with a button
to say ‘now, move the sled to this point’ so that a person can periodically
check that where they think they are based on the screen matches where the
machine would actually be.

This is the type of thing that ‘go to next/previous Z move’ buttons were
intended to support, but if we can actually keep track of the gcode so that we
know that we aren’t skipping over important things (unit change, abs/rel
changes, future G54 type changes, T changes, M changes, etc) it would be far
more reliable and require that people understand the gcode less.

David Lang

David,

That is what I was thinking. Use the Z and the > to get to where you think it should be based on the crosshairs, hit the “activate” button (or whatever it would be called) to move the sled there, then turn on the router (if it was off) and push the “plunge” button to send an M3 to turn on the spindle and move to the z value and press play to have it continue cutting from there.

This is assuming that the operator has a rough idea of the line of GCode where the failure occurred, or roughly how many % through they were.

I would actually have both - do the quick eyeball via webcontrol, and if it seems about right then get the machine to move to match.

I guess after writing GCodeClean I now have a different understanding of GCode and the machine’s relationship to it. It became apparent to me that there’s a need to maintain a kind of state (I called it context in my code), which represents the state of the machine at any given point in the GCode. So this ‘context’ is what would be required for this feature.

1 Like

EXACTLY, the state in gcode can be much more subltle than people realize, so
just editing the gcode or jumping to line X can be much more risky than people
realize.

one thing that will be work to figure out is how to transfer that context to the
firmware in a freshly rebooted machine.

Another thing I though of, if webcontrol can keep a ‘processing line X’ display,
even if it’s only updated every 10 lines or something like that, when something
goes wrong, it can give you a rough location, so you could then process the
gcode up to a bit before that point.

David Lang

1 Like

I obviously need to dig into the interaction with the arduino (or whichever).

We know which line has been sent (because we just sent it)

If we can know which line is being executed then that would be super handy, but if not, then knowing the last line successfully sent would be a great start (we do have this, but I wouldn’t call it user friendly)

1 Like

Unfortunantly we can’t know what line it has processed, and can’t change that
without breaking grbl compatibility. So the best we can do is know where we left
off and plan to replay the gcode (to generate state/context) up until 10-20
lines before that point.

David Lang

@orob I downloaded the new webcontrol, extracted it in a new folder and when I bring it up it looks like the old webcontrol without your additions. I cleared the cookies and it still pulled up as the old. Am I missing something.

-Tim

Rpi version correct? I’ll look into it.

Linux

How did you start it?

From a terminal window, go into that folder and run it with ./webcontrol.

right clicked on the file and selected run

Cleared my history and cookies again. Reloaded webcontrol through the terminal. Keeps all my settings and It even keeps my gcode that was loaded. Yes I’m loading from the new file from the new location. My computer is connected to the Arduino. Am I supposed to wipe something on the adruino?

Got it working, disconnected from the Arduino first then ran it.

Got an error that holely firmware is higher than webcontrol. Get a error when uploading gcode, “internal server error”. I see the added macros but not the “z pid” option. The macros seem to get stuck, set on to router on and then changed it to z axis travel and it still turns router on.

-Tim

Thanks for trying this out. Clearly it is an alpha stage update. I need to change the version check number. Good find. I’ll see if I can duplicate what you see and modify it to work.

Internal server error is most likely from the folder rights. Do you know how to chmod the write permissions? Webcontrol can’t write to the .webcontrol/gcode folder. Not sure what that is about. I didn’t touch that part of it.

Honestly, I was happy I was able to modify the build script to get it to complete the build process on both operating systems. If you can keep feeding me details, we should be able to make it work.

EDIT: I have confirmed the same issues you see. It won’t upload on the raspberry pi either. I’ll get back to you when I can compile a release that does not exhibit this behavior. Sorry for the trouble.

2 Likes

I have no idea. Did not have to do anything like that with the original install. I wish I had the skills to help out.

You should not need to. I think I found the issue. The javascript code section has a deprecated function and isn’t functioning. I’ll see if I can find a fix. EDIT: it will be later this evening or tomorrow before I can get to it.

1 Like

Um, new version of WC? I’m up for testing too if you need more hands.

1 Like