[Bottom Vision][Retry][2.4] Need limit on attempts when one nozzle empty and second has part

108 views
Skip to first unread message

Artem Stanchak

unread,
Nov 18, 2025, 2:26:37 PMNov 18
to OpenPnP
Hi everyone,

I’m using OpenPnP 2.4 (build 4743a54) with a dual–nozzle head and 
custom auto-feeder (separate Mega2560 controller). There is no 
vacuum sensor.

I need to stop the job after 3–4 failed bottom-vision attempts 
when one nozzle has a part and the second one is empty.

Problem:
– If I set Error Handling = Alert → the job stops immediately, 
  but it also discards the part on the *other* nozzle.
– If I set Error Handling = Defer → it keeps retrying 
  infinitely until I manually notice the issue.
– There is no "Pick Retry" or "Alignment Retry" tabs in this 
  2.4 build, so I cannot limit attempts.

Question:
**Is there any built-in way in OpenPnP 2.4 to limit the number 
of bottom-vision failures (for missing part on nozzle) without 
scripts and without a vacuum sensor?**

I only need:
– 3–4 attempts
– then stop the job
– but keep the part on the second nozzle untouched

Is there an internal setting, or does this require upgrading to 
a newer JobProcessor with retry limits?

Thanks!

Toby Dickenson

unread,
Nov 18, 2025, 3:14:53 PMNov 18
to ope...@googlegroups.com
Hi Artem,

> I’m using OpenPnP 2.4 (build 4743a54)

That is the released version 2.4.

– If I set Error Handling = Alert → the job stops immediately, 
  but it also discards the part on the *other* nozzle.

That is unexpected. "Alert" should freeze the job and show an error message box. When you press "OK" on the error message, all subsequent actions are up to you. There is no automatic discard.

Do you see an error message box? Is the double-discard before or after?
 
– If I set Error Handling = Defer → it keeps retrying 
  infinitely until I manually notice the issue.

You wrote "it keeps retrying infinitely" but what does that mean? I am assuming that you mean it discards the part and keeps going with the job by starting another pick/align/place cycle. Is that correct?

If you are running a job with 100 placements of one part, then version 2.4 will have 100 attempts at picking and aligning that part. That is one per placement. This is what has been changed in the test branch. But "Alert" should work in 2.4 too.





Artem Stanchak

unread,
Nov 18, 2025, 3:28:43 PMNov 18
to OpenPnP
After unsuccessful bottom vision , it causes an error window with only an "OK" button, and then the only choice is "stop". and it even resets the nozzle where the spare part is.

If Defer is enabled in JOB, it continues to take and discard, and this is bad when, for example, the tape in the autofeeder has run out and it doesn't know it.

вівторок, 18 листопада 2025 р. о 22:14:53 UTC+2 to...@tarind.com пише:

Toby Dickenson

unread,
Nov 18, 2025, 4:13:00 PMNov 18
to ope...@googlegroups.com
Hi all,

On Tue, 18 Nov 2025 at 20:28, Artem Stanchak <tyom...@gmail.com> wrote:
After unsuccessful bottom vision , it causes an error window with only an "OK" button

I wonder if this is a problem of a missing translation... What language are you using in openpnp?

Please can you send a screenshot showing this error window with only an OK button. Also please send an error log file, which will tell us which error message should be on that box.
 
and then the only choice is "stop". and it even resets the nozzle where the spare part is.

Yes, "stop" will discard any parts on your nozzle.

But you do have other options. Openpnp was trying to align the part on the nozzle, and failing because there was no part present. It will try and fail again if you re-start the job. But it will succeed if you manually pick the expected part onto the nozzle before restarting.

Artem Stanchak

unread,
Nov 18, 2025, 4:36:35 PMNov 18
to OpenPnP
in version 1.0 it was very convenient to see errors: "skip", "ignore", "repeat" or "pause". Usually I suspect that I am doing something wrong)). I will try to take screenshots tomorrow.

Artem Stanchak

unread,
Nov 19, 2025, 3:17:43 AMNov 19
to OpenPnP
That's it, and then just "stop"

вівторок, 18 листопада 2025 р. о 23:36:35 UTC+2 Artem Stanchak пише:
job_error-v2_4.jpg

Artem Stanchak

unread,
Nov 19, 2025, 3:18:36 AMNov 19
to OpenPnP
And so it was in version 1.0job_error-v1_0.jpg

середа, 19 листопада 2025 р. о 10:17:43 UTC+2 Artem Stanchak пише:

Toby Dickenson

unread,
Nov 19, 2025, 7:04:55 AMNov 19
to ope...@googlegroups.com
Hi Artem,

Technical support over a mailing list can be difficult, so please can I request that you strive for accuracy in your descriptions. You previously wrote that the error message box only had an "OK" button. But, crucially, it had an error message too! that would have been useful to know.

On Wed, 19 Nov 2025 at 08:18, Artem Stanchak <tyom...@gmail.com> wrote:
And so it was in version 1.0job_error-v1_0.jpg

середа, 19 листопада 2025 р. о 10:17:43 UTC+2 Artem Stanchak пише:
That's it, and then just "stop"

I dont understand what you mean by "just stop". There is a stop - the green ring below. But you have other options too.

I dont know openpnp 1.0 (that was before my time). But you are effectively at "pause job" after pressing the OK button. The stop is the green ring below, and "Try again" is the purple ring below which will retry the failed vision.

image.png

Openpnp will have automatically taken you to the Parts tab. If vision is failing because there is no part on the nozzle then I think your best course of action is to press the feed and pick button (blue ring) before "try again" (purple ring)

image.png


Artem Stanchak

unread,
Nov 19, 2025, 7:30:02 AMNov 19
to ope...@googlegroups.com
Why do I have to press again to take the component if it has run out in the automatic feeder and it turns out that the second nozzle already has a component and it will drop it. When I press stop, because there are no other options.

ср, 19 лист. 2025 р. о 14:04 Toby Dickenson <to...@tarind.com> пише:
--
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 visit https://groups.google.com/d/msgid/openpnp/CAH35urcr-%3D9ZU8OHb30Fgmc69a7jfApwMwUoYEs73nsA-%2B8afQ%40mail.gmail.com.


--
З повагою, Артем Станчак
менеджер "Bitwire", SMT Engineer

"Ми втілюємо Ваші ідеї у життя"

Artem Stanchak

unread,
Nov 26, 2025, 5:56:11 AMNov 26
to OpenPnP

So tell me what to do, otherwise I'm at a dead end.
середа, 19 листопада 2025 р. о 14:30:02 UTC+2 Artem Stanchak пише:

Toby Dickenson

unread,
Nov 26, 2025, 7:11:31 AMNov 26
to ope...@googlegroups.com
Hi Artem,

You have not explained what you are trying to achieve here. I understand you are frustrated that openpnp is not doing what you want, but it is difficult to help when we do not know what you want, or where you perceive there to be a gap.

I understand your situation is:
* You are using the openpnp test branch.
* You have a machine with 2 nozzles.
* You are running a job that needs at least 2 placements of one part.
* One nozzle picked the last part from a feeder, so now the feeder is empty.
* The second nozzle tried to pick a part, but of course there was nothing for it to pick
* You are using "Alert" error reporting mode.
* The machine is now stopped, alerting you that a vision check failed.

At this point you have several options:

Option A.
You restock the feeder (or a different feeder) with your next tape of that part. 
Note that "Alert" error reporting mode means that openpnp will tell you about every problem, and expect you to fix it. Openpnp has done its part in telling you that bottom vision has found no part. Now you need to do your part; correct the situation so that bottom vision can succeed.
Openpnp will have automatically taken you to the Parts tab to make this easy. You press the feed and pick button (green circle) to put a part on the nozzle. Then resume the job (pink circle) to have openpnp redo the step which previously failed. This time bottom vision will succeed, and the job continues.

Option B
Maybe you dont want to restock that feeder right now. Maybe you are out of stock. In this case "Alert" error reporting is not for you, because you cant fix the errors that openpnp is showing you.
Toggle to "Defer" error reporting mode (blue circle). This means that openpnp will carry on running rather than alerting you to any errors. Then resume the job. In this case openpnp will place the good part on the first nozzle, and "clean" the other nozzle with a visit to the discard bin (you know the nozzle is empty, but openpnp cant be sure that there is no mispick stuck to the nozzle)

Option B.1.
You might want to manually disable the empty feeder. Openpnp will then go on to pick and place all other placements; "Defer" error reporting means that the machine is kept busy. When it has placed all that it can, the job ends and the error log shows a report of the parts which remain outstanding.

Option B.2.
If you don't manually disable the feeder, it will have 2 more attempts of feeding from this feeder which we know to be empty. After a total of 3 cycles where vision fails it will automatically disable the feeder anyway, then continue. Note that all of this happens with no message boxes.

I hope this helps,

unnamed.png

Toby


Artem Stanchak

unread,
Nov 28, 2025, 7:34:41 AMNov 28
to ope...@googlegroups.com
Hi Toby.
Here is an example: 1. Conditionally, my autofeeder has run out of parts, and it continues to take from empty cells and there is no automatic shutdown of the feeder.
2. For some reason, my height is off and the part is not captured by the nozzle, the work continues and if you don't look, it pushes out the entire tape until the process is complete.

ср, 26 лист. 2025 р. о 14:11 Toby Dickenson <to...@tarind.com> пише:

Toby Dickenson

unread,
Nov 28, 2025, 11:07:55 AMNov 28
to ope...@googlegroups.com

Artem Stanchak

unread,
Nov 30, 2025, 4:22:33 AM (12 days ago) Nov 30
to OpenPnP
version 2.4


пʼятниця, 28 листопада 2025 р. о 18:07:55 UTC+2 to...@tarind.com пише:
2.4.jpg
Reply all
Reply to author
Forward
0 new messages