Reply by Michael A. Terrell September 28, 20142014-09-28
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.
Reply by Don Y September 6, 20142014-09-06
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!
Reply by DecadentLinuxUserNumeroUno September 6, 20142014-09-06
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???!!!
Reply by Richard Damon September 6, 20142014-09-06
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.
Reply by Don Y September 4, 20142014-09-04
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!)
Reply by September 4, 20142014-09-04
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
Reply by Don Y September 3, 20142014-09-03
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!"
Reply by Don Y September 3, 20142014-09-03
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!
Reply by Aleksandar Kuktin September 3, 20142014-09-03
On Wed, 03 Sep 2014 03:31:01 -0700, Don Y wrote:

> Hi Aleksander, > > On 9/3/2014 2:42 AM, Aleksandar Kuktin wrote: >> On Tue, 02 Sep 2014 01:18:58 -0700, Don Y wrote: >> >> [snip] >> >> Actually, this is *probably* a proper mindset for running a successful >> business. Achieve more with less, the creed of the next seculum. > > This can be a false economy. E.g., why power an entire PC to exercise > *one* LCD monitor? Why not "split" the signal and drive a dozen > monitors from one "video source"? After all, you are just interested in > putting an image on the screen so you can check for dead pixels, flakey > backlights, etc.! I.e., just because you have hundreds of surplus PC's > to choose from, doesn't mean that a better solution might lie elsewhere > (i.e., electricity isn't free -- it costs less to drive a distribution > amplifier/splitter than power an entire PC!)
Hmm... correct, I guess.
> > [lot of stuff snipped] > >> As I understand, the non-profit is fighting an uphill battle trying to >> muster resources for its work, but still... > > 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.
Reply by Don Y September 3, 20142014-09-03
Hi Aleksander,

On 9/3/2014 2:42 AM, Aleksandar Kuktin wrote:
> On Tue, 02 Sep 2014 01:18:58 -0700, Don Y wrote: > >> Yeah, non-profits aren't big on spending money -- unless they ABSOLUTELY >> have to! E.g., want to test an LCD monitor? Set up a PC and just let >> it run for a few hours! Want to clone disk drives (i.e., to build >> several systems with identical hardware)? >> Add a second disk controller to a PC and run the cables out through a >> hole you cut in the side! Want to "bulk erase" disk drives? Set up >> ANOTHER PC that just fills the volume with pseudo random data. (i.e., >> never BUY something to do any of these things -- *better*!) > > Actually, this is *probably* a proper mindset for running a successful > business. Achieve more with less, the creed of the next seculum.
This can be a false economy. E.g., why power an entire PC to exercise *one* LCD monitor? Why not "split" the signal and drive a dozen monitors from one "video source"? After all, you are just interested in putting an image on the screen so you can check for dead pixels, flakey backlights, etc.! I.e., just because you have hundreds of surplus PC's to choose from, doesn't mean that a better solution might lie elsewhere (i.e., electricity isn't free -- it costs less to drive a distribution amplifier/splitter than power an entire PC!)
>> Just identifying memory modules *should* be a simple project. The real >> issue is doing it with a device that can handle lots of abuse by >> *unskilled* workers (who have no incentive to do things right... they >> aren't being paid, can't really be fired, etc.) > > So why the fuck are they there then? If they can't be bothered to *take > care* of equipment they use to perform their work?
Because most non-profits/charities rely on VOLUNTEER labor -- people who, in effect, tell themselves: "Gee, this sounds like such a GOOD CAUSE! I would like to help..." (for the moment, ignore the fact that many of these folks are retirees -- the sorts of people with "time on their hands") But, just wanting to help doesn't mean you are *able* to help! (of course, the fallback position of "just donate money" is always possible -- but often people don't have "surplus funds" that they can devote to such use... especially "retirees"). The organization is then stuck having to decide whether to *refuse* the offered labor (deeming it "inappropriately skilled" for the tasks at hand) *or* accept it and try to find a good "fit" -- where some value can be extracted from it. Turning away volunteers has other downsides -- word gets around that you're "selective" about who can help you in your Mission. Other folks hesitate to offer *their* services -- for fear you will turn them away as well! "Oh, like you, I don't know anything about computers, either! I won't bother offering my time, there..." (Yes, but you are intimately familiar with import/export regulations so *those* skills might be useful -- if you had only taken the opportunity to *ask*!) The trick, then, becomes one of trying to find ways of lowering the skill level required for a particular activity -- so that LESS skilled folks can perform it. E.g., if you need an engineer/technician to research every DIMM/SIMM encountered, then that engineer/technician's time is "wasted" on this task instead of building/refurbishing equipment -- a skill that is much harder to "simplify". Also, it is pretty hard to come up with a list of do's/don'ts that covers even the most basic *assumptions* to which a technician/engineer wouldn't give a second thought! Static sensitive devices, removing power before inserting/removing components, making sure metal hardware isn't lying on exposed circuitry, etc. For example, one of the places I visited today had *piles*/stacks of LCD monitors organized neatly. Of course, most are now TRASH as they were all stacked with their screen faces leaning on (or, being leaned on by!) the next monitor *above*/below in the stack! "Oh! I didn't realize that was something that should be avoided..." Do you "fire" this person for the mess they've caused? Wasn't it *your* responsibility to ensure they knew EVERYTHING related to WHATEVER they were tasked with doing ON THAT DAY? Remember, you aren't paying them for their time... and, if you aren't grateful for their efforts (i.e., if, instead, you are overly critical of or dismissive in their failures), you risk them feeling unappreciated (or worse) and, possibly, this attitude being conveyed to their other friends, etc.
> As I understand, the non-profit is fighting an uphill battle trying to > muster resources for its work, but still...
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!