CNC toolbox program

I’m in the process of writing a program that has everything that is needed for CNC operation and configuration in one spot. I’ve seen a few out there, but they are not generally touch screen friendly (small buttons that are close together). I use my tablet with my machine, so this is a problem.

So far, I have the code generator for a touchplate completed. Personally, I like my software to be as flexible as possible in order to adapt to any changes (thickness of plate for example). So far, I believe I’ve covered just about everything except for one variable for the fully automated program (combined). May need to tweak a few things once I review this after I get some sleep though.

I also have one general tool created. Simply converts inch to mm or it can go the other way as well.

Tomorrow I’ll be starting on the stepper calibration tab.


You are my hero :+1:

1 Like

…send the gcode from the program…
If you want to put the source up on github or something, I’d be willing to put some hours in.


That would be awesome!

In a day or so after I’ve hashed out some of the core features, I’ll set you up.

Currently I’m coding it so you can work in inches or mm with ease. So far, this should be very flexible and easy to use.

for any of the gcode that’s generated, I’m also making it so you can copy to clipboard, save to file… and would like to be able to send directly to the machine.

1 Like

Did some testing with it tonight. The code generated works fine, however, I am making the travel distance from z probe to the x probe as well as the x prob to the y probe able to be customized.

I use 123 blocks with holes in them for a touch plate. Works great with the alligator clips. However, I didn’t have one in front of my while programing and found it was 5mm more than I thought to miss the hole and hit a solid point for the start of the program (z probe). I figure it would be good for this to be a user definable value.

So now every value for the gcode that is generated will be user defined. I am working on tool tips right now so that it will hopefully be clear as possible and easy to use.

I also needed to redo my stepper calibration since adjusting my Z pot, so I tested that tool. I will be adding a copy button in order to quickly copy $10X=VAL output to paste into the sender of your choice. The buttons are in place for hopefully a future feature to send this directly to the machine.

The idea is, when you need to calibrate, you can click “get values” and it will connect to the machine, read the current values and auto populate the boxes. You input the value you want to move to, click “send machine” and it will issue the G0X600 or whatever command for you. I will be adding a return to 0 key for each. Then, input where it “went to” the new value will be calculated and you can then click “update machine”. It will then send the $10X=NEWVAL command.

In other words, one window with everything you need in order to calibrate.

A question regarding adjusting and reading the meter for the pots. Does it need to be moving in order to get an accurate reading? If so, I might write a loop that will send the machine to travel back and forth to a desired distance… basically loop the command G0X600;G0X0 until the user press the stop key. Or, rather, user defines how many times it will loop and stop. This way it will be easier to get the motors moving without having to program it to “cut” a long rectangle.

I also added @PhilJohnson deflection calculator. If we can get this to communicate with the controller, then I would like to have it generate code based on the parameters to cut a “cutout” or “hole” for this test. In other words, no need to jump into whatever program to make a quick circle… just throw the numbers in, zero it, and send. Again, the idea is a one stop shop for the needs in question.

I hope this makes sense. If not now, then I hope it will later after things are hashed out some more.


updated screenshots


On a side note, i’d love to see the process of you programming this. Currently in school for computational science. Are you using IDE with windows SWITCH and window creation tools?

Think i will make a window that is separate for jogging… this way it can be placed anywhere on your screen.

This is in Visual Basic (visual studio). No schooling. I used to dabble in computer security integrity testing… During this, I learned some basics in various languages and stuck with visual basic. I have the basics down for the most part, but for the areas I don’t know about, the internet is a wonderful place.

1 Like

That’s great work. We’re following you eyes open. I can tell you go over each and every problems newbies experiencing in this forum.

1 Like

I want to issue an apology and beg for forgiveness. I had jumped the gun and originally said I was going to make this available free. However, with realizing the work involved, I am reconsidering this since it will eat into some of my time to make a living. I believe many of you can understand and appreciate this dilemma.

However, I will need testers to get feedback from. The posters before this post will be receiving copies of this at no charge (unless they choose otherwise).

When polished, I believe it will be a truly valuable tool to have in your arsenals.

I haven’t fully decided how I will handle this (price, delivery, so on) I have an idea of what I would pay for this software in a heartbeat if I found it somewhere and accomplished the task it does, even up to date. However, I wanted to respectfully ask what you feel is a reasonable price in two regards…

  1. the program as a bundle of tools without machine communication.
  2. with the ability of being a sender. I really want to push it to have this ability.

I know this may be unorthodox and I can understand if this upsets anyone who may have read my earlier post. I wasn’t planning at first, to dive in this far with it and it grew very quickly in it’s to do list. However, I hope that you can see from what has been shown so far, it would be well worth it.

One thing that you need to consider when deciding on a price is that for a paid program people will expect a certain level of support. You need to factor in the time that you will spend on supporting your program, which will be more time than it takes you to develop the software.


We all have to get something in return for the time, effort and IP spend on something made so i give it the thumps up. Only suggestion is to keep the cost down and use the community to improve it even more.

Does a “like” on previous posts quality for a free testing copy :thinking: as I’d be keen to give it a run around to see how it operates.

1 Like

you’re on the list.

I will have 5 slots opened. next 5 new posters with the first word “beta” will have a slot. You do not need to do this if you have already posted or liked in this thread. I have already noted you.


None of this is of course set in stone. I’m conflicted as you might be able to tell. I really would like to throw this out there to grab, and thought about donations… however how many donate? I have to a few that I thought were really valuable to me.

If I do proceed with the route of a paid program, it will be low cost… for the most part, we are hobbyist. So I’m keeping in mind what I would throw at it if I were to donate or be willing to purchase the app for.

1 Like

cookies sound good right now.

you are on the list :smile:

BETA!!! I’m open for the experience!

1 Like

Beta, would love to give it a try.

1 Like

Beta, this looks great!

1 Like

Sounds great, i would be down to donate, or pay a low price.

1 Like

Beta me this, Beta me that!

1 Like

one more slot!