Limitations, Creativity, And Challenges

This week, we announced the winners for the previous Pet Hacks contest and rang in our new contest: The One Hertz Challenge. So that’s got me in a contesty mood, and I thought I’d share a little bit of soap-box philosophizing and inside baseball all at once.

The trick to creating a good contest theme, at least for the creative Hackaday crowd, is putting on the right limitation. Maybe you have to fit the circuit within a square-inch, power it only with a coin cell, or use the antiquated and nearly useless 555 timer IC. (Yes, that was a joke!)

There are two basic reactions when you try to constrain a hacker. Some instantly try to break out of the constraint, and their minds starts to fly in all of the directions that lead out of the box, and oftentimes, something cool comes out of it. The other type accepts the constraint and dives in deep to work within it, meditating deeply on all the possibilities that lie within the 555.

Of course, we try to accommodate both modes, and the jury is still out as to which ends up better in the end. For the Coin Cell challenge, for instance, we had a coin-cell-powered spot welder and car jumpstarter, but we also had some cool circuits that would run nearly forever on a single battery; working against and with the constraints.

Which type of hacker are you? (And while we’re still in the mood, what contest themes would you like to see for 2026?)

Announcing The 2025 Hackaday One Hertz Challenge

It’s about time! Or maybe it’s about time’s reciprocal: frequency. Whichever way you see it, Hackaday is pleased to announce, just this very second, the 2025 One Hertz Challenge over on Hackaday.io. If you’ve got a device that does something once per second, we’ve got the contest for you. And don’t delay, because the top three winners will each receive a $150 gift certificate from this contest’s sponsor: DigiKey.

What will you do once per second? And how will you do it? Therein lies the contest! We brainstormed up a few honorable mention categories to get your creative juices flowing.

  • Timelords: How precisely can you get that heartbeat? This category is for those who prefer to see a lot of zeroes after the decimal point.
  • Ridiculous: This category is for the least likely thing to do once per second. Accuracy is great, but absurdity is king here. Have Rube Goldberg dreams? Now you get to live them out.
  • Clockwork: It’s hard to mention time without thinking of timepieces. This category is for the clockmakers among you. If your clock ticks at a rate of one hertz, and you’re willing to show us the mechanism, you’re in.
  • Could Have Used a 555: We knew you were going to say it anyway, so we made it an honorable mention category. If your One Hertz project gets its timing from the venerable triple-five, it belongs here.

We love contests with silly constraints, because you all tend to rise to the challenge. At the same time, the door is wide open to your creativity. To enter, all you have to do is document your project over on Hackaday.io and pull down the “Contests” tab to One Hertz to enter. New projects are awesome, but if you’ve got an oldie-but-goodie, you can enter it as well. (Heck, maybe use this contest as your inspiration to spruce it up a bit?)

Time waits for no one, and you have until August 19th at 9:00 AM Pacific time to get your entry in. We can’t wait to see what you come up with.

Announcing The 2025 Pet Hacks Winners

When you really love your pawed, feathered, or scaled friends, you build projects for them. (Well, anyway, that’s what’s happened to us.) For the 2025 Pet Hacks Challenge, we asked you to share your favorite pet-related hacks, and you all delivered. So without further ado, here are our favorites, as well as the picks-of-the-litter that qualified for three $150 DigiKey gift certificates. Spoiler alert: it was a clean sweep for team cat.

Continue reading “Announcing The 2025 Pet Hacks Winners”

Measurement Is Science

I was watching Ben Krasnow making iron nitride permanent magnets and was struck by the fact that about half of the video was about making a magnetometer – a device for measuring and characterizing the magnet that he’d just made. This is really the difference between doing science and just messing around: if you want to test or improve on a procedure, you have to be able to measure how well it works.

When he puts his home-made magnet into the device, Ben finds out that he’s made a basically mediocre magnet, compared with samples out of his amply stocked magnet drawer. But that’s a great first data point, and more importantly, the magnetometer build gives him a way of gauging future improvements.

Of course there’s a time and a place for “good enough is good enough”, and you can easily spend more time building the measurement apparatus for a particular project than simply running the experiment, but that’s not science. Have you ever gone down the measurement rabbit hole, spending more time validating or characterizing the effect than you do on producing it in the first place?

Pulling Back The Veil, Practically

In a marvelous college lecture in front of a class of engineering students, V. Hunter Adams professed his love for embedded engineering, but he might as well have been singing the songs of our people – the hackers. If you occasionally feel the need to explain to people why you do what you do, at fancy cocktail parties or something, this talk is great food for thought. It’s about as good a “Why We Hack” as I’ve ever seen.

Among the zingers, “projects are filter removers” stuck out. When you go through life, there are a lot of things that you kinda understand. Or maybe you’ve not even gotten around to thinking about whether you understand them or not, and just take them for granted. Life would all simply be too complicated if you took it all sufficiently seriously. Birdsong, Bluetooth, the sun in the sky, the friction of your car’s tire on various surfaces. These are all incredibly deep subjects, when you start to peel back the layers.

And Hunter’s point is that if you are working on a project that involves USB, your success or failure depends on understanding USB. There’s no room for filters here – the illusion that it “just works” often comes crashing down until you learn enough to make it work. Some of his students are doing projects cooperatively with the ornithology department, classifying and creating birdsong. Did you know that birds do this elaborate frequency modulation thing when they sing? Once you hear it, you know, and you hear it ever more.

So we agree with Hunter. Dive into a project because you want to get the project done, sure, but pick the project because it’s a corner of the world that you’d like to shine light into, to remove the filters of “I think I basically understand that”. When you get it working, you’ll know that you really do. Hacking your way to enlightenment? We’ve heard crazier things.

Today In Edinburgh: The Open Hardware Summit

Just a quickie for anyone who is in the neighborhood, today the Open Source Hardware Association’s annual Open Hardware Summit conference starts in Edinburgh, Scotland. If you’re able to make it, it’s a microcosm of the open-source hardware world, and full of great talks and great hackers.

If you’re not in Scotland, they have a livestream on YouTube that you should check out, as well as a Discord server for discussions during the event.  It’s going on right now!

 

The Need For Speed?

We wrote up a video about speeding up Arduino code, specifically by avoiding DigitalWrite. Now, the fact that DigitalWrite is slow as dirt is long known. Indeed, a quick search pulls up a Hackaday article from 2010 demonstrating that it’s fifty times slower than toggling the pin directly using the native pin registers, but this is still one of those facts that gets periodically rediscovered from generation to generation. How can this be new again?

First off, sometimes you just don’t need the speed. When you’re just blinking LEDs on a human timescale, the general-purpose Arduino functions are good enough. I’ve written loads of useful firmware that fits this description. When the timing requirements aren’t tight, slow as dirt can be fast enough.

But eventually you’ll want to build a project where the old slow-speed pin toggling just won’t cut it. Maybe it’s a large LED matrix, or maybe it’s a motor-control application where the loop time really matters. Or maybe it’s driving something like audio or video that just needs more bits per second. One way out is clever coding, maybe falling back to assembly language primitives, but I would claim that the right way is almost always to use the hardware peripherals that the chipmakers gave you.

For instance, in the end of the video linked above, the hacker wants to drive a large shift register string that’s lighting up an LED matrix. That’s exactly what SPI is for, and coming to this realization makes the project work with timing to spare, and in just a few lines of code. That is the way.

Which brings me to the double-edged sword that the Arduino’s abstraction creates. By abstracting away the chips’ hardware peripherals, it makes code more portable and certainly more accessible to beginners, who don’t want to learn about SPI and I2C and I2S and DMA just yet. But by hiding the inner workings of the chips in “user friendly” libraries, it blinds new users to the useful applications of these same hardware peripherals that clever chip-design engineers have poured their sweat and brains into making do just exactly what we need.

This isn’t really meant to be a rant against Arduino, though. Everyone has to start somewhere, and the abstractions are great for getting your feet wet. And because everything’s open source anyway, nothing stops you from digging deeper into the datasheet. You just have to know that you need to. And that’s why we write up videos like this every five years or so, to show the next crop of new hackers that there’s a lot to gain underneath the abstractions.