Author Topic: GRBL v1.1 Machine Control and GCODE sender Plugin  (Read 91212 times)

Offline karst.drenth

  • Droid
  • **
  • Posts: 59
    • View Profile
[UPDATE] GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #15 on: March 15, 2017, 21:47:41 pm »
Hi All,

I posted a new version at the bottom of this post: GRBL v1.1 Machine Control and GCODE sender Plugin

-- The VisualStyles option is now configurable by an advanced property in (General) and is by default turned off on Linux and XP.

-- The complete UI is ( should be :P ) fully functional now
-- Most work was done on the Display Expander. There are a lot of tooltips and context menu's now

Next job is to make the GCODE-streamer, so that we can also really machine some stuff ;)

@Armando

Thnx :) Yes, I've seen that one. Not bad at all on first sight. Although I would never program in VB ;) But it still is an external program... and as quoted here: "...We've got a lot of real programming 'gurus' here, but not everyone is even comfortable with downloading software, much less copying and renaming files by hand..."

@David

To start from 'clean' on your XP box, please remove GRBLMachine.config from the %ProgData% directory ;)


@All

Happy trying out to you all  ;D


Grtzz,

Karst
« Last Edit: March 15, 2017, 22:32:39 pm by karst.drenth »

Offline karst.drenth

  • Droid
  • **
  • Posts: 59
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #16 on: March 16, 2017, 21:24:09 pm »
Hi All,

I've seen 15 downloads so far :)  8) 8) great !

So then for all of you downloaders ( and of course others ;) ) .....

Version 0.9.2 is there !

I posted this new version at the bottom of this post: GRBL v1.1 Machine Control and GCODE sender Plugin

The GCODE streamer is in ! ( and working ) As far as I could test it with my little EleksMill, it seems to run quite nicely  8)

So if anyone has a machine with GRBL v1.1 sitting around and could do some tests on it... I would be really gratefull.
Using the 'default' postprocessor, I needed to filter out all officially documented unsupported GCODEs from the stream.
Further more, comments are also filtered out. This feature although is not yet 100% bulletproof --> ( comment ) comments are taken away, but also any following valid GCODE :(
Finally all white-space is removed from a code line, to maximize throughput and keep GRBL's path-planner busy.

Toolchange M6 is intercepted and skipped. Toolchange will be something I will very probably implement in GRBLMachine, since I gonna need it for PCB drilling... ;) ( any suggestions how to do it are welcome )

The GCODE sender is fully multi-threaded and runs completely in the background. While machining, CamBam can be fully used ! You might even open other files/projects. Until the job is finished, GRBLMachine latches the original file in memory.
Note that while the machine is NOT IDLE, some of the UI options are disabled ( since e.g. $ codes are not permitted on a rinnung machine ).
The Commandline however stays open... commands entered and sent from there will be inserted in the currently executing job !!!


Well, that's it for now, here is a little movie:
<a href="https://www.youtube.com/v/AlxNpKsV2qI" target="_blank" rel="noopener noreferrer" class="bbc_link bbc_flash_disabled new_win">https://www.youtube.com/v/AlxNpKsV2qI</a>
https://youtu.be/AlxNpKsV2qI

Grtzz and please keep me informed about what you think of GRBLMachine,

Karst
« Last Edit: March 16, 2017, 21:49:01 pm by karst.drenth »

Offline lloydsp

  • CNC Jedi
  • *****
  • Posts: 8649
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #17 on: March 16, 2017, 22:12:32 pm »
Karst,
We VERY much appreciate your contributions.  It is amazing that you've delved so-deeply into the inner-workings of CB.

IF it does not conflict with your professional relationships, it is usual (but not demanded) that you eventually also publish your source-code.  That, because so many folks can learn from it.

We're a 'close' community here, and anything anyone ever has written has become the basis for other, more imaginative creations.  Heck!  I'm an electronics tech, not a 'programmer', per se (although I must do it to make my projects work)... and even I have written a handful of useful - if primitive - additions to CB.

We are both amazed by your first contribution here, and (for me) humbled.  PLEASE consider what I've said as only constructive, and not any sort of demand.

Lloyd
"Pyro for Fun and Profit for More Than Fifty Years"

Offline karst.drenth

  • Droid
  • **
  • Posts: 59
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #18 on: March 16, 2017, 22:20:44 pm »
Hi LLoyd,

Will do :) No problem nor offence at all ;) But first need some feedback from here... with 'buggy' source-code nobody is helped ;)

Question: Would it be appreciated if I would put a 'Donate' button on my 'About-Expander' ? :P

And yeah... delving into 'foreign' software is kinda my job  ::) But I really have to make compliments to the creators of CamBam. Although scarcely documented (API), all the names and classes speak for them selves ;) It was not hard to find out where and how to intercept and install stuff ;) Very cool indeed !!

Grtzz,

Karst

Offline lloydsp

  • CNC Jedi
  • *****
  • Posts: 8649
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #19 on: March 16, 2017, 22:35:40 pm »
<Big Smile>!

I agree, buggy software will only serve to confuse future perusers of the code!

Give kudos to Andy for his marvelous work on this project.

Lloyd
"Pyro for Fun and Profit for More Than Fifty Years"

Offline gerritv

  • Ewok
  • *
  • Posts: 20
    • View Profile
    • Gerrit's Hobbies
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #20 on: March 16, 2017, 23:31:05 pm »
Very slick integration into CamBam.

To save you some effort, there is not supposed to be any gcode after a comment. Grbl happily discards it anyway but removing them in the GUI will of course save transmission time.

Also I would think it best to not allow MDI/gcode entry while the job is running. I can't imagine how that would be predictable as to where the line comes into the stream. Most or all of the GUI's block direct input when running a file.

Gerrit


Offline dh42

  • Administrator
  • CNC Jedi
  • *****
  • Posts: 6892
    • View Profile
    • Cambam V1.0 French Doc
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #21 on: March 17, 2017, 11:27:33 am »
Hello

Yes, as say Lloyd, very amazing job  :o

Quote
So if anyone has a machine with GRBL v1.1 sitting around and could do some tests on it... I would be really gratefull.

My CNc don't work with GRBL, but I wonder if, maybe, my 3D printer can be used to test ? (Melzi Ardentissimo motherboard)

I'm not sure to understand the workflow  :-[ ; It's the plugin that do the Gcode ? or the workflow is the same than with other machine, so we must do the Gcode as usual with a GRBL post pro then run it with your plugin ?

++
David

Offline Dragonfly

  • CNC Jedi
  • *****
  • Posts: 2540
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #22 on: March 17, 2017, 11:54:12 am »
At least one person here uses GRBL. I remember someone asked about a GRLB post in the PP section.

Offline dh42

  • Administrator
  • CNC Jedi
  • *****
  • Posts: 6892
    • View Profile
    • Cambam V1.0 French Doc
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #23 on: March 17, 2017, 12:09:19 pm »
onekk (carlo) have a GRBL machine

++
David

Offline karst.drenth

  • Droid
  • **
  • Posts: 59
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #24 on: March 17, 2017, 12:09:51 pm »
Hi,

Thnx for the credits ;)

You can try to connect to any device. Before connecting, open the console. If the device is GRBL driven, it will display a welcome message in the Console Window. GRBLMachine scans for that and will recognize that message and then start operating.

Workflow:

-Create/import a drawing,
-Add MOPs
-Generate Toolpath
-Generate GCODE

uptil here, just normal CamBam workflow. ;)

The last item (Generate GCODE) is monitored by GRBLMachine and will show the just generated file in it's Production-Expander.

then cont'd worflow:

- Select Machine Tab,
(optional)
- Open Jogging-Expander
- Setup Machine origin
(/optional)
- Open Production-Expander
- Press the Play button
- Wait until ready / Do something else with CamBam  8) ( exept closing it ;) )

... that's all ;)

In the meanwhile you can enjoy looking at the Display-Expander and/or the Console-Expander where all kind of info is displayed.

Grtzz,

Karst

Offline karst.drenth

  • Droid
  • **
  • Posts: 59
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #25 on: March 17, 2017, 12:15:22 pm »
Quote from: dh42
... my 3D printer can be used to test ? (Melzi Ardentissimo motherboard)

AFAICS that board runs Marlin, not GRBL.

Grtzz,

Karst

Offline dh42

  • Administrator
  • CNC Jedi
  • *****
  • Posts: 6892
    • View Profile
    • Cambam V1.0 French Doc
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #26 on: March 17, 2017, 12:29:51 pm »
Quote from: dh42
... my 3D printer can be used to test ? (Melzi Ardentissimo motherboard)

AFAICS that board runs Marlin, not GRBL.

Grtzz,

Karst

Ah OK, so I can't test ..

++
David

Offline lloydsp

  • CNC Jedi
  • *****
  • Posts: 8649
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #27 on: March 17, 2017, 12:50:27 pm »
I'm tempted to buy something GRBL-driven, just to test this module.  IIRC, I think SparkFun has some little GRBL robotics devices.

Lloyd
"Pyro for Fun and Profit for More Than Fifty Years"

Offline karst.drenth

  • Droid
  • **
  • Posts: 59
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #28 on: March 17, 2017, 13:13:50 pm »
Quote from: dh42
Ah OK, so I can't test ..

Quote from: lloydsp
I'm tempted to buy something GRBL-driven, just to test this module.  IIRC, I think SparkFun has some little GRBL robotics devices.

@both

Simplest thing is to hook-up an Arduino-Nano ( clones are available for a couple of bucks from Banggood ) and load it with GRBL v1.1

That will let you test the majority of the functionality. All normal stuff works, except Hard- and Soft Limits wich depend on Limit Switches as does the Homing-cycle. Of course you won't see anything moving ;)


Grtzz,

Karst

P.S. for a bit more, you can have a complete CNC board with Stepper drivers etc.
« Last Edit: March 17, 2017, 13:18:02 pm by karst.drenth »

Offline lloydsp

  • CNC Jedi
  • *****
  • Posts: 8649
    • View Profile
Re: GRBL v1.1 Machine Control and GCODE sender Plugin
« Reply #29 on: March 17, 2017, 14:47:19 pm »
Bingo, Karst.  If I purchase the steppers, too, I'll have the beginnings of a small desktop multi-axis machine of my choice!

Thanks again.

Lloyd
"Pyro for Fun and Profit for More Than Fifty Years"