Fossil Files: My .Emacs

Last week, I wrote about cargo culting in a much more general context, so this week I’m going to come clean. The file that had me thinking about the topic was the worst case you’ve probably ever seen: I have a .emacs file kicking around that I haven’t really understood since I copied it from someone else – probably Ben Scarlet whose name is enshrined therein – in the computer lab in 1994! Yes, my .emacs file is nearly 30, and I still don’t really understand it, not exactly.

Now in my defence, I switched up to vim as my main editor a few years ago, but this one file has seen duty on Pentiums running pre-1.0 versions of Linux, on IBM RS/6000 machines in the aforementioned computer lab, and on a series of laptops and desktops that I’ve owned over the years. It got me through undergrad, grad school, and a decade of work. It has served me well. And if I fired up emacs right now, it would still be here.

For those of you out there who don’t use emacs, the .emacs file is a configuration file. It says how to interpret different files based on their extensions, defines some special key combos, and perhaps most importantly, defines how code syntax highlighting works. It’s basically all of the idiosyncratic look-and-feel stuff in emacs, and it’s what makes my emacs mine. But I don’t understand it.

Why? Because it’s written in LISP, for GNU’s sake, and because it references all manner of cryptic internal variables that emacs uses under the hood. I’m absolutely not saying that I haven’t tweaked some of the colors around, or monkey-patched something in here or there, but the extent is always limited to whatever I can get away with, without having to really learn LISP.

This ancient fossil of a file is testament to two things. The emacs codebase has been stable enough that it still works after all this time, but also that emacs is so damn complicated and written in an obscure enough language that I have never put the time in to really grok it – the barriers are too high and the payoff for the effort too low. I have no doubt that I could figure it out for real, but I just haven’t.

So I just schlep this file around, from computer to computer, without understanding it and without particularly wanting to. Except now that I write this. Damnit.

Featured image: “A Dusty Old Book” by Marco Verch Professional.

Flipper Zero Hacker Tool Gets UI Editor For Custom Apps

[Mikhail] released a handy GUI editor/generator tool for the Flipper Zero multipurpose hacker tool, making layouts and UI elements much easier and more intuitive to craft up.

Those who decide to delve into rolling their own applications or add-ons will find this a handy resource, especially as it generates the necessary code for the visual elements. It’s not limited to placing icons, either. Boxes, lines, dots, text, and more can be freely laid out to get things looking just right.

To use it, simply drag and drop icons of various sizes into the screen area. Non-icon UI elements like frames, lines, text, and others can be placed with a click using the buttons. To move elements around, click the SELECT button first, then drag things as needed. To fine-tune positioning (or change the text of a string) a selected element’s properties can be accessed and modified to the right of the simulated screen. When things look good, switch to the CODE tab and copy away to use it in your Flipper application.

Unfamiliar with the Flipper Zero? It’s a kind of wireless multitool; a deeply interesting device intended to make wireless exploration and experimentation as accessible as its dolphin mascot is adorable.

Using GitHub Actions To Brew Coffee

It’s getting harder and harder to think of a modern premium-level appliance that doesn’t come with some level of Internet connectivity. These days it seems all but the cheapest refrigerators, air purifiers, and microwaves include wireless capabilities — unfortunately they’re often poorly implemented or behind a proprietary system. [Matt] recently purchased a high-end coffee maker with Bluetooth functionality which turned out to be nearly useless, and set to work reverse-engineering his coffee maker and adapting it to work by sending commands from GitHub.

Since the wireless connectivity and app for this coffee maker was so buggy and unreliable, [Matt] first needed to get deep into the weeds on Bluetooth Low Energy (BTLE). After sniffing traffic and identifying the coffee maker, he set about building an interface for it in Rust. Once he is able to send commands to it, the next step was to integrate it with GitHub, so that filing issues on the GitHub interface sends the commands from a nearby computer over Bluetooth to the coffee maker, with much more reliability than the coffee maker came with originally.

Using [Matt]’s methods, anyone stuck with one of these coffee makers, a Delonghi Dinamica Plus, should be able to reactivate the use of its wireless functionality. While we’d hope that anyone selling a premium product like this would take a tiny amount of time and make sure that the extra features actually work, this low bar seems to be oddly common for companies to surmount. But it’s not required to pick up an expensive machine like this just to remotely brew a cup of coffee. You can do that pretty easily with a non-luxury coffee maker and some basic wireless hardware.

Ultimate Game And Watch Has Support For NES

We’ve talked about feature creep plenty of times around here, and it’s generally regarded as something to be avoided when designing a prototype. It might sound good to have a lot of features in a build, but this often results in more complexity and more difficulty when actually bringing a project to fruition. [Brendan] has had the opposite experience with this custom handheld originally designed for Game and Watch games, though, and he eventually added NES and Game Boy functionality as well.

As this build was originally intended just for Game and Watch games, the screen is about the size of these old games, and while it can easily mimic the monochrome LCD-style video that would have been present on these 80s handhelds, it also has support for color which means that it’s the perfect candidate for emulating other consoles as well. It’s based around a Raspberry Pi Zero 2W and the enclosure is custom printed and painted. Some workarounds for audio had to be figured out, though, since native analog output isn’t supported, but it still has almost every feature for all of these systems.

While we’ve seen plenty of custom portable builds from everything from retro consoles to more modern ones, the Game and Watch catalog is often overlooked. There are a few out there, but in this case we appreciate the feature creep that allowed this build to support Game Boy and NES games as well.

An art deco style computer made of several grey/blue boxes with silver grates on top of a maple platform.

Clean Slate Is A Vintage Amplifier-Inspired PC

Hacks that bring a vintage flair to modern electronics never get old, and [Jeffrey Stephenson] delivers with his Project Clean Slate inspired by vintage tube amps.

Thinking outside the traditional single box PC, [Jeffrey] built his computer into a series of component-specific boxes all attached to a platform housing the Micro ATX motherboard. The base is made of plywood with a birds-eye maple veneer and each of the component boxes features two different sizes of wire mesh to manipulate the viewer’s perception of the dimensions. Even the I/O and graphics card plates are custom made from aluminum for this build.

If you really want to dig into how this PC came to life, there’s a very detailed build log including every step of the process from bare board to finished product. We love when we get an inside look at the thought process behind each design decision in a build.

We’ve featured [Jeffrey] before with his Humidor Cluster, and you may also like this PC inside a vintage radio.

Continue reading “Clean Slate Is A Vintage Amplifier-Inspired PC”

Properly Pipe Laser Light Around With Homebrew Fiber Couplings

It’s a rare person who can pick up a cheap laser pointer and not wield it like a lightsaber or a phaser, complete with sound effects. There’s just something about the “pew-pew” factor that makes projecting a laser beam fun, even if it’s not the safest thing to do, or the most efficient way to the light from one place to another.

We suspect that [Les Wright] has pew-pewed his way through more than a few laser projects in his lab, including his latest experiments with fiber coupling of lasers. The video below is chock full of tips on connecting cheap communications-grade fiber assemblies, which despite their standardized terminations aren’t always easy to use with his collection of lasers. Part of the challenge is that the optical fiber inside the cladding is often very small — as few as 9 microns. That’s a small target to hit without some alignment help, which [Les] uses a range of hacks to accomplish.

The meat of the video demonstrates how to use a cheap fiber fault locator and a simple optical bench setup to precisely align any laser with an optical fiber. A pair of adjustable mirrors allow him to overlap the beams of the fault locator and the target laser precisely. The effects can be interesting; we had no idea comms-grade fiber could leak as much light through the cladding as this, and the bend-radius limits are pretty dramatically illustrated. [Les] teases some practical sensing applications for this in a follow-up video, which we’re looking forward to.

Looking for more laser fun with your remaining eye? Check out [Marco Reps] teardown of a 200-kW fiber laser.

Continue reading “Properly Pipe Laser Light Around With Homebrew Fiber Couplings”

Printed Propeller Blades Repair Indoor Flyer

Fair warning for readers with a weak stomach, the video below graphically depicts an innocent rubber band airplane being obliterated in mid-air by a smug high-tech RC helicopter. It’s a shocking display of airborne class warfare, but the story does have a happy ending, as [Concrete Dog] was able to repair his old school flyer with some very modern technology: a set of 3D printed propeller blades.

Now under normal circumstances, 3D printed propellers are a dicey prospect. To avoid being torn apart by the incredible rotational forces they will be subjected to, they generally need to be bulked up to the point that they become too heavy, and performance suffers. The stepped outer surface of the printed blade doesn’t help, either.

But in a lightweight aircraft powered by a rubber band, obviously things are a bit more relaxed. The thin blades [Concrete Dog] produced on his Prusa Mini appear to be just a layer or two thick, and were printed flat on the bed. He then attached them to the side of a jar using Kapton tape, and put them in the oven to anneal for about 10 minutes. This not only strengthened the printed blades, but put a permanent curve into them.

The results demonstrated at the end of the video are quite impressive. [Concrete Dog] says the new blades actually outperform the originals aluminum blades, so he’s has to trim the plane out again for the increased thrust. Hopefully the extra performance will help his spindly bird avoid future aerial altercations.

On the electrically powered side of things, folks have been trying to 3D print airplane and quadcopter propellers for almost as long as desktop 3D printers have been on the market. With modern materials and high-resolution printers the idea is more practical than ever, though it’s noted they don’t suffer crashes very well.

Continue reading “Printed Propeller Blades Repair Indoor Flyer”