azonenberg changed the topic of #scopehal to: libscopehal, libscopeprotocols, and glscopeclient development and testing | https://github.com/azonenberg/scopehal-apps | Logs: https://libera.irclog.whitequark.org/scopehal
Degi has quit [Ping timeout: 245 seconds]
Degi has joined #scopehal
bvernoux1 is now known as bvernoux
bvernoux has quit [Ping timeout: 268 seconds]
Famine- has joined #scopehal
Famine_ has quit [Ping timeout: 256 seconds]
baettig has joined #scopehal
<baettig> Hi, I am trying to connect my Keysight oscilloscope (linux fedora, I am trying 'agilent', usbtmc, /dev/usbtmc0
<baettig> I am getting 'Failed to connect to instrument using connection string DSOX:agilent:usbtmc:/dev/usbtmc0'
<baettig> Does anyone have a hint on how to connect? (also under windows, I didn't manage to connect to the scope at work, there I tried the windows path USB\VID_0957&PID_179A to the same error.
HoloIRCUser1 has joined #scopehal
HoloIRCUser1 has quit [Client Quit]
HoloIRCUser1 has joined #scopehal
<electronic_eel> baettig: does your scope have ethernet and did you try that?
<baettig> ah I figured it out:
<electronic_eel> getting it connected via ethernet is a lot easier in my experience. once that works, you could do further work to get usb to work too
<baettig> crw-------. 1 root root 180, 176 Nov 14 15:02 /dev/usbtmc0
<electronic_eel> ah, ok, permissions
<baettig> sudo chmod 777 /dev/usbtmc0
<baettig> now it's working
<baettig> under linux
<electronic_eel> did you compile it yourself for fedora or did you use my copr repo?
<baettig> For windows, I might ask this week when I'm back at the office. (There was something strange, at first it didn't want to start saying it's missing the libfft2 so 0 9 0 file.
<baettig> After two reboots and three unrelated opening/closing of the terminal it started up. strange
<baettig> I compiled it myself following the pdf on github
<electronic_eel> if you want to, you can take a look at https://copr.fedorainfracloud.org/coprs/electroniceel/scopehal/
<electronic_eel> even if you compile scopehal yourself, you might want to get the dependencies like ffts from there
<azonenberg> Hmm, we should probably improve the error reporting there if we fail to open the TMC device
<azonenberg> let me file a ticket
<_whitenotifier-1> [scopehal] azonenberg opened issue #518: USBTMC: better error reporting if we fail to open a device - https://git.io/J1JR3
<_whitenotifier-1> [scopehal] azonenberg labeled issue #518: USBTMC: better error reporting if we fail to open a device - https://git.io/J1JR3
<baettig> That was at work. Windows is always ... special ...
<baettig> Ahh, thank you very much for your answer there, @azonenberg!
<azonenberg> Yeah. I don't know if anyone has ever implemented usbtmc support on Windows
<azonenberg> ok yeah it's very much linux only, expecting to use a usbtmc character device
<baettig> Need to find if I still have a dsoxlan pcb and a magjack in a drawer somewhere. Hope nobody at the company minds :D
<_whitenotifier-1> [scopehal] azonenberg labeled issue #519: Windows support for USBTMC transport - https://git.io/J1J0i
<_whitenotifier-1> [scopehal] azonenberg opened issue #519: Windows support for USBTMC transport - https://git.io/J1J0i
baettig has quit [Read error: Connection reset by peer]
baettig_ has joined #scopehal
<baettig_> oops, I needed to restart my computer, it totally froze... (Thinkpad 13 Gen2 i7-7500U and intel integrated graphics. Might not be up to the task)
<azonenberg> Might be a shader bug. i strongly suspect there's one hiding in the code somewhere
<azonenberg> but have yet to find it
<azonenberg> every once in a while i see a GPU hang on some systems, seems to not affect others
<azonenberg> guessing certain drivers handle the buggy code better than others
<baettig_> If there's anything I can do to help to track it down, let me know
HoloIRCUser1 has quit [Quit: HoloIRCUser1]
<azonenberg> I'm actually exploring a complete rewrite of the renderer using OpenCL instead of compute shaders
<azonenberg> this will enable support for a broader range of systems and more importantly let me use some debug tools that don't exist for compute shaders, at least in the nvidia opengl ecosystem
<azonenberg> Just a matter of having time to sit down and work on ti
<electronic_eel> hmm, but wouldn't it also mean that you need opencl for glscopeclient to run?
<electronic_eel> at least with my amd gpu i can currently use glscopeclient with just the open source drivers. that was a major point for me buying that card. but opencl needs some binary only stuff, so i have been avoiding it
<baettig_> crw-------. 1 root root 180, 176 Nov 14 16:19 /dev/usbtmc0
<baettig_> apparently fedora doesn't keep permissions ls -lart /dev/usbtmc0
<electronic_eel> baettig_: you should create a udev rule for it if you want it to stay over reconnects/reboots
<baettig_> hmm I think I need to add /dev/usbtmc0 to some group.. how and which
<electronic_eel> you mean plugdev? that is a thing of the past that is sometimes just still available due to compatibility reasons
<azonenberg> electronic_eel: My plan is to support both renderers side by side, at least for now
<baettig_> ah how do I do that? my academic days where I was on linux all the time are a few years back :D
<azonenberg> we need opencl to get accelerated rendering on macos because osx doesnt have gl 4.3 support
<azonenberg> and if i find a bug in the CL version of the renderer, with any luck i can port the fix to the GL version
<azonenberg> more importantly thoguh, there are software opencl implementations
<electronic_eel> baettig_: you need to create a udev rule with TAG+="uaccess" in it. that automatically gives access to a locally logged in user
<azonenberg> which would enable us to fall back to software rendering on systems without a good GPU
<azonenberg> like virtual machines
<electronic_eel> baettig_: take something like this for example: https://github.com/GlasgowEmbedded/glasgow/blob/main/config/99-glasgow.rules and adapt the usb vendor and product id
<electronic_eel> baettig_: then copy the resulting file to /etc/udev/rules.d
<azonenberg> electronic_eel: basically, right now the compute shader requirement is the #1 reason i find people can't run glscopeclient
<azonenberg> it woudl greatly expand the potential userbase if we could get rid of that
<azonenberg> and more importantly i could use oclgrind, a valgrind-like tool for opencl, to find bad pointers in the GPU kernels
<electronic_eel> yeah, i get that. a software-only implementation would be really nice. would also allow testing from CI and so on
<azonenberg> that's the thing, if i do it in CL it would give us both acceleration and software fallback
<azonenberg> And yes, it would enable CI etc too
<azonenberg> we already have opencl support for accelerating a bunch of filter blocks
<azonenberg> so most of the groundwork is there
<baettig_> SUBSYSTEM=="usb", ATTRS{idVendor}=="2a8d", ATTRS{idProduct}=="1768", \
<baettig_> MODE="0660", GROUP="plugdev", TAG+="uaccess"
<baettig_> so I changed vendor and id to my lsusb output of the scope and now I'll copy the resulting file and reboot
baettig_ has quit [Remote host closed the connection]
baettig has joined #scopehal
baettig_ has joined #scopehal
<baettig_> I'll need to read up on udev :)
<_whitenotifier-1> [scopehal] azonenberg pushed 2 commits to master [+0/-0/±2] https://git.io/J1JHE
<_whitenotifier-1> [scopehal] azonenberg b874d03 - AlignedAllocator: ensure allocations are a multiple of alignment since some runtimes are picky about that
<_whitenotifier-1> [scopehal] azonenberg 803b617 - EyePattern: fixed possible underflow if pixels had negative Y coordinate
<_whitenotifier-1> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/J1JHV
<_whitenotifier-1> [scopehal-apps] azonenberg 8870962 - Updated submodules
baettig_ has quit [Remote host closed the connection]
baettig has quit [Remote host closed the connection]
bvernoux has joined #scopehal
bvernoux has quit [Ping timeout: 268 seconds]
someone-else has joined #scopehal
someone-else has quit [Quit: Connection closed]