Updates for 2022

It currently does for zClamp (as described), but I’m looking at adding that for tolerance and arcTolerance for the DedupLinearToArc and SimplifyShortArcs functions respectively. It’s already done for simple Clip (which eliminates needless decimal places)

So I just learned if you don’t do this right you can lose the ability to launch your terminal to fix it…

I am afraid that the trick to doing this is beyond my skill level, however I do know there is some bit of code somewhere that makes scaling to smaller screens easier. I just don’t know what it is. (How is that for no help at all?) I have built websites using WordPress, and it does a fine job of scaling for mobile devices. However, I doubt that WordPress is the right tool for this app. Again, I don’t know much about the process of developing this kind of thing. My job was to design the front end. The smart guys made it work!

Have you tried looking at webcontrol from your phone? The main pages are different, but some of the sub pages are the same. The calibration sub pages will need to be totally redone and likely done twice for this layout. I’m not opposed to that, but it will take a lot of time.

I again apologize for not knowing enough about Maslow CNC and WebControl. And before I forget…Dude, Awesome job! Really. Yes, I see some things that could be tweaked, but this is an app that I am using daily, and very rarely do I cuss at it! HPI (High Praise Indeed). Anyway…I don’t know how to connect the machine and WebControl to my phone. I suppose I should look at the documentation again. Does the controller board have Bluetooth? Or…wi-fi? I connect to it with a laptop using a USB cord, and launch Webcontrol via a commandline script icon installed on the desktop. I had never even considered that a smart phone was an option.

1 Like

I asked this question earlier. Here is the post.

https://forums.maslowcnc.com/t/can-i-control-maslow-through-my-phone-via-laptop/17872/7

You comp running webcontrol and phone must be connected to the same internet/wifi router. Then type in you comps IP address (not the webcontrol one) and add :5000 at the end into your address bar. Might have to hit refresh a few times.

Something like this:

http://193.123.0.11:5000

-Tim

1 Like

Thanks @TimS for the instructions.

@hangtentex don’t worry about lack of familiarity. We need that for the feedback before you get too familiar. I can’t take credit for any of this webcontrol goodness since the changes are just minor edits and readability changes while trying not to break it. If it looks good when I’m done, that is a bonus and that is why you are needed. I haven’t finished the html code course yet, so what you ask may not yet be in my toolbox, but someone knows how to do it.

Side note on webcontrol under the hood: I commented but didn’t remove any of the optical calibration and camera features to eliminate the need for opencv, scipy and numpy that are painful on the rpi to install. I’m hoping this will also free up processor use as well and streamline the operations a bit. Are there any who care about the optical webcontrol features?

the nice thing about projects managed in git is that if you completely delete
the code, it’s a simple thing for anyone to pull it back at any time in the
future.

I agree with pulling it out for now. I really like the idea of that sort of
calibration correction, but the equipment (and pattern to look at) is
prohibitive so far, so pulling it out of the general packaging is the right
thing to do. It may make sense at some point to have a second set of packages
that has it enabled for those wanting to experiment.

Thinking about the problem, if we get a wide-view camera that can see the entire
visible backing, then we may be able to do something where we don’t depend on a
perfect grid across the entire base. Instead we could possibly do some sort of
calibration with a small grid (just a bit bigger than the opening in the sled)
to calibrate what pixels on the camera map to what physical distances (which
will be different at different parts of the image due to the lenses), and after
that map out the workspace with any backing that has enough high-contrast
pattern on it, wihtout relying on the precision of that large-format background

I could see the calibration step being a 6" machinist rule that you just move
horizontally and vertically across the base, and move it end-to-end to let the
camera validate that all the marks really are the same distance apart for
example.

David Lang

1 Like

Is it possible for a disable function, to get the same effect. That way we don’t isolate any users that do use it and still keep that type of calibration as an option. (Unless it’s broke) I’m sure that there are 100s of users that have the maslow and don’t use the forum. Knowing who uses what calibration and how many is just a shot in the dark. Just an open thought.

-Tim

The optical calibration button in the action menu is disabled if you don’t have the optical firmware on the mega (greyed out) as is holey if you run 1.xx or triangular if you run holey firmare, but it is running camera routines in the background and requires building more libraries for support. As @dlang mentioned, it is on GitHub so can be put back in if desired. I didn’t delete it, just commented the code. I’m not supporting or encouraging it’s use. Optical involves another version of firmware to modify and include as well. If someone wants to revive it, no problem, they can branch and merge from the GitHub repository,. I’m trying to add features and streamline if possible.

Optical calibration requires setting up a camera in the place of the router bit,
and getting a grid printed the size of your workpiece, connecting the camera to
the pi, and going through almost undocumented steps (completely undocumented
except here on the forum) to use it.

So anyone who is using it is going to be very aware of the forum and knows they
are doing highly experimental things.

just disabling the option won’t stop the need to install and load the large
libraries on the pi.

That’s why I mentioned that at some point it may make sense to have a second
version of the packages.

David Lang

I commented out the dependency imports and removed them from the requirements, so the libraries won’t be there. They may need to be removed from the virtual environment as well.

May I suggest adding a description to the Set Sprockets form to help beginners understand what they are doing.

1 Like

I forgot, it might be helpful to add the manual button on this page, and delete the reset chains button on the actions form. I know that it took me a while to understand how the two related to each other. Of course, now that I do think I know, I wonder why it was ever confusing. But…it was. I think in the beginning, there is so much stuff coming at you at once, that anything that helps is…well, helpful. JEH

2 Likes

One more, and I will leave you alone for a while. Consider rearranging the Actions menu so that the items most commonly used by beginners are easier to recognize. For my part, I think I have only ever used three, wait…four of these buttons. I have no clue what the others do, though I am sure I will find out in time. JEH

2 Likes

Great feedback. I’ll see what I can do. Most of these are very easy changes and will help make the program more intuitive.

Does anyone else have any suggestions or want to discuss not making these changes?

1 Like

I forgot, it might be helpful to add the manual button on this page, and delete the reset chains button on the actions form.

If you scroll down, the reset chains button is on there: manually Set Chains at 1651 mm. That is the same thing as the reset chains button in the actions menu.

EDIT: not sure what automatic does… so now it looks like this:

1 Like

OT, but if you’re poking around in GCodeClean could you add a file not found error instead of a traceback. It would help out my fumbling fingers.

I think I must have an outdated version, since mine does not include the reset chains feature on this page. I will make sure to update! Thanks!

ok this this one is “the” biggest hurdle that I’ve looked at to date. It requires a complete rebuild of the virtual environment and python doesn’t like 3.10 version of pip, so nothing will install with it. pip 22 is too new and needs 20.x.x, so there went a couple hours chasing that one… with 3.10 as the default, the linux system terminal refuses to launch, but I think I’ve learned how to get around that one now. This request is going to get pushed for this round, but I’ll put it on the repo request list for a future release.

As summer approaches, there are other demands, so I am trying to get a bow on this and get it posted as an official release once we get feedback that testing was successful for each of the features that have been changed or added.