So  my K40 has a 6c6879 controller board.

So my K40 has a 6c6879 controller board. And I want to operate my laser cutter with Linux.

Since I don’t have Windows I can’t run whatever software they deliver with it (Also, I don’t have Corel Draw what they require). Does anybody know what protocol this device expects on the USB input ? Is it simply GCode or HP-GL ? If so, then it would be simple to use on Linux.

Looks like there is some USB to serial chip on that board, so if someone has a Windows machine to send stuff to the printer, it should be possible to hook up a passive protocol sniffing just with a serial input, Bus Pirate or similar to watch the protocol. I haven’t found yet any reverse-engineering ‘on the internet’, but maybe someone already did ? (In the image, I marked the Rx/Tx lines to sniff on).

If it is some proprietary protocol, then it should be easy to reverse-engineer and possible to convert whatever polygon/SVG/… input to that; maybe I’ll replace it with BeagleG/Bumps long term anyway, but would be good to get these machines running out of the box on Linux.

I have the same problem. I think the communication is encrypted. I have been thinking of sniffing the raw data sent when manually moving the laser from the software and then write a linux wrapper to operate it

The nice thing is, that it is just a simple serial communication, so it should be easy to sniff just with a simple serial interface line (as opposed to needing a full USB protocol sniffer).

I don’t think they do encryption or something strange - this is just a simple microcontroller (I didn’t find any information on that, seems to be some Chinese brand). I suspect they just have a simple ASCII protocol (such as GCode or HP-GL or similar), or a very simple binary representation of the commands - should not be a big deal to figure out.

I don’t have Windows or Corel Draw so for me it would be a huge hassle to install the host-software just to do the reverse-engineering. If someone could do that and post what they find ‘on the wire’ when moving the head around, doing homing, switching on laser and so on, we could figure it out.

I have windows on an old laptop. Have been thinking about sniffing on the comunication for about a year, but have not come around to do it.

@Henner_Zeller Maybe our @Mr_Beam Shield is an option ?
@StephaneBUISSON has asked me about this, but I do not have a K40 to try that out.
The shield basically combines 3 stepper axes (pololu drivers) with a laser diode driver. If you don’t need the laser diode driver, there is a pwm output for the laser intensity as well. There you probably could attach your co2 tube. The Arduino under the shield runs our customized fork of grbl which can be feeded with gcode via Universal GCode Sender. So far everything is platform independent. On our machines we serve a web-interface with a raspberry pi in addition to make them accessible via tablet as well.
Checkout for more details.

@Muccaneer_von_Munche looks nice :smiley: does it support engraving?

@Anton_Fosselius With laser diodes: yes. See
That was done with a common “M140” laser diode

reverse-engineering could be fastidious, for limited results (hardware specs), is it worth it ?

Would be fun to get it to run out of the box, but yeah, it is simpler to use BeagleG/Bumps or other stepper controller boards.

@StephaneBUISSON I will do it some time just for the lolz and because i can. But the limiting factor right now is time, got two small ones to take care of.