-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Sporadic lock of USB interface #7
Comments
which multimeter it has? |
@baryluk I am witnessing the same behaviour with a FNIRSI FNB58. Perhaps the device needs a specific sequence to exit cleanly? |
@luismeruje Yes, I believe that one needs to send some sequence (at possibly a specific time), before stopping connection. My guess is that device otherwise will fill up some UART FIFOs and possibly enter infinite loop trying to send more data, but FIFO is full, and will not be smaller. When I looked at USB packet captures few months ago, I was not able to figure it out quickly (I spent maybe 20 minutes on this), so just ignored. But it would be nice to fix it. |
I have created a pull request which does some impromevements to code structure and also to the stability of the tool. |
This is now mostly fixed. Big thanks to Luis. It still sporadically locks, despite draining the descriptors and waiting for the timeout. It appears that it now locks on initialization sometimes. That is draining buffers out on exit look good, but something else is happening. So keeping this issue open. |
So it appears, that if I remove these two lines in the code:
together with thew new draining code on Ctrl-C, it is quite reliable. Was not able to hang it yet. All this Also Once I am happy with this, I think what I will make it not do |
Having the |
I just add time.sleep(0.08) in front of ep_in.read in while loop, FNB58 works well! ex) |
Killing the logger, might leave the meter in a state, where it does not allow to restart the logger.
Sometimes, second or third run, also makes UI (screen and controls) on the meter freeze.
Below is in FNB58, firmware 0.40
The text was updated successfully, but these errors were encountered: