0
\$\begingroup\$

I just installed pyupdi and it works, but is very slow. I googled this and AVRfreaks says something about delay settings which seems irrelevant in my case (while the delay settings account for 30ms, I'm seeing something that accounts for 2s). In my case, what I see is that the readline() commands in physical.py are timing out. If I reduce the timeout value here:

self.ser = serial.Serial(port, baud, parity=serial.PARITY_EVEN, timeout=1, stopbits=serial.STOPBITS_TWO)

Then it speeds up dramatically and still seems to work. While it is much faster, timeouts are a symptom of some more serious problem. There should not be timeouts in normal operation. readline() should be used if the answer is newline terminated. Timeout is an error because there is no newline. (If there wasn't supposed to be a newline at the end, then a byte limit would be passed to read() so that it returns immediately when it has the expected amount of data.)

What have I not configured properly?

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.