Beginners guide to setting up bCNC (+ autoleveling)

ALuomala
Posts: 136
Joined: Mon Feb 17, 2014 7:30 pm
Location: Alberta, Canada

Beginners guide to setting up bCNC (+ autoleveling)

Post by ALuomala » Fri Oct 16, 2015 9:19 pm

Intro

I am writing this tutorial since I had a hard time getting bCNC up and running, and figured that it might help anybody who is sitting on the fence (about whether or not they should try it out).

Some background: I have been using my SO2 for the last 12 months or so, and I've become somewhat proficient at carving basic items (mostly signs, plaques, etc) out of "standard" wood (3/4" boards, mostly old kitchen cabinet doors that I have found at the local Habitat For Humanity Restore locations... great value, and sometimes the finish they have is nearly perfect (factory seconds or display models from stores, etc). Anyway, the wood is usually quite flat/level, and I have my machine set up to be fairly accurate (used wide flat bottomed bit to mill out a flat work around on my spoilboard), BUT sometimes the wood has a slight warp in it, and I want to preserve the nice finish that is already on the wood (I used the standard method of milling off a few mm's here or there on rough cut lumber to get a flat working area) . As well, I was also looking at future projects that would involve carving into uneven surfaces (guitars, rough lumber, etc).

I have used UGS exclusively, and was pretty comfortable with it, and was always hoping autolevel and/or probing support would get added. Once I decided I needed to investigate probing and auto-leveling, I found that there were 3 contenders: bCNC, GrblGru and ChilliPeppr. Right off the bat, I shied away from bCNC due to a bad experience I had with trying to install a Python script for a plug-in into Inkscape (I am computer literate, but most things that don't come with an installer of some form, I give a wide berth to: I don't have the time or inclination to learn the in's and out's of EVERYTHING that is out there). Next up: ChilliPeppr. I have heard good things, and it is fairly well documented, but it is reliant on an internet connection and my shop computer has spotty wireless coverage, so while I enjoyed it (while I had wireless service in my shop.....), I realized that I had to look elsewhere. Next up: GrblGru. [Here is link to my forum posts regarding my initial experiences]. This program has a LOT of potential, but the documentation isn't there (the creator is a self-proclaimed "do-it-yourselfer") and some of the interface options are counter-intuitive or noticeably missing (compared to bCNC, UGS, ChilliPeppr, etc). After spending a solid 10-12 hours of messing around, and not really getting anywhere, I gave up in frustration. I received a PM from another SO community member, prodding me in the direction of bCNC, and after an offer to help me deal with the Python issues, I decided to revisit bCNC.... I'm glad I did.

Installing Python [Note: I am running Windows, so YMMV]

In hindsight, this wasn't that hard, after a little Google-fu. Go to the Wiki to get the required files (listed under Requirements).

The only really difficult part, IMO, was making sure that the bCNC files were extracted into the correct location (i.e the root folder for Python). I had them in their own folder, and after many frustrating attempts at figuring out how to execute a Python program, I finally looked at the bCNC.bat file, and realized I had the files in the wrong location. [I am a complete novice with Python, so this was what worked for me. I have been advised that it is not the correct method. Once a "handholding explanation" is given to the best practice for installing Python (and bCNC) I will post a link to that]. Anyway, once they were in the right location, double-click on the bCNC.bat, and away we go!!!

Configuring bCNC
The only really head-scratching part here was getting it to connect to my machine. In other software, there was usually a dropdown window for you to choose your COM port, but here (at the current build state) one has to enter the COM port they are using: in my case I entered "COM3" and then hit the "Open" button (with graphic of a serial port cable). That's it.

Once you are connected, you can go into the tools menu and set the size of your machine's workspace (link to Wiki on configuration) and other settings as applicable to your machine.

Using bCNC

Once I got the basics squared away, I was quite impressed with the UI, and was able to get most things done quite quickly: jog machine around (safely), use the various probe functions (touchplate, the basics of autolevel), and so on. It took a little while to get used to the spreadsheet-style menus, but anybody who has used graphics programs and such will quickly get the hang of things: it keeps the screen uncluttered, but I would like the option to always have the jog menu available (not sure if that is practical (i.e it may be that way so you don't accidentally jog on purpose)).

One feature I liked was the Move Gantry (G key shortcut). I didn't feel afraid to use it (unlike some other apps...), since you have to manually toggle it (and it untoggles after the gantry has moved). CAVEAT: make sure Z-axis is clear before moving.

I think I will leave it at this for the time being, and I will make a future post on the steps required to use Autolevel (I am away from my shop computer (poor wireless connection...) and want to make sure I have the steps correct before I document them.

Allan
Last edited by ALuomala on Sun Oct 18, 2015 1:26 am, edited 1 time in total.
ShapeOko2, serial ??
DW660 spindle;
Upgrades: 900mm X axis and 1000mm Y axis; ACME Z Axis; modified MDF wasteboard with t-slot
Primary usage: wood crafting (signs, plaques, and ultimately a CNC-made electric guitar)

RoguePirin
Posts: 216
Joined: Wed Sep 02, 2015 3:22 pm
Location: Illinois, USA

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by RoguePirin » Sat Oct 17, 2015 1:59 am

What version of Windows are you running? The bCNC Wiki says to install:

Code: Select all

      OS            Python Version
Windows XP SP3      2.7.5 	
Windows Vista SP2   2.7.9 	
Windows 7           2.7 	
Windows 8.1         2.7.10 is known to work 	
Windows 10          2.7
I have Windows 7, and I am wondering if should install Python 2.7.0? When I go to download 2.7.0, the Python website suggests that I really install 2.7.10, since the 2.7.0 version is over 5 years old.
Shapeoko 3 #677, Nyloc nuts, ¾" HDPE base with t-nuts, Dewalt 611 w/Super PIDv2

WillAdams
Posts: 8618
Joined: Mon Apr 09, 2012 6:11 pm
Location: Pennsylvania --- south of the Turnpike, East of US-15
Contact:

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by WillAdams » Sat Oct 17, 2015 2:22 am

I installed 2.7.9 on Vista, and in Windows 8.1' so it should work in 7.

Probably 2.7.10 would work as well — I can’t see why it would work w/ this app w/ one version of Windows but not another.
Shapeoko 3XL #0006 w/ Carbide Compact Router w/0.125″ and ¼″ Carbide 3D precision collets

cvoinescu
Posts: 4442
Joined: Thu Jul 19, 2012 6:50 pm
Location: Camberley, UK
Contact:

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by cvoinescu » Sat Oct 17, 2015 2:27 am

RoguePirin wrote:I have Windows 7, and I am wondering if should install Python 2.7.0? When I go to download 2.7.0, the Python website suggests that I really install 2.7.10, since the 2.7.0 version is over 5 years old.
Just install the latest available Python 2.7.x for your platform. The versions given are what bCNC has been tested with, but I'm pretty sure it'll work with the most recent version from the 2.7 series.
ALuomala wrote:The only really difficult part, IMO, was making sure that the bCNC files were extracted into the correct location (i.e the root folder for Python). I had them in their own folder, and after many frustrating attempts at figuring out how to execute a Python program, I finally looked at the bCNC.bat file, and realized I had the files in the wrong location. Anyway, once they were in the right location, double-click on the bCNC.bat, and away we go!!! [emphasis mine]
I find this assertion baffling. I'm looking at bCNC.bat, and I see nothing that indicates it needs to run from the Python directory. In fact, it's bad practice to install stuff there. As long as you have Python in your path (the Python installer does that for you), bCNC.bat should just work. I used bCNC from its own folder in Windows XP, 7 and 10, with no problems.
Proud owner of ShapeOko #709, eShapeOko #0, and of store.amberspyglass.co.uk

ALuomala
Posts: 136
Joined: Mon Feb 17, 2014 7:30 pm
Location: Alberta, Canada

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by ALuomala » Sat Oct 17, 2015 3:44 am

cvoinescu wrote:
RoguePirin wrote:I have Windows 7, and I am wondering if should install Python 2.7.0? When I go to download 2.7.0, the Python website suggests that I really install 2.7.10, since the 2.7.0 version is over 5 years old.
Just install the latest available Python 2.7.x for your platform. The versions given are what bCNC has been tested with, but I'm pretty sure it'll work with the most recent version from the 2.7 series.
ALuomala wrote:The only really difficult part, IMO, was making sure that the bCNC files were extracted into the correct location (i.e the root folder for Python). I had them in their own folder, and after many frustrating attempts at figuring out how to execute a Python program, I finally looked at the bCNC.bat file, and realized I had the files in the wrong location. Anyway, once they were in the right location, double-click on the bCNC.bat, and away we go!!! [emphasis mine]
I find this assertion baffling. I'm looking at bCNC.bat, and I see nothing that indicates it needs to run from the Python directory. In fact, it's bad practice to install stuff there. As long as you have Python in your path (the Python installer does that for you), bCNC.bat should just work. I used bCNC from its own folder in Windows XP, 7 and 10, with no problems.
That method was the only way I could get it to work. I looked at the .bat file and guessed that I had the folder in the wrong place. I did mention that I was flummoxed by Python in the past, so I consider it a minor victory to get a program to run, even if it is bad practice.

I would like to see an installer made for this piece of software, because I doubt I am the only person who has been turned off of using it (by not understanding the in's/out's of how to install something). As well, when I looked for instructions on how to install anything to do with Python, the instructions were well over my head, so this is why I decided to dumb down the process.
ShapeOko2, serial ??
DW660 spindle;
Upgrades: 900mm X axis and 1000mm Y axis; ACME Z Axis; modified MDF wasteboard with t-slot
Primary usage: wood crafting (signs, plaques, and ultimately a CNC-made electric guitar)

ALuomala
Posts: 136
Joined: Mon Feb 17, 2014 7:30 pm
Location: Alberta, Canada

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by ALuomala » Sat Oct 17, 2015 4:14 am

In the interest of showing the best practice for the use of Python, would someone be kind enough to do a mini-tutorial (i.e handholding exercise) on how to best install Python and how to place bCNC in the best location. I'm not sure if that involves editing the .bat file, but if so, that would be great. Again, I am focusing this on how to get bCNC set-up (for the average (below average?!?) computer user), not learn Python or any other coding, for that matter: I made my SO2 to make chips and sawdust, not wrestle with 0's and 1's!!!
ShapeOko2, serial ??
DW660 spindle;
Upgrades: 900mm X axis and 1000mm Y axis; ACME Z Axis; modified MDF wasteboard with t-slot
Primary usage: wood crafting (signs, plaques, and ultimately a CNC-made electric guitar)

vasilis
Posts: 22
Joined: Tue May 26, 2015 7:45 am

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by vasilis » Sat Oct 17, 2015 8:02 am

It is true the bCNC documentation is lacking. However everybody is welcome to improve the wiki https://github.com/vlachoudis/bCNC/wiki

The python version explanations in the wiki are a bit misleading. It is only, what the users reported as working.
Normally bCNC should work fine with the latest python release from version 2 only. Python version 3 needs extra work.

Concerning one question related to have the jogging buttons in all pages it is certainly possible by modifying the
user ini file ${HOME}/.bCNC and adding the "Control" frame in all pages. Unfortunately there it has to be done with a text editor.
You can copy the entries from bCNC.ini [bCNC] section in your private .bCNC ini file.

The com port should be listed when you click the drop-down arrow. If not, please report it as issue to add it in the program.

WillAdams
Posts: 8618
Joined: Mon Apr 09, 2012 6:11 pm
Location: Pennsylvania --- south of the Turnpike, East of US-15
Contact:

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by WillAdams » Sat Oct 17, 2015 9:11 am

It should work w/ the directory anywhere. I used C:\bCNC.
Shapeoko 3XL #0006 w/ Carbide Compact Router w/0.125″ and ¼″ Carbide 3D precision collets

cvoinescu
Posts: 4442
Joined: Thu Jul 19, 2012 6:50 pm
Location: Camberley, UK
Contact:

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by cvoinescu » Sat Oct 17, 2015 9:46 am

It does not work if you just open the zip file as a folder and start bCNC.bat from there. But if you unzip it anywhere, it should work. For me, it was as simple as:
  1. Install Python (latest 2.7.x from Python.org);
  2. Unzip bCNC somewhere convenient;
  3. Run bCNC.bat.
Proud owner of ShapeOko #709, eShapeOko #0, and of store.amberspyglass.co.uk

WillAdams
Posts: 8618
Joined: Mon Apr 09, 2012 6:11 pm
Location: Pennsylvania --- south of the Turnpike, East of US-15
Contact:

Re: Beginners guide to setting up bCNC (+ autoleveling)

Post by WillAdams » Sat Oct 17, 2015 10:29 am

Most people will also have to install pay serial.

I also stumbled on port assignment, but chamnit patiently clued me in.
Shapeoko 3XL #0006 w/ Carbide Compact Router w/0.125″ and ¼″ Carbide 3D precision collets

Post Reply