EmbeddedRelated.com
Forums

Memory module identification

Started by Don Y August 31, 2014
Hi Aleksander,

On 9/3/2014 4:23 AM, Aleksandar Kuktin wrote:

>> Most non-profits/charities are understaffed (paid or unpaid). Here, >> I think the only one that has an abundance of staff (volunteers) is the >> food pantry. And, the tasks there are all essentially menial ones -- >> filling boxes with foodstuffs, keeping the floors clean, etc. So, >> virtually every volunteered hour can be effectively used. >> >> At the opposite extreme, I know of a group that provides free dental >> care. Hard to imagine them needing many people that are NOT dentists! > > Interesting problems... I probably would have still optimized the > opposite way, but never mind. Evolution will take its course. We'll see > if it works out or not.
You often have perverse "market forces" at play in these organizations. I.e., if you can't identify all of the memory modules that you have, you don't *use* them all! You "serve" fewer clients. But, that doesn't mean you have a competitor who gobbles up the remaining clients. Rather, it just means you "do less good". You "fail" when you can no longer attract enough volunteer labor (perhaps because you aren't "doing ENOUGH good"). And, in the event of failure, there isn't, necessarily, a "new vendor" who steps in and takes your place. That market ("Mission") may simply no longer be addressed!
On 9/3/2014 2:44 AM, Aleksandar Kuktin wrote:
> On Tue, 02 Sep 2014 12:36:43 -0700, Don Y wrote: > >> Out of fear of getting sucked into a "growing problem", I just begged >> off: "Gee, sorry, but I can't help you with that..." >> >> (More interesting things to do with my time! :> ) > > Probably an optimal solution, taking into account that whole "trained > monkeys" thing you wrote about..
The problem will self-limit... as many memory modules as they have labor to identify will get identified and used. The balance will be recycled. Next week, the problem will repeat. (never a shortage of donated kit!). Sometimes you get lucky -- reach into a bin and find some modules with nice, human readable labels! Then, dig around looking for it's siblings: "Ah, four identical modules! Yippee!"
In sci.electronics.design Don Y <this@is.not.me.com> wrote:
> On 9/2/2014 12:42 AM, mroberds@att.net wrote: > >> You might be able to roll your own connectors by machining a chunk of >> flat nylon or polycarbonate or something. > > This would be broken in a matter of weeks!
One of the frustrating things about Usenet sometimes is having to wait for all the requirements to come out. So far, in various posts, the following have been proposed and discarded... Commercial module sockets -> Possibly too fragile. Roll-your own module sockets -> Possibly too fragile. Chip clip direct to EEPROM -> Unskilled operators, error likely. Elastomeric connectors -> Possibly too fragile. You're kind of running out of ways to connect to modules, unless you have an idea in mind already and are waiting for someone else to suggest it. About the best thing I can think of at this point is to go back to the original idea of harvesting commercial sockets from scrap motherboards. Get several of each socket configuration (most motherboards have at least two the same) and replace them when worn. Also, even a socket that is electrically worn may still have value as a mechanical sorting tool: "If it fits this socket, drop it in the yellow bucket" and then take another pass through the yellow bucket once you get another test socket. Matt Roberds
Hi Matt,

On 9/3/2014 10:21 PM, mroberds@att.net wrote:
> In sci.electronics.design Don Y<this@is.not.me.com> wrote: >> On 9/2/2014 12:42 AM, mroberds@att.net wrote: >> >>> You might be able to roll your own connectors by machining a chunk of >>> flat nylon or polycarbonate or something. >> >> This would be broken in a matter of weeks! > > One of the frustrating things about Usenet sometimes is having to wait > for all the requirements to come out.
Until you hash out an idea, you often don't *realize* what many of the requirements might *be*! I.e., did *you* know that memory module sockets had such low durability figures -- *when* they are published (i.e., "count them on a few hands")? My initial assumption was that I could salvage parts from the hundreds of motherboards to which I'd have access -- sacrifice one (or six!) "to the cause" (in much the same way that other bits of equipment have been cobbled together over the years at these sorts of places -- "Ribbon cable used to connect the hundreds of disk drives to the disk duplicator failed? No problem! Just grab another one and toss the old one in the 'wire recycling' bin!"). But, if you're doing this on a *daily* basis (25 insertions?) it's not a practical solution ("Gee, I wonder how much abuse these DIMM sockets saw *before* the PC came here?")
> So far, in various posts, the > following have been proposed and discarded... > > Commercial module sockets -> Possibly too fragile. > Roll-your own module sockets -> Possibly too fragile. > Chip clip direct to EEPROM -> Unskilled operators, error likely. > Elastomeric connectors -> Possibly too fragile. > > You're kind of running out of ways to connect to modules, unless you > have an idea in mind already and are waiting for someone else to suggest > it.
My solution is to step away from the problem :> Let someone with more time on their hands come up with a strategy -- that *they* can maintain. They may run the calculus that it's "cheaper" to just cherry pick the "easily recognizable" modules out of the bins and discard anything that looks like it would require some effort to determine it's identity/utility.
> About the best thing I can think of at this point is to go back to the > original idea of harvesting commercial sockets from scrap motherboards. > Get several of each socket configuration (most motherboards have at > least two the same) and replace them when worn. Also, even a socket > that is electrically worn may still have value as a mechanical sorting > tool: "If it fits this socket, drop it in the yellow bucket" and then > take another pass through the yellow bucket once you get another test > socket.
For most DIMMs, this is probably no more effective than taping a sample DIMM to the front of each bin (i.e., the current approach). It may have some merit with SO-DIMMs -- though I think the small differences in keyway geometries may just encourage folks to "force" parts into the "gauge". The best solution is to invest in better tools and/or staff. But, with the abundance of donated kit, I doubt there is much incentive to be efficient in salvaging a high percentage of it! (e.g., the medical equipment tends to see far more attention as it represents higher value items -- and in much scarcer quantities!)
On 9/4/14, 3:04 AM, Don Y wrote:

> My initial assumption was that I could salvage parts from the > hundreds of motherboards to which I'd have access -- sacrifice > one (or six!) "to the cause" (in much the same way that other > bits of equipment have been cobbled together over the years at > these sorts of places -- "Ribbon cable used to connect the hundreds > of disk drives to the disk duplicator failed? No problem! Just > grab another one and toss the old one in the 'wire recycling' bin!"). > > But, if you're doing this on a *daily* basis (25 insertions?) it's > not a practical solution ("Gee, I wonder how much abuse these > DIMM sockets saw *before* the PC came here?") >
One thing to remember is that the quoted "cycle life" is going to be WAY conservative for your application. The rated life is the number of cycles you can do and still have a long term fully reliable connection over all rated conditions. In your case, you can actually stand quite a bit of "unreliability". It isn't a major failure if the worker needs to remove and reinsert the module a second time to test, or a few modules get marked "dead" because the tester won't talk to them. There also are TEST sockets, designed for this sort of work. (These are often socketed themselves, so when they do where out they can be easily changed.) They are built to be a lot more rugged.
On Sat, 06 Sep 2014 11:23:20 -0400, Richard Damon
<Richard@Damon-Family.org> Gave us:

> so when they do where out
Those damned gays are everywhere! You try soaking them out... you try scrubbing them out... Where is the world coming to???!!!
Hi Richard,

On 9/6/2014 8:23 AM, Richard Damon wrote:
> On 9/4/14, 3:04 AM, Don Y wrote: > >> My initial assumption was that I could salvage parts from the >> hundreds of motherboards to which I'd have access -- sacrifice >> one (or six!) "to the cause" (in much the same way that other >> bits of equipment have been cobbled together over the years at >> these sorts of places -- "Ribbon cable used to connect the hundreds >> of disk drives to the disk duplicator failed? No problem! Just >> grab another one and toss the old one in the 'wire recycling' bin!"). >> >> But, if you're doing this on a *daily* basis (25 insertions?) it's >> not a practical solution ("Gee, I wonder how much abuse these >> DIMM sockets saw *before* the PC came here?") > > One thing to remember is that the quoted "cycle life" is going to be WAY > conservative for your application.
I don't think so. Think: thousands of cycles per month. And, by (relatively) unskilled people. I would imagine the plastic *body* of the connectors would eventually give way under the abuse.
> The rated life is the number of cycles you can do and still have a long > term fully reliable connection over all rated conditions. > > In your case, you can actually stand quite a bit of "unreliability". It > isn't a major failure if the worker needs to remove and reinsert the > module a second time to test, or a few modules get marked "dead" because > the tester won't talk to them.
A reinsert counts as another cycle. You are also assuming the person doing this is technically competent. E.g., instinctively realizes the differences in module pin configurations, subtleties of keyway locations, etc. As inserting a memory module "takes practice" (they don't magically self-align), people will EXPECT some resistance. And, may be *too* persistent ("No, Tom, that module will NEVER fit into that slot! Trust me, the keyway is one half of a contact spacing *different* from what you need!") causing damage to the tester. [I had a friend who was "technically competent" plug a four pin power cable into a PATA drive "upside down". I said, "Didn't you FEEL that it didn't FIT??" "Yeah, but those are frequently tough to mate so I just pushed harder..."] I suspect we'd find a high percentage of "dead" modules -- even if the tester's design was smart enough to physically sense the presence and proper engagement of the module (to rule out misinsertions... i.e., "false deads")
> There also are TEST sockets, designed for this sort of work. (These are > often socketed themselves, so when they do where out they can be easily > changed.) They are built to be a lot more rugged.
In a *real* "test" environment, you hire and train someone for the task. And, they are *accountable* to their boss/supervisor. You have no leverage over these folks as they are volunteers -- GIVING their time, freely (often elderly, unemployed/underemployed, etc.). At times, it almost seems like some of them "intentionally" screw up in order to get some attention, interaction, etc. <shrug> My recent observation of stand-less LCD monitors stacked, face down, atop each other: "Yes, that's much more organized than the way they were previously. Oh, yes! I see you have also sorted them by size! That's very convenient! Unfortunately, I suspect a great majority of the screens now have permanent 'blemishes'. Rather than refurbish and repurpose them, we'll have to just *recycle* them (as scrap). <frown>" But, an hour of "generic" donated time is worth about $10 so you don't casually discard 8 or 40 of those! The only thing that is likely to work is a solution that they can easily replicate and replace. E.g., to clone disks, insert *this* bootable CD into a generic PC; plug the source disk into *this* IDE cable and the destination into this *other* cable. Hit enter. Wait. If this "cloner" dies, you simply replace the generic PC with another generic PC, insert the CD and resume where you left off. This is the sort of mentality that you come to *expect* in these organizations. The real danger is if there is some "nonobvious" aspect of a solution that they ("someone" months from now) fails to perceive as essential to the solution. For example, taking one of these tiny "toy" PC's and trying to hang *several* disk drives off of it's *tiny* (intended for a SINGLE disk drive!) power supply. Then, wondering why it doesn't work reliably! (sigh) I guess the folks that run these sorts of places deserve *some* credit -- even if only as recognition of their *patience*! The adage about "idiot proof" designs simply can not be understated, here!
Don Y wrote:
> > Hi Johann, > > On 9/1/2014 3:56 AM, Johann Klammer wrote: > > On 08/31/2014 10:54 PM, Don Y wrote: > > >> Is it possible to design a little <something> to query > >> these devices and extract the parameters -- mapping them > >> to a human readable form (i.e., as a peripheral to a PC)? > >> Is this "ID" circuitry powered independent of the rest > >> of the module? Or, do you, in fact, have to be able to > >> support every possible memory module (pinout, voltage, etc.) > >> *just* to gain access to this data? > > > > I tried it with i2c-parport. Botched the circuit(transistors instead of > > diodes? ...not sure, something was inverted), so had to use userspace > > ppdev access <http://members.aon.at/~aklamme4/scratch/main.c>, but it > > worked. The power pin for the eeprom is separate, so could be powered > > from a linreg... 3V, I think.. > > OK. So, no need for a real power supply (as the memory, itself, is > not powered up). > > > decode-dimms can be used to decode the contents... > > I only tried on an old DDR ram that had died... If you have some really > > old/exotic modules it may not work... > > If you happen to have the DIMM installed in your box, you can directly > > read it out somewhere at > > /sys/module/eeprom/drivers/i2c:eeprom > > > > Oh, all on LINUX... > > (sigh) Yes, it looks like its possible to electrically design > such a device -- and, make it reasonably fool proof. The *real* > problem seems to lie in the module connectors: most are only > rated at a handful of mating cycles (e.g., 5-25). > > While this may be plenty for a "typical application" (and, I > suspect often *exceeded* by folks!), I can't imagine hundreds > and thousands of cycles *weekly* would leave the connector's > reliability unaltered. <frown> > > I will have to find another way of interfacing to the modules...
Pogo pins? -- Anyone wanting to run for any political office in the US should have to have a DD214, and a honorable discharge.