Hi, we’re evaluating the Arducam 2MP OV2311 global shutter monochrome USB camera board (SKU B0322, the one with the low-distortion M12 lens and no mic). We’re using it as a DMS camera accessory over USB UVC. It enumerates fine and is plug-and-play with no extra drivers, which is great, but we’re seeing noticeable compression artifacts in the captured images and output video. Is there any way to control or reduce the compression ratio on this module?
Thanks for the details. Can you tell me a bit more about your setup — OS, capture app, and whether you’re using the default UVC frame settings? Also, when you say compression artifacts, do you mean JPEG/blocky artifacts or something else? I’ll check with our engineer on the compression behavior of the B0322 while you get back to me.
Setup is Windows, capturing through standard UVC (we’ve tried a couple of capture apps, same result). The artifacts look like typical JPEG blockiness, especially around edges and in flat areas. We’d also like to know what the default compression ratio actually is. On top of that, we need the init settings, resolution settings and a register dump of the OV2311 when it’s in running mode so we can validate what the sensor is doing. And we need to access the strobe signal coming from the OV2311 — can you point me to how that’s exposed on this board? Also, which UVC controller is used on the module? That matters for our software feasibility.
I checked with our vendor engineer on the compression ratio. The default compression ratio for the B0322 is 32. I should also be upfront: the compression behavior on this module does not follow the standard UVC compression controls, so there is no standard control toolbar for it. Regarding the register dump and init/resolution settings — that information is treated as a trade secret and we are not able to provide it. For the strobe signal, are you looking at the Arducam wiki page? Let me know what you’ve found so far.
Thanks, that helps a bit. A compression ratio of 32 would explain the artifacts then — that’s quite aggressive for our use case. If there’s no UVC control toolbar, is there any other supported way to lower it, even through a custom command or a vendor tool? On the strobe, yes — we found a way to wire the strobe signal based on the Arducam wiki, but we had asked for the module schematics to double-check the wiring analysis. Still haven’t received those. And on the register dump — is there any partial info you can share, like which registers control resolution? It’s hard to validate the sensor without it.
On the compression: since it’s non-standard relative to UVC, there isn’t a standard property page or vendor tool that exposes it. If you need the compression ratio changed, that would have to go through our sales team as a customization request. On the register dump: I understand it’s frustrating, but the init settings and register dump are not disclosed by the vendor. I’m not able to share partial register info either. For the strobe, if you’ve already wired it per the wiki, what’s the remaining question — are you seeing the strobe output on a scope, or is it not toggling?
Understood on the compression. For the strobe, we’ve wired it based on the wiki and it does look like we have the signal, but we want the schematic to confirm the pin mapping and make sure we’re not driving it wrong on our DMS board. Can the schematic be shared? Also, did you get an answer on the UVC controller? We need to know the controller for our software feasibility study.
The full module schematic isn’t something I can post publicly or send out in this case. Let me see what I can share about the strobe pin mapping — I’ve sent what I can through private message, please check your messages. On the UVC controller, I’ve also sent the details I’m able to share privately. For software feasibility, the key point is that the module enumerates as a standard UVC device, so anything that talks UVC should work, but the compression ratio itself is not exposed through standard UVC controls.
Got it, thanks. So to summarize our situation: the artifacts are because the module compresses at a fixed ratio of 32, and there’s no UVC control to change it. We need the init settings and register dump for validation but those are trade secret. We’ve got the strobe working from the wiki but wanted the schematic, which also can’t be shared. The UVC controller info came via PM. Is there really no path to reduce the compression at all on the existing module?
Correct on all points. The default compression ratio is 32 and it’s not adjustable through standard UVC — there’s no control toolbar because the compression implementation doesn’t follow the UVC standard for compression controls. The init settings, resolution settings and register dump are not something we can disclose. For compression reduction, the only path right now is to contact our sales team for customization. As a workaround for validation, you could try capturing at the native resolution and avoid any additional re-encoding in your app, but the on-module compression will still be at 32. Let us know how the strobe integration goes once you’ve validated the pin mapping.