Error Code 32 : Job ID miss match
Hello
NEF Combine Success, and kneron plus python example well performed.
So I try to face detection and face landmark by using Combined NEF(face landmark NEF, face detection landmark NEF) and customized Kneron plus -python code, but I faced Error code 32. In two KL630, my customed origin code well performed, but I fix the code fit to one KL630 version, I faced Error code 32.
I want to know how to fix that error code 32
Additionally, I encountered Error Code 32 when attempting face detection using Image Inference followed by face landmark detection using Data Inference. Can Image Inference and Data Inference be assigned to separate variables and used together sequentially? Or must they only be used independently, such as Image Inference alone or Data Inference alone? I am very curious about this.
Comments
@seongyunpark
Hi seongyunpark,
You are using two different models, each with its own application. Based on your error message, it seems that the issue might be caused by mixing up the usage of Generic Inference in Python.
https://doc.kneron.com/docs/#plus_python/feature_guide/chapter/generic_inference/
In Kneron PLUS, there are two types of Generic Inference:
One is “Generic Image Inference,” and the other is “Generic Data Inference.” Each type has its own APIs.
Generally, there are two scenarios:
1. If you use `kp.inference.generic_image_inference_send()`, you must follow it with `kp.inference.generic_image_inference_receive()`.
2. If you use `kp.inference.generic_data_inference_send()`, you must follow it with `kp.inference.generic_data_inference_receive()`.
It’s possible that your send and receive calls got mixed, which could lead to the error code.
Although Image Inference and Data Inference can both exist at the same time, they cannot be used in an interleaved manner.
Hi Andy Hsieh
Thank you for your reply
I checked my code but I already did your solution (send_image_inference -> receive_image_inference, send_data_inference,receive_data_inference)
my code is have 3 thread by import thread
I supposed that that conflict between thread, I'm not sure of that my solution
Hi,
The error code KP_ERROR_RECEIVE_JOB_ID_MISMATCH_32 appears when the Job ID returned from the firmware is different from the original Job ID set in Kneron PLUS:
As Andy said, the send and receive calls might've gotten mixed. Please check if you're using the correct device group when you receive the inference results:
Also, this is unrelated, but we'd recommend you to set your model ID to 32769 and above when you convert your model to avoid clashing with existing Kneron models.
Dear @Maria Chen @Andy Hsieh
Thank you for your support
I can fix that my problem
I tested with two KL630 devices, and there were no thread collisions. However, when using a single KL630 device, thread collisions occurred, likely causing Error Code 32. Once again, I sincerely thank you for your support.