A Multifunction ESP8266 Smartwatch

Most of the DIY smartwatch projects we feature here on Hackaday aren’t exactly what most people would consider practical daily-use devices. Clunky designs, short battery life, limited functions: they’re more a wearable display of geek cred than they are functional timepieces. Oddly enough, the same could be said of many of the “real” smartwatches on the market, so perhaps the DIY versions are closer to the state-of-the-art than we thought.

But this ESP8266 smartwatch created by [Shyam Ravi] is getting dangerously close to something you could unironically leave the house with. It’s still missing an enclosure that prevents you from receiving PCB acupuncture while wearing it, but beyond than that it has a more than respectable repertoire of functions. It even seems to be a fairly reasonable size (with the potential to be even smaller). All that with a total build cost of less than $20 USD, and we’re thinking this might be a project to keep an eye on.

Not content with a watch that simply tells the time, [Shyam] added in a weather function that pulls the current conditions for his corner of the globe from the Yahoo weather API and displays it above the time and date on the watch’s multi-color OLED display when the center button is pressed. Frankly, given the state of DIY watches, that would already have been impressive enough; but he didn’t stop there.

The left and right buttons control Internet-connected relays which [Shyam] uses to turn his lights and air conditioner on and off. When he presses the corresponding button, the watch will even display the status of the devices wherever his travels might take him.

A smattering of DIY watches pass by our careful gaze, though it’s been a while since we’ve seen an ESP8266 watch. More recently we’ve seen an Arduino watch, and some downright gorgeous analog creations.

Continue reading “A Multifunction ESP8266 Smartwatch”

The Tide Is High, And This Clock Lets You Know

In case you happen to have an ocean nearby, you’re probably familiar with its rising and falling tides. And if mudflat hiking is a thing in your area, you’re also aware of the importance of good timing and knowing when the water will be on its way back. Tide clocks will help you to be prepared, and they are a fun alternative to your usual clock projects. If you’re looking for a starting point, [rabbitcreek] put together an Arduino-based tide clock kit for educational purposes.

If you feel like you’re experiencing some déjà vu here, this indeed isn’t [rabbitcreek]’s first tide clock project. But unlike his prior stationary clock, he has now created a small and portable, coin-cell version to take with you out on the sea. And what shape would better fit than a 3D printed moon — unfortunately the current design doesn’t offer much waterproofing.

For the underlying tide calculation itself, [rabbitcreek] uses just like in his previous project [Luke Miller]’s location-based library for the ubiquitous DS1307 and DS3213 real-time clocks. Of course, if you also want to keep track of other events on your clock, why not set up calendar events for the next rising tide?

Faded Beauty DMM Gets An OLED Makeover

When a fine piece of lab instrumentation crosses your bench, you’ve got to do your best to put it to work. But even in the highest quality devices no component lasts forever, especially vacuum tubes. For some vintage instruments with vacuum fluorescent displays, that means putting up with less-than-perfect digits in order to get that sweet, sweet precision. Or not – you can always reverse engineer the thing and add a spanking new OLED display.

The Hewlett-Packard 34401A digital multimeter that fell into [qu1ck]’s lap was a beauty, but it had clearly seen better days. The display was full of spuriously illuminated dots and segments, making it hard to use the 6.5 digit DMM. After a futile bit of probing to see if a relatively easy driver fix would help, and with a replacement display being made of solid unobtanium, [qu1ck] settled in for the long process of reverse engineering the front panel protocol. As luck would have it, H-P used the SPI protocol to talk to the display, and it wasn’t long before [qu1ck] had a decent prototype working. The final version is much more polished, with a display sized to fit inside the original space occupied by the VFD. The original digits and annunciator icons are recreated, and he added a USB port and the bargraph display show in the clip below.

We think it looks fabulous, and both the firmware and hardware are on Github if you’d like to rescue a similar meter. You may want to check our guide to buying old test gear first, though, to get the most bang for your buck.

Continue reading “Faded Beauty DMM Gets An OLED Makeover”

A Unique Microphone Preamp

We live in a world in which nearly any kind of gadget or tool you can imagine is just a few clicks away. In many respects, this has helped fuel the maker culture over the last decade or so; now that people aren’t limited to the hardware that’s available locally, they’re able to create bigger and better things than ever before. But it can also have a detrimental effect. One has to question, for instance, why they should go through the trouble of building something themselves when they could buy it, often for less than the cost of the individual components.

The critic could argue that many of the projects that grace the pages of Hackaday could be supplanted with commercially available counterparts. We don’t deny it. But the difference between buying a turn-key product and building an alternative yourself is that you can make it exactly how you want it. That is precisely why [Sam Izdat] created this truly one of a kind microphone preamplifier. Could he have bought one online for cheaper? Probably. Could he have saved himself an immense amount of time and effort? Undoubtedly. Do we care? Not in the slightest.

The amplifier is based on the Texas Instruments INA217 chip, with an Arduino Nano and 128×64 OLED display providing the visualization. [Sam] was able to find a bare PCB for a typical INA217 implementation on eBay for a few bucks (see what we mean?), which helped get him started and allowed him to spend more time on the software side of things. His visualization code offers a number of interesting display modes, uses Fast Hartley Transforms, and very nearly maxes out the Arduino.

But perhaps no element of this build is as unique as the case. The rationale behind the design is that [Sam] wanted to compartmentalize each section of the device (power supply, amplifier, visualization) to avoid any interference. The cylindrical shapes were an issue of practicality: the compartments were constructed by using a hole saw to make wooden discs, which were then glued together and hollowed out. The case was stained and coated with polyurethane, but due to some slightly overzealous use of glue and fillers, the coloring isn’t uniform. This gives the final piece a somewhat weathered look, in sharp contrast to the decidedly high-tech looking display.

Overall, this build reminds us of the modular 3D printed amplifier we saw earlier in the year combined with these speaker-integrated Arduino VU meters.

Continue reading “A Unique Microphone Preamp”

Tiny Sideways Tetris On A Business Card

Everyone recognizes Tetris, even when it’s tiny Tetris played sideways on a business card. [Michael Teeuw] designed these PCBs and they sport small OLED screens to display contact info. The Tetris game is actually a hidden easter egg; a long press on one of the buttons starts it up.

It turns out that getting a playable Tetris onto the ATtiny85 microcontroller was a challenge. Drawing lines and shapes is easy with resources like TinyOLED or Adafruit’s SSD1306 library, but to draw those realtime graphics onto the 128×32 OLED using that method requires a buffer size that wouldn’t fit the ATtiny85’s available RAM.

To solve this problem, [Michael] avoids the need for a screen buffer by calculating the data to be written to the OLED on the fly. In addition, the fact that the smallest possible element is a 4×4 pixel square reduces the overall memory needed to track the screen contents. As a result, the usual required chunk of memory to use as a screen buffer is avoided. [Michael] also detailed the PCB design and board assembly phases for those of you interested in the process of putting together the cards using a combination of hot air reflow and hand soldering.

PCB business cards showcase all kinds of cleverness. The Magic 8-Ball Business Card is refreshingly concise, and the project that became the Arduboy had milled cutouts to better fit components, keeping everything super slim.

Push It To The Limit: SSD1306 At 150 FPS

A good deal of the projects we cover here at Hackaday are not, in the strictest sense, practical endeavors. If we required that everything which graced our digital pages had a clear end result, the site would be in a rather sad state of affairs. Sometimes it’s enough just to do something for the challenge of it. But more often than not, you’ll learn something in the process which you can use down the line.

That’s precisely what pushed [Larry Bank] to see how well he could optimize the frame rate on the popular SSD1306 OLED display. After several iterations of his code, he was able to achieve a blistering 151.5 FPS, with apparently still some room for improvement if he’s feeling up to the challenge. But considering his first attempt was only running at 5.5 FPS, we’d say he’s already more than earned his hacker cred on this one.

A few different tricks were used to achieve such incredible performance gains. To start with, while the official I2C specification says you’re supposed to wait for an acknowledgment back from the device when communicating with it, [Larry] realized the SSD1306 didn’t actually care. He could continuously blast commands at the display without bothering to wait for an acknowledgment. He admits there are problems with this method, but you can’t argue with the results.

To really wring all the performance out of the system he could, [Larry] donned his Assembly Cap and examined how the Arduino IDE compiler was interpreting his code. He identified a few areas where changing his C code would force the compiler to generate faster output. He notes that this wouldn’t normally be required when working with more advanced compilers, but that the Arduino toolchain needs its hand held occasionally.

This isn’t the first time we’ve seen somebody try and push more pixels through the very same OLED display, and it’s interesting to see the two very different approaches to the same goal.

Smartwatch Fights Anxiety With Action

In our fast-paced modern world, it’s no wonder that so many suffer from anxiety and panic attacks. There are several time-worn techniques for dealing with the symptoms of these attacks. But as anyone who’s ever suffered such an attack can tell you, it can be difficult to sense one coming on until it’s too late. By then, rational thinking has been supplanted by intrusive thoughts. For this year’s Hackaday Prize, [Austin Marandos] is doing his part by using technology to help us check ourselves before we wreck ourselves with worry.

Similar smartwatches exist to detect oncoming attacks, but they don’t do anything to combat them. Minder is like having a friend strapped to your wrist that’s never absorbed in their own problems. It wants to help no matter what it takes, which is why it features multiple techniques for getting back to a state of calm.

Minder’s brain is the bite-size Qduino Mini, which is great for a crowded wearable because of its built-in charging circuit. It uses heart rate and temperature sensors to determine the onset of a panic attack, and a vibration motor to alert the user. The motor also plays a part in the relaxation techniques to keep the user focused and in control. Use the upcoming break to relax and check out the video.

If your anxiety stems from feelings of inadequacy, it might be Imposter Syndrome.

Continue reading “Smartwatch Fights Anxiety With Action”