azonenberg changed the topic of #scopehal to: libscopehal, libscopeprotocols, and glscopeclient development and testing | https://github.com/azonenberg/scopehal-apps, https://github.com/azonenberg/scopehal, https://github.com/azonenberg/scopehal-docs | Logs: https://freenode.irclog.whitequark.org/scopehal
Degi has quit [Ping timeout: 256 seconds]
Degi has joined #scopehal
Pretzel4Life has joined #scopehal
Pretzel4Ever has quit [Ping timeout: 260 seconds]
sorear has quit [Ping timeout: 260 seconds]
sorear has joined #scopehal
electronic_eel has quit [Ping timeout: 260 seconds]
electronic_eel has joined #scopehal
juli966 has quit [Quit: Nettalk6 - www.ntalk.de]
<_whitenotifier-f> [scopehal] azonenberg pushed 2 commits to master [+0/-0/±2] https://git.io/JTXBq
<_whitenotifier-f> [scopehal] azonenberg c6f6d09 - DPhySymbolDecoder: greatly improved glitch filtering
<_whitenotifier-f> [scopehal] azonenberg f497877 - DPhyDataDecoder: better handling of single ended inputs
<_whitenotifier-f> [scopehal-apps] azonenberg closed issue #221: The preference system should support units - https://git.io/JUjQG
<_whitenotifier-f> [scopehal-apps] azonenberg closed pull request #259: Implemented units in the preferences system and preferences GUI - https://git.io/JTP5L
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 3 commits to master [+0/-0/±8] https://git.io/JTXBp
<_whitenotifier-f> [scopehal-apps] azonenberg f762625 - Merge pull request #259 from azonenberg/kathi_dev Implemented units in the preferences system and preferences GUI
Bird|otherbox has quit [Remote host closed the connection]
Bird|otherbox has joined #scopehal
_whitelogger has joined #scopehal
<_whitenotifier-f> [scopehal] azonenberg pushed 2 commits to master [+0/-0/±3] https://git.io/JTXgy
<_whitenotifier-f> [scopehal] azonenberg 2be2920 - DPhySymbolDecoder: Reduced glitching on single ended processing
<_whitenotifier-f> [scopehal] azonenberg d5270fb - DSIPacketDecoder: added protocoal analyzer and various fixes. See #323.
<azonenberg> this is the packet oriented view, next to do is the framegrab oriented view on top of it
deltab has quit [Ping timeout: 272 seconds]
deltab has joined #scopehal
katharinawork has joined #scopehal
smkz has quit [Quit: smkz]
<azonenberg> lain, monochroma: https://www.antikernel.net/temp/dsi-6.png
<azonenberg> also katharinawork ^ mipi dsi framegrab :D
<katharinawork> niiiiice
<_whitenotifier-f> [scopehal] azonenberg pushed 1 commit to master [+2/-0/±5] https://git.io/JTXXs
<_whitenotifier-f> [scopehal] azonenberg 5dcc5de - Implemented MIPI DSI framegrab. Fixes #323.
<_whitenotifier-f> [scopehal] azonenberg closed issue #323: MIPI DSI protocol decode - https://git.io/JTrAZ
<azonenberg> I don't have full upper-layer decodes for all of the stuff that happens during link setup like negotiating resolution and video mode
<azonenberg> but i can display the opcode names as text, and the packet content as hex
<azonenberg> Which is a good start'
<lain> azonenberg: hell yes @ ss
<azonenberg> CSI shouldn't be too hard to build, might even be able to share some of the same code
<azonenberg> The last thing on my agenda for today mipi-wise is to add a filter that determines if you're in HS or LS mode
<azonenberg> which can be used as a clock gate for doing HS mode eye patterns
<azonenberg> actually i guess the better option is just to extract the clock when in HS mode
<azonenberg> i.e. it would take in a data and clock stream and output a bit clock that only toggles in HS mode
<azonenberg> Oh, and to add an option for cropping eye patterns to a specific vertical range rather than using the full scale range of the input
<azonenberg> So i can do HS eye patterns while using the same channel for protocol decoding
<katharinawork> nice :)
<katharinawork> im currently pondering about enumeration-style preferences
<azonenberg> did you look at how i did enum filter parameters for guidance?
<azonenberg> i'm not saying it's the right way, but that's how i solved ~the same problem
<katharinawork> im going to look at that now :)
<azonenberg> one thing it does *not* do is type safety
<azonenberg> the enums are ints internally
<azonenberg> and only converted to enum strings for display
<azonenberg> i mean it's range-safe in that you can't generate an illegal value from the GUI, but it's not strongly types
<azonenberg> typed*
<azonenberg> lain: also i can now decode HS mode data single ended
<katharinawork> yes, i might store the typeid to do at least runtime type safety
<azonenberg> i improved glitch filtering greatly since yesterday, by not allowing illegal transitions like from LP-00 to HS-1 or HS-* to anything but LP-11
<azonenberg> as well as adding code to infer the LP-11 / LP-01 / LP-00 start sequence from a single ended capture by jumping straight from LP-11 to LP-00 if the input data is single ended
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±4] https://git.io/JTX1K
<_whitenotifier-f> [scopehal-apps] azonenberg 18880f3 - Rendering improvements to video framegrabs
katharinawork has quit [Ping timeout: 240 seconds]
katharinawork has joined #scopehal
<_whitenotifier-f> [scopehal-docs] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/JTXyc
<_whitenotifier-f> [scopehal-docs] azonenberg 210391e - Added skeleton headings for MIPI filters
<_whitenotifier-f> [scopehal] azonenberg pushed 1 commit to master [+2/-0/±6] https://git.io/JTX9u
<_whitenotifier-f> [scopehal] azonenberg 7c09eef - D-PHY symbol decode now interpolates HS mode zero crossings to sub-sample accuracy for better eye pattern output. Implemented D-PHY HS mode clock recovery. Fixes #329.
<_whitenotifier-f> [scopehal] azonenberg closed issue #329: Add filter for detecting whether a MIPI D-PHY interface is in the high speed state - https://git.io/JTPs8
<azonenberg> lain, katharinawork: https://www.antikernel.net/temp/dsi-10.png
<azonenberg> DSI clock recovery and eye patterns
<monochroma> ooo! nice
<monochroma> azonenberg: will your decoder show an error if it sees that type of illegal transition?
<_whitenotifier-f> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±3] https://git.io/JTXda
<_whitenotifier-f> [scopehal] azonenberg 87c2d08 - EyePattern: allow overriding automatic range detection for MIPI etc. Fixes #330.
<_whitenotifier-f> [scopehal] azonenberg closed issue #330: Eye pattern: allow vertical range to be fixed - https://git.io/JTPsw
<azonenberg> monochroma: I output errors in cases when I can tell something is definitely illegal, but around the start of the packet the line floats between states a bit which is expected
<azonenberg> so i'm pretty permissive with logic levels. the MIPI spec actually says the RX must ignore toggles within that range
<azonenberg> I do a bunch of glitch filtering and denoising to hide transitions from simple thresholding in that part
<azonenberg> But i do show errors if i see things that i can confirm aren't right
<monochroma> cool
<azonenberg> but for example, HS-0 and LP-00 can easily get confused if you do simple thresholding
<azonenberg> especially if it's a single ended decode. Differential is far more robust obviously
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±2] https://git.io/JTXdD
<_whitenotifier-f> [scopehal-apps] azonenberg 4fb1c24 - Updated submodules
<azonenberg> Re error detection, i do not generate errors at the symbol layer
<azonenberg> at the byte layer, if I see a LP-01 or LP-10 state in the middle of HS data i output an error
<katharinawork> awesome
<azonenberg> I can probably add some more checks there, like a capture that's not an integer number of bytes long
<katharinawork> what is the test image youre using for this?
<azonenberg> most of the validation is at the upper layers like DSI
<azonenberg> since that has checksums and ECC
<azonenberg> right now i verify the checksums but not the ECC, there's an open ticket to check the ECC
<azonenberg> katharinawork: scaled and cropped version of this https://www.antikernel.net/temp/pcb-girls-construction.jpg
<azonenberg> that's a lecroy waverunner 8000 series scope on the truck bed, and a ZS1000/1500/2500 family single ended active probe
<azonenberg> the big BGA is a xilinx kintex-7 in FBG484, but shown with less balls for artistic reasons
<azonenberg> I thought about doing https://www.antikernel.net/temp/pcb-girls-rework.jpg instead
<azonenberg> (katharinawork: have you seen those before?)
<katharinawork> ohh those are super cool
<katharinawork> i think i saw one of them on twitter some time ago
<katharinawork> btw AMD bought xillinx, which is interesting
<azonenberg> yeah i commissioned them myself. Spent quite a while designing the scene composition etc
<azonenberg> (the second one is set on the underside of the MAXWELL board btw)
<azonenberg> and yeah i heard
<katharinawork> scene composition is the hardest part of commissioning art i find
<katharinawork> i do commission a lot of furry art
<azonenberg> i'm not a furry but i hear people pronounce "ferry boat" as "furry boat" often enough i decided the joke had to be made
<katharinawork> hahaha omg thats great
<azonenberg> All three of these were done by the same Singapore-based studio that i commissioned for the new glscopeclient toolbar icons
<azonenberg> but different artists for each project (except the two PCB scenes which are the same artist)
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±2] https://git.io/JTXhP
<_whitenotifier-f> [scopehal-apps] azonenberg 06ff395 - ProtocolAnalyzerWindow: now pad partial scanlines out to rest of image width with checkerboard
<azonenberg> katharinawork: btw any more ideas/questions re the enum stuff? do you have a good plan for how to proceed now?
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+1/-0/±0] https://git.io/JT1ti
<_whitenotifier-f> [scopehal-apps] azonenberg 54d1806 - Guesstimated D-PHY eye mask
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/JT1qB
<_whitenotifier-f> [scopehal-apps] azonenberg 9d9b7c2 - Fixed D-PHY eye mask Y opening to 140 mV Vod
<katharinawork> azonenberg not yet, doing stuff for ${DAYJOB}
<azonenberg> ah ok
<katharinawork> after the latest Windows 10 update, our "fake" USB mass storage device for programming one of our products just doesnt work anymore which sucks
<tnt> katharinawork: UF2 ? or something custom ?
<tnt> (I mean, UF2 being done by microsoft, I'd assume they'd keep that hack working ...)
<katharinawork> yea UF2
<katharinawork> we might have fucked up the implementation though
katharinawork has quit [Quit: Leaving]
juli966 has joined #scopehal
<_whitenotifier-f> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±2] https://git.io/JT1Gu
<_whitenotifier-f> [scopehal] azonenberg ee94170 - EyePattern: made ReallocateWaveform/RecalculateUIWidth public methods so they can be called from glscopeclient
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±4] https://git.io/JT1GV
<_whitenotifier-f> [scopehal-apps] azonenberg 9b840b2 - Fixed several bugs in eye pattern resizing
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/JT1ZW
<_whitenotifier-f> [scopehal-apps] azonenberg 3abfbc1 - Eye pattern: clip compliance testing masks so they don't show up on top of the vertical axis
<azonenberg> lain, monochroma: https://www.antikernel.net/temp/dsi-12.png
<azonenberg> I think i'm done with mipi stuff for now
<lain> sweet
<azonenberg> the limits i'm using are defined at the pins of the TX
<azonenberg> so it's slightly degraded at the pi's ribbon header, hence failing
<azonenberg> i also didn't de-embed the cable or probe and i'm using a fairly long cable (4 feet of RG188)
<azonenberg> but i feel like the overshoot might be real
<_whitenotifier-f> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±3] https://git.io/JT187
<_whitenotifier-f> [scopehal] azonenberg 9fdc385 - Cleaned up DSI checksum calculation. Now display checksum in an additional column of the protocol analyzer view.
<_whitenotifier-f> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/JT14w
<_whitenotifier-f> [scopehal] azonenberg 6e92e3d - DPhySymbolDecoder: avoided spurious transitions to LP-00 state
<_whitenotifier-f> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/JT1Be
<_whitenotifier-f> [scopehal-apps] azonenberg 4556321 - Updated scopehal
<azonenberg> lain: https://www.antikernel.net/temp/dsi-13.png one last fix
<azonenberg> i now display checksum status for each scanline
<lain> oh nice
<azonenberg> And while writing it, i discovered they were all failing
<azonenberg> then found a bug in the DSI decode :p
<monochroma> yay!
<azonenberg> tl;dr i was being overly aggressive going from HS-0 to LP-00 state, which isnt legal unless you go through LP-11 first
<azonenberg> the glitch filter then removed the spurious LP-00
<azonenberg> but i ended up corrupting a HS-1 i was supposed to have in the middle of all that
<azonenberg> also cleaned up the checksum calculation code to generate with the reversed crc polynomial rather than the forward one and reversing it
<azonenberg> anyway i just took apart the test setup, leaving the probes on it for now since i dont want to desolder them quite yet
<miek> i wonder whether the table views should get some indicator for gaps between triggers? right now it implies that everything's continuous and you'd have to know to look closely at timestamps
<azonenberg> File a ticket, i wont get to it right away but it probably wouldnt be too hard to add padding between them
<azonenberg> that's a good idea
<azonenberg> i'll have to decide how i want it to look, of course
<azonenberg> but i agree there should be a space of some sort
<azonenberg> or divider
<_whitenotifier-f> [scopehal-apps] miek opened issue #260: Indicate gaps between triggers in Protocol Analyzer window - https://git.io/JT10q
smkz has joined #scopehal
<_whitenotifier-f> [scopehal-apps] LongJohnCoder forked the repository - https://git.io/JfQ2h
maartenBE has quit [Ping timeout: 265 seconds]
maartenBE has joined #scopehal
balrog has quit [Ping timeout: 256 seconds]
maartenBE has quit [Ping timeout: 260 seconds]
balrog has joined #scopehal
balrog has quit [Ping timeout: 268 seconds]
balrog has joined #scopehal
maartenBE has joined #scopehal
maartenBE has quit [Ping timeout: 268 seconds]