Issues on setup Duet 3 Mini 5+ and Liteplacer Rig RepRap3.3

167 views
Skip to first unread message

NismoBoy34

unread,
Jan 16, 2022, 4:12:31 PMJan 16
to OpenPnP
Its been a weekend of Torment trial and error and head bashing .. Non stop from Friday Evening till now ive managed to make what i think is great progress .
The board is connected and wired in with the Exception of limit switches ? How to wire them in for safety in series ? I believe that limit switches are needed only for either end of an axis and there for in this case we only need 3 limit switches ? X Y Z axis respectively . Running on 3.3v and gnd and activating to input when in fault mode ? Its late i might have this wrong .. 

My second issue is i am now stuck on Kinetics feed rates and acceleration and speed .
If i do try tune X axis i get a speed increase ( already increased speed in gcode Async Driver to max limit of 50 000)
After this when i reach a stall and reduce speed and acceleration back to normal we actually dont get a reduction and the machine effectively is stuck on this speed .. 
the motors skip constantly . Ive tried tuning in the Jerk control from 100 0000  to 9999999 and an ever slight change is noticed .
Im not sure what im doing wrong ?
Ive got my jog working correctly for all axis on the board X Y Z and C 
the next step is getting the machine to work smoothly with minimal skip and jerk .
It does appear to be running alot slower than previously when on liteplacer.
Please kindly review the config.g file attached .
Im running RepRap 3.3 on the board .

Thank you in advance .. if any one has a sample config i could use to map out my Nema17 motors it would really help .
I do need assistance in Openpnp more likely and feel there might be a bug especially if the speed is not reducing .
Ps ive followed the wiki on setting speeds and have dropped acceleration to 200 and Speed to 600 .. anything more and the machine skips and looses its place .


config.g

mark maker

unread,
Jan 17, 2022, 3:50:53 AMJan 17
to ope...@googlegroups.com

Hi NismoBoy34

> Its been a weekend of Torment trial and error and head bashing

Setting up a controller for a new kind of machine is a difficult undertaking. You need to understand many, many things, from underlying physical and mathematical theory, all the way to very practical matters. Take your time trying to understand these matters, before acting. You really need to understand what "feed-rate" and "acceleration" (or "jerk") mean, for the machine. How is it related to friction and momentum? Get your head wrapped around it, instead of "trial and error and head bashing". The latter will not let you reach your goal.

If you don't believe in yourself, or don't have the time or patience, get a new TinyG and follow the Liteplacer documentation, use proven configs from the many Liteplacer + TinyG + OpenPnP users.

But I'm sure you can do it. Hang in there!

Setting up a Duet controller initially is a bit of a leap, because the online-configurator is only really good for a 3D printer (last time I looked). So you need to get your config.g right, manually.

Because the Duet people probably think they got it covered with the configurator, there is no high-level guidance for manual configuration (AFAIK). But the individual configuration commands are very, very well documented. You just need to take your time, putting the puzzle together, one piece after the other. RTFM!

https://duet3d.dozuki.com/Wiki/Gcode

And for a jump start, I sent you a link to Wolfgang's config before. Have you looked at it?

https://groups.google.com/g/openpnp/c/fl07Df18ehA/m/3zvF-vwbAAAJ

After that, please be sure to follow Issues & Solutions in OpenPnP. It should recognize Duet and propose the right solutions for you. Use the blue [i] buttons for help from the Wiki. Do not try to do it manually. If you already tried manually, consider starting a fresh OpenPnP config from scratch.

When you don't understand an issue or solution, or when you think I&S must be wrong, come back here with the specifics. Do not dismiss or manually override I&S, just to "make it go away and hope for the best".  

https://github.com/openpnp/openpnp/wiki/Issues-and-Solutions

Download the latest testing version, it has extended support:

https://openpnp.org/test-downloads/

For the Kinetics, you can not port over the TinyG settings, because TinyG has Jerk control, whereas Duet only has Acceleration control. And the Liteplacer software makes a big mess of that, confusing the physical terms "jerk" and "acceleration", so forget all what you saw there.

Instead, think physical:

https://makr.zone/thinking-machine/82/

Try to really understand the settings:

https://github.com/openpnp/openpnp/wiki/Machine-Axes#kinematic-settings--rate-limits

More specifically:

https://github.com/openpnp/openpnp/wiki/Machine-Axes#what-values-should-i-set

Start with low speeds. Get control first, break records later!

And remember: follow Issues & Solutions!

_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/c320d7ca-99bd-40c9-aec9-ae05d716f28cn%40googlegroups.com.

NismoBoy34

unread,
Jan 17, 2022, 4:53:48 AMJan 17
to OpenPnP
Good Day Mark and thank you for the advice and pointers, going back to The tinyg at this stage would not be an option ... Perserverance pays off in the end ... 

Agreed i did do alot of reading and learn best through trial and error .. on hands works well for me .

To highlight a few points .

"And for a jump start, I sent you a link to Wolfgang's config before. Have you looked at it?

https://groups.google.com/g/openpnp/c/fl07Df18ehA/m/3zvF-vwbAAAJ"

I did use this exact file ( of course with my alterations to get the results required ) and if you check my first post has the config.g attached .


https://github.com/openpnp/openpnp/wiki/Machine-Axes#what-values-should-i-set
no Matter what speeds i set the machine doesnt seem to vary in speed .. 
i then edited the config .g and commented out the acceleration and max speeds from the file and got slightly more consistent results but still cannot achieve much more than homing speeds .
My question Which takes preference  ? Config.g or Openpnp software for speed adjustment and settings ?

"After that, please be sure to follow Issues & Solutions in OpenPnP. It should recognize Duet and propose the right solutions for you. Use the blue [i] buttons for help from the Wiki. Do not try to do it manually. If you already tried manually, consider starting a fresh OpenPnP config from scratch."

I have been following and making the necessary changes and it has been working no doubt i have not been falsely dismissing .. as this would be counter productive trying to falsely flag a confirmation .

"For the Kinetics, you can not port over the TinyG settings, because TinyG has Jerk control, whereas Duet only has Acceleration control. And the Liteplacer software makes a big mess of that, confusing the physical terms "jerk" and "acceleration", so forget all what you saw there."

The TinyG controller is dead and cannot be used . I have not moved over the settings nor any parameters . They most certainly would not work different platform and different code and for this reason the learning curve has been alot harder .


I did try the online configurator ..  "Setting up a Duet controller initially is a bit of a leap, because the online-configurator is only really good for a 3D printer (last time I looked). So you need to get your config.g right, manually." And found the result to be very off track .. Additions of extruders that arent required for my setup and heating beds too ... hmmm i did decide not to use it for this reason .

In the end i am at the stage of Kinetics and have a functioning tool head with vacuum led lights for bottom and top camera and have motion control working ... 
but movement doesnt seem to correlate and from my understanding the config.g file sets the max speed but the software should in theory set the speed that is requires and acceleration ?
but in my case none seem to be giving the result i need .
using the camera settling tab buttons to test i get slow speeds .
If i enable the commented sections in Config.g close and reopen openpnp i get huge jumps in speed but openpnp has no bearing on the speed set and the result unless the values are below 1000.00 for speed and acceleration .

Thank you once again and look forward to hearing from you.

NismoBoy34

unread,
Jan 17, 2022, 4:54:25 AMJan 17
to OpenPnP
ps this is my commented lines .
; Drives
M569 P0.0 S1                                   ; physical drive 0.0 goes forwards
M569 P0.1 S0                                   ; physical drive 0.1 goes forwards
M569 P0.2 S1 D3                                   ; physical drive 0.2 goes forwards
M569 P0.3 S1                                  ; physical drive 0.3 goes forwards
;M584 X0.2 Y0.0:0.1 Z0.3 C0.4                 ; set drive mapping
M584 X0.2 Y0.0:0.1 Z0.3
M584 C0.4  R1 S0                                ; A+B 360°-continuous, but linear feed-rate
M350 X16 Y16 Z16 A16 B16 I0                        ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z80.00 C8.8888888 ; set steps per mm
;M566 X150.00 Y150.00 Z150.00 C250.0                 ; set maximum instantaneous speed changes (mm/min)
;M566 X50000.00 Y50000.00 Z400.00 C400.0                 ; set maximum instantaneous speed changes (mm/min)
;M203 X80000.00 Y50000.00 Z12000.00 C200000.0         ; set maximum speeds (mm/min)
;M203 X150000.00 Y150000.00 Z12000.00 C200000.0         ; set maximum speeds (mm/min)
;M201 X6000.00 Y5500.00 Z2000.00 C5000.00           ; set accelerations (mm/s^2)
;M201 X80000.00 Y80000.00 Z2000.00 C5000.00           ; set accelerations (mm/s^2)

On Monday, January 17, 2022 at 10:50:53 AM UTC+2 ma...@makr.zone wrote:

mark maker

unread,
Jan 17, 2022, 5:35:30 AMJan 17
to ope...@googlegroups.com

Send the machine.xml for the OpenPnP side.

For the Duet side, I'm no expert and frankly, I cannot provide support for everything, I have to leave this to others. I don't understand, why Wolfgang's config, combined with the excellent documentation by Duet, does not give you pointers for all that is needed on a simple machine like a Liteplacer.

Maybe @dc42 of Duet can help.

_Mark

dc42

unread,
Jan 17, 2022, 1:59:28 PMJan 17
to OpenPnP
@Nismoboy34 the movement speed used by RRF is determined as follows:

- If the firmware is in CNC or laser mode and a G0 command is received, movement will be at the speed specified by M203 in the config.g file.
- If a G1, G2 or G3 command is received, or a G0 command is received and the firmware is in FDM mode (the default), then movement will be at the lower of the speed specified using the F parameter and the limit set by M203.

If there is no M203 command in config.g then the firmware will use some conservative defaults.

Does OpenPnP provide a trace facility that allows you to see what G-code commands it is sending to the Duet? If so then it would be helpful to know what commands it sends for movement. From your description, it sounds as though OpenPnP is sending either G0 commands and you have the firmware in CNC or laser mode, or it is sending G1 commands with a high feedrate parameter.


mark maker

unread,
Jan 18, 2022, 2:43:00 AMJan 18
to ope...@googlegroups.com

> Does OpenPnP provide a trace facility that allows you to see what G-code commands it is sending to the Duet?

Yes. The log will (among many other things) log the commends sent, with timestamps etc.. You need to set logging to TRACE level on the Log tab.

There is also a dedicated Log Gcode option on the driver. It will log the Gcode in a separate log file, i.e. without all the other stuff (no timestamps, though).

_Mark

Adam Saiyad

unread,
Jan 18, 2022, 2:36:55 PMJan 18
to ope...@googlegroups.com
good Day 

Sorry been busy with lifes tasks .. i did carry on setting up and have left the speed slow and conservative but on the task list i am stuck at z axis slack compensation and the error is that the fiducial is 0.327mm when it should be 1.0mm and i have calibrated correctly and can see the measurement grid on the cross hair and this shows clearly the measurement calibration is correct .... will need a little help .

Regarding the Gcode logging will have to enable and run some movements etc and posts results soon ... 
ive set all speeds and acceleration to 100.00 for the time being to move forward with setup and calibration which seems to be working .
P.S @mark i have gone back and setup the z safe zone etc .. my apologies some how this slipped through the net . However each time i reopen the software the values seem to change .. im sure something to do with homing .
I have the homing switches wired in series for now and have them fed into the io1.in and io2.in and io4.in and mapped in the config.g file upon testing in DWC in the web calibraton for home on each of the X Y Z have worked .. although each time on Z calibration asks me to lower to the bed ... and press ok .
Minor issues we can work through ..
Vision is all good too i hope but seems to be correct with Fiducual calibration 1 and 2 marks but as mentioned Z slack is where im having an issue .

ive switched off 3d measurement calibration for the time being and stuck to the standard calibration to rule out any issues .

Will upload some logs soon from gcode logging .. and my new config.g file . 
Thank you once again and thank you @dc42

You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/fAF-xz17e5A/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/7084a7ae-1098-57c6-5f5f-687c1cb9c3f6%40makr.zone.
Message has been deleted

NismoBoy34

unread,
Jan 19, 2022, 3:55:46 PMJan 19
to OpenPnP

please see log attached 
machine.xml
New Text Document.txt
config (2).g

NismoBoy34

unread,
Jan 20, 2022, 4:11:43 AMJan 20
to OpenPnP
I seem to have massive calibration issues . @mark @dc42
First question how would and should homing work in this case ? We have fiducial homing which i feel im not yet ready to commence using and we have Min Sensor homing using Switches .
When open pnp opens up what should the coming procedure be ?
What should the co ordinates be ? on the bottom right hand corner ? When do the co ordinates reset to 0.000 for X Y and Z ?
In my case i open DWC web and see differences between actual value ( real world of cordinates ) vs what open Pnp is interpreting . This means there is a disconnect !
How do i go about correcting this . Ive been trying to home in DWC which works a treat and values are all 0.000 or at least close to 5.000 on the absolute side .
But open pnp is seeing differently .
I really need help here in order to get the basic layout of the machine correct each time i run openpnp in order to ensure it works as required . Machine.xml and config.g are above with some logging .
DWC REading.jpgOpenPnp REading.jpg

NismoBoy34

unread,
Jan 20, 2022, 4:15:45 AMJan 20
to OpenPnP
Another note is first moves always move in the wrong direction and not sure why .

2022-01-20 11:09:39.065 Main INFO: Bienvenue, Bienvenido, Willkommen, Hello, Namaskar, Welkom, Bonjour to OpenPnP version 2022-01-16_21-03-29.4082c2a.
2022-01-20 11:09:39.065 Scripting TRACE: Scripting.on Startup
2022-01-20 11:09:39.287 AbstractBroadcastingCamera TRACE: Camera Top Camera Down Facing thread 27 started.
2022-01-20 11:09:39.425 AbstractBroadcastingCamera TRACE: Camera Bottom Camera Facing up thread 29 started.
2022-01-20 11:12:05.946 AbstractMachine TRACE: Exception caught, executing pending motion: java.lang.Exception: Machine has not been started.
        at org.openpnp.spi.base.AbstractMachine$1.call(AbstractMachine.java:569)
        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)
2022-01-20 11:12:05.975 MessageBoxes DEBUG: Error: java.lang.Exception: Machine has not been started.
2022-01-20 11:12:08.646 ReferenceMachine DEBUG: setEnabled(true)
2022-01-20 11:12:14.779 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(G21 ; Set millimeters mode, 7000)...
2022-01-20 11:12:14.781 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(G90 ; Set absolute positioning mode, 7000)...
2022-01-20 11:12:14.792 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> G21 ; Set millimeters mode
2022-01-20 11:12:14.796 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:14.797 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:14.799 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> G90 ; Set absolute positioning mode
2022-01-20 11:12:25.326 GcodeDriver DEBUG: Detecting firmware and position reporting, please ignore any errors and warnings.
2022-01-20 11:12:25.335 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M115, 7000)...
2022-01-20 11:12:25.350 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M115
2022-01-20 11:12:25.352 GcodeDriver$ReaderThread TRACE: [serial://COM9] << FIRMWARE_NAME: RepRapFirmware for Duet 3 Mini 5+ FIRMWARE_VERSION: 3.3 ELECTRONICS: Duet 3 Mini5plus WiFi FIRMWARE_DATE: 2021-06-15 21:46:20
2022-01-20 11:12:25.353 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:25.353 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M114, 7000)...
2022-01-20 11:12:25.356 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M114
2022-01-20 11:12:25.358 GcodeDriver$ReaderThread TRACE: [serial://COM9] << X:-73.700 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -5896 -85 -398 0 Machine -73.700 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:12:25.358 GcodeDriver TRACE: Position report: X:-73.700 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -5896 -85 -398 0 Machine -73.700 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:12:25.365 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M584, 7000)...
2022-01-20 11:12:25.365 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:25.376 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M584
2022-01-20 11:12:25.380 GcodeDriver$ReaderThread TRACE: [serial://COM9] << Driver assignments: X0.2 Y0.0:0.1 Z0.3 (c)C0.4, 4 axes visible
2022-01-20 11:12:25.381 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:25.382 GcodeDriver DEBUG: End detecting firmware and position reporting.
2022-01-20 11:12:26.357 GcodeDriver DEBUG: Detecting firmware and position reporting, please ignore any errors and warnings.
2022-01-20 11:12:26.358 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M115, 7000)...
2022-01-20 11:12:26.360 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M115
2022-01-20 11:12:26.362 GcodeDriver$ReaderThread TRACE: [serial://COM9] << FIRMWARE_NAME: RepRapFirmware for Duet 3 Mini 5+ FIRMWARE_VERSION: 3.3 ELECTRONICS: Duet 3 Mini5plus WiFi FIRMWARE_DATE: 2021-06-15 21:46:20
2022-01-20 11:12:26.366 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M114, 7000)...
2022-01-20 11:12:26.366 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:26.370 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M114
2022-01-20 11:12:26.372 GcodeDriver$ReaderThread TRACE: [serial://COM9] << X:-73.700 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -5896 -85 -398 0 Machine -73.700 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:12:26.373 GcodeDriver TRACE: Position report: X:-73.700 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -5896 -85 -398 0 Machine -73.700 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:12:26.373 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:26.373 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M584, 7000)...
2022-01-20 11:12:26.376 GcodeDriver$ReaderThread TRACE: [serial://COM9] << Driver assignments: X0.2 Y0.0:0.1 Z0.3 (c)C0.4, 4 axes visible
2022-01-20 11:12:26.376 GcodeDriver DEBUG: End detecting firmware and position reporting.
2022-01-20 11:12:26.378 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:26.376 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M584
2022-01-20 11:12:44.637 GcodeDriver DEBUG: Detecting firmware and position reporting, please ignore any errors and warnings.
2022-01-20 11:12:44.637 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M115, 7000)...
2022-01-20 11:12:44.639 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M115
2022-01-20 11:12:44.641 GcodeDriver$ReaderThread TRACE: [serial://COM9] << FIRMWARE_NAME: RepRapFirmware for Duet 3 Mini 5+ FIRMWARE_VERSION: 3.3 ELECTRONICS: Duet 3 Mini5plus WiFi FIRMWARE_DATE: 2021-06-15 21:46:20
2022-01-20 11:12:44.641 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:44.641 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M114, 7000)...
2022-01-20 11:12:44.644 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M114
2022-01-20 11:12:44.646 GcodeDriver$ReaderThread TRACE: [serial://COM9] << X:-73.700 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -5896 -85 -398 0 Machine -73.700 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:12:44.646 GcodeDriver TRACE: Position report: X:-73.700 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -5896 -85 -398 0 Machine -73.700 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:12:44.646 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:12:44.647 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M584, 7000)...
2022-01-20 11:12:44.649 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M584
2022-01-20 11:12:44.649 GcodeDriver$ReaderThread TRACE: [serial://COM9] << Driver assignments: X0.2 Y0.0:0.1 Z0.3 (c)C0.4, 4 axes visible
2022-01-20 11:12:44.650 GcodeDriver DEBUG: End detecting firmware and position reporting.
2022-01-20 11:12:44.650 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:14:49.619 AbstractHeadMountable DEBUG: Top Camera Down Facing.moveTo((-1.000000, 0.000000, 0.000000, 0.000000 mm), 1.0)
2022-01-20 11:14:49.648 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M204 S500.67 G1 X-1.0000    F1342.54 ; move to target, 7000)...
2022-01-20 11:14:49.658 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M204 S500.67 G1 X-1.0000    F1342.54 ; move to target
2022-01-20 11:14:49.661 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M400 ; Wait for moves to complete before returning, 7000)...
2022-01-20 11:14:49.661 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M114 ; get position, -1)...
2022-01-20 11:14:49.662 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:14:49.667 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M400 ; Wait for moves to complete before returning
2022-01-20 11:14:49.669 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M114 ; get position
2022-01-20 11:14:53.041 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:14:53.042 GcodeDriver$ReaderThread TRACE: [serial://COM9] << X:-1.000 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -80 -85 -398 0 Machine -1.000 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:14:53.043 GcodeDriver TRACE: Position report: X:-1.000 Y:-1.059 Z:-4.980 C:0.000 E:0.000 Count -80 -85 -398 0 Machine -1.000 -1.059 -4.980 0.000 Bed comp 0.000
2022-01-20 11:14:53.044 GcodeDriver TRACE: GcodeAsyncDriver got lastReportedLocation (x:-1.000000, y:-1.059000, C:0.000000, Z:-4.980000)
2022-01-20 11:14:53.046 GcodeAsyncDriver TRACE: GcodeAsyncDriver confirmation complete.
2022-01-20 11:14:53.050 AbstractMotionPlanner DEBUG: Reported location changes current location from (x:-1.000000, y:0.000000, C:0.000000, Z:0.000000) to (x:-1.000000, y:-1.059000, C:0.000000, Z:-4.980000)
2022-01-20 11:14:53.051 ReferenceActuator DEBUG: Top Camera LED.actuate(true)
2022-01-20 11:14:53.052 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M4 M42 P3 S1, 7000)...
2022-01-20 11:14:53.044 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok
2022-01-20 11:14:53.056 GcodeDriver$ReaderThread TRACE: [serial://COM9] << Error: M4: Command is not supported in machine mode FFF
2022-01-20 11:14:53.057 GcodeAsyncDriver$WriterThread TRACE: [serial://COM9] >> M4 M42 P3 S1
2022-01-20 11:14:53.057 GcodeDriver$ReaderThread TRACE: [serial://COM9] << ok

mark maker

unread,
Jan 20, 2022, 4:31:08 AMJan 20
to ope...@googlegroups.com

OpenPnP is showing you conceptual tool coordinates. So for one thing they depend on the tool selected in Machine Controls. If you move the Nozzle to a certain X/Y coordinate, and then the camera to the same X/Y coordinates, they should be on the same spot. But obviously the controller will have different coordinates, because the Nozzle is shifted (by the so-called head offsets)  from the Camera.

There can be other things, like axis transformations, run-out compensation, etc. if applicable.

All that's the difference between raw controller coordinates and conceptual OpenPnP coordinates.

As to the other questions, it seems you really need to increase your knowledge about such machines. Learn about homing and a safe homing order (e.g. Z must home to max first, and only then can X/Y home safely). To a minimal degree, you need to understand these things. From an OpenPnP stand-point, we take such a level of understanding and controller side setup for granted.

To be a bit blunt: this is not a Product Support Service channel, this is still a DIY community, and the Y means "Yourself" 😁.

_Mark

NismoBoy34

unread,
Jan 20, 2022, 5:15:13 AMJan 20
to OpenPnP
My Diy ability is somewhat good i would think and my understanding is growing with each hr more i use and understand what has been created. The auto config processes are amazing in openpnp im starting to realize and see the immense value in the communities efforts . Thank you .

bert shivaan

unread,
Jan 20, 2022, 5:24:02 AMJan 20
to OpenPnP
I may be (and likely am) way wrong about this, but assuming RRF has different "modes" like FFF,Laser,PNP, etc, are you in the correct mode? It doesn't seem like position report should give a bed comp value? Also it returns an error saying something (M4 maybe) is not valid in FFF mode.
Maybe this is something to look into?

What specific question do you have about homing?
I use only visual homing, I don't even have any switches on my machine.

Start openPNP, enable (green button), then home machine.
Until it is himed, nothing important can be done. Sometimes I have to jog my machine so it can see the homing fudical.

NismoBoy34

unread,
Jan 20, 2022, 6:15:31 AMJan 20
to OpenPnP
@cncmachineguy thank you for clarification .
i was asking how the initial power up and power on should work .
Now that you have explained it makes sense that it is partial manual and Fiducial homing based which is great news .
being used to light placer it was mechanical endstops with switches and each open of the software requires a re-home to take place and the machine takes ages to get Z home and X home then Y home and so forth a drag ...
But im happy with the response you have given its all new to me and im sure will be all new to other prospective users . I thank you for taking the time to read and get what my question was .. amongst all the other queries and misunderstandings .
Thank you.
PS what machine mode should the Duet be in as none match the PNP mode ? CNC Laser are both options available on the RRF code list but i dont see PNP mode ? and if it is a function how do i enable this by default either by making a code entry into config.g or sending a once command ?

dc42

unread,
Jan 22, 2022, 1:58:35 PMJan 22
to OpenPnP
@NismoBoy34 I have no experience with OpenPnP, however from Mark's response I am wondering whether it would be helpful to configure the Duet this way:

1. Define the XY coordinates of the Head Reference Point to be those of the camera. Then the positions of the XY maxima and minima must be  those that the camera can reach.
2. Use the G10 command in config.g to set the X and Y offsets of the pickup head relative to the camera.

This is similar in concept to a tool changing 3D printer, where we take the Z probe on the tool pickup to be the head reference point, and define the nozzle offsets of each tool relative to that.

See https://duet3d.dozuki.com/Wiki/Centering_the_bed_or_setting_the_bed_origin for more information about how to set the position of the origin of the machine coordinates system.

HTH David

NismoBoy34

unread,
Feb 14, 2022, 9:55:20 AMFeb 14
to OpenPnP

Just to confirm that i now have a functioning setup and again thank you for your assistance and help .. i do have some placement issues with TQFP components will post this up as a new question if any one wants my config files etc please do leave a note . Im very happy with the results . Openpnp is great thank you to the contributors for their effort and time ..

bert shivaan

unread,
Feb 14, 2022, 12:24:54 PMFeb 14
to OpenPnP
I would LOVE to have all the config files for your setup, plus a quick description of your machine things ie X/Y/Z/C1/C2/ Vac pump/Vac sensors/etc.

I am going to try and get the Wiki up to speed so that using Duet3 mini 5 is no real problem. Sample config for a basic setup and such.


dc42

unread,
Feb 14, 2022, 12:35:28 PMFeb 14
to OpenPnP
If you email me your config files, I will create an OpenPnP/Liteplacer folder at https://github.com/Duet3D/RRF-machine-config-files and add them there. Or if you prefer, fork that repo, add them to your fork, and send me a PR.

Balázs Kiss

unread,
Sep 28, 2022, 3:04:25 AMSep 28
to OpenPnP
Hey, we would love to have the config files - sorry for hijacking the post so late... Thanks in advance!
Reply all
Reply to author
Forward
0 new messages