Secret Ingredients

We were talking on the podcast about rope. But not just any rope – especially non-stretchy rope for using in a mechanical context. The hack in question was a bicycle wheel that swapped out normal metal spokes for lighter and stronger high-density polypropylene weave, and if you can tension up a bike wheel and ride it around, you know it’s not your garden-variety twine.

Now, it just so happens that I’ve got basically the same stuff in my parts drawer: some 1 mm diamaeter Dyneema-brand rope. This is an amazing material. It’s rated to a breaking strength of 195 kg (430 lbs) yet it weighs just under one gram per meter, and if you buy the pre-stretched variant, it’s guaranteed to stretch less than 1% of its length under load. It’s flexible, wears well, and is basically in every way superior to braided steel wire.

It’s nearly magical, and it’s just what you need if you’re making a cable robot or anything where the extreme strength and non-elongation characteristic are important. It’s one of those things that there’s just no substitute for when you need it, and that’s why I have some in my secret-ingredients drawer. What else is in there? Some high-temperature tape, low-temperature solder, and ultra-light-weight M3 PEEK screws for airplane building.

But our conversation got me thinking about the parts, materials, and products that are unique: for which there is just no reasonable substitute. I’m sure the list gets longer the more interesting projects or disciplines that you’re into. What are your secret ingredients, and what’s the specific niche that they fit into?

Crazy Old Machines

Al and I were talking about the IBM 9020 FAA Air Traffic Control computer system on the podcast. It’s a strange machine, made up of a bunch of IBM System 360 mainframes connected together to a common memory unit, with all sorts of custom peripherals to support keeping track of airplanes in the sky. Absolutely go read the in-depth article on that machine if it sparks your curiosity.

It got me thinking about how strange computers were in the early days, and how boringly similar they’ve all become. Just looking at the word sizes of old machines is a great example. Over the last, say, 40 years, things that do computing have had 4, 8, 16, 32, or even 64-bit words. You noticed the powers-of-two trend going on here, right? Basically starting with the lowly Intel 4004, it’s been round numbers ever since.

Harvard Mark I, by [Topory]
On the other side of the timeline, though, you get strange beasts. The classic PDP-8 had 12-bit words, while its predecessors the PDP-6 and PDP-1 had 36 bits and 18 bits respectively. (Factors of six?) There’s a string of military guidance computers that had 27-bit words, while the Apollo Guidance computer ran 15-bit words. UNIVAC III had 25-bit words, putting the 23-bit Harvard Mark I to shame.

I wasn’t there, but it gives you the feeling that each computer is a unique, almost hand-crafted machine. Some must have made their odd architectural choices to suit particular functions, others because some designer had a clever idea. I’m not a computer historian, but I’m sure that the word lengths must tell a number of interesting stories.

On the whole, though, it gives the impression of a time when each computer was it’s own unique machine, before the convergence of everything to roughly the same architectural ideas. A much more hackery time, for lack of a better word. We still see echoes of this in the people who make their own “retro” computers these days, either virtually, on a breadboard, or emulated in the fabric of an FPGA. It’s not just nostalgia, though, but a return to a time when there was more creative freedom: a time before 64 bits took over.

Get Bored!

My son went over to a friends house this afternoon, when my wife had been planning on helping him with his French homework. This meant she had an hour or so of unexpected free time. Momentarily at a loss, she asked me what she should do, and my reply was “slack off”, meaning do something fun and creative instead of doing housework or whatever. Take a break! She jokingly replied that slacking off wasn’t on her to-do list, so she wouldn’t even know how to start.

But as with every joke, there’s more than a kernel of truth to it. We often get so busy with stuff that we’ve got to do, that we don’t leave enough time to slack, to get bored, or to simply do nothing. And that’s a pity, because do-nothing time is often among the most creative times. It’s when your mind wanders aimlessly that you find inspiration for that upgrade to the z-stage on your laser cutter, or whatever the current back-burner project of the moment is.

You don’t get bored when you’re watching TV, playing video games, or scrolling around the interwebs on your phone, and it’s all too easy to fall into these traps. To get well and truly bored requires discipline these days, so maybe putting “slack” into your to-do list isn’t a bad idea after all. My wife was right! And that’s why I volunteered to take my son to parkour on Sundays – it’s and hour of guaranteed, 100% uninterruptible boredom. How do you make sure you get your weekly dose of slack?

For The Fun Of It

I was off at the Chaos Communication Congress last weekend, and one of the big attractions for one who is nerdily inclined is seeing all of the personal projects that everyone brings along with them. Inevitably, someone would ask me what my favorite is. Maybe it’s my decision paralysis, maybe it’s being forced to pick a favorite child on the spot, or maybe it’s just that I’m not walking around ranking them, but that question always left me drawing a blank.

But after a week of thinking about it, I’m pretty sure I know why: I don’t actually care what I think of other peoples’ projects! I’m simply stoked to talk to everyone who brought anything, and bathe in the success and failure, hearing about the challenges that they saw coming, and then the new challenges they met along the way. I want to know what the hacker thinks of their project, what their intention was, and how their story went. I’m just a spectator, so I collected stories.

The overwhelming, entirely non-surprising result of listening to a couple hundred hackers talk about their projects? They’re all doing it for the fun of it. Simply for the grins. And that held equally well for the supremely planned-out and technical projects as well as their simpler I-bought-these-surplus-on-eBay-one-night relatives. “We were sitting around and thought, wouldn’t it be fun…” was the start of nearly every story.

That’s what I absolutely love about our community: that people are hacking because it makes them happy, and that the amazing variety of projects suggests an endless possibility for hacker happiness. It’s hard to come away from an event like that without being energized. Some of that comes from the sharing of ideas and brainstorming and hanging out with like-minded folks, but what I find most important is simply the celebration of the joy of the project for its own sake.

Happy hacking!

Hackaday Podcast Ep 351: Hackaday Goes To Chaos Communication Congress

Elliot was of at Europe’s largest hacker convention: Chaos Communication Congress. He had an awesome time, saw more projects than you might think humanely possible, and got the flu. But he pulled through and put this audio tourbook for you.

So if you’ve never been to CCC, give it a listen!

In the far future, all the cool kids will be downloading MP3s of their favorite podcasts.

Continue reading “Hackaday Podcast Ep 351: Hackaday Goes To Chaos Communication Congress”

39C3: Liberating ESP32 Bluetooth

Bluetooth is everywhere, but it’s hard to inspect. Most of the magic is done inside a Bluetooth controller chip, accessed only through a controller-specific Host-Controller Interface (HCI) protocol, and almost everything your code does with Bluetooth passes through a binary library that speaks the right HCI dialect. Reverse engineering these libraries can get us a lot more control of and information about what’s going on over the radio link.

That’s [Anton]’s motivation and goal in this reversing and documentation project, which he describes for us in this great talk at this year’s Chaos Communication Congress. In the end, [Anton] gets enough transparency about the internal workings of the Bluetooth binaries to transmit and receive data. He stops short of writing his own BT stack, but suggests that it would be possible, but maybe more work than one person should undertake.

So what does this get us? Low-level control of the BT controller in a popular platform like the ESP32 that can do both classic and low-energy Bluetooth should help a lot with security research into Bluetooth in general. He figured out how to send arbitrary packets, for instance, which should allow someone to write a BT fuzzing tool. Unfortunately, there is a sequence ID that prevents his work from turning the controller into a fully promiscuous BT monitor, but still there’s a lot of new ground exposed here.

If any of this sounds interesting to you, you’ll find his write-up, register descriptions, and more in the GitHub repository. This isn’t a plug-and-play Bluetooth tool yet, but this is the kind of groundwork on a popular chip that we expect will enable future hacking, and we salute [Anton] for shining some light into one of the most ubiquitous and yet intransparent corners of everyday tech.

39C3: Recreating Sandstorm

Some synthesizer sounds are just catchy, but some of them are genre-defining. We think you could make that case for the Roland JP-8000 patch “Sandstorm”, which you’ve heard if you listened to any trance from the 90’s, but especially the song that was named after it.

“Sandstorm” is powered by the Roland Supersaw, and synth nerds have argued for a decade about how it’s made. The JP-8000 is a digital synthesizer, though, so it’s just code, run through custom DSP chips. If you could reverse engineer these chips, make a virtual machine, and send them the right program, you could get the sound 100% right. Think MAME but for synthesizers.

That brings us to [giulioz]’s talk at the 39th Chaos Communication Congress, where he dives deep into the custom DSP chip at the heart of the JP-8000. He and his crew had approached older digital synths by decapping and mapping out the logic, as you often do in video game emulation. Here, getting the connections right turned out to be simply too daunting, so he found a simpler device that had a test mode that, combined with knowledge of the chip architecture, helped him to figure out the undocumented DSP chip’s instruction set.

After essentially recreating the datasheet from first principles for a custom chip, [guiloz] and team could finally answer the burning question: “how does the Supersaw work”?  The horrifying answer, after all this effort, is that it’s exactly what you’d expect — seven sawtooth waves, slightly detuned, and layered over each other. Just what it sounds like.

The real end result is an emulation that’s every bit (tee-hee!) as good as the original, because it’s been checked out on a logic analyzer. But the real fun is the voyage. Go give the talk a watch.