kuldeep has quit [Ping timeout: 268 seconds]
kuldeep has joined ##openfpga
kuldeep has quit [Ping timeout: 260 seconds]
Lord_Nightmare has quit [Ping timeout: 264 seconds]
Lord_Nightmare has joined ##openfpga
GenTooMan has quit [Quit: Leaving]
<rqou> azonenberg: why don't we have homecmos yet?
<rqou> how did we get beaten by a high school kid? :P :P
X-Scale has quit [Ping timeout: 264 seconds]
<awygle> mithro: were these schematics done in kicad 4?
<mithro> awygle: Probably
* awygle downloads a 700 MB installer
<rqou> lol
* awygle waits for 700 MB of files to unzip
<rqou> mithro: why aren't you using nightly like a(n ab)normal person? :P
<mithro> I'm pretty sure that 5.0 didn't exist last time I touched the files
<mithro> Also, I didn't create the schematics
* awygle finally launches kicad
<rqou> mithro: this isn't meant in a bad way, but do you ever actually code anything? as opposed to convincing/coercing other people to?
* awygle prints schematics, grabs a pen, and closes v4 forever
<mithro> rqou: For my employer yes :-)
<rqou> awygle: that much worse?
<awygle> rqou: eh not really, i'm mostly being dramatic. i just like to review stuff on paper, it engages the brain more
<mithro> I'd be happy for the schematics to be upgraded to 5.0
<rqou> yeah me to
<rqou> *too
<rqou> e.g. my father used to do "highlighter-aided design" :P
<awygle> actually the automatic conversion _almost_ worked, only two symbols didn't come over
<rqou> azonenberg seems to hate "highlighter-aided design" though
<awygle> if this was a design i was taking through to layout i'd have spent more time on it
<awygle> shouldn't be hard for whoever does that work
futarisIRCcloud has joined ##openfpga
balrog has quit [Quit: Bye]
balrog has joined ##openfpga
pie__ has quit [Ping timeout: 260 seconds]
rohitksingh_work has joined ##openfpga
<azonenberg> rqou: we got beat by a high school kid who has more time to work on it than i do
<azonenberg> :p
<rqou> can you finish your damn house? :P
<rqou> seriously, just go and crash monochroma's house :P
<rqou> also, living with housemates guarantees that you won't later have all your time sucked up by demon mini-azonenbergs :P :P :P
Lord_Nightmare2 has joined ##openfpga
Lord_Nightmare has quit [Ping timeout: 263 seconds]
Lord_Nightmare2 is now known as Lord_Nightmare
<awygle> mithro: your nagl board did not do the two things the Readme says it should
<awygle> To wit, gigabit and SD card
<awygle> It looks a lot like a straight up translation of the Arty A7 into kicad, although I haven't checked yet
<rqou> lolol
<mithro> awygle: Yes, want to get the original version before doing the modifications
<awygle> um, ok
<awygle> I'm not sure what you want me to do then exactly. It looks generally same?
<awygle> *sane
<awygle> it is a competent translation of the arty schematic. although the person who did it did not know about kelvin sensing resistors.
<mithro> awygle: If the schematic doesn't have issues like disconnected wires and missing junctions and stuff, then things are pretty good I guess?
<awygle> yeah, it's fine on that count
<awygle> and like i said, it should even click up to v5 without many issues, i only had problems with the DDR symbol and one connector
<azonenberg> New PNW FPGA meetup announced
<awygle> yeah, that came out on i think friday. are you going?
<azonenberg> Weds the 2nd at the Micron office in Seattle
<azonenberg> Yes, I plan to
<azonenberg> that's actually a convenient location within walking distance of the ferry
<awygle> i'm less psyched about it because it's "listen to xilinx talk about xilinx"
<azonenberg> it's way easier for me to get to than Ada's
<awygle> and obviously seattle is not convenient for me :p
<awygle> but i'll probably go anyway
<azonenberg> I want to learn a bit about what people actually use HLS for, out of curiosity
<azonenberg> it seems like mostly DSP, machine learning, and other stuff along those lines
<awygle> yeah fair. i also want to get drunk with FPGA engineers (this is a joke, i will have one beer)
<azonenberg> Not the computer architecture, asic prototyping, high speed networking, etc that i am more interested in
<azonenberg> And lol yes i am more interested in the "hang out with fpga engineers" part than the talk
<awygle> maybe i'll show up late lol
<awygle> i just am not particularly interested in being shilled to
<azonenberg> lol
<azonenberg> I dont plan to actually use HLS
<azonenberg> But i want to know what other people use it for
<awygle> yeah and if it was Jan giving a talk on HLS and why it's great, that'd be one thing, but i feel like xilinx rep is not going to give me that
<azonenberg> lol
<azonenberg> True
<awygle> on the other hand, knowing people is good. we'll see how my week is going lol
* awygle should get a haircut...
* azonenberg should too
<azonenberg> i'm not dry 30 sec after coming out of the shower
<azonenberg> that means i have too much hair
<awygle> i'm gonna show up on wednesday with short hair and no beard and contacts you won't recognize me in the crowd
<azonenberg> lol
<azonenberg> to be fair i've met you in person... twice?
<awygle> well yeah, i couldn't successfully fool my father. let me have my fun
<azonenberg> btw
<azonenberg> Not thrilled about this inductor layout
<azonenberg> Especially since it's a high current SMPS output
<awygle> i love that the inductor is the size of the IC
<azonenberg> But i'm not sure how to avoid it, the LTC3374 has eight outputs with 1A each
<azonenberg> And i need 3A / 3A / 2A
<azonenberg> There's four on each of the long sides
<azonenberg> short sides are all conrtol
<awygle> mosfets are integrated i assume?
<azonenberg> Yes
<awygle> yeah that's a bummer
<azonenberg> i love the ltc3374 because it's got so much stuff in it
<awygle> if you're wedded to that part i might put the 2A on the gap like that instead of a 3A
<azonenberg> well it's not actually 3A anyway
<awygle> for both symmetry and to put the risk on the lower current side
<azonenberg> it's 1-1.5
<azonenberg> I'm overprovisioning
<awygle> otherwise, i might suggest breaking up your rails a little
<azonenberg> i suppose i could just not use the last output?
<azonenberg> let me check the current numbers...
<azonenberg> IDD25 in 3-supply mode is 86 mA
<azonenberg> Times eight PHYs is 258 mA? did i miscalculate something?
<azonenberg> i definitely do not need 3A capacity on that rail...
<azonenberg> Well i guess that solves that :p
<awygle> 86 * 8 is 688 mA
<azonenberg> oh i multiplied by 3, derp
<azonenberg> anyway, still
<azonenberg> 688 mA would be healthily overprovisioned with a 2A capacity rail
<azonenberg> So i can use the two connecrted oneds
<azonenberg> ones*
<awygle> sure
<awygle> wow, digikey is out of my preferred regulator and will be for 42 weeks
<awygle> fuckin'eh
<azonenberg> this component shortage is NUTS
<azonenberg> everyone i know is having trouble sourcing parts
<awygle> mouser is out of the 3A version but has the 2A at least, and mouser lists some coming in in June
<awygle> but still, damn
<rqou> btw azonenberg i did ask my father about putting magnetics on both sides of the boards
<awygle> i'm gonna have to start paying attention to those "common parts lists" and similar at this rate
<rqou> his advice was "i don't really remember, but if there's no ground plane in between them, they will couple to each other"
<rqou> and if there is a ground plane, then crosstalk should be fine, BUT
<rqou> it can cause EMI to couple from the ground plane into the magnetics and out the cables
<rqou> and then leak out of the cables and make the FCC sad
<azonenberg> Yeah every layout guideline i've ever seen has said to void the ground plane under the magnetics
<rqou> in which case my father thinks that yes, there will be crosstalk
<azonenberg> Hmmm
<rqou> even though ethernet magnetics are "supposed to" be tiny toroids
<azonenberg> i wonder if i could find shielded magnetics in a similar-ish form factor that i wouldnt have to redo the layout much?
<rqou> maybe
<rqou> i would expect such things to exist
<rqou> but then again my father is *) used to designing telco-grade stuff *) expects boards to more-or-less work the first time
<rqou> so he's very conservative
<azonenberg> i want this to work the first time too
<azonenberg> it's not a cheap project :p
<rqou> you can always measure the flux leakage and the coupling? :P
<azonenberg> see, that requires buliding a characterization rig
<azonenberg> i was hoping the field strength would be in the datsheet or something
<azonenberg> ooh COOL
<azonenberg> look on digikey
<azonenberg> 553-1431-5-ND
<azonenberg> the bottom of that one is open and you can see inside
<awygle> jesus lol
<azonenberg> it indeed looks like tiny toroids
<awygle> it looks like a massacre
<rqou> no, they're definitely tiny toroids
<rqou> azonenberg: i'm surprised the signal integrity of that is ok
<rqou> it does look pretty messy
<azonenberg> rqou: ever taken apart a magjack? lol
<azonenberg> i bet those are worse
<rqou> and this is the crap we shove 10gbps through?
<azonenberg> This one is 1G, but yes
<rqou> i guess this is how "AV people" get 24gbps through a 4ghz bw coax (see discussion from the other day)
<rqou> just YOLOing it
<rqou> also gruetzkopf YOLOing PCIe over LVD-SCSI wiring
<gruetzkopf> sure
<gruetzkopf> but i mostly know what i'm doing and wouldn't ever distribute such a thing
<awygle> hey azonenberg? remember our discussion about 2x4 magjacks?
<rqou> i mean, "AV people" ship their giant hack of SDI and are proud of it :P
<azonenberg> awygle: yeah?
<awygle> mmm... no never mind
<awygle> i thought i had a solution but i was wrong
<gruetzkopf> i found a few 2*8 magjacks in my pile of stuff
<rqou> azonenberg: just replace your ports with SFP ports and you can trade your crosstalk problem for a thermal management problem instead :P
<gruetzkopf> but they're 100M only :(
<rqou> azonenberg: actually, seriously
<rqou> why don't you just do that?
<rqou> instead of putting phys on a board, just buy a copper SFP :P
<gruetzkopf> copper SFPs are expensive
<azonenberg> rqou: that would require 1000baseX
<azonenberg> Which has tighter jitter tolerances than SGMII
<azonenberg> I cannot meet those without using a GTP
<gruetzkopf> and most of them are not multirate
<azonenberg> Also i want fancy capabilities like TDR testing
<gruetzkopf> SFPs are cheap and plentiful
<rqou> idk about TDR/multirate/jitter tolerance though
<gruetzkopf> i have a 10l bucket full of used 1G SFPs
<azonenberg> lol i have a zillion 1G ones but not that much
<azonenberg> just 30ish of them
<azonenberg> (optic)
<azonenberg> Re crosstalk
<gruetzkopf> i have another box of 1/2/4 eth/fc ones
<azonenberg> the module i have does specify channel to channel crosstalk
<azonenberg> and "leakage inductance"
<azonenberg> is that any good?
<azonenberg> 0.5 uH
<azonenberg> (worst case)
<rqou> i have no idea what is good :P
<azonenberg> no i meant
<azonenberg> is that a metric we can use to predict coupling to the other side?
<rqou> i don't think so
<rqou> although it is correlated
<rqou> btw some copper SFPs are actually sgmii interface
<rqou> not baseX
<rqou> idk about TDR though
<rqou> oh what
<rqou> azonenberg: i just noticed that the SFP spec says Vcc/Vee
<rqou> not Vdd/Vss
<rqou> and not the misnomer of Vcc for a FET device :P
<rqou> hardest problems in CS (EE?) include naming things
<rqou> :P
<awygle> Nuclear Option - four of these.
<gruetzkopf> many copper SFPs are SGMII only
<gruetzkopf> especially the cheaper ones
<azonenberg> awygle: that was my old option
<azonenberg> but the emi fingers etc mena they wont pack as densely as i want
<azonenberg> you'd need separate front panel cutouts for each
<awygle> yup
<rqou> azonenberg: so what about a bucket of copper SFPs?
<azonenberg> rqou: out of the question
<gruetzkopf> don't have my SFP to VGA adapter with me to check mine
<rqou> gruetzkopf: wat
<rqou> azonenberg: why?
<gruetzkopf> i2c and a voltage reg off the 5V rail?
<rqou> lol
<rqou> but does it actually try to send VGA signals?
<gruetzkopf> no
<rqou> or just gives access to the i2c?
<gruetzkopf> it's just a "wtf is this shit" adapter
<azonenberg> awygle: oh, do we want to put some kind of ESD protection on the ethernet pairs too?
<azonenberg> probably a good idea
<azonenberg> gruetzkopf: sfp to vga? lol
<rqou> azonenberg: wait does your favorite phy have TDR mode?
<awygle> the phy has 8000 kV tolerance apparently
<azonenberg> rqou: both the ksz9031 and the dp83867 have it
<azonenberg> the TI part has better though, it can report up to 4 peaks vs the micrel's 1 and has more detailed info on amplitude etc
<azonenberg> awygle: you think thats good enough as is then?
<rqou> heh TI parts are usually surprisingly good
<awygle> should be
<rqou> azonenberg: MRVL parts :P
<gruetzkopf> aaah no
<rqou> azonenberg: i dare you to do a design around MRVL/QCOM/BRCM parts :P
* rqou waits for azonenberg's head to asplode
<azonenberg> rqou: even if i was able to get datasheets/silicon
<azonenberg> i dont want to give them any design wins
<azonenberg> them, plus Vitesse, are on my life-long blacklist
<azonenberg> I will never do a design with one of their parts
<azonenberg> Even for a commercial customer in high volume
<azonenberg> s/even/especially/
<rqou> what if somebody hires you to do consulting on one of those things? :P
<azonenberg> I'd decline the gig
<rqou> azonenberg: Huawei silicon :P
<azonenberg> If the companies feel so strongly about not wanting my business
<azonenberg> I'll give them what they want
<azonenberg> And buy from a competitor :p
<rqou> azonenberg: does this mean that all "secure element" vendors should be on your blacklist too? :P
<azonenberg> i only blacklist a company once they've actually blown me off when i attempted to buy their product
<azonenberg> so e.g. nvidia would probably end up on there if i tried
<azonenberg> But i havent tried
<rqou> but not infineon/nxp?
<rqou> also, these are huge companies that make lots of parts
<azonenberg> Yeah i'm aware, but MRVL/QCOM/BRCM/vitesse are like this for ALL of their products
<gruetzkopf> yes
<gruetzkopf> BRCM even for stuff they recently aquired
rohitksingh_work has quit [Ping timeout: 240 seconds]
<gruetzkopf> ex-PLX datasheets are basically gone
<rqou> oh wat
<rqou> goddammit hock tan
<azonenberg> For niche stuff like NXP secure elements i wouldnt blacklist the entire company since its not the bulk of their business
<azonenberg> But i wouldnt buy any secure elements from them if i could avoid it
rohitksingh_work has joined ##openfpga
<gruetzkopf> i've heard enough people loudly complaining about datasheet availability for them
<rqou> nxp parts?
<gruetzkopf> nxp "secure" stuff in particular
<rqou> azonenberg: pwn a secure element when? :P
<gruetzkopf> even as a potential 250kUnits/year customer
<rqou> azonenberg: both karsten nohl and tarnovsky have done it before :P :P
<azonenberg> i remember attempting to use an atmel atsha or atecc chip in a potential design
<azonenberg> and having a hard time getting datasheets for those too
<rqou> azonenberg we need more silicon pwns :P
<rqou> azonenberg: we should call ourselves "Team V&" :P :P :P
<gruetzkopf> MRVL is bad about this even for parts that are obsolete
<azonenberg> gruetzkopf: the 88e1111 datasheet is *still* not public
<gruetzkopf> for the processor in the steam link, there's conflicting information on CPU core count and implementer
<azonenberg> how many years ago did it come out?
<azonenberg> i mean sure its been leaked
<azonenberg> But there's been no official release
<rqou> it has
<rqou> you can find it easily
<azonenberg> yes i know, i may or may not have a copy :p
<azonenberg> But even if i can find leaked documentation
<azonenberg> morally, i don't want to give design wins to a company that actively fights my attempt to use their product
<rqou> btw, what do you think the chances are that chip hackers get v&'d? :P
<rqou> how many analysts are watching this channel?
<azonenberg> I think if somebody like me is not at least on TLA radar, they need to get fired
<azonenberg> That said, disappearing people is unlikely at least in the US
<azonenberg> Especially if you're not targeting .mil chips etc
<azonenberg> They're more likely to hire you and give you lots of money to keep your mouth shut and work in $AGENCY's lab :p
<gruetzkopf> heh, i really need to record the current waveform going into this power supply
<gruetzkopf> finest late-1950's grade three-phase to DC, 60V, 100A, technology
mumptai has joined ##openfpga
<rqou> gruetzkopf: i bet the power factor will be amazing :P
<rqou> does it involve mercury arc rectifiers?
<gruetzkopf> naah
<gruetzkopf> newfangled silicium rectifier
<gruetzkopf> and exactly 2 transistors (not anywhere near the output path)
<rqou> wow, modern :P
<gruetzkopf> far too many power rails in this system (13)
<gruetzkopf> but we do have power factor correction (and it always had)
<gruetzkopf> theres' also a purely magnetic 3-phase->1-phase converter
<rqou> huh
<rqou> TIL that PFC had already been invented at that time
<sorear> archaeo-PFC provides my favorite sense of the term "reactor
<gruetzkopf> well, passive PFC in the form of a few huge capacitors
<rqou> oh
<gruetzkopf> though auto-switched to keep close to 1
<sorear> 100A for the train signal system??
<gruetzkopf> it's overspecced a lot, so it can recharge it's batteries in finite time after power outage
eduardo__ has joined ##openfpga
<gruetzkopf> i think we're currently at about 12A steady-state current on the DC side
<gruetzkopf> (this is with ~10% of the 8000+ relays energised)
<rqou> but where's the Internet of Targets? :P
<sorear> ah, so 100A allows it to energize all of the relays at once
<sorear> kinda surprised they didn't transistorize (*not* VLSI-ize) the whole thing in the 70s for MTBF reasons
<sorear> don't relays break
<rqou> gruetzkopf: how do I make all the signals green like in movies? :P
<sorear> you put the IR flashy thing on the locomotive right?
<gruetzkopf> there's still a lot of these in actual service, controlling some of the largest train stations in germany
eduardo_ has quit [Ping timeout: 264 seconds]
<gruetzkopf> munich, cologne, dusseldorf are all this exact model, and many many smaller ones
<gruetzkopf> transistorised things tend to not have a useful operational life of about 80 years
<rqou> [22:51] (rqou) gruetzkopf: how do I make all the signals green like in movies? :P
<gruetzkopf> it involves the right keys and a fair bit of system knowledge, and you'll get caught by the operator
<sorear> discrete BJTs don't have an 80 year operational life?
<gruetzkopf> there's axle counting systems with transistor-core logic, they have problems with transistors failing
<gruetzkopf> try getting a provably-exact replacement for a 60s transistor
<rqou> isn't there also a problem with overflow after 128/256 axles?
<rqou> or is that the American system?
<gruetzkopf> the transistor-core stuff overflows at 512 axles
<gruetzkopf> (and will then keep the section marked as occupied)
<gruetzkopf> the electromechanical counters used before are 256 or 384 steps/revolution steppers with a comparator between them, but those will also fail safe
<rqou> not fail dangerous? :P
<awygle> rqou: this made me think of you and azonenberg arguing about api design http://journal.stuffwithstuff.com/2012/12/19/the-impoliteness-of-overriding-methods/
<azonenberg> awygle: I mostly agree with what he's saying, but there are times when I actually want to whole-hog replace an existing implementation
<azonenberg> I prefer C++ plus restrictive coding style guidelines to a language that forces you into a square hole
<awygle> Yeah I would want override as an escape hatch
<awygle> With an explicit keyword
<rqou> i personally prefer just not using methods at all
<rqou> why not functions? :P
<azonenberg> Basically, my general policy is that I know best in the end, but if I do something fishy i want to be called out on it
<azonenberg> So thorough static analysis, heavy compiler warnings, etc
<awygle> Galaxy brain: methods are functions its a useless distinction
<azonenberg> But still have an option to say "yes i mean to do this"
<azonenberg> Rather than fighting the language to do what i need
<azonenberg> As you do with e.g. the Math class in java because you cant have functions that don't operate on state be global
<azonenberg> so you make up a useless container class just so they can go somewhere
<rqou> yeah, java-brand OO is gross
<azonenberg> I want a language that gives me tools
<rqou> but in general i just don't prefer to use inheritance
<azonenberg> but lets me use them as i see fit
<azonenberg> Sure, a hammer is harder to kill yourself with than a ramset gun
<azonenberg> It's the best choice in 95% of cases
<azonenberg> but sometimes you actually need to drive a nail an inch into concrete
<azonenberg> Which is why I like "C+"
<rqou> or Rust? :P
<azonenberg> I havent had the time to learn rust yet
<azonenberg> what i can say is, even if i did
<azonenberg> it wouldnt replace C++ for me
<rqou> because you're constantly messing with your house :P
<azonenberg> i'd use it in certain niche applications
<azonenberg> Lol
<azonenberg> We got the old carpet off the stairs today
<azonenberg> threw out another dumpster load of insulation and sheetrock debris
<azonenberg> and did a lot of "detail demo" pulling nails and trim and other stuff
<rqou> wtf
<azonenberg> And swept and vacuumed the floors upstairs several time
<rqou> when are you ever going to get to actual installing stuff?
<rqou> not just ripping stuff out?
<azonenberg> we literally spent a month removnig insulation
<rqou> why?!
<azonenberg> blow-in insulation is a nightmare
<rqou> oh
<azonenberg> there's no good way to remove it
<rqou> ugh
<azonenberg> you can shovel it, or vacuum it
<rqou> i'm sorry
<azonenberg> or some combination thereof
<azonenberg> It's made worse when it's in tight corners
<rqou> wait, is this urethane foam insulation or something else?
<azonenberg> No
<azonenberg> About ten inches of fiberglass "cotton ball" pieces on top of four inches of fire retardant sawdust
<rqou> "fire retardant sawdust"?
<rqou> that's possible?
<azonenberg> they treated it with something apparently
<azonenberg> with all the roof leaks it's too soggy to burn anyway :p
<azonenberg> (which makes it doubly fun to remove)
<rqou> have you at least gotten the roofers to show up yet?
<azonenberg> anyway to get rid of it i'm in a climbing harness, resting my weight on two 2x4 pieces stretched across the ceiling joists
<azonenberg> pressing uncomfortably in various parts
<azonenberg> i cant move more than a few feet without changing my tie-off to another anchor point, since i'm only 8ft above floor level i cant use a very long rope
<azonenberg> on my belly
<azonenberg> trying to shove myself into a spot so low (on the edges of the roofline) that i have to turn my head sideways
<azonenberg> because head + hardhat wont fit upright
<rqou> have you tried hiring somebody instead? :P
<azonenberg> holding the hose for a vacuum cleaner shoving it even further into the corner
<azonenberg> suckign it out
<azonenberg> after 5-10 minutes of this, the 50-gallon bucket is full
<azonenberg> and i have to roll it down the ladder and wait for ally to shovel it out
<azonenberg> When we started, we didnt think it was gonna take this long
<azonenberg> and now we're 99% done
<azonenberg> we just have one last tihgt spot over the kitchen ceiling
<azonenberg> Let's just say it's a very good thing i am not claustrophobic
<rqou> and then you have all the actual _installing_ to do
<azonenberg> We've been wiring as we do demo
<azonenberg> And the demo isnt the only thing, there's a lot of decontamination involved
<azonenberg> everything is loaded up with tobacco residue
<azonenberg> Today, we cleaned the floors in most of the second floor
<azonenberg> This involves sweeping the bulk debris up first
<azonenberg> that are too big to vacuum
<azonenberg> Then going over the whole floor with a shopvac and hepa filter
<rqou> have you considered just demo-ing the whole house? :P
<azonenberg> Then making a second pass with a broom and "sweeping compound", which is basically sawdust or some other absorbent material soaked in some kind of oil
<azonenberg> it binds to particulates and keeps them from becoming airborne
<azonenberg> great for getting fine dust off a floor, especially an uneven one
<azonenberg> Then we do a second hepa vac pass to remove traces of the compound (since it doesnt all stick to the broom when you sweep) and additional dust
<azonenberg> We did the first 2 on the whole house, two bedrooms still need the last two passes
<rqou> seriously wtf dude
<azonenberg> Then we're going to wait until the first floor is a bit more finished
<rqou> should have just demo-ed the whole house and started over :P
<azonenberg> And then get a spray bottle and vinegar, which apparently does a good job of degrading tobacco tars etc
<azonenberg> And scrub every ceiling joist
<azonenberg> every stud
<azonenberg> and every inch of floor
<azonenberg> Possibly more than once
<azonenberg> And honestly, if buying a plot of land and building was an option i probably would have
<azonenberg> Knowing what i do now, i might - but we made the best decision with the knowledge we had at the time
<azonenberg> At the tmie we believed that we had to be out by today
<azonenberg> time*
<azonenberg> We later found out the landlord's deployment was being extended, so we had more tmie
<azonenberg> We basically knew we had to buy something asap because we were getting kicked out
<azonenberg> Building was not an option in that time frame
<azonenberg> If we knew we'd have until august, i might have saved up a bit more, bought some land, then built to suit
<azonenberg> However, that brings me to the second issue which is that buildable land is scarce around here
<azonenberg> and buying a house, knocking it down, then building another one is pricey
<rqou> what about just living with monochroma? :P
<rqou> not "real adult" enough for you? :P :P :P
<azonenberg> That would entail putting all our stuff in storage since she doesnt have enough space for my lab etc
<azonenberg> Which means a) double move
<rqou> oh wait really
<rqou> hmm nvm
<azonenberg> b) being a lot more extensive with packing, since everything would have to be boxed vs carying stuff over a bit at a time in the car then having a mover take only the big stuff
<azonenberg> c) extended downtime
<azonenberg> awygle: yeah i read that paper when it came out
<azonenberg> Scary :p
<azonenberg> (have i mentioned we need open source chip layout yet?)
<rqou> magic/qflow?
<azonenberg> no i mean
<azonenberg> have an industry policy that your GDS is provided as part of the SDK
<azonenberg> :P
<rqou> lol not happening
<awygle> Permitting is also a nightmare for building, or so people keep trying to convince me
<rqou> even parallax never gave away their gds and afaik they fully control it
<rqou> awygle: build illegally? :P :P :P
<awygle> I still think I'm more likely to build than buy, but we'll see in a couple years
<awygle> Gotta get un-poor :-P
<rqou> shoulda bought bitcoin :P :P :P :P :P
<awygle> (actually I'm already quite un-poor but houses are expensive)
<rqou> get a roommate? :P
<azonenberg> awygle: well fwiw
<azonenberg> The guys who renovated this house before me
<awygle> I almost certainly will, when/if I have a house
<azonenberg> are the reasons building permits exist :p
<azonenberg> i'm finding so much BS
<azonenberg> and the scary part is, the things i'm able to call out as awful workmanship are mostly electrical in nature
<azonenberg> Because i know the NEC decently well
<rqou> awygle: PNW openfpga dorm? :P
<awygle> azonenberg: yeah but apparently on the east side you get at least some of the bay area "this area is totally zoned for this" "but my petunias!" horseshit
<azonenberg> How many more awful things are hiding where i simply dont know the relevant part of the building code? :p
<azonenberg> awygle: lol
<azonenberg> ... oh
<azonenberg> that
<azonenberg> well bainbridge just put in a moratorium on all building permits for a while
<awygle> Doubt it's a problem in kitsap
<azonenberg> curious how that will shake out
<azonenberg> ("just" = a few months ago)
<rqou> why do we not have an openfpga dorm yet?
<azonenberg> rqou: lol
<awygle> Because we all have lives and better things to spend money on
<awygle> Y'all can stay with me anytime, just don't make me your housing plan :-P
<azonenberg> rqou: well i wouldnt be interested anyway, seeing as i already have a roommate :P
<rqou> we need to get you another roommate to guarantee no future crotchfruit timesinks :P :P :P
<azonenberg> Who i happen to be married with, but that's just a minor detail
<azonenberg> lol
* awygle has lived in a place the size of azonenberg's current place that had 7 tenants
<rqou> lol
<rqou> we used to have 6 here
<rqou> but it's been whittled down to only 4 now
<azonenberg> awygle: My last place before i moved out here was a 2500 ft^2 or so apartment with five bedrooms
<azonenberg> fairly small, maybe 100sft each
<azonenberg> ft2*
<azonenberg> (how did that come out?)
* awygle luxuriates in his 900 Sq ft apartment
<azonenberg> With five tenants
<azonenberg> Then a massive common area / dining room / living room
<azonenberg> Of course i turned most of that into my lab :p
<azonenberg> We still had a place to sit and eat, and we still had a couch/tv area
<awygle> My lease is up in a couple months... Sigh. Hope my building doesn't try to fuck me too hard. There are three new buildings opening up this summer.
<rqou> lol you don't need a place to sit and eat, nor do you need a couch/tv area :P
<rqou> just lab space everywhere :P
<azonenberg> rqou: that was their demand, not mine
<azonenberg> i made it clear to my roommates that if they had a legitimate plan to use any of that vacant space, i would let them have it
<azonenberg> But as long as nobody else wanted the common space, it was mine
<awygle> Arright enough of this. Goodnight all
* awygle zzz
<azonenberg> i kinda miss that place sometimes
<azonenberg> $575/mo rent
<azonenberg> including all utilities
<azonenberg> walking distance to everywhere i needed to go
<azonenberg> rqou: also re timesinks
<azonenberg> What about crotchfruit lab assistants?
<rqou> nope
<azonenberg> an in-house smt assembly tech would be very handy
<azonenberg> :p
<rqou> only labcats for me :P
<azonenberg> Especially if [s]he doesn't need to be paid because it's their daily chore
<rqou> but you still have to deal with all of the other problems
<rqou> but lab cats just need to be fed and entertained :P
<azonenberg> Nerdlings don't need litter boxes that stink up the whole house
<azonenberg> Sure, diapers stink but at least it's not for their whole life
<azonenberg> And lab cats can't build PCBs
<azonenberg> And they're not as cute as lab puppers
* azonenberg hides
<rqou> fine, when openfpga manages to fork off opencrispr we'll practice on your crotchfruit :P
<azonenberg> lol
<azonenberg> no genetic experiments tyvm
<azonenberg> now, if the process was already well developed...
<rqou> no catgirls for you? :P
<azonenberg> ally would probably be thrilled to have a catgirl kid :p
<rqou> opencatgirl :P
<rqou> hmm, just wondering, are gender-selective abortions legal in the united states?
<rqou> they're illegal in china/india
<azonenberg> Assuming you found out before deciding to abort, i'm not sure there would be any way to prove in court that it was / was not a factor in your decision
<azonenberg> But i havent looked for case law on the subject
<rqou> afaik in china you just aren't allowed to test for the sex of the fetus
<azonenberg> ah ok
<azonenberg> in the us it's common to find out during routine diagnostics, although idk if that would be past the point you'd consider terminating it
<azonenberg> probably varies state to state
<rqou> yeah, sex-selective abortion is totally legal and has been defended by the courts in the US
<azonenberg> Welp, TIL
<rqou> don't forget that we have the GOP :P
<azonenberg> how about species selective? are you allowed to check for cat ears?
<azonenberg> :p
<rqou> hmm apparently the law does vary by state in the US
<rqou> just like the difficulty of getting an abortion varies
<azonenberg> i.e. level of republican domination varies
<azonenberg> :p
<rqou> yes
<rqou> there's a paper somewhere on law.cornell.edu that claims "However, the text of the laws and the statements made in support of the bans during legislative hearings make it clear that they are intended to place restrictions on abortion services generally. Moreover, the laws purport to solve a problem that may not exist at all in the United States. Rather than changing behavior or addressing a purported problem,
<rqou> sex-selective abortion bans are likely to lead to the denial of health care services to Asian American women."
<rqou> which is typical republican bullshit as usual
indy has quit [Read error: Connection reset by peer]
<azonenberg> welp, offtopic as usual :p
<rqou> yup
<rqou> but hey, tech(? i guess this is tech) policy is fun
indy has joined ##openfpga
bitd has joined ##openfpga
Lord_Nightmare2 has joined ##openfpga
Lord_Nightmare has quit [Ping timeout: 265 seconds]
Lord_Nightmare2 is now known as Lord_Nightmare
Lord_Nightmare has quit [Ping timeout: 265 seconds]
Lord_Nightmare has joined ##openfpga
<azonenberg> Sooo
<azonenberg> rqou: given the lack of good information on just how bad coupling i can expect
<azonenberg> Combined with the fact that the RJ45 connector footprint is a bit of a nightmare and i'm not 100% confident i got it completely right
<azonenberg> I'm going to build a characterization board
<rqou> sounds cool
<azonenberg> rqou: Two magnetics on opposite sides of a board
<azonenberg> the actual 2x4 RJ45
<rqou> i'd be interested in the data too
<azonenberg> 7 ports unused
<azonenberg> One port going to a magnetic with 100 ohm terminators on all pairs
<azonenberg> I'll test it at 10/100 forced, no autonegotiation (no PHY on the bus)
<azonenberg> Both 10 and 100 are stronger signals than gig
<azonenberg> so they should couple more strongly
<azonenberg> So that's the aggressor
<azonenberg> i.e. just use a signal coming from an external ethernet port
<azonenberg> actually i might throw a ksz9031 on just in case
<azonenberg> But in any case the victim will have a bunch of SMA connectors you can use to feed the incoming signals to a DSO
<azonenberg> Both with and without 100 ohm termination
<azonenberg> to see how much noise actually appears
<azonenberg> hmm
<azonenberg> i guess i could just do loopback on the aggressor port
<azonenberg> so the phy links up with itself
<azonenberg> That wont work for gigabit but i dont care, like i said 10/100 has higher voltage so should be worse noise
ym has joined ##openfpga
<azonenberg> How's that for a 20 minute schematic? lol
<rqou> your schematics always look a bit weird to me
<rqou> e.g. why aren't there GND symbols?
<azonenberg> I just use net names for everything
<azonenberg> GND is ambiguous
<azonenberg> do you mean chassis ground? analog ground? digital ground?
<rqou> and why is there a big empty J1I?
<azonenberg> Because it was easier to make all instances of the 8-port rj45 the same size
<azonenberg> and i had to hook the shield up somewhere
<azonenberg> So i made a 9th subcomponent with just a ground pin and didnt bother to resize it
<rqou> ooh this is a 2x4 thing
<rqou> right
<azonenberg> Yes
<rqou> i basically never use multiple units
<azonenberg> i'm using this board as a footprint verification for the line card too
<azonenberg> i had planned to do that anyawy
<azonenberg> I'm just hooking up test points too
<rqou> i hate multiple units
<azonenberg> try doing a big fpga
<rqou> at least it doesn't have implicit vdd/gnd
<azonenberg> and you'll hate not having them
<azonenberg> i consider implicit vdd/ground a terrible idea and nevr use them
<azonenberg> I am very explicit, for big fpgas sometimes i have an entire subcomponent for just vcc and another for ground
<azonenberg> some of the kicad lib symbols stack pins
<azonenberg> i NEVER do that
<rqou> some of the 74xx parts still use implicit vdd/ground
<rqou> i do use pin stacking
<azonenberg> Which is why i use my own 74xx symbols
<azonenberg> They have to keep the old ones to avoid breaking old schematics
<rqou> usually on "potato" parts
<azonenberg> But they're deprecated for new ones
<rqou> avoid breaking old schematics?
<rqou> what?
<rqou> schematics aren't self-contained?
<whitequark> no they aren't
<rqou> wtf
<azonenberg> They link to library symbols
<azonenberg> PCBs include components though
<whitequark> they do have the complete symbol inside them
<rqou> but that has so much footgun potential
<azonenberg> It does, and that's being fixed in the next version as part of the schematic revamp
<azonenberg> whitequark: i think that may be a recent change
<rqou> eeschema-new when? :P
<whitequark> when you open a schematic and the symbol is updated, kicad asks you if you want to update the symbol or to extract it into a "rescue" library and link to that
<azonenberg> earlier on, they didnt even have a cache
<whitequark> oh yeah
<rqou> whitequark: oh yeah, i got that message
<azonenberg> the sch ONLY had the symbol name
<azonenberg> i have old schematics i cant open anymore
<azonenberg> they just show up as a ??
<rqou> i've been ignoring it for now because i don't actually need to update my old schematics at this point
<rqou> just quickly glance at one
<whitequark> I make pdfs for that
<rqou> also, seriously kicad schematic symbols are garbage
<rqou> e.g. they've given themselves a fun backcompat issue
<rqou> and they look so excessively "euro"
<whitequark> that's a good thing
<whitequark> fuck the US
<azonenberg> i've grown to like the boxy resistors
<azonenberg> vs the zigzag style
<whitequark> rqou with his classic "it doesn't fit my taste therefore it's garbage" routine
<whitequark> do you ever look at yourself from a distance?
<rqou> you're basically doing the same thing
<whitequark> i'm using the kicad libraries and contributing to them ...
<whitequark> so no i don't think so
<rqou> meanwhile i just trust azonenberg to get it right
<rqou> have you assembled glasgow yet?
<whitequark> don't have any solder paste
<whitequark> i hate rs components, they always promise "1-day delivery" but in reality it's "3 working days" and then they're usually 1-2 days late on top of that
<rqou> anyways, i just don't agree with kicad's "our way or go away" library conventions
<whitequark> having a ton of inconsistent symbols is worse
<rqou> i just don't get why you care so much about "consistency"
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
<rqou> if it works and is understandable, ¯\_(ツ)_/¯
<whitequark> "it works" is the lowest possible bar
<whitequark> the "fuck it, ship it" school of engineering
<azonenberg> welp
<rqou> i have a goal to do <foo>, not to go fix all of the random problems along the way
<whitequark> yes, and that's why all your work becomes a stack of fragile workarounds that just happened to work when you made them
<whitequark> it's not anything to be proud of
<whitequark> zero insight into the underlying problems other than your short-term goal, zero amount of care about maintainability, but "it works"
<whitequark> i'm sure it's a good approach when all you have is homework
<rqou> i do also set non-homework goals
<rqou> i just don't bother shaving all of the yaks along the way
<whitequark> haha, if I tried to shave *all* of the yaks, I would've been writing a P&R for Series 7 now
<whitequark> I *almost* ended up writing a P&R for Series 6 once
<rqou> right, so i just optimize the yaks i want to shave, just like you
<whitequark> that's not the angle i look at it from
<whitequark> when i have something in my environment that's broken or severely unoptimal, and that i can actually fix, i fix it
<whitequark> i'd like to have an eeschema-new, but it's not realistic for me to implement it. improving kicad libraries though? sure is
<rqou> i guess i just don't consider that improving kicad libs is something realistic for me to do
<rqou> "do i want to fight the maintainers, or just make my board?"
<whitequark> i actually give a fuck about leaving the place i'm in slightly better than how i found it
<whitequark> people in opensource "just wanting to make their own thing" is why almost all OSS is a trash fire
<rqou> idk, most of my interactions with "big" OSS projects have not been pleasant
<whitequark> eh, some of them are pretty bad
<whitequark> i don't think i would contribute to glibc
<rqou> so e.g. the attitude i usually sense from debian is "wtf, you aren't 'in the loop' enough to be useful, just gtfo, you're just adding noise"
<rqou> i've basically given up reporting bugs to them
<whitequark> yes, i get that impression from debian too. and not even so much from interactions as just from their horrifying packaging system
<whitequark> like have you ever tried to make a 'proper' debian package?
<whitequark> i gave up
<rqou> i have no idea what a "proper" package even is
<q3k> azonenberg: how stable is the diff pair routing in kicad these days?
<rqou> there's like piles and piles of rules
<whitequark> exactly
<rqou> q3k: worksforme last i tried it
<q3k> azonenberg: I was toying around with it a year ago and it was a crashfest
<q3k> but that was right when they merged it
<whitequark> it's fucking impossible to tell what they want
<q3k> well, maybe two years ago. time flies.
<whitequark> back when i had debian/ in the solvespace repo, the maintainer nuked and rewrote it
<azonenberg> q3k: very stable now
<azonenberg> i havent had it die in a logn time
<q3k> azonenberg: cool!
<azonenberg> there is a bug in the latest dev version with *moving* compnents
<whitequark> i tried to merge his changes back but he kept finding obscure issues with it so i just killed it eventually
<azonenberg> that occasionalyl calls virtual BoardItem::Move()
<azonenberg> And i havent had time to investigate
<rqou> honestly if you're in an "ISV-like" position i would just use musl to build static binaries and ignore "distro" stuff
<whitequark> meh, that works if you make cli programs that never try to go on the network
<azonenberg> Or do what i do
<rqou> i guess this would be an example of not fixing the problem
<azonenberg> spend 15 minutes in cmake and cpack
<azonenberg> make a package that installs correctly, uses the package manager
<whitequark> hm yes i should investigate cpack
<azonenberg> but since it uses a code generation tool isn't acceptable to debian and will never be merged into mainline
<rqou> azonenberg: and then build a bajillion different permutations?
<azonenberg> Debian, last i checked, has a policy of only accepting manual debian package configs
<azonenberg> rqou: no, do one build for stable
<azonenberg> and if you're not using it, too bad
<whitequark> debian doesn't want you to write debian packages basically
<rqou> oldstable? ubuntu? fedora? rhel? centos?
<whitequark> they want to do it all themselves
<rqou> or just use musl and it works everywhere
<rqou> even android lol
<whitequark> no it doesn't
<azonenberg> rqou: or, simply say that i onyl support debian stable
<rqou> yeah it does?
<azonenberg> you can use elsewhere at your own risk / build it
<whitequark> it ignores nsswitch
<rqou> so?
<whitequark> so if you have hostnames that resolve via nsswitch, you can't access those
<rqou> most programs don't _really_ need that
<whitequark> it """works""" """everywhere"""
<rqou> works for go
<whitequark> also not an option if you need OpenGL
<rqou> yes, that is indeed a problem
<rqou> if you don't care about nvidia, you can probably just statically link mesa too
<rqou> not a great solution though
<whitequark> is the kernel interface even stable?
<rqou> oooh shit hmm
<rqou> yeah, drm might not be stable
<whitequark> even if it is that will just stop working each time intel releases a new gpu
<q3k> rqou: go goes through libnss/nssswitch by default
<rqou> it does?
<q3k> rqou: that's why when you import net/* you don't get a static binary anymore
<rqou> i thought the docker people were bitching about it?
<whitequark> also if you're e.g. linking Qt statically, it ignores my desktop theme and ends up unreadable
<rqou> wait
<whitequark> skype did that, it was annoying af
<whitequark> i just purged it as a result
<rqou> is _that_ why actually-ISV software on linux is always tiny and not doing hidpi correctly?
<azonenberg> ok i need to sleep
<whitequark> yes.
<rqou> i had no idea
<azonenberg> got the characterization board half finished
<rqou> mystery solved :P
<whitequark> they also tend to use ancient versions of gtk and qtt
<rqou> i just always lived with skype/qt/PLECS/etc being tiny
<rqou> er, not QT
<rqou> EAGLE
<q3k> rqou: it's actually even smarter than I thought
<q3k> rqou: used to be set at build time
<q3k> rqou: now it run-time decides what to use https://golang.org/src/net/net.go
<q3k> (line 49)
<q3k> and if it sees an nsswitch it can't emulate it goes through libnss
<rqou> wait how can it do that?
<rqou> does it never build a static binary?
<rqou> but only optionally load libnss?
<whitequark> I don't think it should ever build a "true" static binary
<whitequark> why? because then you don't get PIE
<rqou> wat?
<rqou> i don't think so?
<whitequark> PIE executables are just shared objects
<whitequark> you need the dynamic linker to load them
<whitequark> you don't need libc though
<whitequark> so you can have a PIE that needs ld-linux.so but nothing more
<whitequark> that means you get the ability to load libnss for free
<whitequark> the go people can't make a good language, but seem to actually understand how to build decent software at least
<q3k> rqou: if you include net/* you end up using cgo which causes to build a somewhat-static-binary as whitequark described
<q3k> (ie. uses the dl but doesn't link against libc directly)
<whitequark> q3k: lol i didn't know how it works, i just laid out how i'd do it
<q3k> oh no, it actually links against libc.so
<q3k> q3k@anathema ~ $ ldd foo.elf
<rqou> whitequark: static PIE is possible actually
<q3k> linux-vdso.so.1 (0x00007ffc617a7000)
<q3k> libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f808351e000)
<q3k> libc.so.6 => /lib64/libc.so.6 (0x00007f808315c000)
<q3k> /lib64/ld-linux-x86-64.so.2 (0x00007f808373e000)
<rqou> not 100% production-ready yet though
<whitequark> oh
<whitequark> pthread
<whitequark> of course
<whitequark> it links against pthread, which depends on libc
<whitequark> libnss probably has mutexes in its API
<q3k> seems like it does so directly, not via pthread
<whitequark> hm
<q3k> accaccording to readelf.
<q3k> (both NEEDED)
<whitequark> that's kind of annoying
<whitequark> on the other hand, does it actually import any symbols from libc?
<q3k> take a look yourself
<whitequark> wtf massive
<whitequark> 3MB?!
<q3k> >massive
<whitequark> and they say rust binaries are bloated
<q3k> i've seen 1.5GB Go binaries
<q3k> 3MB is nothing :P
<whitequark> oh
<whitequark> 0000000000000000 DO *UND* 0000000000000000 GLIBC_2.2.5 getgrgid_r
<whitequark> that's how it uses nsswitch
<q3k> also you can strip it to 2MB
<whitequark> it doesn't use the libs directly, it uses them via glibc
<q3k> that makes sense
<whitequark> also yes, it uses mutexes
<whitequark> and pthread_create and friends
<whitequark> because otherwise you don't get TLS
<whitequark> and TLS is needed for the resolver to work
<whitequark> is this a compliment
<whitequark> i'm not sure
<q3k> heh
<rqou> goddammit configure is slow
<rqou> i'm rerunning musl-cross-make and over half the time really is spent running configure
<rqou> it seems like time taken is: configure > printing stuff to the terminal > actually compiling
<q3k> well, configure is compiling a shitton of stuff in the background
<q3k> to make sure your linux is behaving like linux and not sunos
<rqou> brilliant /s
<q3k> but yeah, that autoconf doesn't generate configure scripts that let you parallelize checks is somewhat sad
<jn__> it's even worse when exec is slow for some reason, for example under qemu-user
<rqou> it actually does parallelize checks :P
<rqou> or at least musl-cross-make does
<q3k> jn__: for that you usually drop over a native sh into your chroot
<rqou> because it runs multiple configure steps in parallel :P
<q3k> jn__: so that at least it is somewhat fast
<jn__> q3k: how did i not have this idea?!
<jn__> brilliant
<q3k> you obviously haven't cross-compiled enough gentoo rootfsen this way :P
<rqou> heh, i've tried stuff like that before and failed
<jn__> heh :)
<rqou> but i was trying to drop x86 packages into a raspbian rootfs
<rqou> and raspbian packages don't actually match debian packages
<rqou> (i was trying to drop in x86 java but eventually gave up and let it run arm java under qemu)
<rqou> (another example of "whatever, it works, not going to bother to fix it" that whitequark dislikes so much)
<rqou> and yes, arm java under qemu is as slow as you would expect
<jn__> i've been bootstrapping a small part of Alpine Linux for ppc over the past weeks
<rqou> probably not slower than an actual raspi though
<jn__> but i just accepted that it was terribly slow
<q3k> i remember qemu-user emulation for arm being faster on my workstation than on the siglent scope I was hacking on
<q3k> mostly because I could make -j8
<q3k> and because it had more than 256MB of RAM
<rqou> hrm wtf
<rqou> static pie is really supposed to work, but it doesn't
<jn__> especially when gcc's makefile decides to run all genautomata jobs at the same time you need a good deal of RAM
<q3k> rqou: probably works on openbsd :P
<jn__> (-j4 on 2GiB RAM is not enough)
<q3k> rqou: yep, since 5.7, everything in /sbin is -static -pie
pie__ has joined ##openfpga
<q3k> rqou: https://paste.q3k.org/paste/vReuFYYj#kZGYMi-W1aI+u929OLy609v6kwaRTOfd755GjJ7G2VM
<q3k> so yeah, use openbsd, problem solved
<rqou> yeah well i'm not a weirdo :P
<q3k> it's a perfectly cromulent operating system
<q3k> daily driver on my laptop
<rqou> ok, it works on linux too
<rqou> musl-cross-make seems to have a problem
<q3k> btw, did you ever use musl for risc-v embedded?
<rqou> i never used risc-v except for class
<q3k> i just used newlib for $project, and it's all fine, just that printf("foo") made my rom image 11kB immediately
<q3k> which granted, isn't much compared to go :P
<q3k> but it's supposed to fit in sram
<rqou> use the nonstandard iprintf
<jn__> q3k: musl in bare metal stuff?
<rqou> i have that kinda working somewhat
<rqou> not production-ready
<q3k> rqou: that actually makes it larger
<rqou> oh wtf
<rqou> how?
<rqou> static PIE executables are possible
<q3k> rqou: from 2cd0 bytes to 41d0 bytes
<q3k> jn__: well, I want my printf dammit
<rqou> idk
<pie__> huh
<rqou> i guess you have to objdump it
<q3k> jn__: and I didn't want to copy over my shitty printf-like code from 10 years ago
<q3k> anyway, integrating newlib was super easy
<q3k> had to only implement 8 or so 'syscalls' (most of which are stubbed out)
<rqou> not sure if smaller or not though
<q3k> rqou: if I wanted hand-crafted artisanal printfs I'd use my own, thanks you :P
<q3k> although this one is from musl, so eh
<q3k> but yeah, then I still need a libc for other things
<rqou> ah ok
<pie__> cromulent makes me think of the romulans
<jn__> pie__: it's a rather nice word: https://en.wiktionary.org/wiki/cromulent
<pie__> zes
<pie__> yes
<rqou> lol pie__ german keyboard?
<pie__> actually hungarian
<pie__> when i was using my broken german more often it would be even worse switching between 3 layouts
<rqou> hungary also uses QWERTZ?
<q3k> setxkbmap 'ru(phonetic)' best keyboard
<pie__> >w<
<rqou> i used to run "US Intl AltGr dead keys"
<rqou> but it turns out that it's not actually that useful
<pie__> what does he mena he isnt wire bonding by hand :P
<pie__> also, "i bought a wire bonder" YEAH OK :P
* pie__ impressed but salty xD
<q3k> i'm also somewhat salty
<q3k> but mostly because I just wouldn't have space for any of this.
<pie__> who cares about space i want to know about the money lol
<pie__> or he is the worlds best ebay/dumpster diver
<jn__> "It's not enough to have a dream, you have to have a garage."
<pie__> well he's not wrong i guess
<rqou> also $$$
<rqou> also not being in school
<pie__> i think that might be somewhat implied
<rqou> er, not being in school where you actually care a lot and are paying
<rqou> being in the joke of K12 gives you a lot of free time but not very much free $$$
kuldeep has joined ##openfpga
rohitksingh_wor1 has joined ##openfpga
rohitksingh_work has quit [Ping timeout: 264 seconds]
X-Scale has joined ##openfpga
ondrej2 has joined ##openfpga
rqou has quit [Quit: ZNC 1.7.x-git-709-1bb0199 - http://znc.in]
rohitksingh_work has joined ##openfpga
rohitksingh_wor1 has quit [Ping timeout: 260 seconds]
<pie__> i saw a text adventure for windows maybe 8 years back that ran in its own ascii color .....?terminal? window
<pie__> im wondering how i could do something like that
<pie__> like it might have been reusing something windows provides, idk, im just looking or something that behaves like a proper screen, but text
<jn__> pie__: i'd just use SDL for that
<jn__> like SchismTracker does it
<pie__> (also it wasnt full screen...so...a terminal, but not?)
<pie__> hm
<pie__> didnt know sdl can do stuff like that
<jn__> http://asciisector.net/ is pretty close to what you describe
rohitksingh_work has quit [Ping timeout: 248 seconds]
<jn__> pie__: printing monospace text with fg/bg colors isn't hard
<pie__> kinda wish i could find the game but i have absolutely no idea how so eh.
<jn__> DEC VT emulation is hard, but you don't need that in a closed system such as a game
<pie__> yeah
<pie__> though with how slow i am (and not that i actually have any material) it might be possible to wait for alacritty to mature a bit, then id probably have a bundleable tty
<pie__> assuming they get the "alacritty as a library" stuff working
m_t has joined ##openfpga
<pie__> basically i want to be able to sanely draw "text", not just pushing lines at the bottom
<pie__> if thats a sane thing to want to do
<pie__> .me just got a severe urge to put some GITS music on
<jn__> pie__: hmm, GITS
Bike is now known as Bicyclidine
<pie__> gotta get that CYBER feeling
<gruetzkopf> DEC VT is easy
<gruetzkopf> go to your storage facility and grab a new-in-box DEC VT :P
<jn__> :D
<gruetzkopf> or how about a tandberg data TDV-2200 ECMA48-germany one
Bike has joined ##openfpga
<pie__> is vcpkg Yet Another Package Manager but from microsoft this timee?
SpaceCoaster has quit [Ping timeout: 240 seconds]
SpaceCoaster has joined ##openfpga
ondrej2 has quit [Quit: Leaving]
m_t has quit [Quit: Leaving]
<jn__> TIL: mIRC's scripting language is documented on wikichip
<mithro> Morning!
<azonenberg> o/ mithro
<azonenberg> This should finally answer the question me and rqou were puzzling over
<azonenberg> just how much do these magnetics couple to each other?
<q3k> azonenberg: ns2.antikernel.net is dead and makes lookups of *.antikernel.net slooooow
<azonenberg> q3k: interesting, that might explain the complaints of performance i've been having
<azonenberg> sec...
* azonenberg should move this thing off godaddy some day too
<azonenberg> i've been meaning to do it for years
<q3k> that'll be $3.50
<azonenberg> and keep having things come up
<q3k> I can get you AXFR to ns2.bytesexual.net if you need it
<azonenberg> after the move
<azonenberg> i'm going to be rehoming a lot of this stuff to my garage
<azonenberg> and host stuff in house
<azonenberg> i am sick and tired of BS vps systems that are oversubscribed and have several seconds of hanging on disk io at random times
<q3k> if you feel like physical boxen and you want redundancy for your home link, you can get some super cheap at online.net/soyoustart.com/hetzner.de
<q3k> just get a pair for redundancy of those :P
<azonenberg> well this is interesting
<azonenberg> So, ns2.antikernel.net is supposed to be the second IP on this vps
<azonenberg> Apparently my second ethernet interface vanished recently
<azonenberg> i'll just point both to the same ip for now :p
<q3k> been there done that
<azonenberg> i'm supposed to have .33 and .34 on the same box
<azonenberg> but venet1 no longer exists
<q3k> yeah, I noticed
<azonenberg> That vps needs to die anyway
<q3k> that they're right next to eachother
<azonenberg> It's using an awful hosting company
<q3k> tbh I'm thinking of moving all of my DNS infra to google cloud
<azonenberg> And more importantly it's running a 2.6 kernel
<azonenberg> that hasnt been patched in ages
<q3k> nice
<azonenberg> and it's openvz and i can't fix it
<azonenberg> because it's not MY kernel
<q3k> niiiice
<azonenberg> (did you even know latest debian will RUN on a 2.6 kernel? lol)
<azonenberg> I contacted the host about it, they said they are planning to EOL the openvz service at some point
<q3k> as linus said, we don't break the userspace
<azonenberg> and in the meantime are not doing any maintenance whatsoever
<azonenberg> :p
<jn__> doesn't glibc need kernel 3.2 now?
<azonenberg> i've had multiple several-hour outages lately
<azonenberg> in which it was completely unreachable
<azonenberg> But i have to keep it until i get my own infrastructure up
<q3k> yeah, I also need to move q3k.org&al to the warsaw hackerspace at some point
<implr> q3k: linus doesn't break userspace, but userspace breaks itself
<implr> by depending on new fancy features
<azonenberg> new kernel old userspace works
<azonenberg> new userspace old kernel, not so much
<q3k> didn't glibc do it somewhat intelligently, ie. by probing for available syscalls?
<awygle> it's always weird to have linus be the posterchild for don't break userspace now
<awygle> no zeal like a convert's zeal i guess
<q3k> well, in today's general computing approach to backwards/forwards compatibility
<q3k> *ahem* javascript frameworks *ahem*
digshadow has quit [Ping timeout: 260 seconds]
digshadow has joined ##openfpga
rqou has joined ##openfpga
<rqou> goddammit
<rqou> i see the complaints about VPSs, and i always forget to go and handle linode maintenance windows
<rqou> (no, the server currently doesn't reboot cleanly)
<rqou> whitequark:
<rqou> whitequark: request: can you log #proghq?
<rqou> also, musl is supposed to be properly backwards/forwards compatible
<rqou> mostly carefully degrading functionality on really old kernels
<gruetzkopf> yeah, they're only really worried about pre-2.4..
<rqou> no, there are threading correctness issues on pre-3.0 iirc
<rqou> but your basic syscalls will still work on a 2.6 system
<rqou> also huh the espressif tools are quite a bit more cleaned up since the last time i touched them
<rqou> (which was when the "western world" first found out about them)
<gruetzkopf> i'm currently running around in circles because of their uart 'hal'
<balrog> rqou: still closed though
<rqou> yeah i know
<balrog> is anyone working on open libs for esp8266?
<gruetzkopf> this whole project should be programmable logic and not a mcu
<cpresser> wifi with wishbone interface?
<balrog> http://esp8266-re.foogod.com/wiki/ -- ugh still down
<gruetzkopf> don't need the wifi currently
<rqou> ugh
<rqou> esp-open-sdk says "is in public domain"
<rqou> but that's not good enough for the EU
<awygle> azonenberg: does IOA give like, training courses?
<awygle> "hire an azonenberg to come to your office and talk at you for 8 hours for $xxxx" type things?
<balrog> rqou: esp-open-sdk in itself is just the makefile
<balrog> > ESP8266 IoT SDK from Espressif Systems. This component is only partially open source, (some libraries are provided as binary blobs).
<balrog> that's the main issue
<rqou> i know
<balrog> also
<balrog> > wpa_supplicant, http://w1.fi/wpa_supplicant/ (source withheld by Espressif)
<balrog> and
<balrog> > net80211/ieee80211 (FreeBSD WiFi stack), http://www.unix.com/man-page/freebsd/9/NET80211 (source withheld by Espressif)
<rqou> but idk if there can still be issues with the Makefile
<rqou> e.g. if you want to fork the Makefile in the EU
<balrog> (why is wpa_supplicant closed anyway?)
<rqou> because it can be? :P
<rqou> not having ida support for xtensa kinda sucks
<rqou> poke poke felix_ :P
<rqou> ah right
<rqou> those probably work for espressif parts
<rqou> not for ath10k
<balrog> yeah
<balrog> you working with those?
<rqou> no, not enough time
<rqou> felix_ is getting somebody to work on those
<balrog> ah
<rqou> oh wtf
<rqou> esp-open-sdk also has a broken AF build system
<cr1901_modern> The entire C toolchain is... bad. I just use micropython, which well... actually works fairly well ._.
<rqou> e.g. "make -j20" doesn't work
<rqou> and it somehow managed to poke my PATH and find the totally wrong version of gcc
<rqou> i don't get it
<rqou> musl-cross-make manages to "just work"
<gruetzkopf> IOA still always matches to international oversight authority for me. yay stargate.
* awygle watched the movie, SG-1, and Atlantis, and does not recognize this TLA
<gruetzkopf> it's the organisation that employed woolsey during sg1
<azonenberg> awygle: we have "advisory services" which is kinda like that
<azonenberg> and i've done onsite consults with clients for things like architecture reviews
<rqou> balrog: is the esp32 bootrom hidden?
<rqou> oh wtf esp32 also has bt classic in addition to BLE?!
<rqou> how did they cram so much stuff into this chip?
m_w has joined ##openfpga
<azonenberg> awygle: btw did you see the crosstalk characterization board i linked last night?
<azonenberg> any thoughts on it?
<azonenberg> The latest version has 950 ohm resistors on the test points after the differential terminators, so you can run 50 ohm coax to your scope and have a 20:1 integrated Z0 probe
<azonenberg> (incidentally, if you don't hook up the aggressor then this can be used as a test platform for general ethernet signal quality measurements)
<azonenberg> i kinda wanted one of those anyway
[X-Scale] has joined ##openfpga
X-Scale has quit [Ping timeout: 256 seconds]
[X-Scale] is now known as X-Scale
<awygle> azonenberg: i saw the link but didn't click it, i'll get there
<rqou> pie__: so what's adreno/mali/pvr? :P
<rqou> sitting in the corner eating glue?
bitd has quit [Quit: Leaving]
<pie__> lol
<awygle> lol
<awygle> azonenberg: schematic looks reasonable, 3D model looks... fine
<azonenberg> (still no 3d model of the rj45, bleh)
<awygle> it'll be good to see results
<awygle> do you have a target number?
<azonenberg> awygle: did some math and it looks like if my aggressor signal is 1V amplitude 100base-T
<azonenberg> My scope's maximum input sensitivity in 50 ohm mode is 1 mV / division
<azonenberg> So i should in theory be able to see at least a 1:1000 attenuated copy of the aggressor
<azonenberg> 1:1000 voltage gain is -60 dB
<azonenberg> So if i don't see *any* crosstalk, it's well under -60 dB
<azonenberg> in reality i expect there to be some
<azonenberg> But we'll see how much, i guess
<azonenberg> As far as a target number, let me think
<whitequark> rqou: yes, moment
<gruetzkopf> i much prefer "YOLO HF ENGINEERING"
<gruetzkopf> as applied by many many vendors
<awygle> rqou: did you know you were in the El Correo Libre newsletter?
<gruetzkopf> i've seen people route their pcie refclk under their SMPS
<awygle> this makes me want to be a consultant
<awygle> and fix all these stupid fuckups for exhorbitant fees
<rqou> awygle: no idea about that. is that one of the things from "the Spanish FPGA community?"
<gruetzkopf> and i'm kinda planning a board with usb3 gen2 and 20V/15A switching power supply..
<whitequark> rqou: re static PIE: that's exactly what I described
<whitequark> it's a shared object, like I said
<awygle> rqou: it's the FOSSI newsletter thing https://medium.com/librecores/el-correo-libre-issue-2-f19756722ed8
<cr1901_modern> The free post-office?
<rqou> whitequark: yeah, but it doesn't require an interpreter
<azonenberg> awygle: so, 1000base-T runs at 125 MHz fundamental frequency with +1, +0.5, 0, -0.5, -1V
<azonenberg> So the nominal amplitude between symbols is 500 mV
<awygle> cr1901_modern: i think it's the free press?
<whitequark> rqou: I don't believe that
<awygle> or like, newsletter
<gruetzkopf> 60s-grade extra-paranoid relay logic is also fun
<whitequark> rqou: load it and show me the memory map?
<azonenberg> Worst case cat5e insertion loss after a max-length cable (100 meters) is around 25 dB
<gruetzkopf> how about the real-world max-length cable
<awygle> unbounded
<awygle> better to design for the spec
<awygle> or, well, easier at least
<azonenberg> Which is 0.056 voltage gain or 28 mV if i'm doing this right
<gruetzkopf> i've accidentally built a 250m link that worked*
<azonenberg> Say we want a 5:1 SNR in this scenario
<azonenberg> That gives us 5.6 mV of worst case crosstalk voltage
<awygle> insertion loss is probably not what you want
<azonenberg> awygle: why? i'm considering a minimum amplitude victim and a maximum amplitude aggressor
<azonenberg> Then designing for crosstalk that will leave the victim eye usefully open
_whitelogger has joined ##openfpga
<rqou> whitequark: and yes, the address does actually change
<whitequark> rqou: *huh*
<whitequark> so the kernel learned to relocate pies
<awygle> azonenberg: insertion loss is the _lost_ power. so you _lose_ 28 mV, you don't have 28 mV _left_
<azonenberg> awygle: ??
<azonenberg> hmmm, let me double check this graph
<gruetzkopf> but today in gruetzkopf bad plans: increase page size in linux/arm64 to work around nintendo-grade cryptography
<azonenberg> oh, the graph i was looking at was attenuation
<azonenberg> Not loss
<azonenberg> So my numbers are right
<awygle> ah
<gruetzkopf> what's got you so concerned anyways
<azonenberg> Anyway, it's interesting to note that the magnetics have higher internal crosstalk than this
<awygle> send me this graph of yours lol
<azonenberg> At 80 MHz the channel to channel crosstalk can be up to -35 dB
<gruetzkopf> are trying to put SMT RJ45 sockets on both sides of a board?
<awygle> gruetzkopf: magnetics, not jacks, but yes.
<awygle> clamshelled transformers
<azonenberg> awygle: however in that case the aggressor is just as weak as the victim, so it's fine
<azonenberg> Worst case is to plug a really long cable to the jack opposite a really short one
<awygle> -35 dB is 8.8 mV of crosstalk
<azonenberg> No
<azonenberg> well, at 1V it is
<azonenberg> But at a 1V aggressor you have 500 mV between symbol voltages at the victim
<azonenberg> Since it's just as strong a signal
<azonenberg> (and this is inside the magnetics where stuff is basically touching)
<awygle> at 500 mV. it's 0.017783 voltage ratio, times 500 mV
<azonenberg> So you do have 8.8 mV of crosstalk, BUT
<azonenberg> You have a 56:1 SNR
<awygle> yeah
<azonenberg> Whereas if you had the same 35 dB of crosstalk through the board, with a 1V aggressor and a 28 mV victim
<azonenberg> now you have a 3:1 SNR
<azonenberg> Which miiight still be OK
<awygle> sure
<azonenberg> Realistically i think we're going to see more like 40-50 dB of crosstalk through the board
<azonenberg> Since it's further away than stuff crammed into the same transformer package
<azonenberg> you have 1.6mm + package thickness and leadframe height
<azonenberg> So we'll probably see it but it will probably be fine
<azonenberg> But again, measure and find out :)
<awygle> yup
<azonenberg> Also the 5:1 SNR for worst case signals is just arbitrary
<azonenberg> I dont actually know how much a PHY can tolerate but that should still leave a decently open eye
<azonenberg> Actually, here's a fun thing i could do
<azonenberg> So, let's round to about 30 dB attenuation for a worst case ethernet cable
<awygle> yeah i was looking for a spec someplace but i'm not seeing one
<azonenberg> We have eight rj45 ports on this thing and are only using two right now
<azonenberg> what do you think of adding a 30 dB attenuator between two of them?
<azonenberg> That way we can patch a signal generator through it and plug it to the victim port
<azonenberg> then plot an actual eye
<awygle> sounds reasonable
<azonenberg> With a second interface, with no attenuation, going to the aggressor
<awygle> that's digital actually
<awygle> but i don't see any passive 30 dB attenuators
<gruetzkopf> ah, bare magnetics modules
<azonenberg> awygle: i was thinking of just sticking down some resistors
<azonenberg> is it really that hard to design a 30 dB passive attenuator?
<awygle> pi attenuator? you're not going to be very precise i bet
<awygle> hm a tee attenuator might work out okay, sec
<azonenberg> This has to be differential though
<azonenberg> so it'd end up being a mirrored pair of T's
<awygle> it's called a "balanced tee"
<azonenberg> Yeah that's the topology i had in mind
<azonenberg> Also, you can just cascade smaller attenuators to get more right?
<azonenberg> say 15 + 15 = 30
<cr1901_modern> yes, last I checked that's how addition worked :P
<awygle> 23.2 ohm series resistors, 3.16 shunt, gives you 29.92 ohms
<azonenberg> addition of logarithms, specifically
<awygle> and yes, you can cascade if you want to
<awygle> but of course it magnifies uncertainties
<azonenberg> Of course
<azonenberg> but again, we can measure the actual signal amplitude after attenuation
<awygle> sure, per-unit calibration is always possible
<azonenberg> We care more about generating a realistic-looking, weak ethernet signal then adding noise to the mix
<awygle> but there's no particular reason to
<azonenberg> we're only going to make one of thse
<azonenberg> it's a characterization platform
<awygle> given the math working out as well as it does
<azonenberg> So if we end up simulating a 98 meter cable instead of a 105 meter cable
<azonenberg> big deal
<awygle> i'd still like to see your source for these loss numbers
<awygle> they don't sound impossibly high but they do sound high
<azonenberg> i just googled cat5e loss per meter or something like that
<azonenberg> and found a few tables
<azonenberg> they varied a bit but i got a rough gist of it
<gruetzkopf> look at "chinesium-grade unshielded al-cu with about 6 twists per meter"
<gruetzkopf> because that's what i see when people call me with "internet problems"
<azonenberg> awygle: HMC657LP2E
<awygle> hm, yeah, ok, seems pretty close
<azonenberg> That's 15 dB
<rqou> ASUCK indeed :P
<azonenberg> we have plenty of ports
<awygle> azonenberg: oh i've used those actually
<awygle> they're not bad
<azonenberg> So have port -> 15 dB - > port
<azonenberg> replicated twice
<azonenberg> You can patch to one or both
<azonenberg> in series
<azonenberg> Then hook to the victim
<awygle> see now _that's_ a good idea
<azonenberg> So we can now do 0, 15, or 30 dB on the victim by just moving cables around
<awygle> mhm
<azonenberg> Not that i originally planned to do this
<azonenberg> but i think we're going to end up with a nice ethernet signal integrity measurement platform
<azonenberg> lol
<awygle> time to hook up TRAGICLASER
<azonenberg> lol
<azonenberg> i know for a fact the rf will fall on its face after a bit of attenuation
<azonenberg> there's no active thresholding
<azonenberg> but i will try running the transmitter through it at some point
<awygle> actually this would be a good test for a bunch of the cap-coupled topologies
<azonenberg> So at this point
<awygle> which i've wanted to play around with for ~years
<azonenberg> we have four ports hooked up with 15 dB attenuators between them in pairs
<azonenberg> One going to magnetic aggressor
<azonenberg> one to magnetic victim
<azonenberg> We'll have two more if you have any other test circuitry you can think of shoving in
<azonenberg> As long as it doesnt require power, i'm trying to keep this board passive
<awygle> nah
<rqou> whitequark: when can i get lorgetcp? :P
<rqou> or would that just be called "Linux"?
<whitequark> yes
<whitequark> lol "lorge"
<azonenberg> is that not the opposite of smol?
<whitequark> never heard it
<azonenberg> me neither
<azonenberg> but it was obvious :p
<whitequark> ha, llvm is considering changing .eh_frame handling in a way that makes lld faster but bfd slower
<whitequark> and crashes gold
<awygle> oh how the tables have turned
<whitequark> -ffunction-sections for .eh_frame basically
<awygle> does gold work?
<rqou> wait, it didn't already do that?
<awygle> i have the impression of gold as like fusion, always 5 years away
<whitequark> gold works for a long time, I'm building llvm with gold because bfd is slow af
<whitequark> it's recommended in fact
<awygle> ah
<whitequark> rqou: no, someone tried to do that in 2015 and backed off because of slowdown and crashes
<rqou> wtf
<whitequark> thank gnu for that :p
GenTooMan has joined ##openfpga
<rqou> also, why so many complaints about llvm build times?
<rqou> for me a full build is like 10 minutes
<whitequark> "full build"?
<whitequark> which backends? and how many cores does your overpowered machine have?
<rqou> whatever emscripten would build
<whitequark> that's not a full build lol
<rqou> and 10 cores (20 threads)
<whitequark> the x86 backend is nearly as large as the entire arch-independent part of llvm
<whitequark> not in terms of the source code but it has a ton of incredibly large generated tables
<rqou> why?
<rqou> ah
<whitequark> if you look at it, it's something like 120 MB of machine code
<whitequark> not including debug info
<whitequark> the bfd slowdown for split .eh_frame is 29%
<whitequark> lolbfd
<rqou> probably-infeasable definitely-will-get-me-murdered idea: a hack to shove gcc .md files into llvm :P
<rqou> (not actually a serious idea)
<whitequark> oh and they fixed gold
<rqou> and i assume they don't want to touch bfd?
<whitequark> * ld.bfd: 3,792698701 seconds time elapsed ( +- 0,19% ) (1,29*t1)
<whitequark> * ld.gold: 1,135187654 seconds time elapsed ( +- 0,10% ) (1,1416*t2)
<whitequark> * LLD: 0,506076638 seconds time elapsed ( +- 0,31% ) (1,1358*t3)
<whitequark> bfd doesn't have a crash issue, it has a perf issue
<whitequark> and even gnu people don't want to touch ld.bfd
<whitequark> that's why gold exists
<rqou> wait, we're only talking 4 seconds total?
<rqou> meh, whatever
<whitequark> that's a test case...
<whitequark> not llvm
<rqou> oh
<rqou> um...
<kc8apf> multi-hour link times are pretty common on big code bases
<rqou> yeah I know
<whitequark> that's more about lto
<awygle> linking da worst
<awygle> OOMing my machine alla da time
<whitequark> llvm with split-dwarf and gold links every binary in a few seconds, 3-5 maybe
<whitequark> and shared library builds of course
<kc8apf> Photoshop used to run out of address space with 32-bit linkers
<whitequark> firefox runs out of AS with 32-bit linkers for many years
<rqou> Firefox too afaik
<whitequark> maybe like a decade at this point
<whitequark> and those were just symbol names
<whitequark> wait no
<whitequark> the symbol names thing was webkit
<rqou> solution: stop using 32-bit linkers
<whitequark> C++ is one hell of a drug
<rqou> seriously, there's no reason to build 32-bit x86 for any "serious" software anymore
<kc8apf> rqou: also postpone touching debugging info
<rqou> even my old old machine from 2006 supported x86_64
Bike has quit [Ping timeout: 260 seconds]
<rqou> (but yes, it shipped with a 32-bit winxp)
<whitequark> microsoft still uses the 32-bit toolset i think
<kc8apf> Ubuntu Bionic doesn't have 32-bit x86 installers
<kc8apf> discovered that when I couldn't get icecube2 to work
<rqou> i thought Microsoft also had a toolset that ran on x86_64 but targetted x86?
<whitequark> yes, they do
<whitequark> both their toolsets target x86 and x86_64
<whitequark> kc8apf: apt-get install multiarch-support or something
<rqou> oh they actually have all permutations now?
<kc8apf> yeah, I got annoyed at that
<kc8apf> too many libs to track down
<kc8apf> it'd be better if Lattice shipped a .deb
<rqou> some ancient versions didn't have every single permutation (but also had itanic support)
<rqou> (unpopular opinion) it'd be better if they shipped a static binary
<awygle> ubuntu dropped ia32-libs
<awygle> i had to apt-get install them all manually for icecube2
<rqou> only the meta-package though, right?
<awygle> and then i couldn't get it to take my license file (which i think is just because i believed the filthy liars when they said i could browse to it)
<awygle> i was pleased that alien turned the rpm into a deb without issue though
<rqou> lol alien
<whitequark> awygle: wtf ubuntu
<rqou> (unpopular opinion) tarballs
<whitequark> i'm never using it again then
<awygle> tarballs are (mostly) fine
<whitequark> ia32-libs are a requirement
<balrog> rqou: pacman packages are essentially tarballs
<rqou> I'm pretty sure they still have the actual packages
<awygle> whitequark: yeah i think it was in 17.04 or something like that
<rqou> but the ia32-libs meta-package has been deprecated for a while
<awygle> as rqou has said twice for some reason, they _do_ have all the libs, you just have to install them one-by-one
<balrog> whitequark: they just want you to only install the libs you need
<balrog> rather than all the ones you don't
<rqou> afaik ia32-libs comes from the old pre-multilib era
<rqou> balrog: wtf why are games built as 32-bit?
<balrog> rqou: often for legacy reasons
<balrog> games rarely get re-built
<kc8apf> awygle: I had to disable the new NIC naming because icecube2 is specifically looking for 'eth0'
<rqou> what about new games?
<awygle> kc8apf: that is almost certainly my problem! thank you
<balrog> rqou: has been moving towards 64-bit, with macOS being a strong driving force
<rqou> do they not care about the extra address space and better ABI?
<balrog> (macOS just deprecated all 32bit)
<rqou> wtf macos?
<rqou> nobody games on macos
<awygle> i was just about to try to do this again for LM support work
<kc8apf> 16.04 32-bit w/ biosdevnames=0 finally got icecube2 to launch
<awygle> especially after being accidentally called out on twitter today lol
<balrog> rqou: if a game is available for linux it is most likely going to be available for macOS
<rqou> kc8apf: how about installing it in a container?
<balrog> if it's not available for Linux, it will probably be Windows only (and likely 32bit)
<kc8apf> rqou: going to try that soon
<balrog> if it's not available for Linux or macOS*
<kc8apf> I'm gearing up for ice40 support in gaffe
<rqou> you know you can just use icestorm :P
<kc8apf> sort-of
<balrog> how does icestorm/arachne PNR compare to the closed tools?
<rqou> doesn't have LOC :P
<awygle> yeah it's pretty bad tbh. especially icetime
<rqou> but otherwise I've never actually used the closed tools
<rqou> un, icetime seems to work for me
<awygle> you can't like, set constraints or anything, it just tells you you're fucked
<whitequark> icetime is... limited
<rqou> oh yeah lol
<awygle> it's not really icetime, it's the whole timing infrastructure
<whitequark> is it?
<whitequark> i thought icetime can output timing netlists
<rqou> it's not timing-driven placement, just reporting
<whitequark> so it's just a matter of writing your own graph traversal thing
<whitequark> so how *does* arachne-pnr place?
<awygle> it uses HPWL
<awygle> as its metric
<awygle> and does SA
<awygle> (half perimiter wire length, simulated annealing)
<whitequark> aha
<whitequark> that seems... correlated with timing?
<awygle> and it just strictly tries to minimize every net
<kc8apf> whitequark: hence why gaffe is mostly just support for writing graph traversals
<whitequark> gaffe?
<awygle> so if it can make the critical path shorter by making all the shorter paths a little longer.... it won't
<whitequark> interesting
<whitequark> will that have ice40 support?
<kc8apf> frankly, not much there right now
<kc8apf> yes
<whitequark> niiiice
<whitequark> i might contribute to it
<kc8apf> my goal is to handle all the known architectures
<whitequark> eech, nom
<kc8apf> I get away from nom quickly
<balrog> more rust code :P
<awygle> meanwhile my goal is to take that support and work on architecture-agnostic tools like packing, p&r, etc
* balrog looks at azonenberg
<awygle> (... yknow, someday)
<whitequark> awygle: niiice
<whitequark> awygle: btw
<whitequark> do you think you can fix the rest of footprints?
<whitequark> or should I
<rqou> meanwhile xc2bit just has magic proc macros :P
<awygle> whitequark: yeah i plan to do that tonight, this weekend just got away from me a bit
<whitequark> alright, thanks!
<awygle> thanks for keeping me honest lol
<awygle> whitequark: i'd love to hear your thoughts on the general gaffe concept. kc8apf and i have talked about it as "LLVM for FPGAs", but you're, like, a real LLVM dev :p
<whitequark> uhhhhm
<whitequark> it's a comparison that's too high-level to give any technical insight
<awygle> sure, that wasn't really what i meant
<whitequark> the only part of llvm that might translate to gaffe is the pass architecture
<whitequark> so you might want a common IR then
<whitequark> but... that's what yosys does already
<whitequark> I guess gaffe is more like LLVM's MC layer?
<awygle> whitequark: this is what i sent kc8apf a while back (not sure how much what he's got now matches this) https://gist.github.com/awygle/d420b859d669393ada8e799585913190
<awygle> because kc8apf's focus is more on the arch support level, what currently exists is more MC-layer than not
<whitequark> I suggest using one of the existing Rust graph libraries
<whitequark> your suggestion is impossible
<whitequark> there can be no &mut parent pointer and &mut child pointer at the same time
<awygle> yeah, i am not actually good at rust, so this was meant more directionallyt han anything else
<whitequark> do you plan on replacing yosys too?
<awygle> not necessarily? i figure one of the first "frontends" would be blif or yosys-json so we can leverage all that infrastructure
<rqou> they way i represent graphs is with indices into object pools rather than references
<whitequark> Graph<VerilogASTNode> doesn't make any sense really
<whitequark> that should be just a regular AST
<rqou> unfortunately it's not super ergonomic my way
<whitequark> also, don't try to add too much genericism
<whitequark> there isn't necessarily any reason to have gaffe IR and XC7 IR even use the same high-level data structures
<awygle> that's definitely me trying to be 100% abstract
<rqou> i want abc replaced at some point lol
<whitequark> abc, maybe
<whitequark> abc is atrocious at keeping net names intact
<awygle> yeah abc is definitely an elephant in the fpga-toolchain room
<rqou> at least it usually returns correct answers
<rqou> awygle have you looked at my code at all?
<awygle> rqou: your yosys json netlist code?
<awygle> or xbpar
<awygle> *xc2par
<rqou> any of it
<awygle> i looked at the yosys stuff
<awygle> once
<rqou> and it was boring? :P
<awygle> uh nothing about it particularly stood out to me
<awygle> but i wasn't actually trying to use it, really :p
<rqou> of course
<rqou> it literally justs asks serde to "do the needful" :P
<rqou> it doesn't really contain any code of its own
<rqou> also, i <3 serde
<rqou> although i hate the issue with arrays of more than 32 elements
<whitequark> yeah const generics
<rqou> is that the actual current proposal? since this issue has bounced around a ton and it's impossible to keep track of
<whitequark> i don't think it ever really changed
<rqou> maybe the name changed
<whitequark> i mean the other option is just expanding the macro to like 64
<rqou> i hate how every time i try to figure out what's going on in rust it's just a wasteland of closed issues pointing to each other
<whitequark> yeah, github's interface is kinda shitty
<whitequark> for large projects
<whitequark> once i went and read every open rust issue
<whitequark> took me several days of doing just that and nothing else
<rqou> and then there are rfc issues too
<whitequark> wtf what kinda stupid asshole made this cy7c breakout board
<whitequark> it doesn't export sda/scl
<rqou> and everything points to everything
<rqou> lolol
<rqou> breakout boards are hard to do well
<whitequark> i have another one but that has a small eeprom
<rqou> > breakout boards are hard to do well
<awygle> breakout boards are hard to do well and _cheaply_
<rqou> ok, yes
<rqou> otherwise you can just sell everybody the initial asic characterization board :P
<rqou> I'm sure that has all the options available
<whitequark> lol
Bicyclidine is now known as Bike
<azonenberg> rqou: i suspect thats what the silego boards i have are
<azonenberg> lol
<rqou> you mean the psoc-based thing?
<azonenberg> yes
<whitequark> oh what the hell
<whitequark> the other board can't write its EEPROM
<kc8apf> whitequark: current impl in gaffe uses petgraph with downcast-rs to allow recovering concrete type from the Node trait
<kc8apf> I haven't introduced a concept of IR yet. xc7 definitely uses a bunch of its own custom types
<kc8apf> very much inspired by LLVM IR vs MC
<azonenberg> awygle: btw so it looks like the HMC65x are single ended
<azonenberg> Can i just mirror two of them back to back to do a balanced T?
<awygle> mmm no
<awygle> i don't... think so
<whitequark> oh
<whitequark> ohhh
<whitequark> this EEPROM is
<whitequark> too slow
<awygle> oh wait
<awygle> azonenberg: i think that might work
<awygle> i was mathing wrong earlier, too
<awygle> i was using 50 Ohms because that's what i'm used to but the Zdiff is 100
<azonenberg> Well to be fair
<azonenberg> generally ethernet is routed as 50 ohm single ended lines with 100 differential impedance
<azonenberg> So it can be both
<awygle> right
<azonenberg> also convenient, i have a hmc65x symbol in my library already
<azonenberg> i must have used it for something
<awygle> but i was doing math with 50 ohms differential
<awygle> if they really are 50/100 then stacking two back to back 50 ohm single ended attenuators should work
<azonenberg> (also these attenuators double the cost of the board, lol)
<awygle> you can always just do one with resistors :p
<azonenberg> As of now the BOM is $53 of attenuators, $34 of SMA connectors, $13 of RJ45
<azonenberg> And $6 of magnetics :p
<azonenberg> The actual thing being tested
<azonenberg> Lol
<azonenberg> actually wait a minute the $53 of attenuators is for one 15 dB attenuation stage
<azonenberg> so it'd double to $106 if i wanted 15/30
<azonenberg> Except i hit a price break so it's actually $95
<awygle> yeah, just do resistors. 47 ohm series, 6.34 ohm shunt
<awygle> it actually comes out nigh-perfect
<awygle> by my math
<rqou> whitequark: are you looking at the datasheet for an eeprom or for a secure element?
<rqou> (those are basically the only 8-pin things that are commonly ordered bare-die or in smol packages)
<whitequark> eeprom
<whitequark> at24c128
<azonenberg> awygle: yeah the HMC part is great for GHz range
<azonenberg> But is massive overkill for these speeds
<awygle> yup
<azonenberg> discrete resistors should be fine
<awygle> i used it at 8 GHz
<awygle> back in the day
<azonenberg> awygle: so 47 - 47 with a 6.34 shunt is 15 dB at 50 ohms?
<awygle> 30 dB
<azonenberg> Oh
<awygle> forgot we were doing 15
<awygle> let me do that real quick
benreynwar has quit [Ping timeout: 264 seconds]
<azonenberg> yeah i wanted to do 15 + 15 since we had the ports
<azonenberg> gives more flexibility
<awygle> agreed just spaced
<rqou> awygle plz 2 teach me teh RF :P
<awygle> today is not my best on-my-game day lol
<awygle> rqou: sure
<rqou> ugh so many things i still want to learn
<rqou> need to hurry up and graduate
benreynwar has joined ##openfpga
Bike has quit [Ping timeout: 264 seconds]
<awygle> azonenberg: 34.8 series, 36.5 shunt gives 15.02 dB
<awygle> at 100 ohms differential
<rqou> ooh i just remembered
<rqou> azonenberg i have a USB VNA
<rqou> in case that helps
Bike has joined ##openfpga
<awygle> (those are real resistor values hence the offset)
<azonenberg> awygle: yeah
<azonenberg> rqou: what frequency range does it do?
<azonenberg> and i'd really need like an 8-port network analyzer to do crosstalk between differential signals usefully
<rqou> azonenberg: this one: http://miniradiosolutions.com/54-2/
<rqou> yeah, not quite designed for your use case
<rqou> this is intended for "ham radio stuff"
<rqou> (more or less)
<rqou> oh wtf is going on with gitter?
<rqou> the irc bridge keeps telling me i need to auth
<rqou> but i am?
<azonenberg> awygle: i'm just gonna use 1% resistors, not 0.1%
<azonenberg> i dont think we need EXACTLY 15.02 dB
<awygle> gitter is effed up today
<awygle> idk why
<awygle> even if you use their app or web clients
<awygle> rqou: have you ever done anything nontrivial with the minivna?
<awygle> i considered getting one a while back
<rqou> no i haven't
<rqou> i was going to but never got around to it
<whitequark> wtf this EEPROM takes a whole 2.1ms to write a byte
<azonenberg> awygle: sooo for the balanced t attenuator in true differential mode
<azonenberg> i shouldn't need to ground the center tap right?
<azonenberg> it can be floating?
<awygle> the values i gave you are no-center-tap
<azonenberg> ah, ok
<azonenberg> so 34.8 on each of the four legs then 36.5 from top to bottom
<awygle> i.e., a single 36.5 ohm resistor between the legs
<awygle> yes
<azonenberg> ok that makes sense
<openfpga-github> [libfx2] whitequark pushed 1 new commit to master: https://github.com/whitequark/libfx2/commit/86e2e2005a9e75ecf6b5dcd9095102aa879b6457
<openfpga-github> libfx2/master 86e2e20 whitequark: Support EEPROMs with (long) wait states....
<openfpga-github> [Glasgow] whitequark pushed 1 new commit to master: https://github.com/whitequark/Glasgow/commit/2d70a063d2aaeff5b8c273e9bdf04080e161aeb8
<openfpga-github> Glasgow/master 2d70a06 whitequark: Update libfx2.
[X-Scale] has joined ##openfpga
X-Scale has quit [Ping timeout: 264 seconds]
[X-Scale] has quit [Ping timeout: 256 seconds]
<whitequark> awygle: ok, so now that I've added some actual logic hanging off i2c it doesn't pass timing again
X-Scale has joined ##openfpga
<openfpga-github> [Glasgow] whitequark pushed 2 new commits to master: https://github.com/whitequark/Glasgow/compare/2d70a063d2aa...9e5878091c16
<openfpga-github> Glasgow/master bfc866f whitequark: Relax clk_if constraint to 30 MHz :/
<openfpga-github> Glasgow/master 9e58780 whitequark: Remove hardware/packages3D/LED_0603_1608Metric_Castellated.{step,wrl}....
<awygle> whitequark: :(
<whitequark> we still get 240 Mbps with the 30 MHz interface, so it's not *too* bad...
<whitequark> but I'm worried about the other side
<awygle> yeah but it is sad
<whitequark> there's no way we can make an MPSSE run at 50 MHz
<awygle> hmm yes
<whitequark> well
<whitequark> there's DDR
<awygle> you can go the 2232D route
<whitequark> oh?
<awygle> that would give you 12 MHz instead of 60 MHz
<whitequark> no, that's not it
<whitequark> our frontend allows 50 MHz
<awygle> oh, yes
<whitequark> so we must run at least at 50 MHz
<awygle> that would have to be DDR
<whitequark> actually, fully utilizing our frontend would be more like 50 MHz DDR.
<whitequark> well.
<whitequark> it's settled then, we have to go for HX8k
<awygle> it does seem that way
<rqou> lolol
<whitequark> can you make a symbol? :)
<awygle> it would make sense to me to build out the whole pipeline, at reduced speeds, on the current revision and make sure we can make timing on the HX
<whitequark> sure, I agree
<awygle> if that isn't going to involve too much hoop jumping
<whitequark> I'll make a very small run of UP5K devices
<awygle> whitequark: would you be interested in continuing to do the firmware/gateware and having me do the bulk of the rev B PCB work?
<whitequark> awygle: yeah that would really help
<awygle> whitequark: okay, will do
<awygle> trace and space is gonna be... interesting
<whitequark> really? the package has 190 or something balls and we need like 48
<awygle> yeah, there are 60 exterior balls in fact
<awygle> power is the thing
<awygle> i haven't checked yet but i bet the power balls are centrally located
<awygle> there are tricks to solve this though
<rqou> i made this while trying to understand the pinout
<awygle> oh thanks, that's helpful
<whitequark> wtf nice
<awygle> i forgot there were two PLLs on this oen
<openfpga-github> [Glasgow] whitequark pushed 1 new commit to master: https://github.com/whitequark/Glasgow/commit/12e279eedc274cc99c4eeb2e07261ccdd1bb7a44
<openfpga-github> Glasgow/master 12e279e whitequark: Add revA schematics pdf.
<whitequark> it has two PLLs? oh that's nice too
<whitequark> that means we have one PLL per port
<awygle> those four interior VCC balls are going to be the biggest PITA
<whitequark> that is excellent
<awygle> (also my color perception _sucks_ wtf)
<whitequark> well the colors on it are kinda
<whitequark> rqou: what are N13 N14?
<awygle> rqou needs the thing i found recently that generates maximally different colors :p
<rqou> N13 is VCC_SPI
<rqou> N14 is NC
<awygle> why tf is there _one_ NC on the whole package lol
<rqou> yeah
<rqou> it's weird
<rqou> especially given that there are unavailable pads
<awygle> and it's only balled out on 3 of the 4 packages
<awygle> so it's not like its a Secret Thermal Diode or something
<awygle> well, i guess it still could be, but still
<whitequark> Secret Thermal Diode is my band name
<awygle> given that it abbreviates as STD, you can only use it in a few particular genres
<whitequark> lol
<whitequark> using namespace std;
<awygle> using namespace chlamydia
<rqou> using namespace pokerus :P
<whitequark> yosys is judging you
<whitequark> Warning: Found one of those horrible `(synopsys|synthesis) translate_off' comments.
<whitequark> Yosys does support them but it is recommended to use `ifdef constructs instead!
<awygle> hahaha
<rqou> oh yeah
<awygle> i agree with clifford here actually
<whitequark> i agree entirely
<rqou> for bonus points, these hot comments are actually handled in the lexer
<whitequark> i just find it funny
<awygle> Warning: Your code is bad and you should feel bad