#1

my most recent example is a Macbook Air 13 that I chimera’d out of three different machines; awesome that 2012-2017 models have interchangeable parts. was lucky and one of the boards had 8 GB RAM, a rarity back then. alas, the only battery I got has barely 60% capacity and zillions of charge cycles and I ain’t too keen on spending money on a replacement.

ok, so shit autonomy, be happy you got a workstation for like $15 in total and run it thusly. except, this one shuts off even if there’s like 70% remaining and subsequently won’t power on without a charger - kinda big deal for a laptop. I imagine not all its cells are up to spec so when it reaches a threshold it cuts out. under macOS, the SMC lets it sip power and when you attach a charger it just wakes as you left it. linux ain’t that cool, when you connect power - all your unsaved work is gone.

what linux does have is intel-undervolt. just a smidge of -50mV was enough to remedy the issue. after a coupla days, moved it to -75mV, still perfectly stable; at -100mV it occasionally KPs.

so a thing that was unusable away from a charger is again a mobile device, netting me 4+ hours of light use and almost a week of standby!

#2

eons ago I had a Thinkpad W520; at least I think that was the model - a 15.6" with the chunky, 7-row keyboard sans numpad. lenovo stabbed me in the heart when they decided that all subsequent models must rock the annoying numeric pad, making you type off-center and… anyhoo, the one I got, had a partially damaged screen, about 100ish pixels wide and super irritating, flashing constantly. replacing it wasn’t in the budget and relying on an external monitor was a no-go…

hello xrander! that thing allowed you to cut off a part of the screen and that’s what I did - converted the 16:10 to something more like 4:3. not only that, a friend taped over the busted part with some carbon-like decal making it look super sick! I’m still trying to find a picture from way back when but no luck so far…

not only did I get a super usable machine, it was the coolest workstation by far - maxed out RAM, three SSD/HD in there… well, as cool as those things can be, anyways…

#3

a few years back, I got a 13" Yoga, forgot the model, for pocket change. dual-core i5 and soldered 8 GB RAM, gorgeous screen, awesome battery - but it constantly blue-screened. break out the mint USB with memtest, and yepp - errors. dogdamn, no way can I afford to fix this thing and if I try desoldering those things, Imma burn the house down. and break the thing even further…

enter GRUB and its BADRAM feature! you can exclude arbitrary region(s) of RAM and the OS that boots after it will be none the wiser - it just uses the rest. and verily, it worked without issues, used it for years and I believe it still works to this day with his current owner.

#4

got a kernel-panicking Macbook Pro 15 Mid2010 for next to nothing. those things died en masse, the issue was a capacitor that drove the Nvidia chip. any strain or excess power consumption and the thing gave out and the OS crashed. the fix was/is simple - disable the Nvidia chip via EFI variable and use just the Intel HD graphics. you lose display out but gain a cooler machine, longer battery life, and you get zero issues with linux.

having fixed it, I installed linux and wanted to upgrade the RAM to 8 GB. alas, no sticks I found would work in the thing. turns out, the fucker only takes 1066 MHz RAM. I totally lived with the conviction that if you stick faster RAM into slower hardware, it’ll run it slower, but apparently that ain’t so. so tried bartering with junkers, I’ll give you my 1333 RAM, you gimme yours - no takers. buying stuff for something that cost me less than $10 was out of the question…

turns out, you can use linux to reprogram the SPD data on the RAM module! you change its identifier to 1066 and the macbook recognized it as such. furthermore, you don’t need to patch both sticks, if one is 1066 it can run the other at 1066 as well - so you can run 'em slower! no idea if this is an apple thing or its widely present, but I got a functioning workstation for free! edit: here’s the link

#5

finally, the Dell Latitude 5285. that’s a 2-in-1 tablet with detachable keyboard that I got without the battery. it had okayish specs, the i5-7300u is nothing to get excited about but it had 16 GB LPDDR3 soldered on. the touch display is beyond gorgeous - 400-nit 1920x1280 IPS and the intel graphics shipped the full 4K @ 60 Hz to my monitor via DP-Alt. the only problem - the fucker won’t boost past 400 MHz without the battery! buying the thing is out of the question (y’all notice a pattern here, right?) so what are we to do…

thankfully, we got msr-tools. the thing can patch CPU’s registers and en/disable some things, and one of them is BD_PROCHOT. that signal makes the CPU throttle on account the heat, it’s also triggered if anything is amiss - touchpads disconnected, battery not present, etc. what’s needed is read out rdmsr 0x1fc if memory serves correctly, and then you add one bit to the read out state and write it back with wrmsr 0x1fc 0x1xxxxx et voila - speedsteps up to 2.7 GHz, a quick systemd script to make it permanent. it won’t turbo, to 3.3 GHz or sumsuch, but this was more than enough for everyday use.

thanks for reading! y’all got any stories how linux can save your ass without spending money? share it with the class!

  • glitching@lemmy.mlOP
    link
    fedilink
    arrow-up
    4
    ·
    22 days ago

    forgot: I have a broken subwoofer from a 2.1 system. the woofer works but one of the channels is dead. I also have a monitor with decent stereo speakers in it. enter pipewire - pactl load-module module-combine-sink creates a new audio card comprised of all other audio cards and selecting it outputs all audio to all of them. I got the stereo speakers for mid/high tones and the woofer for low ones - awesome sound for nothing!

  • Joelk111@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    22 days ago

    Linux also saved my hardware… from an awful operating system amirite?

    That’s super cool though, very resourceful.

  • fuckwit_mcbumcrumble@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    22 days ago

    turns out, you can use linux to reprogram the SPD data on the RAM module! you change its identifier to 1066 and the macbook recognized it as such.

    You shouldn’t need to reprogram the ram at all. If the machine only supports up to X it should only run the ram at X speeds. And would only run slower if the timing was worse on the faster (mhz) stick.

    thankfully, we got msr-tools. the thing can patch CPU’s registers and en/disable some things, and one of them is BD_PROCHOT.

    You also want to be careful with that. They throttle the CPU like that because power supplies can’t handle the instantaneous spikes of turbo boost adequately. Particularly if you use a lower wattage charger. It’s probably fine, but it might be unstable depending on the load.

    • glitching@lemmy.mlOP
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      22 days ago

      I’m glad your “shouldn’t” trumps my “did it”.

      2010 i5/i7 (and previous, Core 2 Duo models) don’t take faster RAM. so e.g. 2007/08 models won’t take 800 MHz DDR2, only 667 and 2009/10 DDR3 won’t take anything faster than 1067. 2011/12 can run 1333 and 1600. all later models have RAM soldered.

      anyhow, those 1067 are rare and thus the mentioned trick was needed. I’ll try to find the post describing the process and link it in OP. found it: https://hannuhartikainen.fi/blog/hacking-ddr3-spd/