Prusa Picks Up The Pace With New MK4S Printer

One of the things you’re paying for when you buy a 3D printer from Prusa Research is, essentially, your next 3D printer. That’s because Prusa’s machines are designed to be upgraded and modified as time goes on. An upgrade kit is always released to allow each older printer to be converted into its successor, and while there’s occasionally been some debate about whether or not it’s the most cost-effective choice, at least it is a choice you have as an owner.

If you’ve got a Prusa MK4, you’ll soon get to make that decision for yourself. Announced earlier today, the new MK4S brings some notable changes to last year’s printer. The $99 upgrade is scheduled to be available by the end of the month for existing owners, but if you’ve been on the fence about joining Team Orange and Black, you can purchase the MK4S right now in both kit and assembled forms for the same price ($799 and $1,099 respectively) as the previous MK4.

Continue reading “Prusa Picks Up The Pace With New MK4S Printer”

Audio On Pi: Here Are Your Options

There are a ton of fun Raspberry Pi and Linux projects that require audio output – music players, talking robots, game consoles and arcades, intelligent assistants, mesh network walkie-talkies, and much more! There’s no shortage of Pi-based iPods out there, and my humble opinion is that we still could use more of them.

To help you in figuring out your projects, let’s talk about all the ways you can use to get audio out of a Pi or a similar SBC. Not all of them are immediately obvious and you ought to know the ropes before you implement one of them and get unpleasantly surprised by a problem you didn’t foresee. I can count at least five ways, and they don’t even include a GPIO-connected buzzer!

Let’s rank the different audio output methods, zoning in on things like their power consumption, and sort them by ease of implementation, and we’ll talk a bit about audio input options while we’re at it.

Continue reading “Audio On Pi: Here Are Your Options”

Pi Pico SDR On A Breadboard

How hard is it to make a fully standalone SDR? [101 Things] shows you how to take a breadboard, a PI Pico, and two unremarkable chips to create a capable radio. You can see the whole thing in the video below.

The design uses a standard Tayloe demodulator. There’s also an encoder and an OLED display for a user interface. You might also want to include some PC speakers to get a bit more audio out of the device.

Continue reading “Pi Pico SDR On A Breadboard”

A single-key macro pad with a screen built into the button.

2024 Tiny Games Contest: Are You A Good Judge Of Time?

What can you do with a one-button keyboard? Quite a bit, actually, especially if that key has a little screen on it. That’s the idea behind [Maker M0]’s MagicClick macro pad, which is an updated version of a highly useful project we have featured in the past. Well, now there’s a tiny game to go with it.

Animation showing the TimePerception game in action.Think you’re pretty good at measuring the passage of time? This game will likely prove you wrong. Press and hold the button and the timer begins with some pre-determined interval, such as four seconds. Once you think those four seconds have passed, release the button and find out how far off you were.

While the first version of this keyboard used the CH582F RISC-V microcontroller, the second and this third version use an ESP32-S3 on a custom, tightly packed PCB. That TFT display measures 0.85″, and the battery is an 3.7 V 802025 Li-Po. [Maker M0] has also redesigned this to make it easier to print, and plans to support circular screens in the near future.

The First New Long Wave Radio Station Of This Millennium

The decline of AM broadcast radio is a slow but inexorable process over much of the world, but for regions outside America there’s another parallel story happening a few hundred kilohertz further down the spectrum. The long wave band sits around the 200kHz mark and has traditionally carried national-level programming due to its increased range. Like AM it’s in decline due to competition from FM, digital, and online services, and one by one the stations that once crowded this band are going quiet. In the middle of all this it’s a surprise then to find a new long wave station in the works in the 2020s, bucking all contemporary broadcasting trends. Arctic 252 is based in Finland with programming intended to be heard across the Arctic region and aims to start testing in September.

The hack in this is that it provides an opportunity for some low-frequency DXing, and given the arctic location, it would be extremely interesting to hear how far it reaches over the top of the world into the northern part of North America. The 252KHz frequency is shared with a station in North Africa that may hinder reception for some Europeans, but those with long memories in north-west Europe will find it fairly empty as it has been vacated in that region by the Irish transmitter which used to use it.

So if you have a receiver capable of catching long wave and you think you might be in range, give it a listen. Closer to where this article is being written, long wave stations are being turned off.

Harris & Ewing, photographer, Public domain.

Hackaday Links Column Banner

Hackaday Links: August 11, 2024

“Please say it wasn’t a regex, please say it wasn’t a regex; aww, crap, it was a regex!” That seems to be the conclusion now that Crowdstrike has released a full root-cause analysis of its now-infamous Windows outage that took down 8 million machines with knock-on effects that reverberated through everything from healthcare to airlines. We’ve got to be honest and say that the twelve-page RCA was a little hard to get through, stuffed as it was with enough obfuscatory jargon to turn off even jargon lovers such as us. The gist, though, is that there was a “lack of a specific test for non-wildcard matching criteria,” which pretty much means someone screwed up a regular expression. Outside observers in the developer community have latched onto something more dire, though, as it appears the change that brought down so many machines was never tested on a single machine. That’s a little — OK, a lot — hard to believe, but it seems to be what Crowdstrike is saying. So go ahead and blame the regex, but it sure seems like there were deeper, darker forces at work here.

Continue reading “Hackaday Links: August 11, 2024”

If You Give A Dev A Tricked Out Xbox, They’ll Patch Halo 2

[Ryan Miceli] had spent a few years poring over and reverse-engineering Halo 2 when a friend asked for a favor. His friend created an improved Xbox with significant overclocks, RAM upgrades, BIOS hacks, and a processor swap. The goal was simple: patch the hardcoded maximum resolution from 480p to 720p and maybe even 1080p. With double the CPU clock speed but only a 15% overclock on the GPU, [Ryan] got to work.

Step one was to increase the size of the DirectX framebuffers. Increasing the output resolution introduced severe graphical glitches and rendering bugs. The game reuses the framebuffers multiple times as memory views, and each view encodes a header at the top with helpful information like width, height, and tiling. After patching that, [Ryan] had something more legible, but some models weren’t loading (particularly the water in the title screen). The answer was the texture accumulation layer. The Xbox has a hardware limitation of only sampling four textures per shader pass, which means you need a buffer the size of the render resolution to accumulate the textures if you want to sample more than four textures. Trying to boot the game resulted in an out-of-memory crash. The Xbox [Ryan] was working on had been upgraded with an additional 64MB of RAM, but the memory allocator in Halo 2 wasn’t taking advantage of it. Yet.

To see where the memory was going, [Ryan] wrote a new tool called XboxImageGrabber to show where memory was allocated and by whom. Most games make a few substantial initial allocations from the native allocator, then toss it over to a custom allocator tuned for their game. However, the extra 64MB of RAM was in dev consoles and meant as debug RAM, which meant the GPU couldn’t properly access it. Additionally, between the lower 64MB and upper is the Xbox kernel. Now, it became an exercise of patching the allocator to work with two blobs of memory instead of one contiguous one. It also moved runtime data into the upper 64MB while keeping video allocations in the lower. Ultimately, [Ryan] found it easier to patch the kernel to allow memory allocations the GPU could use in the upper 64MB of memory. Running the game at 720p resulted in only a semi-playable framerate, dropping to 10fps in a few scenes.

After some initial tests, [Ryan] concluded that it wasn’t the GPU or the CPU that was the bottleneck but the swap chain. Halo 2 turns VSync on by default, meaning it has to wait until a blank period before swapping between its two framebuffers. A simple tweak is to add a third frame buffer. The average FPS jumped 10%, and the GPU became the next bottleneck to tweak. With a light GPU overclock, the game was getting very close to 30fps. Luckily for [Ryan], no BIOS tweak was needed as the GPU clock hardware can be mapped and tweaked as an MMIO. After reverse engineering, a debugging feature to visual cache evictions, [Ryan] tuned the texture and geometry cache to minimize pop-ins that the original game was infamous for.

Overall, it’s an incredible hack with months of hard work behind it. The code for the patch is on Github, and there’s a video after the break comparing the patched and unpatched games. If you still need more Halo in your life, why not make yourself a realistic battle rifle from the game?

Continue reading “If You Give A Dev A Tricked Out Xbox, They’ll Patch Halo 2