Two technical questions regarding OMS0684
Dear Kneron Technical Support,
I am currently developing a smart door lock and attendance system using the OMS0684 dual-camera face recognition module integrated with an ESP32 host controller via UART communication.
However, I have two technical questions regarding the camera and snapshot functionality:
1. RGB Snapshot Issue
Even under daylight conditions, the snapshot image returned from the module is still grayscale (NIR). It seems the RGB camera does not switch from IR mode to color mode.
Could you please advise how to force the module to capture RGB images instead of NIR images?
Is there any command, configuration parameter, or condition required to trigger the IR-cut filter or RGB pipeline?
2. Image Data Retrieval via UART
I would like to retrieve the snapshot image data directly from OMS0684 and send it to the ESP32 through UART.
Is there an official command or protocol for transferring image frame data over UART?
If supported, could you please provide documentation or example commands for snapshot image transmission?
My application requires storing a face snapshot when a user successfully verifies or enrolls.
Thank you very much for your support. I would greatly appreciate any documentation, SDK reference, or example code you can share.
Comments
Dear Customer,
Thank you for contacting Kneron Technical Support.
Regarding your questions about the OMS0684 dual-camera face recognition module, please find our answers below.
Currently, the OMS0684 module does not support RGB image output.
The image snapshot provided by OMS0684 is based on the NIR (near-infrared) camera pipeline only. Therefore, receiving grayscale (NIR) images is expected behavior.
At this moment, there is no command, configuration parameter, or control interface available to switch the camera output to RGB mode, trigger an IR-cut filter, or enable an RGB image pipeline.
For the UART communication protocol and supported commands of OMS0684, please refer to the official documentation provided in the “OZM-0684 data” section on the Kneron website:
https://www.kneron.com/tw/support/developers/
You may download the OMS0684 communication protocol from the following link:
Communication_protocol_V2
The UART protocol documentation describes the supported commands and data formats for interacting with the module, including snapshot related operations.
Please note that OMS0684 is designed primarily for face recognition and verification applications, and image access and transmission capabilities are limited to what is defined in the official protocol.
If you have any further questions after reviewing the documentation, feel free to contact us again.
Best regard
Andy Hsieh
Dear Kneron Technical Support Team,
I am currently integrating the OMS0684 face recognition module with a Raspberry Pi host controller via UART (115200 8N1).
UART communication is working correctly. I am able to successfully execute the VERIFY command and receive proper recognition results from the module.
However, I am unable to perform user enrollment through the UART protocol.
Every time I send the KID_ENROLL (0x0013) command, the module always replies with:
EF AA 00 00 02 00 01 03
The response is consistent for all 5 required poses (middle, left, right, up, down).
I have confirmed:
checksum is correct
payload structure includes user_id, privilege, name (32 bytes), and pose
command timing and retries have been tested
lighting and face positioning are proper
VERIFY command works normally
Because VERIFY works but ENROLL is always rejected, I suspect the module firmware might be a standalone access-control firmware where enrollment is only allowed via the PC Programming Tool (USB interface), and not via the host UART protocol.
Could you please confirm:
Does OMS0684 support user enrollment via UART in the factory firmware?
Is a different firmware (host-controlled / SDK firmware) required to enable KID_ENROLL?
If so, could you provide the appropriate firmware and flashing procedure?
My use case is a host-controlled smart access control system where the host MCU must add and delete users dynamically.
Thank you very much for your assistance.
Best regards,
Fadli Ferdinand
Dear Fadli,
Thank you for your inquiry.
We would like to clarify that the original firmware provided with the OMS0684 module already supports user enrollment, including enrollment through the UART interface.
To help you verify the correct enrollment flow and command usage, we recommend that you try our Programming Tool.
Please note that the Programming Tool is designed to run on Windows platforms only.
However, the UART commands sent by the tool and the corresponding responses from the module can be used as a reference for your own host-side implementation.
You can download the Programming Tool from the following link:
ProgrammingTool_V35(KnDoorLock)
In addition, please refer to the OZM-0684 data section on our developer support website, where you can find related documentation and reference materials:
https://www.kneron.com/tw/support/developers/
We recommend reviewing the materials in the OZM-0684 data area, as they contain useful information for UART command usage and system integration.
The OZM-0684 data area also includes a usage video of the Programming Tool, which demonstrates how to operate the tool and perform related functions. We recommend reviewing this video together with the documentation, as it may help you better understand the enrollment workflow and UART command sequence.
If you continue to experience any issues during enrollment after referring to the above resources, please feel free to share your test results with us, and we will be glad to assist you further.
Best regards,
Andy Hsieh