<laminar-oss>
azonenberg: the commit 'Fix socket error for slow devices' (4c81219) I made for xptools is not working/nonsense. The correct logic would be 'if((x < 0) && ((errno == EINTR) || (errno == EAGAIN)))'. I'm working on a fix, but have noticed issues with the timeout. I belive the intension is to have a timeout of 5s but on my machine (x86_64/archlinux) it is 200s.
<azonenberg>
Ok please keep debugging
<azonenberg>
Realistically, my experience is that timeouts are typically a sign that either firmware has crashed, the session has desynchronized (the scope didn't return a response to a command, or returned a response where one was not expected), or you've lost connectivity outright
<azonenberg>
and they are typically non-recoverable
<laminar-oss>
yes I noticed.
<azonenberg>
So i want timeouts long enough to handle any realistic high latency VPN etc - a second or two is probably enough, 5 conservative
<azonenberg>
but not longer than that
<azonenberg>
And long term, i want a fallback in which when we get an unrecoverable failure, we can transition the instrument into an offline one
<azonenberg>
Doing this is nontrivial, it's not going to happen in time for v0.1
<laminar-oss>
If I got it rigth the used api (clock) is related to used cpu time, but I think an absolute timing should is desired (time_create(), ....)
<azonenberg>
but i want to be able to just grab my laptop and go home from the office and have my session still open. still able to navigate previously acquired data
<azonenberg>
then go in the next day and resume
<azonenberg>
hmm, yeah thats not something i have any familiarity with
<azonenberg>
CLOCK_REALTIME should be wall clock time
<laminar-oss>
Ah thanks for the CLOCK_REALTIME hint, found clock_gettime() and these are even available for posix systems. Much easier than timer_create/time_gettime.
<Darius>
AFAIk CLOCK_REALTIME can move if NTP steps your clock
<Darius>
you probably want CLOCK_MONOTONIC although in practise it probably makes no difference
<azonenberg>
laminar-oss: We have a GetTime() helper function, i forget if in xptools or scopehal proper
<laminar-oss>
I will look into it.
<azonenberg>
that wraps clock_gettime() as well as the windows equivalent
<azonenberg>
we use it for e.g. measuring how long a filter took to run
<Darius>
Windows is POSIX compliant, shouldn't it have clock_gettime? :)
<azonenberg>
Not that i've seen
<Darius>
what a PITA
<d1b2>
<azonenberg> Also, quick update: We now have 199 filters, of which 162 have at least first-draft icon artwork and 37 have none
<azonenberg>
I'll be doing at least one more round of feedback to the artist in the near-ish future, but we should probably work on getting more comprehensive plans for artwork WRT which icons we think are good as-is, which need work
<azonenberg>
which should be priorititzed in terms of "look the worst"
<azonenberg>
or "are most confusing"
<azonenberg>
and concrete suggestions to improve those we don't like
<azonenberg>
and then i'm going to spend some time trying to test out each filter, make a demo graph to use each
<azonenberg>
work on documenting them, test them
laminar-oss has quit [Ping timeout: 256 seconds]
<azonenberg>
i may temporarily disable a few like "parallel bus" which are not functional without more work
<azonenberg>
In general, any broken / buggy functionality should be disabled for the release build
<azonenberg>
and what remains should be tested as aggressively as we can
laminar-oss has joined #scopehal
laminar-oss has quit [Remote host closed the connection]
laminar-oss has joined #scopehal
<laminar-oss>
@azonenberg: MR is availlable for xptools. The Timeout of 5s is hardcoded in SCPISocketTransport.cpp wich would require another MR for that lib.
<azonenberg>
ok i'll have a look in a bit
<laminar-oss>
No big deal, I'm just wondering whether a configuration would make more sense.
<azonenberg>
yeah eventually we should add a preference for it but it's low priority
laminar-oss has quit [Ping timeout: 256 seconds]
laminar-oss has joined #scopehal
laminar-oss has quit [Remote host closed the connection]
laminar-oss has joined #scopehal
ALTracer has joined #scopehal
ALTracer has quit [Read error: Connection reset by peer]
ALTracer has joined #scopehal
ALTracer has quit [Ping timeout: 252 seconds]
ALTracer has joined #scopehal
laminar-oss has quit [Remote host closed the connection]
ALTracer has quit [Read error: Connection reset by peer]