Cubiko Z probe tool crashing

I have a question about an issue you may have experienced since the latest MillMage update.

I have a small Cubiko CNC that I’ve been using with MillMage while starting my journey into CNC machining/routing. Recently, I updated the Cubiko firmware after seeing that an update was available. Around the same time, MillMage also went through an update.

Since the MillMage update, I can no longer get the tool-change Z probing to work correctly. When MillMage commands a Z probe—either automatically during a tool change or when I manually command it through the MillMage controller—the Z-axis continues downward and tries to drive the tool into the bed instead of recognizing contact with the probe.

The strange part is that if I use the Cubiko’s offline controller to perform the Z probe, it works perfectly. That makes me think the probe, wiring, and controller input are functioning correctly, and the problem may be related to how MillMage is communicating with the Cubiko.

I’ve also tried reverting the Cubiko firmware to the previous version, but that made no difference.

Have you experienced anything similar since the recent MillMage update, particularly with GRBL-based machines? Is there a setting, probing command, or workaround you would recommend checking?

Any advice would be greatly appreciated. I’ve spent quite a bit of time troubleshooting this and keep coming back to MillMage as the common factor.

This is very worrisome.

Can you confirm what the probe configuration block gcodes look like? I hope the Cubiko is using a standard GRBL firmware, and not something the vendor modified… MillMage probes using G38.2 calls, so it waits for the firmware to tell it it found contact at the probing axis’ position. Then MillMage will tell the tool to back off, and re-probe a shorter distance at a slower speed to get a more precise measurement.

If the Cubiko firmware is misunderstanding or disregarding the aspect of “stop when the G38.2 move hits contact”, we can’t really tell what’s happening.

Easiest way to verify behavior:

  1. find a block of foam or something squishy to lift up the probe from the bed so you don’t break anything
  2. in your device settings make sure the “Query position regularly” toggle is off, turn the console’s show all to on
  3. Jog the tool above your probe
  4. clear the console
  5. In the console, type G38.2 Z<dist>, where <dist> is a reasonable distance in your machine’s units (usually mm) in which the probe will trigger, but not so far it would hit the bed and break a bit
  6. Copy the entire console output here so we can take a look at what happened.

If the machine reports the contact point but doesn’t stop (usually a line starting with [PRB:), that’s a firmware problem. If it stops and reports the contact position, then it’s behaving correctly and we need to understand why you’re seeing a difference in the probe wizard because that would be a MillMage-side problem.

The z probe on the cubiko is built into the bed on that model. So I have been just keeping my hand on the E stop switch during probing to ensure it doesn’t damage the machine. I would actually like to try to downgrade the version of software and see if the issue is still present. It worked flawlessly before the software update. Like I mentioned before I also reverted the firmware on the machine itself to verify that wasn’t the cause.

You can download the previous version of MillMage here: Index of /MillMage/Release/

Awesome, I will post results when I get home from work today. Thank you!!

I’m still very curious to know what has changed. I specifically worked on the probe wizard to make it more resilient and safe. That you get errors when probing is very worrisome, if the firmware is indeed a proper GRBL build.

When you report back, can you also turn on the console’s show all, and type in $I and report back what it reads? That should be relatively telling if it’s a clean GRBL or what we’ve seen with many laser vendors, a modified GRBL that is not fully standards compliant.

Thank you!

This issue has been resolved by Nicholas, see “negative Y coordinates”… You need to use the levelling port setup with the supplied levelling tool connected to a plate on the surface of your workpiece…

Well I cant get the machine to behave without constant little issues at this point to even try the software fix. So this one is going in the closet until I have time to replace the entire controller with something that actually works correctly. I do have a makera on the way so hopefully that small desktop machine will not behave the same way. I’ve been into lasers and 3d printing since 2013 so I have a lot of experience with issues but this cubiko takes the cake as the largest POS I have ever owned. Thank you for all of your help again.

You’re welcome! There are a number of reliable and relatively inexpensive controllers you can use to drive your machine. It’s just re-wiring and re-configuring it is a pain.

We’ll be here when you’re able to get involved with it again.

I think I’ve seen the same behaviour on my machine (Smoothieware with latest cnc firmware, MillMage 0.9.00).
After the probe it moves up a bit and then crashes into the touch plate violently.
The G38.2 command does work flawlessly:

<Idle|MPos:0.0000,0.0000,0.0000|WPos:0.0000,0.0000,0.0000|F:4000.0,100.0>
G38.2 Z-20
[PRB:0.000,0.000,-6.956:1]
ok
ok
<Idle|MPos:0.0000,0.0000,-6.9559|WPos:0.0000,0.0000,-6.9559|F:4000.0,100.0>

Most notably, no crash afterwards.

For now, I’ve made a macro using a G30 command to probe.
Be advised that I’ve fiddled around quite a bit to get things to work so maybe I hit some edge condition. (turns out the output format of a 2017 Smoothie firmware is quite different from the latest build, so MillMage does not pick up the WPos).

I’ve tried it again. I need to rephrase:

  • it moves down until it touches the plate
  • it retracts
  • it moves down more slowly until it touches the plate again
  • it tries to force itself down through the touch plate, it sounds like at a much higher speed!

I think these are the relevant lines in the console:
<Idle|MPos:0.0000,0.0000,-1.9594|WPos:0.0000,0.0000,25.0000|F:4000.0,100.0>
Starting stream
[PRB:0.000,0.000,-6.954:1]
[PRB:0.000,0.000,-6.954:1]
Stream completed in 0:09
<Idle|MPos:0.0000,0.0000,-28.9134|WPos:0.0000,0.0000,-1.9590|F:4000.0,100.0>

It tries to move to -28.9134?

Probing wizard settings:
Search Z: 30 mm
Fast Probe Speed: 150 mm/m
Precise Probe Speed: 30 mm/m
Precise Probe Distance: 3.5 mm
Backoff Distance: 3 mm

“For the Z axis the probing distance is 30 mm (of 1.1811”)."

Unsure how these numbers add up to -28.9134.

Wait, let’s try this again with “Show all” on:
Idle|MPos:0.0000,0.0000,-8.9134|WPos:0.0000,0.0000,18.0410|F:250.0,100.0>
?
ok
<Idle|MPos:0.0000,0.0000,-8.9134|WPos:0.0000,0.0000,18.0410|F:250.0,100.0>
Starting stream
G21;Restore metric mode**
M5
G43.1 Z0
G91;Restore relative mode**
M5
G38.2 Z-30 F150
[PRB:0.000,0.000,-26.909:1]
G1 Z3F150
G38.2 Z-3.5 F30
[PRB:0.000,0.000,-26.910:1]
G10 L20 P1 Z20
G90;Restore absolute mode**
G0 Z-8.913
Stream completed in 0:14
<Run|MPos:0.0000,0.0000,-28.8403|WPos:0.0000,0.0000,18.0700|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-31.6181|WPos:0.0000,0.0000,15.2922|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-34.4081|WPos:0.0000,0.0000,12.5022|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-37.1200|WPos:0.0000,0.0000,9.7903|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-39.8344|WPos:0.0000,0.0000,7.0759|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-42.6362|WPos:0.0000,0.0000,4.2741|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-45.4228|WPos:0.0000,0.0000,1.4875|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-48.2216|WPos:0.0000,0.0000,-1.3112|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-50.8478|WPos:0.0000,0.0000,-3.9375|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Run|MPos:0.0000,0.0000,-53.6334|WPos:0.0000,0.0000,-6.7231|F:300.0,4000.0,100.0|L:0.0000|S:1.0000>
<Idle|MPos:0.0000,0.0000,-55.8233|WPos:0.0000,0.0000,-8.9130|F:4000.0,100.0>

Looks to me like MillMage runs it erroneously into the ground with the G0 Z-8.913 ?
Please don’t do that. :slight_smile:

Are you sure MillMage is not trying to move it to the offset position?

That’s interesting, didn’t notice that.
Looks like it tries to return to the old position and swaps the MPos and WPos?

I don’t think MillMage is doing that. It just computes a new position based on the last known position. It is told the last known by the CNC controller, I think.

I have a similar issue with my CNC, where there is a Z offset. When you Home the machine, Z should be zero at the top of its travel. I cannot give more info because I am out of town, but I seem to remember mine keeps wanting to be a -17mm value.

im also having probe issues since moving to core 9

in rc7 i was running jobs with up to 3 tool changes , they all ran sweet

it now cuts air after every tool change

have to stop job re home , go to device, click ok , turn off other operations and re probe again

when i updated to core 9 it kept all previous setting from core 8

i have deleted device, all custom gcode, created new manual device , re typed all custom g codes that still work fine in rc7 and still i have same issue

i still have rc7 installed so ran a test with a tool change in operation and it ran without an issue

That pretty much defines the situation. Do they have factory recalls for software? :rofl: :rofl: :rofl:

Hi Jon, have you seen the above? I still think the WPos and MPos are mixed up somewhere.

Makera uses Smoothieware-based firmware.
older versions didn’t entirely work according to the standard (OK responses for G0 commands were missing)
They fixed this in the latest firmware release 1.0.7 , but the OK responses are now using Package Framing, which MillMage doesn’t support yet.

We have an internal Dev version which accomodates this with a dedicated “Makera Flavor”, and initial tests were promising.