A project log for Vintage Z80 palmtop compy hackery

It even has a keyboard!

esot.ericesot.eric 07/09/2021 at 19:013 Comments

i believe my compy-issues to be power-related... I've never found a micro-usb connector that didn't eventually flake-out... and, really, fairly quickly, to the extent that having spent quite a bit on a few, I think I found them no more reliable than those from the dollar store, so have since purchased probably a couple dozen... and try to keep a few spares around, only to get them mixed-in with the flakey ones...

Anyhow, my main compy is built around a Raspberry Pi Zero, due to disaster after disaster with other more capable SBCs, and due to my laptops' insatiable power-hunger. This particular Pi Zero has also faced disaster after disaster... The biggest, thus far, as I recall, being when I ran my HDMI display, external backup hard drive, and the Pi's DC-converter all off the same 12V source each with separate and rather long power cables.

The result, if I understand, was that the hard drive tried to return some of its ground current through the USB shield into the Pi, then back out through the HDMI shield and through the screen's ground. The Pi got the brunt of it, frying the HDMI port. But, that activity-LED was still active, so I hooked up a composite display, and lo and behold the entirety of the system still worked! Except, of course, HDMI. So, I happened to have an old portable DVD player I found in pieces in the trash, and amazingly it actually had labelled test-points for all the LCD signals, which were surprisingly easily wired-up to the Pi's DPI, after desoldering their series-resistors.

So, for quite some time, that's been the setup... and early-on I went out of my way to do some big-beefy power cabling inside the compy to individual devices like the USB hub and internal hard disk... back after I fried the old hub in I think a similar grounding disaster. But... I did not, stupidly, give big-beefy cabling to the Pi itself, nor to the DVD/screen.

OK, so the Pi Zero doesn't have any other power-input PCB pads besides the micro-usb, which I find utterly shocking, design-wise. But, apparently the GPIO header can take care of that on the Pi Zero (as opposed to other Pi flavors) because it doesn't have any 5V protection circuitry inbetween... So, I guess I'll be soldering big-beefies to that.

But, backing-up, the theory goes that the present scenario of complete flakiness may be due to a combination of factors. 

The DVD-player guts which are used to create all the voltages for the screen are powered by a dollar-store car-usb "charger" which is rated for 1A 5V. I hacked it for 9V by inserting a voltage divider... it worked great for some time. But, since the "flakiness" I measured its output and found that for the most part it's now outputting ~5V. If I turn the voltage-divider knob up to eleven, it sometimes gives ~7.5V... which... is... weird. And, BTW, that means shorting the converter's Vsense input to ground, which is in no way healthy for it, being that it was designed for a fixed 5V. So, that's the first problem. Surprisingly, the screen stays lit despite this flakiness in the input voltage, and its being *way* out of range. The DVD player is rated for 9-12V, 1A. Further investigation found someone online who actually did a pretty thorough testing of these dollar-converters... who found that MOST based on this same chip, used under normal conditions (5V, heh) fail at about 600mA. So yahknow, I was really pushing this thing anyhow. Then, to top things off, for some reason I used /tiny/ wire for both its input and output, and each rather long... about 6in. And, stupidly, didn't gound it at the system's central ground, but at the 12V input.

Now, this might not be such a big deal if it were connected to something (the Pi) with a beefy ground... because, in fact, the wiring I used between the Pi's GPIO header and the DVD player's board was well-shielded... in fact, it has well over 40 ground wires, since I used an 80-wire IDE cable. Which means... the DVD player is probably sending most of its ground current through the Pi, and then through the ground-wire going to the well-grounded USB-Hub... So, my guess is that the Pi's ground is plausibly raising a volt or more above the system ground, and that is why it crashes quite nastily. 

This is me ignoring the ground through the micro-USB power input... because, well, I've found them flakey so many times that I'm betting on it... though, it really shouldn't matter to the overall cause/solution. The other possibility, of course, is the 5V connection is flakey, which would also be a concern solved by soldering big-beefies to the GPIO header. 

But, therein brings up another potential concern... the hub feeds 5V through its cable back to the Pi. So, while that may've helped with the flaky power input connector scenario, it could also introduce a slew of other problems. Regardless of adding big-beefies, there are many loops and current will likely flow through tiny wires designed not to carry current... and possibly in directions completely contradictory to their design... And, where there's current flow, there's a voltage difference, too! Now, some of that can be alleviated, by e.g. cutting the 5V wire on the USB cable to the hub... but what about the ground?

So, at some point, I get a bit confused as to the best approach. And, frankly, I've done a bit of research into how such things are handled in e.g. industrial cabinets and internal to computers in e.g. ATX cases. It seems the thing is a bit of an art, as opposed to a science. A lot of low voltage systems in industrial cabinets use separate 120VAC transformers for each device, thus each device's ground is isolated from the others and no current flows through signal ground. Alternatively, expensive signal isolators are used. A lot of the USB systems rely on similar source-voltage isolation... or are powered by the host, exclusively, so current flows through ground in one direction (and such devices typically require very little power, thus the voltage at the device ground is similar-enough to the voltage at the host-ground, especially in consideration that the USB signals are /mostly/ differential, so a bit immune to ground offest). 

But, ground-offset is a big concern when power is looped, as in my case, not so much because of the infamous "ground loop" affecting audio systems, but because now /current/ flows through these loops in different paths and amounts, which means voltage differences, which means one 5V system might only be getting 4V, and so on. And whether that 4V is WRT ground, or the 5V rail, etc... could have a big impact, as well.

So, I think the answer is to think of it a bit like ATX PCs... IDE has 40+ signal grounds, a lot of motor current could flow back into the motherboard... it does not, however, have 5V or 12V going through the signal cable. Which, is a mixed blessing. On the one hand that means you don't have to worry about the drive spinning its motors through the motherboard. On the other hand, there's nothing stopping that motor current from returning through the motherboard ground. They once took great pains to consider grounding... look at an old 5.25in floppy drive, and you'll most likely find a terminal for adding a ground strap. Almost never used... So, my guess is they thought about such things, but ultimately found that "it seems to work fine without." And, now, I think that's basically the jist. Sure, they /say/ the four-pin power cable has 12V, 5V, and 12V-return, and 5V-return... but most drives I've encountered just short those two pins, and connect it through a screw to the chassis... so, really, I think it mostly amounts to ground/return current is flowing everywhere, and it works OK because there's little resistance, overall... a ton of "big-beefy" grounding that ultimately doesn't allow for much offset voltage between devices. Typically everything's grounded through the metal chassis, which isn't too likely to have a volt's difference between corners. But, it /could/, especially with oxidation and cheap metals and rivets and folks' often neglecting to screw in their hard drives, and my having once run a hard drive external to the case for many months... so, now we're back to cabling-only, which is what my Pi system's got. And therein, I guess the answer is big-beefy power cables starred out to each device and hoping that none draw so much current as to its ground voltage offsetting too much WRT other devices'... and, especially a concern with sudden surges in current, caused by internal switching-power-supply circuitry, or motors, or plugging in a phone to the USB hub and suddenly drawing 2.1A, etc...

Really, it's a wonder these things "just work" as well as they do.


Ok... the trilemma... I've got my soldering iron to solder up the big beefies... but my car-batt hasn't had a full charge in ages due to short trips.

Option 1) Go buy a butane soldering iron. Nearest place is a bit of a drive... gas, time... also, ~30bux for a tool I already have with me here, now. But, could be quite handy in future such situations, so not entirely a bad idea. OTOH, halfway there is...

Option 2) my storage unit, where I could plug in my soldering iron, save 30bux, and a bit of gas. OTOH, I could probably use even less gas by, ironically...

Option 3) idling my engine, here and now, to run my soldering iron I already have, here and now. Seems a bit ridiculous to run an engine for a measily soldering-iron, but overall, it'd probably use the least gas.


Moments like these, it might be handy to have that current-meter I've been planning to monitor the battery, see if it's charging... Folk say idle doesn't do much for charging, but how can that be? The alternator has a voltage regulator which looks to output a pretty consistent voltage regardless of idle or driving... If more current is necessary for charging a depleted battery, the alternator would put a higher drag on the motor to try to maintain the voltage... it may idle slower, or maybe "harder", but it doesn't stall... the voltage is maintained (per the meter in the dash)... the resistance in the wire between the alternator and the battery doesn't change whether you're idling vs. driving... so... the battery should be getting the same charge either way, no?

Now, maybe the thought's in that "idling harder" somewhere... I dunno enough about cars to analyze that. Though, I do know there's a torque-converter... and that means that when you're braked at a stoplight you're essentially idling quite hard. And that thar is by design. Now, some might say that's not to be used for long durations, best to switch to park, and that's probably true. But, the torque converter is *always* in the system when not in neutral or park. Thus, when driving, you're *always* putting more torque into the system than you're getting out... which i would think essentially equates "hard idling" to, say, driving uphill, as far as the strain it puts on the system... in which case, the system, surely, is designed for that! 

I could be entirely wrong. A major difference being that in idle you're not adding more airflow (by opening the throttle, by pushing the "gas" pedal), so how does the system compensate? Well, it obviously /does/. It idles slower, I guess... but doesn't stall, and doesn't reduce the alternator/regulator's output voltage... so, I dunno. Maybe such causes less-complete combustion? Or the fuel injectors compensate by changing the fuel mixture, which wouldn't happen with a carburetor...? (So, then, would stall?) Or maybe the concern is a remnant of the days of dynamos rather than alternators. Or maybe it's a concern of magnetic strain on alternator-windings? I dunno.

"Truly [I] have a dizzying intellect." 

Tell me about it, it's exhausting.

Now... I've been putting off this solder job for days, this time. And, apparently, judging by the friggin' micro-usb cable powering the Pi and the tiny long wires powering the display, yet beefy cables to everything else since the last time I worked on this, I've put this off for FAR longer than a few days... I should probably get to that soldering.


Many hours later...

Option 3 has a couple problems which can't be ignored on a day like today... exhaust, and heat. Running the engine heats up the engine compartment, which happens to extend into the cabin. It's hot enough in here even with the breeze, and sealed up to keep out the exhaust? Not happening without the A/C functional. And, what then with the fumes? Heh.

Option 2 has a glaring and related problem... there's no shade to park in, nor to work in near an AC outlet. This thing gets *hot* in the sun.

Option 1 now, at least on a day like today, seems the only option... but that's a lot of moolah among other factors, like, again, no shade, necessitating another long drive to find someplace to do the job... maybe right back here, even.

Option 1A might do, but it'd be a long wait for shipping, then I have that same long drive to get my mail... and, frankly, I have a REALLY hard time believing 10W (5V, 2A, USB soldering iron) could tin a bulky wire and attach it to the solder-side of a two pin-headers acting as heatsinks.

I really want to get this thing, and my many projects, going again... it's pretty much all I've been able to think about for weeks. But, getting into project-doing (vs. planning) mode has always been a difficult transition for me, and factors like these make it that much harder. Things I'd've never encountered in my old life, which fate took from me. Believe me, I spend vast amounts of time and energy trying to figure out how to make a lifestyle like that fit within my abilities, or lack thereof, and/or to try to push the limits of those [in]abilities to make such a situation long-term feasible, again... and/or figure out another situation I could handle that would lend itself to such projects, etc. 

Which, honestly, is part of the reason Option 1 /doesn't/ appeal to me... it'd be a bit like admitting I'll be living like this long enough to justify a tool investment that would otherwise be nothing more than another thing to store in a drawer in a garage, if I ever get one. I have a /nice/ soldering station with a lot of tips, temperature control, etc. that I initially invested in when I was a teenager, and moreso over the years. Thing does TQFPs and beefy solder lugs just as easily. I'd had a dedicated spot on a workbench, then a card-table, right next to my oscilloscope, heatgun, and various other /investments/ (both monetary and time) for most my life. Using any/all of those was merely a matter of flipping the switch and waiting a few seconds. That was the life I expected, not fighting to reload a glorified butane lighter just to solder friggin' speaker wire to fix the shitty power-input on a toy "computer" less powerful than the laptop I bought with my hard-earned money working in IT before college some twenty years ago.

"And you may tell yourself 'this is not my beautiful house.' And you may ask yourself 'well, how did I get here?'"

I've learned quite a bit about not being so OCD... speaker wire is fine... cutting up dollar store extension cords is fine... heck, in this, /my/ home, using the extension cords' ends for 12VDC is even OK. The Pi Zero may not surf today's internet, but it handles most my projects just fine... but, i mean... sheesh. How much humbling do I deserve? And how much extra effort to do the things so many folk take for such granted as to not even be bothered, or even the things I worked so hard for? And how often do I have to face the dangling carrot of "if you'd just..." from folk who have no idea what put me here and would absolutely be incapable of "just..." were they in my situation? When will they start, instead, to recognize just how astoundingly well I'm handling a life situation few will ever face?

Consider this project... I've already increased the linking speed between tilp and a calculator, already made it work over usb-serial dongle, which it wasn't capable before... I did it for free. If I ever get my "computer" running again, it may very well be the first update to tilp in several years... just when those calcs are winding-up en-masse in the hands of hobbiests/"hackers", folk like us, rather than somewhat necessarily passed down to the next generation of school kids or kept for careers... I literally have to plan my days around where I can sit for a few hours, where I can sleep, where is there a toilet, electricity every so often, nevermind showers and so much more, and yet I'm still trying to contribute to some cause I know something about, niche as it may be. I think I deserve a tremendous back-pat, instead of feeling guilty that today, and for many days, pretty much the only thing I can do is watch some tube. Wouldn't mind swimming, I suppose, but how many of you all would do-so down at the river, unable to shower thereafter? Ever tried to sleep in 80degree nights with swimmer's itch?

No, I doubt I'll be soldering today, again, again.... again... and instead I'll be spending yet another day feeling totally motivated--to such extents as to really not be able to think of much else--to do something I can't.

Maybe I should get that butane iron tomorrow. :/


dearuserhron wrote 07/22/2021 at 10:52 point

Eric, I am sorry for off-topic. Project DuinoCoin has drawn my attention. Recently it becomes featured project on hackaday. I believe it is a scam. I do not want hackaday to support cryptocurrency scam like this.

Project owner said that I am an idiot and opensource project can not be a scam. (from scammer point of view, any person that do critics on their project is an evil corp agent mixed with aliens, so be careful with him)

I do not want him to remove the project, I just want him to explain how it works. (again, it is another rule of scam - never explain how this thing works, just grab the money)

I do not know what to do next. If you know someone who can rectify this scam, let me know. Use email or better hackaday PM system to talk to me.

  Are you sure? yes | no

esot.eric wrote 07/22/2021 at 23:18 point

Howdy... I apologize, crypto stuff, in general, be it currency or security/privacy-related (as in our previous discussions) really ain't my jam... I mean, I'm glad for https, and such, but beyond that, I really don't know much about it. In my capstone Embedded Systems class I tried to implement an LFSR for data recovery from a bit-error... it was supposed to be straightforward, instead it resulted in weeks of head-beating, looking up countless references, and never actually functioned. I pretty much decided there that LFSRs are beyond me and to be avoided... I had a tiny bit of luck with them over a decade later in a floppy-disk checksum calculator... but, frankly, that too took a tremendous effort and, basically trial-and-error, despite its being thoroughly documented by countless sources.

I'm sorry, my friend, I think you're "barking up the wrong tree" expecting me to have much insight in these realms.

From another standpoint: There are many numbers that could be "mined" in such ways... some don't require huge computations that only a supercomputer could do. E.G. finding a prime number near 5,678,901 could be done on any microcontroller, given time. It could be very possible that number has never been documented as found in some central database of prime numbers. So, say, instead of dedicating one supercomputer to finding all primes sequentially from 1million to 1 billion, why not dish the task out to a thousand arduinos, sending each a somewhat random number inbetween to start from? Could be useful to society, even. And, yahknow, could create a "community" of folk doing the same, a bit of friendly competition, assigning some "trading" value to folks' discoveries... could be quite a positive thing. If it's not based around deception... And, there might be many unending number-systems which could be equally useful to have centrally documented... Fibonacci sequence, digits of Pi, so-forth. It could be akin to the 1920's Great Depression, wherein jobs were created to calculate (by hand!) many number-tables we still use today, /despite/ computers' abilities to crunch them over and over. Could be a good thing.

Is the project you linked something like that? No idea. Frankly, I get "deception" vibes from the video, but it could just be some old-fart trying to appeal to today's yout. ;)

I don't really have the means to do something like that, myself... power being a huge limitation, also constant internet access, and surely more (space!). That's why I'm so "gung ho" about this project... being that it runs off AAA's for quite some time.

Though, if something along the lines I described exists, it might be a worthy venture to set up in my storage unit, running off tossed-away batteries, if it could run for a few weeks at a time between needing internet access. Hmmm. Hard to imagine one arduino's findings would cover the cost of the arduino. OTOH, as the guy says in the vid, there are many arduinos out there which were bought by folk who haven't yet found a use for 'em...

Similar could be said for old cell phones, which folk keep around for the photos or whatnot... OTOH, I've found that many of those will kaput once the battery kaputs, even if they're plugged in. Not so great if you really care about those old contacts/photos.

Anyhow, the guy's project /could/ be somewhat legit, maybe even beneficial to society. I dunno who to ask. It's on the "Featured Projects" list, maybe one of that list's curators will do a blog writeup. Surely such concerns as yours would be worthy of addressing in such a write-up whose audience would share such concerns.

  Are you sure? yes | no

ziggurat29 wrote 07/23/2021 at 18:26 point

The underlying mathematics for LFSR and CRC are pretty abstruse.  As engineers, we mostly use what the mathematicians have worked out for us, so don't feel bad about struggling with it.
Props for the Princess Bride and Talking Heads references.

  Are you sure? yes | no