A Smarter Solar Water Heater

Installing solar power at a home is a great way to reduce electricity bills, especially as the cost of solar panels and their associated electronics continue to plummet. Not every utility allows selling solar back to the grid, though, so if you’re like [Rogan] who lives in South Africa you’ll need to come up with some clever tricks to use the solar energy each day while it’s available to keep from wasting any. He’s devised this system for his water heater that takes care of some of this excess incoming energy.

A normal water heater, at least one based on electric resistive heaters, attempts to maintain a small range of temperatures within the insulated tank. If the temperature drops due to use or loss to the environment, the heaters turn on to bring the temperature back up. This automation system does essentially the same thing, but allows a much wider range of temperatures depending on the time of day. Essentially, it allows the water heater to get much hotter during times when solar energy is available, and lets it drop to lower values before running the heater on utility electricity during times when it isn’t. Using a combination ESP32 and ATtiny to both control the heater and report its temperature, all that’s left is to program Home Assistant to get the new system to interact with the solar system’s battery charge state and available incoming solar energy.

While it’s an elegantly simple system that also affords ample hot water for morning showers, large efficiency gains like this can be low-hanging fruit to even more home energy savings than solar alone provides on paper. Effectively the water heater becomes another type of battery in [Rogan]’s home, capable of storing energy at least for the day in the form of hot water. There are a few other ways of storing excess renewable energy as well, although they might require more resources than are typically available at home.

What Is X86-64-v3?

You may have heard Linux pundits discussing x86-64-v3. Can recompiling Linux code to use this bring benefits? To answer that question, you probably need to know what x86-64-v3 is, and [Gary Explains]… well… explains it in a recent video.

If you’d rather digest text, RedHat has a recent article about their experiments using the instructions set in RHEL10. From that article, you can see that most of the new instructions support some enhancements for vectors and bit manipulation. It also allows for more flexible instructions that leave their results in an explicit destination register instead of one of the operand registers.

Of course, none of this matters for high-level code unless the compiler supports it. However, gcc version 12 will automatically vectorize code when using the -O2 optimization flags.

Continue reading “What Is X86-64-v3?”

Recreating The Pop Ball

Those who were kids in the 80s may remember a sweet little toy called the Pop Ball. A simple rubber hemisphere, this rubber cup could be turned inside out and thrown on the ground, where it would hit and bounce sky high whilst knocking itself right side out. The black ones worked particularly well, and were the first to be banned from [electrosync]’s school along with yo-yos, slap bracelets, and any number of toys that eventually became weaponized by enterprising children.

An industrial Vegemite injection-molded version that only kind of worked.

You can still find Pop Balls today, but they don’t work nearly as well as they did originally because of a lower Shore hardness in the rubber. Naturally, as an adult with futuristic toys at hand, [electrosync] just had to try re-creating the ’80s version. But it wasn’t easy.

They started by studying the patents and anything else they could find. They even managed to get a hold of Peter Fish, the original creator of the Pop Ball, to get some questions answered about the things. According to Peter, the black Pop Ball was made from recycled rubber and worked almost too well. Peter sent [electrosync] an old-stock Pop Ball, which they used to modify their CAD design.

It’s easy to root for [electrosync] throughout this journey, which consists of many failed prints and injection molding attempts. At last, they are able to at least recreate the snap of the modern Pop Ball once they finally found the right filament — the extremely elastic Recreus Filaflex 60A TPU. Of course, it wasn’t all lollipops and rainbows from there, because the filament is notoriously difficult to print with, but [electrosync] made it work. Check it out after the break.

Continue reading “Recreating The Pop Ball”

Bit-Serial CPU: Ultra-Tiny VHDL-Based CPU With Forth Interpreter

Soft cores for FPGAs come in many different flavors, covering a wide range of applications. The Bit-Serial CPU (bcpu) soft core presented by [Richard James Howe] is interesting for taking up just about the most minimal amount of resources (23 slices, 76 LUTs) while providing the means to run a Forth-based (eForth dialect) interpreter. To this CPU core a UART can be added (92 LUTs), as well as other peripherals.

As [Richard] states, the entire core with UART fits in 73 slices (220 LUTs) on a Spartan 6, while requiring a single port BRAM (block RAM). It features a 16-bit accumulator and lacks features such as interrupts, byte addressability and function calls, but those are not required to run the eForth interpreter. The main purpose of this soft core (other than the challenge) is to have a UART-programmable core that can be slotted in any FPGA design. For more serious requirements [Richard] also has the H2 SoC, which can run full-fat FORTH.

Continue reading “Bit-Serial CPU: Ultra-Tiny VHDL-Based CPU With Forth Interpreter”

Tetris Goes Round And Round

You’ve probably played some version of Tetris, but [the Center for Creative Learning] has a different take on it. Their latest version features a cylindrical playing field. While it wouldn’t be simple to wire up all those LEDs, it is a little easier, thanks to LED strips. You can find the code for the game on GitHub.

In all, there are 5 LED strips for a display and 13 strips for the playing area, although you can adjust this as long as there are at least 10 rows. The exact number of LEDs will depend on the diameter of the PVC pipe you build it on.

Continue reading “Tetris Goes Round And Round”

Tiny Motion Detection Alarm Does The Trick

If you have mischievous children or forgetful elderly in your life, you might want to build a couple of these tiny motion detection alarms to help keep them out of harm’s way. Maybe you want to keep yourself out of the cookie jar. We say good for you.

But you could always put one of these alarms on a window, a drawer, or anything else you don’t want opened or moved. The MPU6050 3-axis IMU makes sure that any way the chosen item gets jostled, that alarm is going off.

As you may have guessed, there isn’t much more to this build — the brain is a Seeed Xiao ESP32-C3, and there’s a buzzer, a battery, a switch, and a push button to program it.

The cool thing about using an ESP32-C3 is that [gokux] can use these for other things, like performing a task when motion is detected. If you do want to build yourself a couple of these, here are step-by-step instructions.

If you’d rather detect motion in the vicinity, here’s a PIR-based solution.

apple airtag being opened to remove the sounder

Apple AirTag: Antitheft Or Antistalking?

Occasionally, the extra features added to a product can negate some of the reasons you wanted to buy the thing in the first place. Take, for example, Apple’s AirTag — billed as an affordable way to link your physical stuff to your phone. If some light-fingered ne’er-do-well wanders by and half-inches your gear, you get notified. The thing is, the AirTag also has an anti-stalking measure, which after a while, notifies nearby iPhones, should the tag move but not be near your iPhone!

In a recent video, [David Manning] explains that this feature is great for preventing the device from being used to track people. But it also means that if said thief happens to own an iPhone, they will be notified of the nearby tag, and can find it and disable it. So in the end, it’s a bit less useful as an anti-theft measure!

The solution is to pop the back off the tag and yank out the little sounder module from the rear plastic. You lose the ability to locate the tag audibly, but you gain a little more chance of returning your stolen goods. Apple could easily remove this feature with a firmware update, but it’s a matter of picking your poison: antistalking or antitheft?

Continue reading “Apple AirTag: Antitheft Or Antistalking?”