Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That's been a funny thing for me. I'm not an electrical engineer, at all. My electrical knowledge is an introductory electromagnetics course I had to take in college that I've mostly forgotten, reading/watching EEVblog, other internet sources, playing around with cheap and/or old parts, reading whatever I can find, etc.

I've made some retrocomputing boards (<= 50 MHz) (8051, 286, 68010, 68030, etc.) and haven't had much of a problem. No idea what the EMI looks like though. Greatest goof I had so far was an old part who's datasheet didn't mention that the signal output was open collector so I had to bodge a resistor in. Mostly just followed advice I found on the internet -> 4 layer boards can be had for very cheap these days (JLCPCB does 10 for $30 w/ ENIG boards up to 10cm x 10cm), so I followed the "just do yourself a favor and get the 4 layers boards so you can make ground and power planes" advice. Used a tool to compute minimum trace spacing to stay under a certain capacitance for a specific copper weight, board thickness, dielectric type, etc.

Probably my crowning achievement at this point is making an 1.8V LVDS to TMDS level shifter board so I can get HDMI 1.2a (4x 1.65 Gbps lanes + sidebands) out of an FPGA board I repurposed from some cryptomining hardware I bought on eBay. Had to learn how to do soldering using a stencil, paste, hot air station, and a hotplate because no one is hand soldering 0.4mm QFN packages. 0402 are the smallest thing I can do by hand.

Next thing I want to try is breaking out a small BGA. Managed to get a few Lattice iCE40HX8K's in the CT256 package (256 balls @ 0.8mm pitch BGA).

What hurts is how patent/royalty/industry interest group encumbered that nearly everything modern is. Want to do PCIe? Join PCIe SIG. Want to do USB? Join USB-IF. Want to support SD cards? Pay a bunch to SDA. Actually their patents expired so maybe you can do native SD mode now without much fear. HDMI is awful, DisplayPort requires you to join VESA, MIPI for CSI and DSI devices, etc.



"Want to do PCIe? Join PCIe SIG. Want to do USB? Join USB-IF..."

As someone who works for a large silicon vendor I can tell you that even with access to those industry groups the documentation still sucks!!!! I look at the amazing documentation available surrounding various software initiatives (OpenCV, machine learning, linux drivers, programming languages, etc...) with envy. It's all right there and out in the open with multiple blogs and forums and pages explaining shit. And actually I did try to learn PCIe. I gave up. 1000+ reference specs, about 3 random web pages and a half dozen marketing youtube video's. There's a reason why some guys manage to build niche careers around these HW topics!


It blew my mind that the microcontroller I'm now using has a 1000+ page datasheet.


I recently came across a reference manual for an SoC that came in at over 24,000 pages - a new personal record. The tools for working with such large PDFs generally suck.


I'd be so happy with a 24,000 page PDF, cause then at least you know where too look, and you can the search tool. I programme Siemens hardware and the docs I need are spread out over many tens of PDFs (of 100-1500 pages). I haven't found a proper tool than can let me search and view all this documentation properly. Best I found is ripgrep with some PDF extension to search which document I need, and then use SumatraPDF for finding the right page... ughh


Use Agent Ransack (free) or better, File Locator Pro ($69) from Mythicsoft. Both include comprehensive PDF text searching. AR includes the full functionality of FLP as a 30 day trial. Money you'll recover many times over and a product you'll be using for the rest of your life. https://www.mythicsoft.com/


How about joining all the PDFs together and doing ctrl-F? Sounds like it could save you the grep step.


In the particular case of Siemens, they already did that for you.

(Migrating from S7-300 PLCs to the current S7-1500 range, I found the complete documentation package for the 1500 universe in one whopper of a pdf. Just north of 11,000 pages IIRC.)

I shared the OPs frustration when working on the S7-300, though. The docs are excellent, there's just so many of them...


Acrobat reader used to let you search all PDFs in a directory; not sure if it still lets you do that.


Use Recoll, a desktop full text search tool which uses Xapian as the backend.


Evince on Linux is by far the best program I've found for reading large PDFs. It's worth the trouble to setup a VM or WSL just to run Evince if you're not natively on Linux.


Another terrific option is Okular. It actually has a setting to reduce memory usage on large PDF files by not prerendering pages that are not being viewed.


Eek, Okular. The one time I resorted to downgrading a package in 20+ years of using Linux. A few years back, someone drank too much design Kool-Aid and introduced smooth scrolling without making it optional. That did not get a very good reception from everyone, as browsing 20,000-page reference manuals with buttery smooth scrolling is, literally, dizzying.

I don't know if it ever got fixed. I stopped using Linux around the time when it was introduced, and having had to revert to using xpdf for browsing large PDFs like it was 1994 again was part of why I ragequit :-(.


I've never opened a 20,000 page document, but I've opened documents of several hundred pages with no noticeable issues. Pressing either Space or PgDown instantly moves the page down, no scrolling animation. The option still does not exist, but it seems that the feature doesn't exist either.


IIRC the eventual fix was to have it respect the global compositor settings, so if you have animation speed set to instant, while it does actually smooth scroll, it does so instantly. However, when it was introduced, it did not; for similar reasons (i.e. I don't like nausea), I had animations disabled, but Okular did its thing, and slowly.

It took some time for it to land though and not without the kind of discussions that you see on the Gnome bug tracker. It was pretty disheartening.


I've actually been using an (ancient) build of Evince for Windows [0] for quite some time now.

[0] https://www.fosshub.com/Evince.html


I've never had to read a large PDFs (probably, ~400 pages) but what's so great about Evince? Is it just speed or is it because of it's features?


One feature I really like is that if you hover over a link Evince previews the target of the link in a little box. Perfect for "see Table X on page Y"


I use Evince on Linux and PDF Expert on MacOS. They both do okay, but neither does search indexing, so searching goes irritatingly slow. Also neither support the public key encrypted PDFs that a certain SoC vendor likes to give me.


Sumatra PDF on windows is very fast.

I like it so much in fact that I've been looking for a linux alternative and haven't been satisfied yet. I will try evince though.


Preview.app used to be very good for large pdfs, back in what I suddenly realize must be considered "the early days" of OS X, maybe 8 years ago.

Now? Eh, Firefox. If that doesn't work, well, find an old Mac which hasn't been "upgraded" I guess.


SumatraPDF works far better than Firefox for me for service manuals (half a gigabyte or so usually). It doesn't have fancy features but it's very quick to load and render.


It seems like any PDF viewer that runs in a browser just can't handle big documents and often will be terribly slow on even medium sized ones. I always have to use standalone viewers to get them to load.


I usually use SumatraPDF on Windows, it's super lightweight, fast, and can handle large documents. However, I never tried it with more than 1500 pages or so. No idea if it would survive a 24k pages PDF, would be a good test...


> "just do yourself a favor and get the 4 layers boards so you can make ground and power planes"

In general, you should avoid power planes on 4 layer boards if you can. They tend to cause a lot of trouble with return currents when signals jump from the top layer to the bottom layer through a via. Prefer using ground planes for both inner layers and make sure you have ground return vias near every signal via.

https://youtu.be/kdCJxdR7L_I goes into more detail.


Thanks! I'll check it out!


Yeah, joining the clubs is burdensome. I'm lucky to be in an industry where there's enough value-add, that we just pay the piper and move on. Myself, I buy that kind of stuff pre-integrated.


I mean, it's the same for me, I'm just on the software side of the company (mostly, I'd say systems because occasionally I have to borrow the PCIe packet analyzer to figure out why something isn't working).

The electronics are a thing I do as a hobby and I try my absolute hardest to ensure work and hobby resources are kept separate. Electronics is sufficiently different from my professional role that it doesn't feel draining as a thing to do on the side. I'm not one of those "spend 8 hours programming/architecting/designing at work only to go home and spend another 6 writing code for fun" kind of people. I definitely write software and learn at home from time to time, but the motivation for doing it on the side is certainly less than it was before I turned it into a full time job. So I tend to gravitate towards things that are interesting to me but not necessarily useful to others.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: