K40 Whisperer

K40 Whisperer

K40 Whisperer:
Control software for the stock K40 Laser controller


Supported Controller Boards
Related Links


K40 Whisperer is an alternative to the the Laser Draw (LaserDRW) program that comes with the cheap Chinese laser cutters available on E-Bay and Amazon. K40 Whisperer reads SVG and DXF files, interprets the data and sends commands to the K40 controller to move the laser head and control the laser accordingly. K40 Whisperer does not require a USB key (dongle) to function.

K40 Whisperer is a free open source program released under the GNU General Public License (GPL).

K40 Whisperer Features:

- Reads SVG files and DXF files
- Splits input design based on color formating (red,blue)
- In SVG files blue and red paths are interpreted as vectors for vector engraving and cutting. Everything else is transfered as a raster image.
- In DXF files blue paths are interpreted as vector engrave(blue). Everything else is interpreted as vector cut(red). (Everything on layers that have the text "engrave" in the layer name are interpreted as vector engrave.)
- Performs cuts on features inside of other features before cutting the outside features. (If you cut the outside first the part might drop out of the stock material)
- Converts gray scale images to halftone images to simulate varying levels of gray (i.e. engraving pictures). The Halftone option needs to be selected under "Raster"-"Settings" to enable halftoning.

K40 Whisperer Main Window


Supported Controller Boards:

Only boards that work with LaserDRW will work with K40 Whisperer. (Moshi boards will not work)
To see which board you have you can go to "Properties" from the LaserDRW (or CorelDraw) Engraving Manager window and look at which board is selected for the "Mainboard" option. You can also look at the markings on the controller board. (The controller board is the circuit board the USB cable plugs into)

Controller Boards Known to Work with K40 Whisperer:
- 6C6879-LASER-M2 (M2 Nano)
- 6C6879-LASER-B1
- 6C6879-LASER-M1
- 6C6879-LASER-M
- 6C6879-LASER-B
- 6C6879-LASER-B2
- 6C6879-LASER-A
- HT Master5 (use LASER-M2 setting)
- HT Master6 (use LASER-M2 setting)
- HT-XEON5 (use LASER-M2 setting)
- HT-XEON-DRV (use LASER-M2 setting)

K40 Whisperer Changes:

Changes in Version 0.19

- Fixed SVG import error for SVG files with extra spaces in point definitions

Changes in Version 0.20

- Fixed bug that resulted in 45 degree angles (and other shapes not straight lines) being cut faster than horizontal and vertical lines.
- Added keyboard shortcuts for some main window functions
- Fixed divide by zero error when running g-code with very slow feed rates
- Added support for hidden layers in DXF files
- Improved interpretation of some DXF files
- Added ability to save and run EGV files. Can run EGV files made by LaserDRW and generate files that can be run from LaserDRW.
- Changed behavior after number of timeouts is exceeded during a design run. K40 Whisperer will continue to try running the job until the user stops it. Previously and error window would pop up and the job would be terminated without user intervention. During pre-run moves the error window will still pop up.
- Added logic to wait for the laser to finish running a job before the interface becomes active again.

Changes in Version 0.21

- Updated build scripts to eliminate errors on some Windows computers.
- Changed default setting so that dithering is turned on.
- Fixed bug that generated error sometimes when opening a design is canceled from the file select dialog.

Changes in Version 0.22

- Fixed DXF import so that working with DXF files will be faster.
- Added link to the new manual web page in the Help menu
- Updated code to work with Python 3 (Still works with Python 2.7)
- Number of timeouts setting now controls how many timeouts trigger a laser disconnected message at the end of engraving.
- Added Python version information to the Help info window

Changes in Version 0.23

- Fixed DXF import for a specific subset of DXF files that use multiple layers designations for a single feature (array commands?).

Changes in Version 0.24

- Fixed handling of large laser area files. Previous version would fail to generate raster data for large areas.
- Fixed compatibility with Python 3.7
- Added better error reporting when raster data fails to be produced by Inkscape

For the full history look at the
K40 Whisperer Change Log


This should be considered experimental software. I have tested it but there may still be some unknown issues.

(Right click on the link and select "Save target as" or "Save link as")
K40 Whisperer for Windows (32 bit) K40 Whisperer for Windows (64 bit) K40 Whisperer Source

Installation Instructions:

Setting up K40 Whisperer on Windows

Linux: Setup instructions for Linux are included via the README_Linux.txt file in the "K40_Whisperer-x.xx_src.zip" file.

Mac: Setup instructions for Mac are included via the README_MacOS.md file in the "K40_Whisperer-x.xx_src.zip" file.
(I can't help with Mac specific questions. I have no experience installing software on a Mac.)

K40 Whisperer Manual:

K40_Whisperer Reference Manual
 K40 Whisperer Manual

Creating Input for K40 Whisperer

1. Create your design in Inkscape.
- Use RED lines to indicate cutting.
- Use BLUE lines to indicate vector engraving.
- Use BLACK to indicate raster engraving (this can be shapes, paths or images)
2. Adjust the size of the document to match the area you want to export (You can use "File" - "Document Properties" - "Resize Page to Content" to make the page the same size as your design)
3. Within Inkscape select "Save" to save the design as an SVG file.
4. Open the SVG file you just saved in K40 Whisperer.

Halftone (grayscale) Images with K40 Whisperer

In addition to red, blue and black, you can also do grayscale with K40 Whisperer. The stock boards that work with K40 Whisperer are not able to control the power output by the laser. However, grayscale can be simulated by creating a halftone image (dithering) of the raster image. Below is an example of an image that was engraved with the Halftone (Dither) option turned on in K40 Whisperer.
The truck photo came from Wikimedia Commons: Madrid_-_Fargo_Power-Wagon

In order to generate the halftone image in K40 Whisperer the Halftone setting in the Raster settings needs to be selected. When the Halftone option is turned on the image displayed in K40 Whisperer will be shown in grayscale.

K40 Whisperer Videos


Making a Design in Inkscape

Engraving a Picture Using K40 Whisperer

Advanced Settings in K40 Whisperer

Using G-Code with K40 Whisperer

Related Links

Laser Draw Inkscape Extension: Save Laser Draw (LYZ) files from Inkscape.

Scorch's Home
Scorch Works Home
Scorch Works Blog
@scorchworks On Twitter