D430 frames dropped and unknown message on USB endpoint EP7
We are attempting to stream the camera data and using an external trigger for the shutter at 30 FPS. The camera starts up and runs great after about 10 seconds, but before then we see a lot of frame drops and the camera only runs at about 4-6 FPS. Trying to figure out what happens before the camera starts working correctly.
During the period of the frame drops, the USB trace shows the camera sends 2-3 frames on USB Endpoint 2, but then then we get a message on Endpoint 7: '01 03 00 07 0F', and then 75-300 ms later we get another message '01 03 00 07 0E', then we get a few more valid frames. This pattern repeats itself and then the camera starts working at 30 FPS after about 10 seconds.
Can anyone tell me what the messages we are seeing on Endpoint 7 are? Thanks!
-
When auto-exposure is enabled, the camera uses the first several frames of a stream to settle down the auto-exposure values. I wonder if the auto-exposure is having initial trouble adjusting to the environmental conditions (e.g the lighting in the location you are using the camera in) and then finds a good balance by the 10 second mark. The FPS drop, to me, would be characteristic of an issue with the exposure values.
Does the problem still occur if auto-exposure is turned off and fixed manual exposure values are used, please?
-
@MartyG, I believe James has a typo in the messages, it should be '01 03 00 07 00 0F' and '01 03 00 07 00 0E'. And we have confirmed that auto-exposure is turned off. We receive a 6 byte message at the beginning that looks like this: '01 03 00 0B 00 00'.
We've confirmed that the same message is sent when we toggle the "Enable Auto Exposure" switch to the OFF position in the RealSense Viewer.
Based on our debugging so far, it looks like that the 4th byte of the message is a descriptor with 2 bytes of data following it.
If that is the case, do you know what 0x07 would be related to?Thanks!
-
There are several references in the SDK's code to 0x07. RealSense programming is not one of my specialist areas, so I can only make educated guesses. One of the several references relates to saturation though. It is possible that the camera is experiencing light saturation on start-up and then adjusts to it by the 10 second point.
To confirm or eliminate this, you could try putting your hand over the camera lens to block out light when you start the stream and see how it affects FPS.
-
I have tried putting my hand over the camera and this didn't affect the FPS.
I also found that the SDK has some defines with 0x07 that relate to saturation, however I am skeptical that we are decoding the 6 byte message correctly, since there is no mention of the 0x0B being auto-exposure. -
This question is of a deep enough technical level that it is likely best handled by the RealSense GitHub, as they have great experience and knowledge about extremely technical issues relating to the SDK. You can create a question there by visiting the link below and clicking the 'New Issue' button. I apologize that I could not be of more help in this instance.
Please sign in to leave a comment.
Comments
5 comments