Hackaday Prize 2022: Vintagephone Links The Past To The Present (and Future)

Brrrrrrrring! Movies and TV are one thing, but the siren song of a rotary phone ringing in the same room as you is one of those sounds you carry forever. Not old enough to remember them? Ah, so what? There’s no reason to lose these beauties to the annals of time. In fact, we think more old phones should be repurposed so that present and future generations can experience the finger-hookin’ good time of the rotary dial and the high-voltage peal of those brass bells.

That’s exactly what [Giulio Pons] has done with Vintagephone — turned a rotary phone into a digital assistant with an analog interface. He’s reused all the good bits like the rotary dial, the bells, the handset, and the hang-up switch and connected them up to a Wemos ESP8266 development board with a mini motor driver shield and a voltage booster to ring the bells.

When it’s all said and done, [Giulio] will be able to set an alarm by dialing in the time, ring a number to get the current time and date, and ring another number to get the weather forecast. Reminds us of our childhood pastime of calling Time and Temperature to get outside verification that time had, in fact, passed inside the house on those boring rainy days.

Follow along with [Giulio] as the Vintagephone comes to life in the logs, which already have some great instructions for doing a similar number to an old phone you may have lying around. You can find the code on GitHub.

Got some old tech lying around? Teach it some new tricks and enter the Reuse, Recycle, Revamp round of the 2022 Hackaday Prize!

Robot arm in Blender

Animate Your Robot In Blender

You’ve built a robot crammed full of servos and now you settle down for the fun part, programming your new dancing animatronic bear! The pain in your life is just beginning. Imagine that you decide the dancing bear should raise it’s arm. If you simply set a servo position, the motor will slew into place as fast as it can. What you need is an animation, and preferably with smooth acceleration.

You could work through all the math yourself. After half an hour of fiddling with the numbers, the bear is gracefully raising it’s arm like a one armed zombie. And then you realize that the bear has 34 more servos.

render of industrial robot type arm with pedestal, base, upperarm and lowerarm and IK ball

Fortunately for everybody who’s done the above, there’s Blender. It’s all about creating smooth motion for animations and computer graphics. Making robot motion with Blender is, if not easy, at least tolerable. We made a sample project, a 3-axis robot arm to illustrate. It has a non-moving pedestal, rotating base, upper arm, and lower arm. We’ll be animating it first in Blender and then translating the file over to something we can use to drive the servos with a little script.

Now, Blender is notorious for a difficult user interface. The good news is that, with revision 2.9, it moved to a much more normal interface. It still definitely is a large program, with 23 different editors and literally thousands of controls, but we’ll only be using a small subset to make our robot move. We won’t teach you Blender here, because there are thousands of great Blender tutorials online.  You want to focus on animation, and the Humane Rigging series is particularly recommended.

Continue reading “Animate Your Robot In Blender”

3D Printing A Carburetor Is Easier Than You Probably Think

We’ve all been there. You see a cool gadget on the Internet to 3D print and you can’t wait to fire up the old printer. Then you realize it will take 8 different prints over a span of 60 hours, chemical post-processing, drilling, exotic hardware, and paint to get the final result. [Peter Holderith’s] carburetor design, however, looks super easy.

If you have experience with real-world carbs, you might wonder how that would work, but as [Peter] points out, carburetors are very simple at the core — nothing more than a venturi. All the extra pieces you think of are for special cases and not necessary for basic operation. We doubt, though, that you could really use the thing in its current form in your car. There are no mounts and since he printed it in PLA, it seems like a hot engine would be a bad idea. However, it does work well with water and an electric blower.

[Peter] mentions that with some more work and the right material, he has no doubt he could create a working practical carb. We think he’s right. But even in this form, it is a great educational project for a budding car enthusiast — like the old transparent V8 engine models, maybe.

Speaking of transparent, we’ve seen — or maybe not seen is a better phrase — a see-through carburetor that is also a good demonstrator. If you could perfect a 3D printed carb, it would make conversion projects a lot easier.

Bare-Metal STM32: Using The I2C Bus In Master-Transceiver Mode

As one of the most popular buses today for on- and inter-board communication within systems, there’s a good chance you’ll end up using it with an embedded system. I2C offers a variety of speeds while requiring only two wires (clock and data), which makes it significantly easier to handle than alternatives, such as SPI. Within the STM32 family of MCUs, you will find at least one I2C peripheral on each device.

As a shared, half-duplex medium, I2C uses a rather straightforward call-and-response design, where one device controls the clock, and other devices simply wait and listen until their fixed address is sent on the I2C bus. While configuring an STM32 I2C peripheral entails a few steps, it is quite painless to use afterwards, as we will see in this article. Continue reading “Bare-Metal STM32: Using The I2C Bus In Master-Transceiver Mode”

Modifying Old Fonts In The Name Of Baseball

Baseball is in full swing again, and having recently accepted a position with Major League Baseball, [Ty Porter] is warming up with a big contribution to the MLB LED Scoreboard project — modifying 20-some old fonts to support baseball’s ‘ꓘ’ character that indicates a special strikeout with a called third strike (meaning the batter didn’t take a swing).

The problem is that Major League Baseball-the-entity recently deprecated the original data source for the scoreboard project. This called for a huge refactor of the codebase, including previously-patched fonts which were now showing either the font’s default no-character character, or nothing at all.

Fortunately, BDF font files are fairly human-readable and make reference to bitmap, which is an actual bitmap in hex. [Ty] settled on Unicode A4D8 (ꓘ), a character from the Tibeto-Burman language Lisu that certainly looks good enough to this baseball fan. Then it became a matter of mirroring the bitmap for ‘K’. [Ty] tried a few things like reversing the nibbles and looking up each one in a table, but that also mirrors the padding, which is bad news.

Then he tried not reversing the nibbles and just looked them up in a table, but this approach dropped and added bits unintentionally. Finally, he tried reversing the order, looking up the reversed nibble, and shifting each byte until there was no padding. This worked for most of the 20 fonts [Ty] patched. The others fell in line with some manual work.

Not much of a baseball fan? You’re almost guaranteed to like this one, especially if you hate mayo.

Summer’s Coming – Let Mowerino Cut Your Grass

In the Northern hemisphere, summer is about to hit us full bore. While we love the season, we do dislike lawn maintenance. Apparently, so does [salmec] who developed the Mowerino around an Arduino Mega 2560 board.

As you might expect, the robot uses sharp blades so, you probably want to be careful. There are sensors that allow the machine to self-navigate or you can control it via Bluetooth. This is one of those things that seems easy until you try to actually do it. Nylon trimmer string is probably safer, but it breaks and it is hard to keep it cutting. Blades are more robust but also riskier to things like rocks, fingers, and pets.

Moving around in the yard is also an issue. The Mowerino has some ordinary-looking caster wheels in the front. That might be a place for improvement since most yards are not friendly to that kind of wheel. The other thing we worried about is what happens to the grass clippings. Around here, a week of rain means your mower will choke on grass clippings. On the other hand, the Mowerino has a smaller blade so maybe that helps mitigate clipping clogging.

Overall, though, it looks like it might be a good place to start if you dream of robot groundskeepers patrolling your estate. Most of the mowers we see like this have big wheels. But, of course, not all of them.

Continue reading “Summer’s Coming – Let Mowerino Cut Your Grass”

A Simple Binary Coded Decimal Watch

Analog and LCD watches are both useful designs, but ultimately are mainstream timepieces. Using a binary watch is an easy way to set one’s self apart as a tech enthusiast, while impressing your hacker friends to boot.

One such build comes to us from [vishalsoniindia], and it uses a single bare PCB which is designed to mate directly to a traditional watch strap. The single tactile button on board is used to activate the watch, showing the current time in hours and minutes in binary-coded decimal on the watch’s LEDs. Long-pressing the button puts the watch in setting mode to correct the time as needed.

The watch relies on an ATtiny85 microcontroller, a lightweight and compact design which is more than powerful enough to run a simple watch. It’s paired with a 74HC595 shift register to run all the LEDs from a minimum number of pins, and there’s also a TP4056 charging circuit on board to keep the lithium-polymer battery topped off.

A project like this is a great way to learn all manner of basic electronics skills, from PCB design, to SMD soldering and even working with basic logic parts like shift registers. As a bonus, you get a cool watch out of it to boot.

We’ve seen some similar designs over the years, as varied as the hackers that build them. Video after the break.

Continue reading “A Simple Binary Coded Decimal Watch”