Author Topic: How would you connect a million+ analog pins? (Seriously)  (Read 51594 times)

0 Members and 1 Guest are viewing this topic.

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
How would you connect a million+ analog pins? (Seriously)
« on: February 29, 2024, 03:28:38 am »
When I first started in electronics  (I'm still learning), I had high hopes of being able to fix stuff. People like Louis Rossmann would pull up PCB schematics, and fix stuff while Dave would look at a board and practically be able to tell you what everything is without a datasheet.

Then I found out that Louis purchased schematics, and Dave knows enough to identify most things, but doesn't necessarily how how they're wired up... sadness.

So, I went to look at the PCB factories to see how they tested their PCBs. They have big machines with lots of little wires that move and probe the boards. Now you can imagine that I thought that this was a really great idea, if only I could implement it. Which brings us to this post.

For some time I've been trying to figure out the basic electro-mechanical design. Recently, I finished working on it. And theoretically, it would work.



Now I'm faced with a new problem, how would I connect several million analog pins. They have to be analog, so that I can sense the resistance of the places that they are touching. I wish to probe both new and preexisting/populated PCBs. Even if I used 16pin-input muxes, I'm looking at an amount in the tens of millions of units for a PCB tester able to probe server size motherboards -- and I'd like to be able to do eATX at least.

Is my goal an impossibility? Never!

So, how would you connect a million+ analog pins?

Thanks!
« Last Edit: February 29, 2024, 04:05:35 am by ballsystemlord »
 

Offline CatalinaWOW

  • Super Contributor
  • ***
  • Posts: 5236
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #1 on: February 29, 2024, 05:32:03 am »
The quick answer is not at the same time.  That may not be impossible, but it is impractical and un-necessary.  But there may be answers which meet your needs.

Think of crossbar arrays.  1000 rows and 1000 columns gives you your million points and while a much larger size than most crossbar arrays at least is a credibly accessible number.  Now the question is how long it takes to interrogate the fraction of those million connections that you need to do.  There will be a time constant driven by the capacitance and resistance of the wires, but it should be possible to do hundreds or more configurations per second, and each configuration can access up to 1000 unique points.  Non unique points may also be of use.  General purpose measurement instruments will struggle to make meaningful measurements at these speeds, but you can do things to get the data you need quickly.

Now comes the hard part.  1000 points per axis is at best marginally enough to sample a motherboard size PWB with modern trace sizes and spacing.  The high volume parts get a custom bed of nails made with pins placed appropriately to do the required tests.  Having to limit yourself to a configurable test configuration puts uncomfortable limits on some applications, but might be good for many things.
 

Offline temperance

  • Frequent Contributor
  • **
  • Posts: 449
  • Country: 00
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #2 on: February 29, 2024, 09:02:00 am »
I don't really understand which problem you are trying to solve. Why do you need a million inputs?
Some species start the day by screaming their lungs out. Something which doesn't make sense at first. But as you get older it all starts to make sense.
 
The following users thanked this post: David Aurora, ballsystemlord

Offline Haenk

  • Super Contributor
  • ***
  • Posts: 1090
  • Country: de
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #3 on: February 29, 2024, 10:21:27 am »
Test fixures do exist. Usually you have a bunch of pogo pins connecting to dedicated test points on the PCB, those are of course part of the layout and considered during construction. That's good enough.

There really is no need to test every single via etc.

If you are trying to build some "auto testing fixture", it is probably best to use a 3D printer as a basis, and just use ground and one single pogo pin and compare measurements against reference to detect faults.
 

Offline tszaboo

  • Super Contributor
  • ***
  • Posts: 7391
  • Country: nl
  • Current job: ATEX product design
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #4 on: February 29, 2024, 10:27:44 am »
Each of those pogo pins need a certain amount of force to make a contact. The smaller ones need something like 100g for full actuation, they make contact at let's say 30g. For a million pogo pins, you need 30 million grams, or 30000KG placed on the PCB to make a contact.  That's 66138,679 pounds in freedom units, or 10 Tesla cybertrucks.
You design a board for each DUT, and use the minimal amount of pogo pins to make it work. Practical limit is a few hundred. Or drill holes in plexiglass or similar sheets to place the pins, and wire them by hand.
 
The following users thanked this post: tom66, harerod

Offline eutectique

  • Frequent Contributor
  • **
  • Posts: 392
  • Country: be
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #5 on: February 29, 2024, 11:11:15 am »
[...] little wires that move and probe the boards [...]

[...] how would I connect several million analog pins [...]

Your question contains the answer. Use two wires and move them as necessary. Problem solved!
 

Online Psi

  • Super Contributor
  • ***
  • Posts: 9953
  • Country: nz
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #6 on: February 29, 2024, 11:38:35 am »
The search term for the kind that have a small number of probes that move is "flying probe tester"

It's WAY more practical to test this way, rather than having an array of a million separate probes 0.2mm apart that come down everywhere and map out the board connections.

Greek letter 'Psi' (not Pounds per Square Inch)
 

Offline mikerj

  • Super Contributor
  • ***
  • Posts: 3240
  • Country: gb
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #7 on: February 29, 2024, 12:22:08 pm »
Then I found out that Louis purchased schematics, and Dave knows enough to identify most things, but doesn't necessarily how how they're wired up... sadness.

You expected what?  That Louis drew his own schematics or used illegally downloaded versions?  That Dave could glance at a PCB and instinctively know how every single component is wired together?  This, and your million pin question suggest you have deeply unrealistic expectations.
 
The following users thanked this post: tooki

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #8 on: February 29, 2024, 01:37:46 pm »
Then I found out that Louis purchased schematics, and Dave knows enough to identify most things, but doesn't necessarily how how they're wired up... sadness.

You expected what?  That Louis drew his own schematics or used illegally downloaded versions?  That Dave could glance at a PCB and instinctively know how every single component is wired together?  This, and your million pin question suggest you have deeply unrealistic expectations.

Actually, I wasn't sure how Dave did it. I thought maybe companies still produced schematics for laptop board repair in Louis's case -- but sadly that couldn't be farther from the truth.
 

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #9 on: February 29, 2024, 01:39:49 pm »
Each of those pogo pins need a certain amount of force to make a contact. The smaller ones need something like 100g for full actuation, they make contact at let's say 30g. For a million pogo pins, you need 30 million grams, or 30000KG placed on the PCB to make a contact.  That's 66138,679 pounds in freedom units, or 10 Tesla cybertrucks.
You design a board for each DUT, and use the minimal amount of pogo pins to make it work. Practical limit is a few hundred. Or drill holes in plexiglass or similar sheets to place the pins, and wire them by hand.

Point taken!
I thought I'd use wires that were carefully aligned at fixed intervals and just use gravity to apply pressure for contact. No need for pogo pins.
 

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #10 on: February 29, 2024, 01:42:19 pm »
I don't really understand which problem you are trying to solve. Why do you need a million inputs?

Connection spacing. A normal MB would have, as others have said, a dedicated test fixture. Mine being generic, I'd have to assume the minimum spacing between components, via-s, and traces in my test jig's design.

EDIT: Because it's possible to accidentally place my test jig down just off of every single trace/via, I actually have to use at least 2x the expected board density for my test jig.
« Last Edit: February 29, 2024, 01:49:36 pm by ballsystemlord »
 

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #11 on: February 29, 2024, 01:54:39 pm »
Test fixures do exist. Usually you have a bunch of pogo pins connecting to dedicated test points on the PCB, those are of course part of the layout and considered during construction. That's good enough.

There really is no need to test every single via etc.

If you are trying to build some "auto testing fixture", it is probably best to use a 3D printer as a basis, and just use ground and one single pogo pin and compare measurements against reference to detect faults.

To find faults to ground, that would work fine, but the point of my tester was to find out the PCBs schematic *and* detect faults, such as open/short/high/low resistance at the same time. Granted, I'd have to still comb over the board (assuming I didn't design it; and I do intend to design PCBs eventually), to discover, based on the data I got, what's supposed to be shorted to ground, open, and have high/low resistance.
 

Offline Ian.M

  • Super Contributor
  • ***
  • Posts: 12862
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #12 on: February 29, 2024, 01:58:03 pm »
Each of those pogo pins need a certain amount of force to make a contact. The smaller ones need something like 100g for full actuation, they make contact at let's say 30g. For a million pogo pins, you need 30 million grams, or 30000KG placed on the PCB to make a contact.  That's 66138,679 pounds in freedom units, or 10 Tesla cybertrucks.
You design a board for each DUT, and use the minimal amount of pogo pins to make it work. Practical limit is a few hundred. Or drill holes in plexiglass or similar sheets to place the pins, and wire them by hand.

Point taken!
I thought I'd use wires that were carefully aligned at fixed intervals and just use gravity to apply pressure for contact. No need for pogo pins.

It doesn't and cant work that way.  No PCB is absolutely flat as they warp during construction due to the differential expansion of copper and FR4.  A well balanced layout and good process control minimises warpage so the board is flat enough for assembly, but it certainly wont be optically flat.   Therefore if you put it on a flat array of unsprung contacts without a lot of even clamping pressure sufficient to force the board into full surface contact, at best you'll get only a few in contact, maybe a line near one edge and a blob somewhere distant, but possibly you'll only get three points of contact.  Also you need sufficient contact pressure to break through any film of oxides or contaminants that may be present, which multiplied by one million will be a very large force.
« Last Edit: February 29, 2024, 02:33:11 pm by Ian.M »
 
The following users thanked this post: tooki

Offline Leuams

  • Contributor
  • Posts: 34
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #13 on: February 29, 2024, 02:10:55 pm »
If this is for reverse engineering purposes there are methods using much less equipment and can be done with a camera. Like Dave does you look at the ICs used and either look up the datasheet or already know it's pin out and from there it is easy to intuit the connections. What you can't figure out a DMM is cheaper and easier then 1M probes.
 

Offline CaptDon

  • Super Contributor
  • ***
  • Posts: 1740
  • Country: is
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #14 on: February 29, 2024, 02:22:49 pm »
Everyone in the business knows the answer is in some cases 'flying probe' and in other cases 'pogo pins' and perhaps a combination of both. Your 1 million analog inputs is 1 million percent bullocks!! There is no practical way to test in that fashion. What are you going to do, put a voltage on one pin and then scan the other million for correct AND incorrect continuity? Indeed, lets test a million times a million, you got a millenium to see the result of one board tested? Now here's the part you probably really missed.....Boards such as the ones you propose to test are probably 8 layer minimum with BGA style devices who's pins can't be accessed when testing final assemblies AND 80% of the traces and vias to be tested will be subterrainian and can't be accessed ever. B.T.W., even pogo pins carefully implemented suck ass. About 90% of the boards that fail 'first test' will pass if lifted off the pins and then put back down and we use all sorts of weird clamping mechanisms to try to reduce first test failures but it still happens with the best care in test fixture design.
Collector and repairer of vintage and not so vintage electronic gadgets and test equipment. What's the difference between a pizza and a musician? A pizza can feed a family of four!! Classically trained guitarist. Sound engineer.
 

Offline CaptDon

  • Super Contributor
  • ***
  • Posts: 1740
  • Country: is
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #15 on: February 29, 2024, 02:31:25 pm »
And a funny thought B.T.W., my best test engineers knew exactly 'where to press down on the board' to make it pass the test on a second try if it failed on the first try. We had hords of DITMCO testing units in the QC / QA lab. I can tell you the story of the origin of DITMCO in testing Drive-In-Theater speakers out on the posts which could number into the hundreds at any particular Drive-In.
Collector and repairer of vintage and not so vintage electronic gadgets and test equipment. What's the difference between a pizza and a musician? A pizza can feed a family of four!! Classically trained guitarist. Sound engineer.
 

Offline tszaboo

  • Super Contributor
  • ***
  • Posts: 7391
  • Country: nl
  • Current job: ATEX product design
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #16 on: February 29, 2024, 03:39:56 pm »
I would rather try to modify/hack a 3d printer to probe a PCB at given intervals. It's a fun experiment, and you can learn a lot doing it.
 

Offline temperance

  • Frequent Contributor
  • **
  • Posts: 449
  • Country: 00
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #17 on: February 29, 2024, 04:15:30 pm »
Reverse engineering the PCB...

Finding the connections is only a small part of what you will need. How will you find the part numbers? A lot of QFN packages have markings which you might be able to find with a lot of luck if you happen to know what that component it might be. Laptops, motherboards,... often contain custom components which you will not be able to find.

What you are trying to solve is a problem on your own side. It might help you more to learn basic circuit knowledge and troubleshooting skills.


Let's say a touchscreen doesn't work. If you know the type of touch screen and how those work is often enough to locate a problem. The real problem is getting the part in question. The touch screen itself might be fine to obtain. But obtaining the touchscreen controller will be an other story.
« Last Edit: February 29, 2024, 04:37:59 pm by temperance »
Some species start the day by screaming their lungs out. Something which doesn't make sense at first. But as you get older it all starts to make sense.
 
The following users thanked this post: 2N3055

Offline amyk

  • Super Contributor
  • ***
  • Posts: 8276
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #18 on: March 01, 2024, 03:21:09 am »
The reversing/cloning companies, most of them in China, already have automated flying probe testers, but they only work once all the components are removed from the board.
 

Online Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 3365
  • Country: nl
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #19 on: March 01, 2024, 11:45:27 am »
"A million pins" is doable, but also expensive.

A brainless approach is to use 250k units of my Siglent SDS1104X-E 100MHz scope and then wire them together in a LAN. It would be a building full of oscilloscopes, so maybe you want to go a bit more compact. For example, this: https://www.ni.com/nl-nl/shop/model/pxie-4300.html is a 16 channel PXI module and there are lots of similar modules in different resolutions, channels, bandwith, etc. Pickering makes high channel count multiplexer modules for PXI buses.

Also, if you're going to buy a system of this size then a manufacturer will be very happy to design custom hardware according to your specifications. (For example an extra sync input).

Also: Make a quick calculation of the cost and size of such a setup. This will learn you that such a system is:
* Nearly always cost prohibitive.
* Needs a budget that easily allows for custom design.
* Makes custom design (bandwith, resolution, accuracy, etc) mandatory to keep costs somewhat reasonable.

Depending on the specifications, accuracy bandwidth, etc, it can also be relatively easy to DIY for an "affordable" cost. An affordable system is likely to consist of microcontroller based modules that each handle a number of inputs, and are then networked together (RS485, CAN, Ethernet, etc). RS485 and CAN would need a lot of extra (de) multiplexing. With Ethernet you can use standard routers (127.x.x.x has 24 bit = 4M address range) But even with 10GBps Ethernet (on the back bone) the bandwidth for each channel would still be limited to 10kbit/s per channel. But there is also https://en.wikipedia.org/wiki/100_Gigabit_Ethernet.

You can also have a look at the custom hardware that CERN has built. They have a many channel setup that produces bursts of Peta bytes per second and have FPGA based systems to discard nearly all of the generated data and filter out the interesting bits to be saved.

So I think the overall picture should be clear from this. You start with a list of requirements (voltage ranges, resolution, bandwidth, budget, etc) and from there you divide the system into modules. And if you find a solution that fits within your budget, then you can proceed with the actual design / setup.
 

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #20 on: March 01, 2024, 06:30:34 pm »
"A million pins" is doable, but also expensive.

A brainless approach is to use 250k units of my Siglent SDS1104X-E 100MHz scope and then wire them together in a LAN. It would be a building full of oscilloscopes,

Some men dream of having a building full of women, I dream of having a building full of oscilloscopes!  ;D

... so maybe you want to go a bit more compact. For example, this: https://www.ni.com/nl-nl/shop/model/pxie-4300.html is a 16 channel PXI module and there are lots of similar modules in different resolutions, channels, bandwith, etc. Pickering makes high channel count multiplexer modules for PXI buses.

Also, if you're going to buy a system of this size then a manufacturer will be very happy to design custom hardware according to your specifications. (For example an extra sync input).

Also: Make a quick calculation of the cost and size of such a setup. This will learn you that such a system is:
* Nearly always cost prohibitive.
* Needs a budget that easily allows for custom design.

Well, it depends on what you want to do and how fast you want it done. I'm not really going for a full on debugging and reverse engineering machine, more of a general jack-of-all-trades, but master-of-none machine.
As you point out, I'd need an oscilloscope based machine for a fully fledged debugging machine, and, as I'm aware, resistance is only 1/3rd of the parameters you could observe of non-semiconductor components. And that's without taking into account diodes, variable resistors, and any other oddities. And once you take into account semiconductors, you'd have to desoldering everything just to get started on an analysis...

* Makes custom design (bandwith, resolution, accuracy, etc) mandatory to keep costs somewhat reasonable.

Yes, I know.

Depending on the specifications, accuracy bandwidth, etc, it can also be relatively easy to DIY for an "affordable" cost. An affordable system is likely to consist of microcontroller based modules that each handle a number of inputs, and are then networked together (RS485, CAN, Ethernet, etc). RS485 and CAN would need a lot of extra (de) multiplexing. With Ethernet you can use standard routers (127.x.x.x has 24 bit = 4M address range) But even with 10GBps Ethernet (on the back bone) the bandwidth for each channel would still be limited to 10kbit/s per channel. But there is also https://en.wikipedia.org/wiki/100_Gigabit_Ethernet.

If you'd like, I'll post more details in this forum, under another thread (because this will take a while), as I go along.

You can also have a look at the custom hardware that CERN has built. They have a many channel setup that produces bursts of Peta bytes per second and have FPGA based systems to discard nearly all of the generated data and filter out the interesting bits to be saved.

Link! Link! A few years ago, I tried to learn about what CERN was doing, computer HW wise, but got nothing more than the most basic of overviews! Ugh!

So I think the overall picture should be clear from this. You start with a list of requirements (voltage ranges, resolution, bandwidth, budget, etc) and from there you divide the system into modules. And if you find a solution that fits within your budget, then you can proceed with the actual design / setup.

I'm going to start with design, move on to a miniature, to provide proof of concept/design, and then go for building the real thing.
 

Offline MarkT

  • Frequent Contributor
  • **
  • Posts: 367
  • Country: gb
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #21 on: March 01, 2024, 09:31:35 pm »
An important property of a flying probe machine is it only adds parasitic loads to the actual pads it tests - a million probe tester would create enormous parasitics on every part of the circuit leading to malfunction in many cases.
 
The following users thanked this post: tooki, shakalnokturn

Offline Ian.M

  • Super Contributor
  • ***
  • Posts: 12862
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #22 on: March 01, 2024, 09:58:01 pm »
The only way a million probe machine could work* would be to have some sort of mechanism to move individual probes up or down to control which make contact.  By minimising the number of probes in contact, this would reduce both the parasitics and the total force on the PCB.

* For some value of 'work' that includes being able to make multiple reliable contacts with the PCB without introducing excessive parasitics.  Doing something useful with those connections is a whole other problem.
 

Offline ArdWar

  • Frequent Contributor
  • **
  • Posts: 373
  • Country: sc
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #23 on: March 01, 2024, 11:09:34 pm »
You guys arguing about Z-axis while here I am wondering if it even work in XY-axis. PCB designs don't necessarily follow certain pattern and pads/vias aren't necessarily falls on a specific grid locations. Component rotation aren't even always in neat cardinal angles.

I honestly struggle why do you "need" such contraptions to begin with. For reverse engineering you certainly only probing around a single (or a couple at max) PCB of which a human hand operated probe is almost always more efficient. For maybe a hundred PCB in a fab QC you may need flying probes. Only maybe a fabs with ten thousands PCBs a day throughput that warrant a custom made bed of nails.
 

Offline ballsystemlordTopic starter

  • Regular Contributor
  • *
  • Posts: 126
  • Country: us
Re: How would you connect a million+ analog pins? (Seriously)
« Reply #24 on: March 02, 2024, 02:31:34 am »
"With lower speed digital, lower frequency analog, or purely DC circuit boards, parasitics are often ignored because they do not have an appreciable impact on the functionality of these devices." -- https://resources.pcb.cadence.com/blog/2019-how-parasitic-capacitance-and-inductance-affect-your-signals

IDK what everyone thinks I'm planning on doing here, but the PCBs I use this tester on will *not* be powered up. Populated maybe, power up, no. I will be using DC signals to measure DC resistance. IDK, if scanning the PCB really quickly might create a problem with parasitics. To the best of my knowledge, the worst that my probes will be is an antenna. There are ways to shield electronics to prevent that from being a problem if those probes conduct too much signal.





You guys arguing about Z-axis while here I am wondering if it even work in XY-axis. PCB designs don't necessarily follow a certain pattern and pads/vias aren't necessarily on specific grid locations. Component rotation doesn't even always occur in neat cardinal angles. (Sorry for fixing your grammar, I couldn't help myself. :) )

I already said that I'd need to have the probes spaced 2x as dense as the minimum pad sizing, hence the need for so many probes.

I honestly struggle why do you "need" such contraptions to begin with. For reverse engineering you certainly only need to probe around a single (or a couple at max) PCB points of which a human hand operated probe is almost always more efficient. For maybe a hundred PCBs in a fab QC pass you may need flying probes. Only maybe a fab with ten thousands of PCBs a day throughput would warrant a custom made bed of nails.

Granted, at the time I was using a cheap DMM I got as a present, but it typically takes me hours to probe a sufficient amount of a PCB to create a circuit schematic to do a repair. Now it could be faster if I memorized a lot of common layouts for circuits. Then I could basically guess where things went to instead of having to chose a blind approach.

As for PCB fabs, I do hope to be able to fab my own PCBs some day. So I intend to use this invention to probe said PCBs when I am able to make them. I'm currently a bit stuck on finding sources for wafer boards and the photoresist. I have no idea who the suppliers are, much less how to get them to sell, either directly or indirectly, to me.


Thanks
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf