Homing error M204 - timeout

258 views
Skip to first unread message

jbasia

unread,
Jan 29, 2023, 3:57:38 AM1/29/23
to OpenPnP
After getting timeouts when homing - I am probably the only that didn't see that error right away:

OpenPnP automatically generates this error causing command:

`{Acceleration:M204 S%.2f} ; Initialize acceleration;`

But correct is:

`{M204 S%.2f} ; Initialize acceleration;`

(test version from 2023-01-13 +  2023-01-28

mark maker

unread,
Jan 29, 2023, 7:12:35 AM1/29/23
to ope...@googlegroups.com

Nope, the original G-code is correct, yours will not work, look at the syntax for substitution variables.

Your machine.xml shows proper (but quite low) acceleration limits on the axes, so I don't see why the acceleration is not set right.

However, please listen to Issues & Solutions. It tells you that the axis velocity is limited by the (very low) driver feed-rate limit.

Which however does not explain the homing problem.

Please send a log of your machine homing at Trace level.

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/8acac4d0-4b9a-421f-89f0-93a31221233cn%40googlegroups.com.

jbasia

unread,
Jan 29, 2023, 8:49:42 AM1/29/23
to OpenPnP
The first step in that list is homing, and that does not work for me. It has no function. Pressing the button does nothing. Eventually a timeout happens. In the previous I agreed most steps. I am not at the machine right now.

In my situation the text caused that error. It works with a manual G28 console home. 

Feedrate is that  <feedrate-per-second value="333.333 ? That is the (I presume failsafe) default I believe? I didn't put that in. No 333 in the *.h files. 

My main concern if function. I want to avoid more nozzles hits.



mark maker

unread,
Jan 29, 2023, 8:57:30 AM1/29/23
to ope...@googlegroups.com

> Pressing the button does nothing. Eventually a timeout happens.

No sense in offline speculation, as soon as you're at the machine again, please send a log of your machine homing at Trace level.

> Feedrate is that ...?

No, just do as Issue & Solutions tells you, press Accept to remove the feed--rate limit from the driver:

It will automatically set this to 0:

_Mark

jbasia

unread,
Jan 30, 2023, 12:44:23 AM1/30/23
to OpenPnP
Connect the machine now to the notebook and started again from zero. Still, same arrors

I don't have the `Remove Driver Max`. That should be in basics, right?

Before accepting basics:
Screenshot 2023-01-30 13.18.35.png

Then on to the first step in Kinematics, which is homing. There it times out and loses USB connection.

Screenshot 2023-01-30 13.20.20.png

Driver default as suggested:

Screenshot 2023-01-30 13.29.10.png

After the time out I need to start OpenPNP again and need the set `Gcodedriver` again in all axis.

2023-01-30 13:31:59.634 Main INFO: Bienvenue, Bienvenido, Willkommen, Hello, Namaskar, Welkom, Bonjour to OpenPnP version 2023-01-28_17-34-31.8115fbd.
2023-01-30 13:31:59.635 Scripting TRACE: Scripting.on Startup
2023-01-30 13:31:59.653 CameraView DEBUG: Failed to load camera specific reticle, checking default.
2023-01-30 13:31:59.653 CameraView DEBUG: No reticle preference found.
2023-01-30 13:32:20.994 AbstractBroadcastingCamera TRACE: Camera Top thread 30 started.
2023-01-30 13:32:20.995 CameraView DEBUG: Failed to load camera specific reticle, checking default.
2023-01-30 13:32:20.995 CameraView DEBUG: No reticle preference found.
2023-01-30 13:32:23.178 AbstractBroadcastingCamera TRACE: Camera Bottom thread 32 started.
2023-01-30 13:32:23.509 AbstractMachine TRACE: Machine not enabled, task ignored.
2023-01-30 13:33:13.586 AbstractMachine TRACE: Machine not enabled, task ignored.
2023-01-30 13:33:46.813 ReferenceMachine DEBUG: setEnabled(true)
2023-01-30 13:33:49.832 GcodeDriver DEBUG: [serial://COM3] >> G21 ; Set millimeters mode, 20000
2023-01-30 13:33:49.835 GcodeDriver$ReaderThread TRACE: [serial://COM3] << ok
2023-01-30 13:33:49.837 GcodeDriver TRACE: [serial://COM3] confirmed G21 ; Set millimeters mode
2023-01-30 13:33:49.838 GcodeDriver DEBUG: [serial://COM3] >> G90 ; Set absolute positioning mode, 20000
2023-01-30 13:33:49.839 GcodeDriver$ReaderThread TRACE: [serial://COM3] << ok
2023-01-30 13:33:49.841 GcodeDriver TRACE: [serial://COM3] confirmed G90 ; Set absolute positioning mode
2023-01-30 13:33:49.879 ReferenceMachine DEBUG: homing machine
2023-01-30 13:33:49.882 GcodeDriver DEBUG: [serial://COM3] >> ; Initialize acceleration, -1
2023-01-30 13:33:55.073 GcodeDriverSolutions WARNING: GcodeDriver failure to detect firmware: java.util.concurrent.TimeoutException: Machine still busy after timeout expired, task rejected.
    at org.openpnp.spi.base.AbstractMachine.execute(AbstractMachine.java:681)
    at org.openpnp.spi.Machine.execute(Machine.java:292)
    at org.openpnp.machine.reference.solutions.GcodeDriverSolutions.findIssues(GcodeDriverSolutions.java:185)
    at org.openpnp.machine.reference.driver.GcodeDriver.findIssues(GcodeDriver.java:1775)
    at org.openpnp.spi.base.AbstractMachine.findIssues(AbstractMachine.java:817)
    at org.openpnp.machine.reference.ReferenceMachine.findIssues(ReferenceMachine.java:705)
    at org.openpnp.model.Solutions.findIssues(Solutions.java:566)
    at org.openpnp.gui.IssuesAndSolutionsPanel.lambda$findIssuesAndSolutions$0(IssuesAndSolutionsPanel.java:413)
    at org.openpnp.util.UiUtils.messageBoxOnException(UiUtils.java:132)
    at org.openpnp.gui.IssuesAndSolutionsPanel.findIssuesAndSolutions(IssuesAndSolutionsPanel.java:412)
    at org.openpnp.gui.IssuesAndSolutionsPanel$5.actionPerformed(IssuesAndSolutionsPanel.java:443)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access$500(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue$4.run(Unknown Source)
    at java.awt.EventQueue$4.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    ...
2023-01-30 13:34:16.560 GcodeDriverSolutions WARNING: GcodeDriver failure to detect firmware: java.util.concurrent.TimeoutException: Machine still busy after timeout expired, task rejected.
    at org.openpnp.spi.base.AbstractMachine.execute(AbstractMachine.java:681)
    at org.openpnp.spi.Machine.execute(Machine.java:292)
    at org.openpnp.machine.reference.solutions.GcodeDriverSolutions.findIssues(GcodeDriverSolutions.java:185)
    at org.openpnp.machine.reference.driver.GcodeDriver.findIssues(GcodeDriver.java:1775)
    at org.openpnp.spi.base.AbstractMachine.findIssues(AbstractMachine.java:817)
    at org.openpnp.machine.reference.ReferenceMachine.findIssues(ReferenceMachine.java:705)
    at org.openpnp.model.Solutions.findIssues(Solutions.java:566)
    at org.openpnp.gui.IssuesAndSolutionsPanel.lambda$findIssuesAndSolutions$0(IssuesAndSolutionsPanel.java:413)
    at org.openpnp.util.UiUtils.messageBoxOnException(UiUtils.java:132)
    at org.openpnp.gui.IssuesAndSolutionsPanel.findIssuesAndSolutions(IssuesAndSolutionsPanel.java:412)
    at org.openpnp.gui.IssuesAndSolutionsPanel$5.actionPerformed(IssuesAndSolutionsPanel.java:443)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access$500(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue$4.run(Unknown Source)
    at java.awt.EventQueue$4.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    ...
2023-01-30 13:34:49.885 AbstractMachine TRACE: Exception caught, executing pending motion: java.lang.Exception: serial://COM3 timeout waiting for response to ; Initialize acceleration
    at org.openpnp.machine.reference.driver.GcodeDriver.waitForConfirmation(GcodeDriver.java:1132)
    at org.openpnp.machine.reference.driver.GcodeDriver.sendCommand(GcodeDriver.java:1110)
    at org.openpnp.machine.reference.driver.GcodeDriver.sendGcode(GcodeDriver.java:1076)
    at org.openpnp.machine.reference.driver.GcodeDriver.home(GcodeDriver.java:514)
    at org.openpnp.machine.reference.driver.AbstractMotionPlanner.home(AbstractMotionPlanner.java:99)
    at org.openpnp.machine.reference.ReferenceMachine.home(ReferenceMachine.java:516)
    at org.openpnp.machine.reference.solutions.KinematicSolutions$1.lambda$null$1(KinematicSolutions.java:97)
    at org.openpnp.util.UiUtils.lambda$submitUiMachineTask$0(UiUtils.java:39)
    at org.openpnp.spi.base.AbstractMachine$1.call(AbstractMachine.java:578)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
2023-01-30 13:34:49.889 AbstractMachine TRACE: Machine entering idle state.
2023-01-30 13:34:49.890 MessageBoxes DEBUG: Error: java.lang.Exception: serial://COM3 timeout waiting for response to ; Initialize acceleration

mark maker

unread,
Jan 30, 2023, 2:42:17 AM1/30/23
to ope...@googlegroups.com

Hi jbasia,

thanks for helping find the root causes.

Apparently, the acceleration is not set, the command sent is just an empty comment line:

2023-01-30 13:33:49.882 GcodeDriver DEBUG: [serial://COM3] >> ; Initialize acceleration, -1

On one hand, that should be allowed to happen and still work.

On the other hand, I&S should already have prompted you to choose the ModeratedConstantAcceleration method, and then I don't see why the acceleration is not sent. Please send the machine.xml (best send it with each post after significant config changes).

What is surprising is that Marlin does not seem to "ok"-acknowledge empty (comment-only) lines. Unfortunately,  the NIST RS274NGC standard does not standardize how and when a controller should respond. The "ok" response that seems to be the consensus among open source controllers is purely a convention. Still, I think Marlin is mistaken not to respond to these lines, because waiting for the "ok" is a common way of performing serial flow control (a.k.a. "confirmation flow control").

Side remark: There are ways for OpenPnP to universally suppress empty lines (driver options G-code compression + comments removal), and/or to use alternatives to confirmation flow control, but these options are only offered in the Advanced milestone and I'd like to keep it that way. So please do not try these now 😠, I'd like to find a way that is universally useful without straying into "advanced" stuff.

Instead, please try the following. Manually change the proposed HOME_COMMAND command from this:

{Acceleration:M204 S%.2f} ; Initialize acceleration
G28 ; Home all axes

To this, i.e., move the closing curly bracket to the end:

{Acceleration:M204 S%.2f ; Initialize acceleration}
G28 ; Home all axes

This should suppress the line entirely. If this proves successful, I will then fix it in Issues & Solutions, so even quirky Marlin is happy. 😎

Ideally we could bring Marlin to a similar good level as Smoothie and Duet in terms of OpenPnP and Issues & Solutions setup support. Thanks for keeping the ball rolling.

_Mark

jbasia

unread,
Jan 30, 2023, 3:59:05 AM1/30/23
to OpenPnP
On Monday, 30 January 2023 at 15:42:17 UTC+8 ma...@makr.zone wrote:

Ideally we could bring Marlin to a similar good level as Smoothie and Duet in terms of OpenPnP and Issues & Solutions setup support. Thanks for keeping the ball rolling.

At this point I wouldn't really mind to ditch Marlin. I started this journey 8 weeks ago and was hoping getting on with assembly around Christmas (2022). 

I would love to see clean Marlin *.h files. With clean I mean all those bed, temperature, filament stuff removed. I just tried to do a firmware from the LumenPnP *.h files but seems they use an older Marlin version and it failed. I might try it later today. The LumenPnP *.h files where online (I have them) but seem to be removed now (or moved tor elsewhere).



 

mark maker

unread,
Jan 30, 2023, 4:32:16 AM1/30/23
to ope...@googlegroups.com

> At this point I wouldn't really mind to ditch Marlin.

Please hang in there.

It would really be valuable if we could make this work, as the Lumen seems to attract many users, and Marlin is a good open source firmware, anyways.

And the most relevant stuff, namely handling rotational axes A B C correctly, already seems to work in that Marlin version (they do not use them as "extruders"), so I do not think that a newer firmware version seems to matter much for us.

Obviously, the Lumen guys would then have to embrace the proper ways (and *.h files) that come out of this. We discussed the importance of staying on top of OpenPnP development earlier.

Maybe they're reading this ... ideally, the Lumen guys would send me a free board for extended OpenPnP integration. Like the Duet guys also kindly did. 😁

It could even be a partially damaged/unfinished board, I only want to talk to the firmware, and merely operate it on my "OpenPnP controller test bed" with one stepper attached, like I do with the others:

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

jbasia

unread,
Jan 30, 2023, 5:39:18 AM1/30/23
to OpenPnP
I just tried to 'burn' a firmware.bin from the LumenPnP *.h files, but I got errors from several Marlin 2.0.* and 2.1.* version. Seems the one from the Youtube video was bugfix_2.0.* - which could be one of many versions.

I get:  `Error: MOTHERBOARD is not defined in Configuration.h` - however, it is (also in Platformio.ini)


Screenshot 2023-01-22 12.36.59.png

Message has been deleted

jbasia

unread,
Jan 31, 2023, 12:07:04 AM1/31/23
to OpenPnP
 `Error: MOTHERBOARD is not defined in Configuration.h` 

This error is probably because the *.h files using pins that the target controller does not have. I removed some pins and it compiled.

>Lumen guys would send me a free board for extended OpenPnP integration. 

6 axis Marlin boards are plenty & cheap 

Anyway, forgot the notebook today and start from zero with the Lumen *.h on Linux - again timeouts when homing. I use comment free:

{Acceleration:M204 S%.2f} 
G28 

Also lose connection sometimes:
2023-01-31 12:13:12.395 ReferenceMachine DEBUG: setEnabled(true)
2023-01-31 12:13:15.402 GcodeDriver DEBUG: [serial://ttyACM0] >> G21 ; Set millimeters mode, 5000
2023-01-31 12:13:15.404 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << ok
2023-01-31 12:13:15.405 GcodeDriver TRACE: [serial://ttyACM0] confirmed G21 ; Set millimeters mode
2023-01-31 12:13:15.406 GcodeDriver DEBUG: [serial://ttyACM0] >> G90 ; Set absolute positioning mode, 5000
2023-01-31 12:13:15.408 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << ok
2023-01-31 12:13:15.409 GcodeDriver TRACE: [serial://ttyACM0] confirmed G90 ; Set absolute positioning mode
2023-01-31 12:13:15.416 AbstractMachine TRACE: Machine entering idle state.
2023-01-31 12:13:28.913 ReferenceMachine DEBUG: homing machine
2023-01-31 12:13:28.918 GcodeDriver DEBUG: [serial://ttyACM0] >> M204 S666.67, -1
2023-01-31 12:13:28.920 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << ok
2023-01-31 12:13:28.921 GcodeDriver TRACE: [serial://ttyACM0] confirmed M204 S666.67

2023-01-31 12:13:28.921 GcodeDriver DEBUG: [serial://ttyACM0] >> G28, -1
2023-01-31 12:13:30.922 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << echo:busy: processing
2023-01-31 12:13:32.443 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << echo:Homing Failed
2023-01-31 12:13:32.445 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << Error:Printer halted. kill() called!
2023-01-31 12:14:17.015 ReferenceMachine DEBUG: setEnabled(false)
2023-01-31 12:14:17.019 ReferenceMachine INFO: setHomed(false)
2023-01-31 12:14:17.023 GcodeDriver$ReaderThread TRACE: Read error while disconnecting (normal)
2023-01-31 12:14:17.023 MessageBoxes DEBUG: Error: java.lang.Exception: Error actuating LIGHT_BOTTOM
2023-01-31 12:14:17.092 MessageBoxes DEBUG: Error: java.lang.Exception: Error actuating LIGHT_TOP
2023-01-31 12:14:28.922 AbstractMachine TRACE: Exception caught, executing pending motion: java.lang.Exception: serial://ttyACM0 timeout waiting for response to G28
    at org.openpnp.machine.reference.driver.GcodeDriver.waitForConfirmation(GcodeDriver.java:1130)
    at org.openpnp.machine.reference.driver.GcodeDriver.sendCommand(GcodeDriver.java:1108)
    at org.openpnp.machine.reference.driver.GcodeDriver.sendGcode(GcodeDriver.java:1074)

    at org.openpnp.machine.reference.driver.GcodeDriver.home(GcodeDriver.java:514)
    at org.openpnp.machine.reference.driver.AbstractMotionPlanner.home(AbstractMotionPlanner.java:99)
    at org.openpnp.machine.reference.ReferenceMachine.home(ReferenceMachine.java:516)
    at org.openpnp.gui.MachineControlsPanel$HomeAction.lambda$actionPerformed$0(MachineControlsPanel.java:333)

    at org.openpnp.util.UiUtils.lambda$submitUiMachineTask$0(UiUtils.java:39)
    at org.openpnp.spi.base.AbstractMachine$1.call(AbstractMachine.java:578)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)
2023-01-31 12:14:28.927 AbstractMachine TRACE: Machine entering idle state.
2023-01-31 12:14:28.927 MessageBoxes DEBUG: Error: java.lang.Exception: serial://ttyACM0 timeout waiting for response to G28


What's new is that OpenPnP hangs and needs a kill, usually after homing. 

Z is still perfect at Z0 when I switch on, and now N1 top down, but with Z0 when homing.

Tomorrow will test again with Windows.
machine.xml

mark maker

unread,
Jan 31, 2023, 3:40:14 AM1/31/23
to ope...@googlegroups.com

As you see in the log, that's a Marlin config problem, not an OpenPnP problem:

2023-01-31 12:13:32.443 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << echo:Homing Failed
2023-01-31 12:13:32.445 GcodeDriver$ReaderThread TRACE: [serial://ttyACM0] << Error:Printer halted. kill() called!

> What's new is that OpenPnP hangs and needs a kill, usually after homing.

Well, I don't think it hangs per se, but OpenPnP has an extra long timeout for homing (60s), because this can take very long on certain machines.

In the GcodeDriver, you can set an COMMAND_ERROR_REGEX that recognizes the "halted", then OpenPnP would immediately react to the error.

Issues & Solutions does not currently suggest the firmware specific  COMMAND_ERROR_REGEX patterns (yet).

_Mark

jbasia

unread,
Jan 31, 2023, 5:53:15 AM1/31/23
to OpenPnP
On Tuesday, 31 January 2023 at 16:40:14 UTC+8 ma...@makr.zone wrote:

As you see in the log, that's a Marlin config problem, not an OpenPnP problem:

I found the problem. Because I used the LumenPnP *.h files I didn't set the endstopps correctly, I need `#define X_MIN_ENDSTOP_INVERTING false` and not `true` for the optical switches. 

So no timeout. But I had to do a manual `kill()` - My home position is right side at the back - LumenPnP want to move it to front left, so had to change some `#define INVERT_*_DIR false`. So no wonder HOME failed.

Z nulls still wrong. But this I check tomorrow. 

One question: Can I move the Linux XML to Windows? Or better start again?
 

mark maker

unread,
Jan 31, 2023, 6:49:12 AM1/31/23
to ope...@googlegroups.com

> One question: Can I move the Linux XML to Windows? Or better start again?

You can move it. Obviously the USB devices and Serial ports need to be reassigned.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

Fabian Kropp

unread,
Jan 31, 2023, 1:03:46 PM1/31/23
to OpenPnP
Hi,

got a lumen as well

ma...@makr.zone schrieb am Montag, 30. Januar 2023 um 08:42:17 UTC+1:

On the other hand, I&S should already have prompted you to choose the ModeratedConstantAcceleration method, and then I don't see why the acceleration is not sent. Please send the machine.xml (best send it with each post after significant config changes).

It doesn't suggest it, even when I set it manually, it will try to force me back to : ToolPathFeedRate. 
With ModeratedConstantAcceleration set manually it works for me. (Just starting a new setup trial run)

BR

Fabian  

mark maker

unread,
Jan 31, 2023, 4:19:10 PM1/31/23
to ope...@googlegroups.com

It depends on the Milestone you're in. I was specifically referring to jbasia's config.

Anyways the workaround is now clear (quoting myself):

... please try the following. Manually change the proposed HOME_COMMAND command from this:

{Acceleration:M204 S%.2f} ; Initialize acceleration
G28 ; Home all axes

To this, i.e., move the closing curly bracket to the end:

{Acceleration:M204 S%.2f ; Initialize acceleration}
G28 ; Home all axes

This should suppress the line entirely. If this proves successful, I will then fix it in Issues & Solutions, so even quirky Marlin is happy. 😎

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

mark maker

unread,
Jan 31, 2023, 4:48:43 PM1/31/23
to ope...@googlegroups.com

Hi,

If you download the new test version of OpenPnP, this should now be correctly suggested by Issues & Solutions, i.e. the Marlin quirk is worked around.

Test Downloads – OpenPnP

  1. Issues & Solutions should now propose HOMING_COMMAND and MOVE_TO_COMMAND where the acceleration command line is not sent as long as ToolpathFeedrate is set.
  2. As soon as you advance to the Kinematics milestone, Issues & Solutions should propose ModeratedConstantAcceleration. From then on the acceleration is controlled by OpenPnP and the corresponding acceleration G-code lines (M204) should be sent by OpenPnP.
@jbasia, @Fabian, please if possible test both these and report back, thank you! 💯 💯

Background:
https://github.com/openpnp/openpnp/pull/1517

_Mark

jbasia

unread,
Feb 1, 2023, 12:15:51 AM2/1/23
to OpenPnP
On Wednesday, 1 February 2023 at 05:48:43 UTC+8 ma...@makr.zone wrote:

Hi,

If you download the new test version of OpenPnP, this should now be correctly suggested by Issues & Solutions, i.e. the Marlin quirk is worked around.

Yes it does ;-)

I found another mild annoyance that I noticed as a frequent from-zero-starter: the axis are not getting, or losing the driver setting during setup. After fixing it they stay.

Other then that, and back to the Windows notebook, I did some modifications to the LumenPnP *.h files and so far it looks good. Up to the Home stepp all fine (this is where I am right now). 

 

mark maker

unread,
Feb 1, 2023, 2:21:36 AM2/1/23
to ope...@googlegroups.com

> I found another mild annoyance that I noticed as a frequent from-zero-starter: the axis are not getting, or losing the driver setting during setup. After fixing it they stay.

Just to be sure: you are using Issues & Solutions to replace the driver, right?

I just did that myself and no driver assignments were lost, before and after restarting OpenPnP.

I also double.checked the source code, the axes and actuators are all rewired to the new driver:

https://github.com/openpnp/openpnp/blob/8008f1f14f5cab21de4af482f34c63e108f55705/src/main/java/org/openpnp/machine/reference/solutions/GcodeDriverSolutions.java#L1214

Replacing the driver is the only thing that comes to mind when losing the driver link. But maybe I'm missing something?

Can you be more specific when and where this happens?

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

jbasia

unread,
Feb 1, 2023, 2:36:06 AM2/1/23
to OpenPnP
On Wednesday, 1 February 2023 at 15:21:36 UTC+8 ma...@makr.zone wrote:

Can you be more specific when and where this happens?

I think it was after cleared "Basics" with no more issues and then it popped up in the next level, kinetics I think. Same can happen to the driver letters. It asked me to agree to name X, X.(and Y Z) And later I have to do that again manually. To me this is not important, takes a Second to enter it.


 

mark maker

unread,
Feb 1, 2023, 3:41:36 AM2/1/23
to ope...@googlegroups.com

> Same can happen to the driver letters. It asked me to agree to name X, X.(and Y Z) And later I have to do that again manually. To me this is not important, takes a Second to enter it. To me this is not important...

But to me it is important. I want this to be rock solid 🙁

This is really strange. I did this a hundred times myself, I accompanied many users, and (to my knowledge) this stuff works.

Are you aware of the unfortunate OpenPnP "forgot to press Apply" pitfall?

Are you aware that Issues & Solutions does UNDO a change when you Reopen or Dismiss a solution?

Are you sure you never did anything along the lines of that "counterproductive" video you linked earlier? Like manually deleting the driver, or axes and creating new ones manually?

Do you ever manually edit the machine.xml?

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

jbasia

unread,
Feb 1, 2023, 4:57:24 AM2/1/23
to OpenPnP
On Wednesday, 1 February 2023 at 16:41:36 UTC+8 ma...@makr.zone wrote:

> Same can happen to the driver letters. It asked me to agree to name X, X.(and Y Z) And later I have to do that again manually. To me this is not important, takes a Second to enter it. To me this is not important...

But to me it is important. I want this to be rock solid 🙁

Understand. I will keep an eye on it if it happens again. But now I am in "Vision" and hope to get a bit further before starting again from zero.


 
Reply all
Reply to author
Forward
0 new messages