When I try to read data using senselReadSensor -> senselGetNumAvailableFrames -> senselGetFrame functions, I got the following error after a certain time:
[fd:3] select() timedout with no data, ret=0
Failed to receive ack from sensor
Error reading frame data.
Does anymore knows why ?
Hey @debiluz. Thanks for reaching out.
If your device is not accessed for 3 seconds in protocol mode then it will time out and need to be opened again.
Are the samples working for you?
Thanks @Matt_from_Sensel . In fact, it doesn’t happened immediately, often a few minutes after the program runs. And I use almost the same way of getting data as the samples, just add some algorithms for each frame I get. What do you mean by not accessed, I have a while loop always senselReadSensor -> senselGetAvailableFrames -> senselGetFrame, is that regarded as access the device?
The methods you describe here do count as access to the device. A few more questions that will help us get to the bottom of this:
- What operating system and language are you using?
- Does this occur when you run the samples?
- Are there any long delays in the additional algorithms you are running?
I’m using c++ on macOS. It doesn’t occur on the samples, since I haven’t run that for a long time. My program only has this problem sometimes, not very frequently. I guess there aren’t long delays in additional algorithms.