In Praise Of “Just Because” Hacks

Sometimes you pick a project because the world needs it to be done. Or maybe you or a friend need it. Or maybe you don’t really need it, but it fulfills a longstanding dream. In my mind, the last stop before you reach “why am I doing this” is the “just because” hack.

The ideal “just because” hack is limited in scope. You don’t want to spend years on a whimsical project, and because of this a “just because” hack isn’t usually motivating enough to keep you going that long anyway, except for the tenacious few. A “just because” doesn’t necessarily have to be an easy win, but it makes sense for you to see your way out before you get in too deep.

I’m not sure if it’s the Baader-Meinhof phenomenon or not, but in the last week or so in the Hackaday universe, a lot of people have been singing the praises of “just because” hacks. (Check out this one discussion, for instance.) Mostly, it’s a combination of them turning out better than initially thought, or it’s about the learning that came along for the ride. Of course, many of them spin off into longer, serious projects even if they didn’t start that way.

Not everything in life can be frivolous, of course. But that makes the “just because” hack that much sweeter, and you should try to make mental room for them if you can. When the stakes are low, creativity can be high. You might still want to impose a deadline, lest you fall into eternal yak shaving, but take it easy. You don’t need a justification all the time: the journey can be the destination.

a Pi Pico on a breadboard, running a 7-segment counter gateware, with a 7-segment digit and a pushbutton next to the Pico

Want To Play With FPGAs? Use Your Pico!

Ever want to play with an FPGA, but don’t have the hardware? Now, if you have one of those ever-abundant Pi Picos, you can start playing with Verilog without getting an FPGA board. The FakePGA project by [tvlad1234], based on the Verilator toolkit, provides you with a way to compile Verilog into C++ for the RP2040. FakePGA even integrates RP2040 GPIOs so that they work as digital pins for the simulated GPIOs, making it a significant step up from computer-aided FPGA code simulation

[tvlad1234] provides instructions for setting this up with Linux – Windows, though untested, could theoretically run this through WSL. Maximum clock speed is 5KHz – not much, but way better than not having any hardware to test with. Everything you’d want is in the GitHub repo – setup instructions, Verilog code requirements, and a few configuration caveats to keep in mind.

We cover a lot of projects where FPGAs are used to emulate hardware of various kinds, from ISA cards to an entire Game BoyCPU emulation on FPGAs is basically the norm — it’s just something easy to do with the kind of power that an FPGA provides. Having emulation in the opposite direction is unusual,  though, we’ve seen FPGAs being emulated with FPGAs, so perhaps it was inevitable after all. Of course, if you have neither a Pico nor an FPGA, there’s always browser based emulators.

Continue reading “Want To Play With FPGAs? Use Your Pico!”

If You Can’t See A Solar Panel, That Doesn’t Mean It’s Not There

In the shift away from fossil fuel energy sources, there has been a huge expansion in solar power. We’ve seen solar thermal plants in the desert and photovoltaic panel farms covering huge areas of land, but perhaps the most potential comes from placing the panels on rooftops. In some parts of the world this is encouraged through a system of subsidies, as is the case in Italy. But what if your building is part of a protected world heritage site such as the Roman city of Pompeii? The answer comes in the form of traditional roof tiles that hide their photovoltaic elements under a polymer skin that looks for all the world like a traditional Roman pan tile. As is so often the case with such products, the manufacturer’s description page is cagey about the details in the name of protecting their invention. What they do tell us is that the tile uses conventional solar cells mounted underneath the polymer layer, which is described as “opaque at the sight but translucent to sun rays“. This sounds like an inherent contradiction, so naturally, we’re intrigued as to how it works. Continue reading “If You Can’t See A Solar Panel, That Doesn’t Mean It’s Not There”

Screenshot of the framework-built app, showing it running through Firefox

Turn A Webpage Into A Desktop App With Gluon

Electron is software for running web-written apps in the same way as native ones, and has gotten plenty of bad press for its RAM appetite around these parts. But while the execution might leave something to be desired, the concept itself is quite solid —  if you’ve already got code written for the web, a quick and easy way to bring it over to the desktop would be very valuable.

Which is why [CanadaHonk] is building a framework called Gluon, which aims to turn your web pages into desktop apps with little to no effort. We’ve seen their work a few months ago with the OpenASAR project, hacking the Discord desktop app to speed it up. Drawing from that experience, Gluon is built to be lean – with apps having low RAM and storage footprints, lightning-speed build times, and a no-nonsense API.

One of the coolest parts is that it’s able to use your system-installed browser, and not a bundled-in one like Electron. Firefox support is firmly on the roadmap, too, currently in experimental stage. Linux support is being worked on as well — the framework is Windows-born, but that’s to change. There’s also room to innovate; [CanadaHonk] recently added a hibernation feature with aggressive RAM and CPU footprint reduction when the app is minimized, something that other frameworks like this aren’t known for.

If you want to write user-facing software, JavaScript’s a decent language, and quite a few of you are going to be familiar with it. You aren’t limited to the software side of the tech world, either — tools like WebUSB and WebSerial will let you write a user interface for a board that you’ve just developed. For instance, here’s a WebSerial-based oscilloscope, a nifty serial terminal, or a hacker conference badge programming toolkit. For all that browsers have gotten wrong, they certainly don’t seem to become less abundant, and if that means you can quickly develop cross-platform hardware-facing apps, it’s certainly a useful addition to one’s toolkit.

Audio Old And New Meet In Perfect Harmony

There’s an uneasy meeting in the world of audio between digital and analogue. Traditional analogue audio reached a level of very high quality, but as old-style media-based audio sources have fallen out of favor there’s a need to replace them with ones that reflect a new digital audio world. To do this there are several options involving all-in-one Hi-Fi separates at a hefty price, a cheaper range of dongles and boxes for each digital input, or to do what [Keri Szafir] has done and build that all-in-one box for yourself.

The result is a 1U 19″ rack unit that contains an Orange Pi for connectivity and streaming, a hard drive to give it audio NAS capability, plus power switching circuitry to bring all the older equipment under automation. Good quality audio is dealt with by using a Behringer USB audio card, on which in a demonstration of how even some digital audio is now becoming outdated, she ignores the TOSlink connector.

The rear panel has all the connectors for power, USB, network, and audio laid out, while the front has an array of status lights and switches. We particularly like the hand-written lettering, which complements this as a homebrew unit. It certainly makes the Bluetooth dongle dangling at the back of our amplifier seem strangely inadequate.

If audio is your thing, we had a look at some fundamentals of digital audio as part of our Know Audio series.

Test Your Capacity For Circuit Sculpture With Flashing Lights

Have you tried your hand at circuit sculpture yet? Well, if you were waiting for the ideal first project with a great build video to go along with it, keep reading. [4dcircuitry]’s 555-based flashing circuit sculpture ticks all the go-for-it boxen for us — the component list is short, the final circuit looks cool, and well, there are blinkenlights.

Of course, it’s not quite a zero-entry project. Although [4dcircuitry] makes it look oh-so easy build it in the video below, they are using 1206 components and an SOIC-packaged 555 timer here. On the other hand, they start by smartly laying everything out on double-stick tape before applying flux and soldering. Then when it’s time to run the wires that no one wants to see, [4dcircuitry] carefully tweezers it from the tape and flips it over, re-using the tape do solder up the back side.

Don’t have the patience to solder 1206? All component sizes are beautiful, as evidenced by this amazing circuit sculpture clock.

Continue reading “Test Your Capacity For Circuit Sculpture With Flashing Lights”

A laptop with a desk phone and a 3D-printed acoustic coupler next to it

Acoustic Coupler Gets You Online Through Any Desk Phone

Up until the mid-1980s, connecting a computer to a phone line was tricky: many phone companies didn’t allow the connection of unlicensed equipment to their network, and even if they did, you might still find yourself blocked by a lack of standardized connectors. A simple workaround for all this was an acoustic coupler, a device that played your modem’s sounds directly into a phone’s receiver without any electrical connection. Modem speeds were slow anyway, so the limited bandwidth inherent in such a system was not much of a problem.

Nowadays it’s easier to find an internet connection than a phone line in many places, but if you’re stuck in an ancient hotel in the middle of nowhere you might just find [GusGorman]’s modern take on the acoustic coupler useful. The basic design is quite simple: it’s a 3D-printed box with two cups that fit a typical phone handset and a space to put a USB speaker and microphone. Thanks to minimodem it’s easy to set up a connection with any other computer equipped with a phone connection.

Continue reading “Acoustic Coupler Gets You Online Through Any Desk Phone”