BCNC

Supporting documentation page for bCNC Project documentation

Python GRBL CNC command sender, autoleveler and g-code editor. Requires Tkinter and PySerial.

Features
From: https://github.com/grbl/grbl/issues/523


 * Features:
 * g-code sender
 * workspace configuration (dialog for G54..G59 commands)
 * auto leveling, Z-probing and auto leveling by altering the g-code during sending
 * g-code editor
 * web pendant to be used via smart phones
 * graphics display of the g-code, and workspace
 * Python-based macro programming language
 * CAM functionality when importing a .dxf


 * Editor functions:
 * syntax highlighting
 * move/translate of g-code
 * rounding digits
 * inkscape gcodetools correction of annoying Z-lifting and lowering on every passage
 * Graphical block selection for reordering the cut process.

By default, bCNC will send all commands to the machine, including tool change commands which are not supported by Grbl. There are some configuration options for changing this behavior, e.g., the tool change policy in "Probe -> Tool -> Policy".

Usage
Limit switches and work coordinate systems: http://www.shapeoko.com/forum/viewtopic.php?f=37&t=7386&p=58100

Keyboard options: http://community.carbide3d.com/t/wireless-remote-jog-control-for-18-1-minute-install/2197/2

Forum Discussion

 * http://www.shapeoko.com/forum/viewtopic.php?f=7&t=4300&start=10#p34840
 * http://www.shapeoko.com/forum/viewtopic.php?f=7&t=4788&p=45842#p45842
 * http://www.shapeoko.com/forum/viewtopic.php?f=3&t=5986&p=46654#p46652
 * Beginners guide to setting up bCNC (+ autoleveling)

Description of a specific technique for homing / using Work Coordinate Systems so as to avoid a bug / interface issue: http://www.shapeoko.com/forum/viewtopic.php?f=7&t=7658&p=60760

Requirements

 * Python --- latest v2 (2.7.10 has been tested on some Windows versions and should work): https://www.python.org/downloads/release/python-2710/ Check the option to add it to the path variable.
 * pySerial --- installer links Use the easy_installer if difficulties are encountered.
 * Windows
 * c:
 * cd C:\Python27\Scripts
 * easy_install pyserial
 * Mac OS X
 * pip install pyserial
 * tkinter --- This is a standard Python library and should be included with all installations.

Runs on a Raspberry Pi (but may get bogged down) a Pi 2 handles the program w/ aplomb.

Installation
https://github.com/vlachoudis/bCNC/wiki/OS

Windows
To use bCNC (be certain to get the correct software (32 vice 64-bit) for your architecture):


 * download and install Python: https://www.python.org/downloads/release/python-2710/
 * download and install pySerial: https://pypi.python.org/pypi/pyserial
 * download and unzip bCNC https://github.com/vlachoudis/bCNC/archive/master.zip (I would suggest C:\bCNC)
 * run the .bat file: "C:\bCNC\bCNC.bat"
 * select the correct COM port and connect

Linux
http://www.shapeoko.com/forum/viewtopic.php?f=6&t=7303&p=57519#p57519

Raspberry Pi
http://wiki.protoneer.co.nz/Raspberry_Pi_CNC#bCNC_.5BPython.5D.5BRecommended.5D (add pi user to the dialout group for access to the serial port)

Documentation
The COM port will need to be updated. For Windows, just use "COM#" where # matches that of the COM port for the micro-controller. --- there should be a drop down menu https://github.com/vlachoudis/bCNC/issues/31