-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Retry on read error #12
Comments
I am working on this and have encountered a problem with async that requires at least [email protected] to work. I am intending to change the dependency to async 1.5.x, is that likely to cause a problem with any existing code? |
I don't think there is a problem updating to async 1.5 - the only thing I would be careful of is having a hard dependency on a recent version of node itself. However I am not sure that retry belongs in the node-red module - it feels like functionality that should be within owfs itself. That way you solve the problem and get the functionality in other interfaces, such as the owget, http etc.. Also, is it an option to use a proper 1-wire adaptor instead? I am using this one: |
Using the Sheepwalk adaptor (while superior electronically) more or less doubles the cost of a Pi Zero based 1-wire server with wifi. Also I occasionally get errors on buses driven by 'proper' adaptors, usually caused by electrical interference, lightning and so on, and retries would be beneficial in that situation. I think putting retries in owfs would cause problems. It seems beneficial to wait a while after an error before retrying, and if this were implemented in owfs I think it would mean that a problem with one device would prevent access to other devices on the bus whilst waiting to do the retry. I have coded it and am just completing testing, it involves very limited changes to the code. I have also included code to manage the problem that the DS18B20 returns a value of 85 under some conditions (during reset or after being hit by interference I think). Shall I finish testing and submit a PR for you to look at and decide whether you want to include it. |
I am asking if this functionality would be accepted upstream: If it is, then we will only need the code that maps to Node-RED UI to the client configuration in this module. |
I have just pushed a change that displays a node status in the editor during a read. I decided to use promises - which makes it easier to run a block when the reads have completed. But this makes it harder to accept your change. I still think it might be better in a upstream codebase, but no response from benediktarnold. |
I agree that it would be better upstream. However if there is no reply On 25 October 2016 at 12:08, Nicholas Humfrey [email protected]
|
Still no response from @benediktarnold. I am also unable to get writing to work, because there isn't working support for it published to npm. Very frustrating. Some options:
|
I added my answer to njh/node-owfs#16 tl;dr |
I have started using this on a Pi with bit-banging 1-wire and I have come across the problem that using bit-banging is not very reliable and I am getting read errors at a rate of a few percent. It occurs to me that the best way to cope with this would be for the node to automatically re-try a couple of times when an error is encountered. Do you think this would be a good idea and if so would it have to be configurable or could it just be automatic?
The text was updated successfully, but these errors were encountered: