I am facing a strange behavior with depth-only data acquisition on raspberry pi 3B+ when properly working on Pi 4 with exact same code and configuration. Both configuration are USB 2.0 Moreover, when unplung-replug the Astra Mini, sometimes, it works properly back.
I am using the latest SDK release:
I used the
install.sh script as sudo and source the dedicated
I use this python code: here
It waits for a device, starts a stream and measure per-second on-frame-ready events.
Activating the logging in the OpenNI.ini, I posted two log files here. One is the proper behavior with 30fps, the other is when the problem occures.
- test_pi3b_ko.log + test_pi3b_ok.log
It seems data-stream is corrupted:
when in the ok log we got
13400348 VERBOSE [FPS] Depth: 31.64
in the ko log we got:
1668059 WARNING Depth: Expected e81, got e79
1668075 WARNING Depth frame is corrupt!
1668087 WARNING Read: Depth buffer is corrupt. Size is 4448 (!= 512000)
It seems to be the only difference between both logs.
I already saw this kind of message here on the forum but i could'nt find the proper solution for it.
To be noted that:
- this same exact code with same exact ini files is properly working on Raspberry PI4 USB 2.0
- the same problem occures when started as Root (no more Thread Priority Warning Message)