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.

  • 158 Posts
  • 1.23K Comments
Joined 2 years ago
cake
Cake day: July 20th, 2023

help-circle
  • 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.


  • There are several things you could do in that regard, I’m sure. Configure your services to listen only on weird ports, disable ICMP pings, jigger your scripts to return timeouts instead of error messages… Many of which might make your own life difficult, as well.

    All of these are also completely counterproductive if you want your hosted service, whatever it is, to be accessible to others. Or maybe not, if you don’t. The point is, the bots don’t have to find every single web service and site with 100% accuracy. The hackers only have to get lucky once and stumble their way into e.g. someone’s unsecured web host where they can push more malware, or a pile of files they can encrypt and demand a ransom, or personal information they can steal, or content they can scrape with their dumb AI, or whatever. But they can keep on trying until the sun burns out basically for free, and you have to stay lucky and under the radar forever.

    In my case just to name an example I kind of need my site to be accessible to the public at large if I want to, er, actually make any sales.



  • Almost certainly. There are only 4,294,967,296 possible IPv4 addresses, i.e. 4.3ish billion, which sounds like a lot but in computer terms really isn’t. You can scan them in parallel, and if you’re an advanced script kiddie you could even exclude ranges that you know belong to unexciting organizations like Google and Microsoft, which are probably not worth spending your time messing with.

    If you had a botnet of 8,000 or so devices and employed a probably unrealistically generous timeout of 15 seconds, i.e. four attempts per minute per device, you could scan the entire IPv4 range in just a hair over 93 days and that’s before excluding any known pointless address blocks. If you only spent a second on each ping you could do it in about six days.

    For the sake of argument, cybercriminals are already operating botnets with upwards of 100,000 compromised machines doing their bidding. That bidding could well be (and probably is) probing random web servers for vulnerabilities. The largest confirmed botnet was the 911 S5 which contained about 19 million devices.


  • 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.



  • That’s because it’s numerically possible to sweep through the entire IPv4 address range fairly trivially, especially if you do it in parallel with some kind of botnet, proverbially jiggling the digital door handles of every server in the world to see if any of them happen to be unlocked.

    One wonders if switching to purely IPv6 will forestall this somewhat, as the number space is multiple orders of magnitude larger. That’s only security through obscurity, though, and it’s certain the bots will still find you eventually. Plus, if you have a doman name the attackers already know where you are — they can just look up your DNS record, which is what DNS records are for.










  • 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.



  • All controls should be remappable. All means all. Not most, not some, and certainly none of this bullshit where all you can do is toggle between “XBox 360 controller layout A/XBox 360 controller layout B.” This is especially true for titles on consoles, many of which still to this very day don’t allow you to remap their controls at all.

    For 3D games, field of view. Far too many developers of FPS titles in particular have Console Disease, and feel it’s somehow acceptable to lock the FOV to 70° or some absurd number. If they allow you to adjust it at all they may be feeling “generous” enough to let you go as high as 90°. That’s completely unacceptable. On my 4K monitor that’s 25" from my face, I need at least 120°. Honestly, I want to see that slider go up to 180°. That’s right, I want to be able to look at your game world like a goddamned pigeon. On that note I really have to wonder what those people with those 3840x1080 überwide monitors do most of the time, other than spending their days in never ending torment.

    Allow me to turn off the stupid pre-launch splash titles. Certainly at least after the first startup. I certainly don’t need to be told that nVidia is the way it’s meant to be played, or that your company licensed Havok, or who your publisher is, or who your publisher’s owner is, or who your publisher’s owner’s owner is, etc. Nobody cares. Usually instead you have to resort to replacing the .mkv or .bik files in the game folder with zero-byte text files or something. It’s dumb.

    While we’re griping, and speaking of Console-Itis, does every PC game now need to have an unskippable message telling me that this game has auto save and urging me not to turn off my PC when the icon is being displayed? Really? Nobody’s going to do that. Tell me your game is a shitty console port without telling me your game is a shitty console port. To keep this on topic, let’s have a setting to turn that off, too, because it’s stupid. Off by default would be nice. Should there be an Idiot Mode toggle?

    Granularity in subtitles. It seems too many games only have two settings: All subtitles off, or they assume you’re completely deaf. Typically I want to be able to read what characters are saying in their voice lines, but instead the developers also think I need to see the bottom third of my screen filled with [BOOM] [GUNFIRE] [JUKEBOX MUSIC] [FOOTSTEPS] [BOOM] [GUNFIRE] [BOOM] [BOOM] and so on and so forth, all the time. They should either categorize sounds and make their subtitling things individually selectable, or at least if they insist on making it a slider give it three or four levels: Off, cutscene/conversation dialog only, all spoken lines (“Cover me!” “Reloading!” “Never should have come here!” etc.), and then only the top level resulting in every single cricket and rustle of grass being captioned. Some games do manage to accomplish this. Many do not.

    Oh, I thought of a good one to add to my wish list. I want every game to bring back the sound test menu. But they won’t, because every studio on Earth now wants you to spend an extra $15 for their game’s soundtrack. (As if it’s not all going to be on Youtube about twelve seconds after release anyway…)



  • 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.