[Software] New software for Marlin

1,581 views
Skip to first unread message

Zhaf

unread,
Mar 20, 2014, 7:05:08 PM3/20/14
to cyclone-p...@googlegroups.com
Hi everyone.

In my spare time I've been working to improve the already very good GrblHoming software by Zapmaker.
What I've done for now is to add it support for the Marlin firmware, along with some modifications to the G-Code on the fly to make it more "Marlin friendly"

For now it supports:
 - F commands. (It just prepends a G1 before the command)
 - Modal commands. It prepends the last G command seen before every line of the modal command.
 - G0 and G1. In Marlin, G0 moves are done at the same speed at the last speed setted by a F parameter. What this does is to always put an F parameter (fixed to 300, soon to be configurable) in every G0 command to allow G0 commands move faster.Then, on the next non G0 command, it restores the last correct speed seen in the code.

Now I'm working to add it support for Z leveling. I've the interpolation code done and working using Catmull-Rom spilines. What I have left is to integrate everything nicely. I hope to have it ready in a few days.

If you don't know GrblHoming, this is it:


And this is the interpolation code under test. For the tests I'm using random sampling values and a grid of 10x10 points:



You can test the Marlin support right now, as it is already in my github repository. I hope to have the z-leveling code there also in a few days.

https://github.com/zalohasa/GrblHoming

I hope you find this useful.

Bests Regards!



Iceflow

unread,
Mar 20, 2014, 7:33:01 PM3/20/14
to cyclone-p...@googlegroups.com
Looks interesting :D this is only a gcode sender for what i understand, inst it? hope to see more work in this!! ;)


--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje de correo a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un mensaje de correo a cyclone-p...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cyclone-pcb-factory/789fbce0-469e-4517-aafc-08e0df42a5ca%40googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Zhaf

unread,
Mar 20, 2014, 8:05:52 PM3/20/14
to cyclone-p...@googlegroups.com
Yes, It is a Gcode sender only. It's written in c++ using Qt, so it's blazing fast!

If anyone wants to test it, please remember that the code is still in a very early stage, so if you are going to test it by doing some real world work, please notice that something can go wrong, so be ready to power off the Cyclone before the universe collapses :)

Regards!

Martin Zabojnik

unread,
Mar 21, 2014, 2:43:26 AM3/21/14
to cyclone-p...@googlegroups.com
Well done !
exactly what I was missing :-)
thanks for the work !

Martin Zabojnik

unread,
Mar 21, 2014, 3:31:24 AM3/21/14
to cyclone-p...@googlegroups.com
can you please make release for windows ?

Zhaf

unread,
Mar 21, 2014, 4:03:57 AM3/21/14
to cyclone-p...@googlegroups.com
Ok, this weekend I'll try to generate a release for Windows.

Thanks! 

Iceflow

unread,
Mar 21, 2014, 4:30:31 AM3/21/14
to cyclone-p...@googlegroups.com
It would be amazing, im only using windows at the moment :S


El 21 de marzo de 2014, 9:03, Zhaf <zalo...@gmail.com> escribió:
Ok, this weekend I'll try to generate a release for Windows.

Thanks! 

--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje de correo a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un mensaje de correo a cyclone-p...@googlegroups.com.

Samuel Kranz

unread,
Mar 21, 2014, 3:00:01 PM3/21/14
to cyclone-p...@googlegroups.com
Wow, nice.. exactly what I was waiting for ;)

btw. I would also appreciate a windows build :D

Zhaf

unread,
Mar 22, 2014, 1:51:56 PM3/22/14
to cyclone-p...@googlegroups.com

Hi!  There you can find my first attempt to make a Windows Build of the software. I couldn't test the serial connection yet because I have no cyclone where I'm now, so if anyone test it, please let me know if it works. Next week I'll be able to test it by myself.

Regards! 

Martin Zabojnik

unread,
Mar 22, 2014, 2:22:22 PM3/22/14
to cyclone-p...@googlegroups.com
Hi 
I have problem :-)


Zhaf

unread,
Mar 22, 2014, 2:48:59 PM3/22/14
to cyclone-p...@googlegroups.com

Thanks Martin, you're right. I've missed to pack some QT dependencies. I hope this time it works. 

Also, if you are going to test is with marlin, please select the Marlin controller inside Tools->Options->Controller

Regards! 

Martin Zabojnik

unread,
Mar 22, 2014, 3:11:36 PM3/22/14
to cyclone-p...@googlegroups.com
Ok thanks , now it works .
Tomorrow I make some tests .

Martin Zabojnik

unread,
Mar 22, 2014, 4:05:18 PM3/22/14
to cyclone-p...@googlegroups.com
I have any other problem .

if I send M115 my firmware answer 

--> FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:cyclone pcb EXTRUDER_COUNT:1 UUID:00000000-0000-0000-0000-000000000000



Samuel Kranz

unread,
Mar 23, 2014, 7:38:41 AM3/23/14
to cyclone-p...@googlegroups.com
Martin have you changed the firmware in the settings??

You can change it to marlin.

But if i connect my sanguinololu, the frist command works but afterwards there are only Unknown Commans :(



Martin Zabojnik

unread,
Mar 23, 2014, 7:41:00 AM3/23/14
to cyclone-p...@googlegroups.com

Yes I have changed the settings .

Dne 23.3.2014 12:38 "Samuel Kranz" <secu...@gmail.com> napsal(a):
--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje de correo a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un mensaje de correo a cyclone-p...@googlegroups.com.

Martin Zabojnik

unread,
Mar 23, 2014, 7:45:20 AM3/23/14
to cyclone-p...@googlegroups.com

Send the M115 no m115 .

Dne 23.3.2014 12:41 "Martin Zabojnik" <zabo...@gmail.com> napsal(a):

Samuel Kranz

unread,
Mar 23, 2014, 7:49:15 AM3/23/14
to cyclone-p...@googlegroups.com
oh fu*k.. didnt know that marlin is casesensitive.. works now.. thanks


Samuel Kranz

unread,
May 22, 2014, 12:40:52 PM5/22/14
to cyclone-p...@googlegroups.com
hi,
how do you do? any changes yet?

Gonzalo López

unread,
May 22, 2014, 4:23:03 PM5/22/14
to cyclone-p...@googlegroups.com
Hi Samuel, I've been doing very little advances, as lately I'm having no free time :(. But I plan to have something to show soon. If everything goes as expected, I think I will have some free time in about two weeks to spend on this.

Thanks for asking!



El 22 de mayo de 2014, 18:40, Samuel Kranz <secu...@gmail.com> escribió:
hi,
how do you do? any changes yet?

--
Has recibido este mensaje porque estás suscrito a un tema del grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este tema, visita https://groups.google.com/d/topic/cyclone-pcb-factory/_BooHu3Q_aQ/unsubscribe.
Para anular la suscripción a este grupo y a todos sus temas, envía un correo electrónico a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a cyclone-p...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cyclone-pcb-factory/5411e0fd-5601-42ee-980a-bbcbabe08cd1%40googlegroups.com.

Zhaf

unread,
Oct 7, 2014, 1:06:18 PM10/7/14
to cyclone-p...@googlegroups.com
I'ts been a long time, but finally I had some time and the autoleveling code is working!

This is my first milled PCB using the code:

Also, I have tested the "Code marlinicer" that performs GCode changes on the fly trying to make the GCode more marlin friendly. 

I've done a very simple model using Blender, and generated the GCode using PyCam. This is the result loading the GCode as-is, without manual changes:

Taking into account that the hearth is 3.5x3.5cm, and that it was done using a 6.5mm straight end mill, I'm pretty happy with the results!

What I have to do next is to create the autoleveling UI to make the program more user friendly. I also want to split long segments into shorter ones so the leveling can be more precise.

I also want to add a "tool leveler" option for wood and similar works, when there is a need to change the tool, to avoid Z drifts.

Please feel free to test the code, and comments are welcome!

Best Regards!




Iceflow

unread,
Oct 7, 2014, 1:39:33 PM10/7/14
to cyclone-p...@googlegroups.com
And where is the code? hehehehe

Anyway, amazing work :D it would be so great to have a good working and easy autoleveling for the Cyclone!! :D

Great work man!! ;)

--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cyclone-pcb-fac...@googlegroups.com.

Para publicar en este grupo, envía un correo electrónico a cyclone-p...@googlegroups.com.

Zhaf

unread,
Oct 7, 2014, 1:42:47 PM10/7/14
to cyclone-p...@googlegroups.com
For now it's in my github repository https://github.com/zalohasa/GrblHoming
As soon as I have the autoleveling GUI, I will release a windows package. 
However, if you want to try it right now, just clone the repo and enjoy! 

Iceflow

unread,
Oct 7, 2014, 1:45:30 PM10/7/14
to cyclone-p...@googlegroups.com
Thanks dude!! :D

--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a cyclone-p...@googlegroups.com.

Zhaf

unread,
Oct 7, 2014, 6:12:19 PM10/7/14
to cyclone-p...@googlegroups.com
Hi again! I have the UI fully functional now. It needs more testing yet, but right now looks like this:

The parameters are as follow:

- X and Y extent: Upper right corner of the rectangle that will be probed. (The size of the rectangle, as the starting point is always 0,0)

- X and Y Steps: The number of probes that will be done in each direction.

- Z Starting: The Z starting coordinate. As probing is a slow movement, this can speed up the starting of the pprocess Imagine that your machine upper Z is 45, and the board to be probed is at 15. Then, the probe will move from 45 to 15 very slowly. Using the Z Starting, you can go from 45 to 25 in a fast movement, and then start the probing from there. This only applies for the very first probe, the next probings will use the Z Safe coordinate.

- Z Safe: After a probe, the amount that the Z axis will raise before moving to the next probing point. Be sure that this is high enough to avoid collision with the board. 

- Speed: The X-Y movements speed.

- Offset: This will be used to add/subtract an offset from the measured Z. (I'm thinking about probing platforms, or something like that for non-conductive materials).


Probing in process:


As always, comments are welcome!

Regards!



Iceflow

unread,
Oct 7, 2014, 6:44:19 PM10/7/14
to cyclone-p...@googlegroups.com
Amazing fast to have it "released" !! :D thanks dude!!

--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a cyclone-p...@googlegroups.com.

Samuel Kranz

unread,
Oct 8, 2014, 5:12:04 AM10/8/14
to cyclone-p...@googlegroups.com
looks good :D
 does the gcode adaption already work or "just" the probing?

Zhaf

unread,
Oct 8, 2014, 5:34:27 AM10/8/14
to cyclone-p...@googlegroups.com
Hi Samuel. The GCode adaption already works. The hearth that I posted above was done using a PyCAM generated GCode, that uses modal commands, that marling doesn't support.

It needs more testing though, but for PyCam GCode it seems to work.

Regards!

Zhaf

unread,
Oct 9, 2014, 5:38:54 PM10/9/14
to cyclone-p...@googlegroups.com
Hi!
A few advances with the UI. Also I've removed some bugs and did a little code cleanup.

Now I want to implement three different leveling algorithms. 
One bicubic (the one that's already implemented), for milling PCB's
One linear, for milling wood and other "flat" material, where only 4 probe points are needed. (but the code will support as many points as you want)
The last one, a "single point leveling". I'm planing to use this one as a tool probing, for wood works where you need to change the tool.


PD: The color scheme is not the best one, I know, but is the more visual to test the code. I hope to change it for next iterations.


Regards!


Iceflow

unread,
Oct 9, 2014, 6:57:25 PM10/9/14
to cyclone-p...@googlegroups.com
You are working so hard!! :D i love to see this developing for the Cyclone!! it deserves it!!

--
Has recibido este mensaje porque estás suscrito al grupo "Cyclone PCB Factory" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cyclone-pcb-fac...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a cyclone-p...@googlegroups.com.

Samuel Kranz

unread,
Oct 10, 2014, 9:29:10 AM10/10/14
to cyclone-p...@googlegroups.com
Very nice.. would you mind compiling a version for windows :D?

Zhaf

unread,
Oct 12, 2014, 4:35:45 PM10/12/14
to cyclone-p...@googlegroups.com

Hi! Here  you have a compiled version for Windows.

https://drive.google.com/file/d/0B9BbiWlE4cK1YzlsMlUteGF5UmM/view?usp=sharing

Please keep in mind that this is still in development, so anything can go wrong, so be ready to turn off your Cyclone. However, I'm using it with no problems.
Also, if you try the auto leveling feature, please select an autolevel size bigger than the size of the board you are planing to mill. There is a bug in the leveling code that when  the tool goes out of the leveled area, the data is wrong and the tool ends crashing into the board. As long as you select an autolevel area bigger than the work you are planing to mill, everything will work as expected.

Regards!

Samuel Kranz

unread,
Oct 13, 2014, 1:55:54 AM10/13/14
to cyclone-p...@googlegroups.com
Thanks :D i will try it the next days :)
Message has been deleted

Zhaf

unread,
Oct 15, 2014, 2:46:03 PM10/15/14
to cyclone-p...@googlegroups.com
Hi again!
More advances: 

Now there are three leveling algorithms:

- The Bicubic Spiline, ideal for milling PCB's

- Linear, can be used for milling PCB's as well, but its more suited to level flat surfaces using only 2 X steps and 2 Y steps (probe only the corners of the surface)

- Single touch. This is not exactly a leveling algorithm, but is a "tool height compensator", for milling already flat material. I plan to use this when I don't need to level the surface, but I'm going to change the tool during the milling process. I can start the milling process with a 6mm end mill, doing the Single touch at (0,0), and then, at some point, I can change the tool, do a new Single touch at (0,0), and I can send the next gcode file without worries about manual leveling the new tool.

For probing/leveling non-conductive material, I use a 2mm aluminium square as a leveling probe. The offset field is to compensate the thickness of the leveling probe, so if your "leveling probe" is 3mm thick, just write 3 in the offset field.

Also, the offset field can be used to simulate the work. For example, if you write -1 in the offset, the probe will fly 1mm above the surface, so you can check the correctness of the leveling.

Another new feature is the Recompute offset. When the bicubic spiline or the linear algorithm are selected, you can recompute the offset without the needing of redoing all the probing process. Imagine this, you do the probe to mill a PCB with a 1mm drill, and then you actually do the 1mm drills. After that, you want to do the 0.8mm drills, so you put the 0.8mm drill. By clicking the recompute offset, the machine will probe at (0,0) to recompute the tool height differences, and then you will able to use the old leveling data with the new tool.

Finally, I've changed the color scheme!

You can find the windows version here: https://drive.google.com/file/d/0B9BbiWlE4cK1Ry13WUVvTzYwUGs/view?usp=sharing

Do you think that these features are useful?

Regards!




Zhaf

unread,
Oct 19, 2014, 6:16:48 PM10/19/14
to cyclone-p...@googlegroups.com
Hi again, 


This version splits long work segments into more little ones to make the leveling more precise. The maximum segment size allowed is 1/3 of the minimum leveling grid.
Here is one test: 

Regards!


Samuel Kranz

unread,
Oct 20, 2014, 2:17:15 AM10/20/14
to cyclone-p...@googlegroups.com
Looks really good.. Unfortunately my cyclone 2 isnt ready so i couldnt test the program. Are you using grbl or marlin?

Zhaf

unread,
Oct 20, 2014, 2:30:10 AM10/20/14
to cyclone-p...@googlegroups.com
Hi Samuel, I'm using marlin. In fact, all the changes I've made only works with marlin for now. I'm planning to migrate them to grbl, but first I want to add all the features I have in mind.

Regards!

pierre marchal

unread,
Nov 1, 2014, 5:10:40 PM11/1/14
to cyclone-p...@googlegroups.com
Hi  Zhaf,

Thank you for this useful work.

I use the last Malin Firmware but I have an error while attempting to connect :
"Expecting Marlin version. Unable to parse response."

With Grbl selected as firmware, i can manually drive the cyclone.
My Cyclone works fine with CNCGcode-Controler.

Reading the log, i understand Marlin  automatically sends "start" precisely when GrblControler is waiting the answer of M115 :

2014-11-01 21:18:15.861 INFO (DIAG) - Grbl Controller 3.6.1 has started
2014-11-01 21:18:17.490 INFO (DIAG) - L'utilisateur a cliqu? Ouverture/Fermeture du port
2014-11-01 21:18:17.508 DEBUG (DIAG) - SENDING: M115) to check presence of Marlin
2014-11-01 21:18:17.509 INFO (STATUS) - > M115
2014-11-01 21:18:17.510 INFO (STATUS) - M115
2014-11-01 21:18:17.610 DEBUG (DIAG) - GOT:start
2014-11-01 21:18:17.610 INFO (STATUS) - Expecting Marlin version string. Unable to parse response.
2014-11-01 21:18:17.772 INFO (STATUS) - start

What would you advise me, if required I can easely change the startup of marlin  ?


Regards, 

Pierre

Zhaf

unread,
Nov 1, 2014, 7:26:49 PM11/1/14
to cyclone-p...@googlegroups.com
Hi Pierre
Thanks for trying the program.

Which version of Marlin do you have installed? I have download the last Marlin from https://github.com/ErikZalm/Marlin a few minutes ago to test what you have said.

In theory, Marlin should answer 
"FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" 
when the M115 command is sent, instead of just "start". 
This string is the one that the code is waiting for. 
I'm thinking about changing the code to wait for an answer, but not for a specyfic answer, just to protect the code for future versions of marling, but yours should work.
Please check in the language.h file of Marlin, the value of the MSG_M115_REPORT define. It should be the string I pasted avobe.

Please let me know if that works.
Thanks!
Message has been deleted

pierre marchal

unread,
Nov 2, 2014, 11:30:17 AM11/2/14
to cyclone-p...@googlegroups.com
Hi Zhaf,

I have installed the last and recent  "Cyclone Marlin Firmware" downloaded here :

I tried unsuccessfuly different M115 definitions.

1st, the original as you mentioned:
#define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
2nd, adapted like this
#define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1 Cyclone MOD \n FIRMWARE_URL:" FIRMWARE_URL "\n PROTOCOL_VERSION:" PROTOCOL_VERSION "\n MACHINE_TYPE:" MACHINE_NAME " PCB Factory\n"

But, i'm sure now there is a delay problem in grbl_controler, so i changed the setup in marlin_main, i send MSG_M115_REPORT before the "start" message :

void setup()
{
  setup_killpin();
  setup_powerhold();
  MYSERIAL.begin(BAUDRATE);
  #ifdef  MSG_M115_REPORT            // *** PGM for supporting GRBL_Controler ***
  SERIAL_ECHOPGM(MSG_M115_REPORT);  //PGM for supporting GRBL_Controler
  #endif                            //PGM for supporting GRBL_Controler
  
  SERIAL_PROTOCOLLNPGM("start");
  SERIAL_ECHO_START;
...

And now, that's ok with marlin on a sanguinolulu with a 1284P at 16 Mhz.

Now it's time to compare ZLeveling between CNC_GCode_Controler and the different methods of GRBL_Controler.
But, i got a result only with CNC_CCode_Controler:

With GBRL_Controler, whatever the algorithm is selectionned, it stops just after the endstop hit.
The "Cancel leveling" button is still active.

The GRBL_Controler log end:
2014-11-02 15:25:26.113 DEBUG (DIAG) - SENDING[0]: M114
2014-11-02 15:25:26.160 DEBUG (DIAG) - GOT:X:0.0000 Y:0.0000 Z:15.0000 E:0.0000 Count X: 0.0000 Y:0.0000 Z:29.9320
2014-11-02 15:25:26.176 DEBUG (DIAG) - GOT:ok
2014-11-02 15:25:26.176 DEBUG (DIAG) - SENDING[0]: G1 X0 Y0 F300
2014-11-02 15:25:26.176 INFO (STATUS) - > G1 X0 Y0 F300
2014-11-02 15:25:26.223 DEBUG (DIAG) - GOT:ok
2014-11-02 15:25:26.223 DEBUG (DIAG) - SENDING[0]: G30
2014-11-02 15:25:26.223 INFO (STATUS) - > G30
2014-11-02 15:25:26.270 DEBUG (DIAG) - GOT:ok
2014-11-02 15:25:31.024 DEBUG (DIAG) - GOT-TE:echo:endstops hit:  Z:15.0766
2014-11-02 15:25:31.024 INFO (STATUS) - echo:endstops hit:  Z:15.0766
2014-11-02 15:25:41.293 INFO (DIAG) - Grbl Controller 3.6.1 has stopped (because i quit Grbl controller)

Do you need other informations or log ?

Thanks,
 

Zhaf

unread,
Nov 2, 2014, 4:53:34 PM11/2/14
to cyclone-p...@googlegroups.com
Hi Pierre, 
Thanks again for your time. I've download and installed the Marlin version you have, and I've been able to reproduce your problem. I have fixed GrblController code so the leveling works again
You can download the last version here:


Thank you again!

taiffu

unread,
May 10, 2016, 1:03:20 PM5/10/16
to Cyclone PCB Factory
Hello All,

I Found this old thread and now wondering can be this version of GRBLHoming and zleveling get working some how with my own build CNC machine.
In my machine I use Arduino Nano and latest version of GRBL (grbl 0.9i) where is autoleveling feature. I'm using simple proble in arduino port A5



Now I have compiled this zleveling version under my Debian machine and I can now connect to my CNC machine but when I try to start this Z Leveling feature it's says that "gcode implementation does not support ZLeveling" is this something to do this M115 check? and hint how I can make this work?

Br,
Sami

perjantai 21. maaliskuuta 2014 1.05.08 UTC+2 Zhaf kirjoitti:
Hi everyone.

In my spare time I've been working to improve the already very good GrblHoming software by Zapmaker.
What I've done for now is to add it support for the Marlin firmware, along with some modifications to the G-Code on the fly to make it more "Marlin friendly"

For now it supports:
 - F commands. (It just prepends a G1 before the command)
 - Modal commands. It prepends the last G command seen before every line of the modal command.
 - G0 and G1. In Marlin, G0 moves are done at the same speed at the last speed setted by a F parameter. What this does is to always put an F parameter (fixed to 300, soon to be configurable) in every G0 command to allow G0 commands move faster.Then, on the next non G0 command, it restores the last correct speed seen in the code.

Now I'm working to add it support for Z leveling. I've the interpolation code done and working using Catmull-Rom spilines. What I have left is to integrate everything nicely. I hope to have it ready in a few days.

If you don't know GrblHoming, this is it:


And this is the interpolation code under test. For the tests I'm using random sampling values and a grid of 10x10 points:



You can test the Marlin support right now, as it is already in my github repository. I hope to have the z-leveling code there also in a few days.

https://github.com/zalohasa/GrblHoming

I hope you find this useful.

Bests Regards!



Iceflow

unread,
May 10, 2016, 6:21:38 PM5/10/16
to cyclone-p...@googlegroups.com

What version of grbl are you using?

--
You received this message because you are subscribed to the Google Groups "Cyclone PCB Factory" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cyclone-pcb-fac...@googlegroups.com.
To post to this group, send email to cyclone-p...@googlegroups.com.
Visit this group at https://groups.google.com/group/cyclone-pcb-factory.
To view this discussion on the web, visit https://groups.google.com/d/msgid/cyclone-pcb-factory/11d238ad-8ebb-4e41-ade9-128e45999d9a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Samuel Kranz

unread,
May 12, 2016, 5:46:34 AM5/12/16
to Cyclone PCB Factory
so you are using zhafs software with grbl? Last time i had a look at this thread he the implementation of zleveling for grbl wasnt ready (https://groups.google.com/d/msg/cyclone-pcb-factory/_BooHu3Q_aQ/piUe4ExbM-IJ)
I guess he is using some special commands for carlos' marlin firmware.

Zhaf

unread,
May 12, 2016, 6:07:21 AM5/12/16
to Cyclone PCB Factory


Hi, Samuel is right. The zleveling code works only for marlin, it's still not implemented for grbl. Any version of Marlin will work as long as it supports G30 command.

If you use Marlin firmware, the tool works, is the tool I use when I use my cyclone. It has UI bugs and caveats, but as a GCode sender with leveling, it does its job.
I hope someday restart the development of the tool. I have a lot of ideas but to little free time.

Regards
Reply all
Reply to author
Forward
0 new messages