dual_sport_dork 🐧🗡️

Progenitor of the Weird Knife Wednesday feature column. Is “column” the right word? Anyway, apparently I also coined the Very Specific Object nomenclature now sporadically used in the 3D printing community. Yeah, that was me. This must be how Cory Doctorow feels all the time these days.

  • 12 Posts
  • 294 Comments
Joined 2 years ago
cake
Cake day: July 20th, 2023

help-circle
  • Task Manager is launched by the listener in winlogon if you use the Ctrl + Shift + Esc method though, right? I’m pretty sure you can still launch Task Manager, and from there attempt to relauch Explorer, even if Explorer is borked or not running. You’d just have to know how to do that and that you can.

    That’s what I always do when Explorer’s ears inexplicably catch fire and I’m either too lazy or too naively hopeful to reboot.

    For anyone following along at home, Windows Explorer is also responsible for displaying the start menu/taskbar. In the example in the article there’s something else funky going on inside Explorer, though, because the taskbar and even the desktop icons are all there, it’s just not rendering correctly. (Explorer is also responsible for showing all of your desktop icons.)


  • I’ve never retrobrighted anything because I always had a hunch this would be the case. It turns out I was vindicated. We all know full well that oxygenation is one of the things that deteriorates many materials, including embrittling plastics, and what you’re doing with this stuff is literally just oxygenating the shit out of your plastic in order to bleach it.

    For stuff that I’ve really cared about de-yellowing, I’ve always just cleaned it thoroughly and painted over it. This has the added bonus of the paint being an additional protective layer rather than a destructive chemical reaction inflicted on the material itself. Sure, it sucks that you also paint over any logos printed on it or whatever, but you can recreate those with stickers if you really care. I figure that if anybody can’t identify what an NES or Dreamcast or something is shaped like, even without the logos on it, they’re probably not invited to any more of my parties anyway.


  • Then they can kick rocks. Anyone who claims you “need” to use the Bullshit Machine to achieve productivity is a moron who is setting themselves up to lose. If any interviewer tries to tell me this is required I’m picking up my stuff and walking out right then and there.

    If nothing else those people are outright admitting that they’re not offering stable employment because the corporate dream is that these LLM schemes will allow them to eliminate all of their coders, tech writers, artists, and marketing department. Not only this this an anathema to anybody earning a living, it’s also mathematically impossible. So why would I even want to work for them in the first place?

    When the inevitable collapse occurs, these idiots will have to pay the remaining dwindling number of competent people left to come back and bail their stupid asses out, and that’s even if any of us deign to do so for them.

    I don’t use generative “AI” and I never have. Not even once. What I create is my own, I can understand and document all of it, and I can maintain it in perpetuity. Every pixel I’ve pushed, every line I’ve written. All of it, without exception. That’s not changing.





  • If your bed is physically tilted and you’ve ensured it’s flat (it seems that you have), you will probably want to manually adjust its straightness relative to the X/Y plane. Or perpendicularity. Is that a word? You know what I mean.

    There are four locknuts on posts on the underside of the bed and if you remove the steel build sheet on top you’ll see the heads of the four screws on the other ends of these. There are probably myriad ways to measure its straightness, but Qidi recommend just manually moving the head around and using the textured nozzle offset sheet the printer came with to ensure that the gap is more or less consistent with the tip of the nozzle in the various extremities of the bed. You could also use a feeler gauge for this purpose if you were feeling frisky or wanted something more durable. You’ll want to do this with the bed at room temperature, so that rising or falling temperatures won’t be muddling your results via thermal expansion.

    With the locknuts loosened, you can screw the four corners of the bed up and down slightly using the screw heads on top. These are the four screws closest to the corners. Be sure to hold the screw heads in place when you retighten the locknuts beneath, otherwise the act of tightening them will probably also turn the screws slightly and mess up all your hard work. Turning the screw heads clockwise lowers the bed, and turning them counterclockwise raises the bed in that corner.

    Do not attempt to auto-home the print head or run a mesh level job without the steel sheet attached to the bed. The probe relies on the presence of the steel sheet and you will drill the nozzle into the magnetic surface of your print bed if you do. Just grab the print head to move it around in the X/Y plane and leave its jog controls alone. Only jog the bed itself.

    Qidi have a video detailing this here. Yes, it’s just an MP4 plonked on a Google drive and no, I don’t know why they didn’t just post it you Youtube or something. They seem to distribute most things by just sticking them in a Google drive folder. You get used to it, dealing with Qidi.

    I had to go through this rigmarole when I replaced the heated bed a while ago, which Qidi are not keen to tell you in advance. When I just slapped the new part on there as advertised I wound up with one corner of the bed tilted near as makes no difference to a full millimeter below the presumed plane of the Z axis and the other corner maybe 0.5mm above it. Somehow with mesh leveling this more or less still worked, but it’s much improved now that I’ve actually done it right… ish.

    What I have now is this:

    Look, it’s not exactly an ideal Euclidean plane or whatever the hell. But 0.2228mm from one corner to the other? S’okay? S’alright. That’s little enough that the mesh can compensate for it.

    In case anyone is wondering, the mesh leveling appears to use a 9x9 grid. I thought it would be 10x10. I was wrong. That’s only 81 points of measurement which means that vagaries could theoretically fall in between the probed points. It’s not likely these will be Earth-shakingly severe, because the steel surface plate isn’t exactly tinfoil and it’s only so flexible to begin with. And here’s another dumb tip for your travels while we’re at it: Make sure there’s no crap stuck to the backside of your steel plate, or trapped between it and the magnetic base. Scraps of black filament are what get me, because they’re hard to spot. But they’ll cause you no end of grief.


  • In my case the pattern appears to be some manner of DDoS botnet, probably not an AI scraper. The request origins are way too widespread and none of them resolve down to anything that’s obviously datacenters or any sort of commercial enterprise. It seems to be a horde of devices in consumer IP ranges that have probably be compromised by some malware package or another, and whoever is controlling it directed it at our site for some reason. It’s possible that some bad actor is using a similar malware/bot farm arrangement to scrape for AI training, but I’d doubt it. It doesn’t fit the pattern from that sort of thing from what I’ve seen.

    Anyway, my script’s been playing automated whack-a-mole with their addresses and steadily filtering them all out, and I geoblocked the countries where the largest numbers of offenders were. (“This is a bad practice!” I hear the hue and cry from specific strains of bearded louts on the Internet. That says maybe, but I don’t ship to Brazil or Singapore or India, so I don’t particularly care. If someone insists on connecting through a VPN from one of those regions for some reason, that’s their own lookout.)

    They seem to have more or less run out of compromised devices to throw at our server, so now I only see one such request every few minutes rather than hundreds per second. I shudder to think how long my firewall’s block list is by now.





  • They also need to be able to replenish that stock at current prices. I’ve worked retail many times in my life and arguably kinda-sorta do so now (albeit largely over the Internet) and I’ve never run any store where we did not set our pricing by replacement cost rather than original invoice cost. In my current operation there are some rare exceptions for clearance items and the like, but for the vast majority of products we sell for what it’s going to cost me to get the next one to put back on that shelf, not what it cost me for the one I’m selling you now.

    I don’t have any insider insight into other companies’ operations, but I imagine a lot of other retailers work things the same way. Especially these days.



  • I run an ecommerce site and lately they’ve latched onto one very specific product with attempts to hammer its page and any of those branching from it for no readily identifiable reason, at the rate of several hundred times every second. I found out pretty quickly, because suddenly our view stats for that page in particular rocketed into the millions.

    I had to insert a little script to IP ban these fuckers, which kicks in if I see a malformed user agent string or if you try to hit this page specifically more than 100 times. Through this I discovered that the requests are coming from hundreds of thousands of individual random IP addresses, many of which are located in Singapore, Brazil, and India, and mostly resolve down into those owned by local ISPs and cell phone carriers.

    Of course they ignore your robots.txt as well. This smells like some kind of botnet thing to me.


  • I’ve got a Timex Expedition that I’ve had since high school. That means I bought it some time during the early Triassic. Its stainless steel backplate is held on with four Phillips screws and I have never in many decades had any problems undoing them when I need to replace the battery every six years or so. It remains resolutely waterproof. I know this because it lives outside rather frequently: at the moment I have it stuck to the gauge cluster on one of my motorcycles with Velcro.


  • If your Q1 is anything like my previous X-Plus or current X-Max 3, pretty much all of the routines you can run from the touch screen are macros that are defined in your printer.cfg and gcode_macro.cfg files on the machine itself. These are just text files full of gcode and you can dick with it freely without having to reflash the firmware. The only “fun” part will be figuring out which one of the custom macros it is, since Qidi doesn’t always give them a readable name and they tend to make them random looking numeric strings. I’ll have to take a look at mine when I get home and ensure that the filament load/unload/runout routines are located there, but I’m pretty sure they are.

    You can edit your config files through the Mainsail interface within the Qidi Slicer or you can SSH into the machine and get a terminal via which you can mess with things directly (username mks, password makerbase).