SO3: Universal G-code sender vs bCNC

Has anyone used both or either and have an opinion on which one would be best and how to set it up.

UGS used to be the default / recommended option:

bCNC is the new kid on the block, w/ a lot of energy behind its development:

Both work fine, it’s a question of if one likes Java and shiny new, or Python and old and square.

I’m working on building my own, to include support for my Arduino joystick, I like buttons lol!
I want some additional functions not available in most of the g-code senders and I think they are not really that complex if you are into programming and such. It’s fairly easy to send some commands to the com port.

I have Universal G Code sender, it works well. I also have some other’s that came with various 3d printer applications. I have used many different ones for many situations. There is no one perfect one because everyone likes to do different tasks. I personally like 3D printing, Laser engraving and CNC so I am working on building a better one that supports all 3 a bit customized for each. Not sure how long it will take, but it’s an interesting project anyways. Who knows maybe one day I can sell licenses to it.

You may want to look at the nascent RasPyCNCController listed here:

I’ve previously noted that I’m faintly surprised that no one has coded up a comm / control program w/in the Arduino IDE.

I’m thinking I could add some extremely simple CAM features. For instance, it would be great to jog into position A, then click point A, then Jog to position B and click point B and then enter in your tool radius, speed of cut, depth of cut and click rectangle (Surface) and it would essentially surface the material. Like wise for cut outs, and for simple polygons maybe even circles. No CAD needed this way just jog to where you want and set one or more points and then click go.

Also how cool would it be to quick test a laser point to check if it’s where it needs to be? haven’t seen this feature yet.

What about 3D printing on the fly with the joy stick? That would add a new dimension to things.

That is my goal with my new universal sender, any buyers?

I’m interested in this thread because CM doesn’t work well with the SO3.

It moves way too slowly to make limit switches useful for the SO3. I.E. It takes a LONG time to move from the home switches to the front because the speeds are set for the Nomad which is tiny in comparison.

If you don’t have limit switches installed then it doesn’t raise the z axis up when its time to switch bits and it doesn’t allow you to go to the jog screen at that point so you have to either use the same bit for everything or trick it and rerun the program with the second bit while watching it mill air during the roughing operation.

Of the two mentioned above, are there any significant advantages or disadvantages of one over the other other than how they look?

That’s why I started the thread, because I made a job and when I ran it, in CM, I had some of the same trouble you did.

I wanted to know if updating Java for UGS was a big deal or not and if one worked better with SO3 then the other.

I have been reading the Wiki pages but there not always clear. Sometimes they just say do this or that but don’t give details.

Yeah, the wiki is like that.

The guy who mostly works on it seems to just collect stuff off the web and record it w/ a back link where suitable (but for some reason there are a number of factual things which have gotten added but w/o any sort of annotation) — as if the wiki is his personal notebook / logbook, but w/o any consideration for other people using it — you’d think he doesn’t actually use the machine (much) or something, just must kibitz about it on Internet forums.

Which is pretty much the case. I live in a very small house, my workbench is located at one end of the laundry room (the other is cluttered w/ stuff from when our house was flooded by a broken pipe and I was bringing stuff up from my Father’s estate when he passed away — still haven’t found a block of time when both my wife and I and the kids are all willing and inclined to work through that), I didn’t have room and had to sell my SO2 to make room for the SO3, and I’ll probably have to sell the SO1 to make room for the XL upgrade. Even then, I do most of my work w/ the machine on the back deck, so have to wait for the weather to be fair (it’s raining today).

Edward has an excellent introductory book which he has written: and which is making its way through the Byzantine labyrinth of contemporary high-tech book production. There’s also the CNCCcookbook which is listed on a wiki page: — belike you’d prefer one of those over what has been made freely available on a site which anyone can join and edit or improve.

The wiki can only be as good as the information which people will share — if something which was shared has been missed, let me know and we’ll add it. If there isn’t publicly available content on a topic, someone will need to write and share it, in order for it to appear.

I’ve been grateful to receive a couple of machines and gear, and some money for a bit of freelance work, but Carbide 3D is a couple of self-funded guys (except for the two Kickstarter campaigns) — they don’t have millions in venture capital as the competition does. I do as much as I can justify based on the return, but until someone can figure out how I could make real money at this, my efforts on the wiki and documentation are necessarily limited.

1 Like

Here is what I have so far (My new Intelligent G-Code sender):

It currently has the following functions:

  1. Send GCode from a file of any length.
  2. Jog the machine, as well as rapid position box.
  3. Builds and then you can Run the G-Code for a Box or Pocket Operation.
    (I think I have most of the needed options for this to work well, it is either a square or a rectangle and I added the option for preferred force direction. I am using this function for surfacing alot!)

Things still to do:
Finish up saving settings, then add the rest like drill operations, Circle and maybe even star.
Add Macros so I can do quick things.
Add Joystick support.
Maybe a G-Code sterilizer so to speak.
When this is complete I’ll be moving to Laser functions and lastly 3D Printer functions.

There is just never enough time in the day.
Thoughts? Any features that may be simple but hard to find in a software you would enjoy?


Rather than a joystick, I’d liefer see support for a jog wheel — the Countour Design ShuttleXpress seems popular for this, is even used by Tormach:

I lucked into an affordable unit from eBay.

You could save space for the speed increments by using a pop-up menu for them.

Oh, and you misspelled Macros as Marcos.

1 Like

That jog wheel can work if it shows up as a joystick in windows. Good catch on my spelling this is really a rough draft at the moment.

I don’t think it registers as a gaming device — it seems to require explicit support / effort — see the code for supporting it in Chilipeppr

Want a beta tester? This looks awesome.

When I get a bit further along, I may be interested in that. The goal of this project is to have the ability to control the CNC machine with out drawing and using 3 programs! I sometimes even use 5 programs to do a simple project. When this generates on the fly G-Code for a square or a box, you can save it. But you don’t have to! By default it will allow you to start running the code. This allows for a much faster brute force type of attack on small projects.

I have taken rough cherry wood and made cute name desk ornaments for the kids teachers, but every time I do this my process is very complex. First this is a 2 X 4 " type wood and very rough on the outside. So I must surface 3 sides of it. The tricky part is I use a separate program to engrave the name so I normally adjust the length of the board based on the length of the name and height of the characters, once I get that sweet spot then I cut the board.

Once the board is cut I must surface one side either by a planer which I don’t own, or a sander (Very messy) or by sending the CNC machine the correct code to do this with a 3/4 inch router but. The CNC can do it in a few minutes with this bit, but you must draw something the correct length and width and set the depth to do this.

I do that on 3 sides of the wood! (Front, Rear and Top) The bottom I sand a bit afterwards along with the other 2 sides but they are fairly clean cuts so not much sanding is required. Then I want it to look a bit like a stand, so I again surface the Front of it but leave the bottom half inch. This again requires me to open 2 programs to draw it and make gcode type of thing.

Finally I load my engraving and it runs the v-carve is about 1 minute flat.
Then I adjust another CAD drawing to have pencil holes in the top at set intervals and drill them.

If I could do all but the name engraving / V-Carve within my program I could make this part is a few minutes time, with 1 tool change, instead of wasting hours drawing in CAD and stuff like that. Just some very simple basic functions like this could make the entire CNC project so much easier I think.

The Drill, I plan to allow for X, Y and X/Y spacing so you could actually drill like an array of holes.
Anyways that is the goal of the program. I see many projects benefiting from that. Not just my tiny project.

Why not use traditional tools to prepare the stock?

Even a hand plane would make quick work of that.

Exactly. IMO, this is the missing link in consumer CNC. It’s crazy to have to spend more than one minute to start cutting out a square or a circle. I think this approach is taking things in the right direction.

If it’s doable without muchaving complexity, adding a way to make hole patterns would be handy.

I have an old one. (Hand powered) I grabbed it and started pushing it, and quickly realized I’m not very good at it. I suppose I could try buying an electrical one but then again… Whats the point of having a cnc machine if I can’t make it level something for me in a few minutes? lol

It would be hard to use a hand planer to inset the front 1/2 deeper without some form of Jig I would think.
I did a trial run by hand with traditional tools and then used the CNC and I can tell you the hand made version doesn’t look near as clean as the cnc version. Even with a drill press, and punching the centers. My holes are still all over the place and the chiseled up board ended up turning into something else afterwards.

I know there is a right machine for each job, I proper planer is in order! (Have to get a birthday or even christmas allowance for that one) But it’s still nice to quickly draw a square, rectangle or even circle just by moving the machine to the correct place and make it do something! I can see many quick projects needing something like this.

Rabbet plane for the inset.

Practice will allow better results w/ hand tools:

Although I appreciate some people are very good with their hands, I unfortunately have proven over and over again that, my hands work well on a computer, not well in actual manual work. I have used a router and build a beautiful arcade table. But ask me to toss a ball into a hoop is useless.

The arcade was easy as all I needed to do was push a router into the wood and let the bearing do the rest. I love electronics, and I can program most of them. But ask me to use a hammer and I will bust my finger, EVERY-TIME!

Funny thing is my grandfather was a carpenter, my other grandfather was a mason. But I manage to cut my fingers and cut things not straight every day. I have to live with being a computer wiz I guess. That is my actual day job.

I do try to be better with my hands but they have been mangled by myself so many times that both my index fingers are numb because of cuts by chisels and saws and scalpels and who knows what else lol!

At least I can still type a little bit, or I would be jobless at this point!

With enough thought and innovation, a CNC should be able to replace most hand operations. I think it’s easy to get used to seeing something done one way so much that we don’t consider all the possibilities of doing things a different way. I wish I would have focused on programming when I was younger. There are so many things you can improve with little or no cost through innovative code. Keep thinking out of the box. Roger. You are onto something.