Time Sync Through Your VGA Connector

While it might be in its twilight years, the venerable VGA video connector conceals a versatile interface that  can still provide the experimenter with the opportunity for a variety of hacks. We’ve not seen anything quite like [flok]’s one, in which he uses the VGA interface to insert timing information from which an NTPd instance gets its reference.

If this seems counter-intuitive because a VGA interface is an analogue output rather than a digital input, then you are correct to smell a rat. And he comes clean in his first sentence, as he’s not using the VGA lines themselves but the I2C interface that is a feature of all but the most basic of VGA cards. This is the means by which a plug-and-play operating system can identify a monitor’s capabilities, but there’s little to stop it being used for other purposes. In this case an Arduino fed by a 1-pulse-per-second timing signal from a temperature compensated crystal oscillator provides the I2C peripheral which is polled by NTPd.

This project should be of interest to any tinkerer because of its invaluable information on identifying and using the I2C interface on a VGA socket. So if you’ve used your VGA card as an SDR you might find it interesting, but hurry or you could have missed the boat entirely.

VGA plug image: Swift.Hg [CC BY-SA 3.0]

An ESP32 Clock With A Transforming LED Matrix

Over the years we’ve seen countless ways of displaying the current time, and judging by how many new clock projects that hit the tip line, it seems as though there’s no end in sight. Not that we’re complaining, of course. The latest entry into the pantheon of unusual timepieces is this ESP32-powered desk clock from [Alejandro Wurts] that features a folding LED matrix display.

The clock uses eight individual 8 x 8 LED arrays contained in a 3D printed enclosure that hinges in the middle. When opened up the clock has a usable resolution of 8 x 64, and when its folded onto itself the resolution becomes 16 x 32.

This variable physical resolution allows for alternate display modes. When the hardware detects that its been folded into the double-height arrangement, it goes into a so-called “Big Clock” mode that makes it easier to see the time from a distance. But while in single-height mode, there’s more horizontal real estate for adding the current temperature or other custom data. Eventually [Alejandro] wants to use MQTT to push messages to the display, but for now it just shows his name as a placeholder.

The key to the whole project is the hinged enclosure and the reed switch used to detect what position it’s currently in. Beyond that, there’s just an ESP32 an some clever code developed with the help of the MD_Parola library written for MAX7219 and MAX7221 LED matrix controllers. [Alejandro] has published the code for his clock, which should be helpful for anyone who’s suddenly decided that they also need a folding LED matrix in their life.

Now if the ESP32 LED matrix project you have in mind requires full color and high refresh rates, don’t worry, we’ve got a solution for that.
Continue reading “An ESP32 Clock With A Transforming LED Matrix”

Advertise Your Conference Schedule Via SSID

Whether it’s been a Python script running on a Linux box or an ESP8266, abusing using WiFi SSIDs to convey messages is hardly a new trick. But for DerbyCon 2019, [vgrsec] wanted to do put together something a little unique. Dare we say, even useful. Rather than broadcast out SSID obscenities or memes, this Raspberry Pi created fake WiFi networks that told everyone what talks were coming up.

The concept here is fairly simple: there’s a text file in /boot that contains the truncated names of all the talks and workshops in the schedule, one per line, and each line starts with the time that particular event is scheduled for. The script that [vgrsec] wrote opens this text file, searches for the lines beginning with the current time, and generates the appropriate SSIDs. With the number of tracks being run at DerbyCon, that meant there could be as many as five SSIDs generated at once.

Now in theory that would be enough to pull off this particular hack, but there’s a problem. The lack of an RTC on the Raspberry Pi means it can’t keep time very well, and the fact that the WiFi adapter would be busy pumping out SSIDs meant the chances of it being able to connect to the Internet and pull down the current time over NTP weren’t very good.

As the system was worthless without a reliable way of keeping time, [vgrsec] added an Adafruit PiRTC module to the mix. Once the time has been synchronized, the system could then run untethered via a USB battery bank. We might have put it into an enclosure so it looks a little less suspect, but then again, there were certainly far more unusual devices than this to be seen at DerbyCon.

Of course, if you’re OK with just dumping the entire schedule out at once and letting the user sift through the mountain of bogus SSIDs themselves, that’s even easier to accomplish.

Keeping Clocks On Time, The Swiss Way

Could there be a worse fate for a guy with a Swiss accent than to be subjected to a clock that’s seconds or even – horrors! – minutes off the correct time? Indeed not, which is why [The Guy With the Swiss Accent] went to great lengths to keep his IKEA radio-controlled clock on track.

For those who haven’t seen any of [Andreas Spiess]’ YouTube videos, you’ll know that he pokes a bit of fun at Swiss stereotypes such as precision and punctuality. But really, having a clock that’s supposed to synchronize to one of the many longwave radio atomic clocks sprinkled around the globe and yet fails to do so is irksome to even the least chrono-obsessive personality. His IKEA clock is supposed to read signals from station DCF77 in Germany, but even the sensitive receivers in such clocks can be defeated by subterranean locales such as [Andreas]’ shop. His solution was to provide a local version of DCF77 using a Raspberry Pi and code that sends modulated time signals to a GPIO pin. The pin is connected to a ferrite rod antenna, which of course means that the Pi is being turned into a radio transmitter and hence is probably violating the law. But as [Andreas] points out, if the power is kept low enough, the emissions will only ever be received by nearby clocks.

With his clock now safely synced to an NTP server via the tiny radio station, [Andreas] can get back to work on his other projects, such as work-hardening copper wire for antennas with a Harley, or a nuclear apocalypse-Tweeting Geiger counter.

Continue reading “Keeping Clocks On Time, The Swiss Way”

NTP Morse Code Clock Powered By ESP8266

We’ve featured a great many unique clocks here on Hackaday, which have utilized nearly every imaginable way of conveying the current time. But of all these marvelous timepieces, the Morse code clock has the distinct honor of simultaneously being the easiest to construct and (arguably) the most difficult to read. As such, it’s little surprise we don’t see them very often. Which makes this latest entry into the field all the more interesting.

[WhisleyTangoHotel] has taken the basic concept of the Morse clock, which at its most simplistic could be done with a microcontroller and single LED, and expanded it into a (relatively) practical device. With both audio and visual signaling, and support for pulling the time from NTP, this is easily the most polished Morse code clock we’ve ever seen. Using it still requires you to have a decent grasp on Samuel Morse’s now nearly 200 year old encoding scheme of course, but on the bright side, this clock is sure to help keep your CW skills sharp.

For those following along at home, [WhisleyTangoHotel] provides a hand-drawn diagram to show how everything connects together in his Morse timepiece, but there’s nothing on the hardware side that’s likely to surprise the Hackaday reader. A single momentary push button represents the device’s sole user input, with the output being handled by a LED “tower” and speaker on their own respective pins on the microcontroller. Here a Adafruit Feather HUZZAH is used, but any ESP8266 would work in its place.

Of course, the advantage of using an ESP8266 board over your garden variety MCU is the Wi-Fi connectivity. This allows the clock to connect to an NTP server and get the current time before relaying it to the user. Some might think this overkill, but it’s really a critical feature; the lack of a proper RTC on the ESP means the clock would drift badly if not regularly synchronized. Assuming you’ve got a reliable Internet connection, this saves you the added cost and complexity of adding an external RTC.

[WhisleyTangoHotel] wraps up his blog post by providing his ESP8266 Arduino source code, which offers an interesting example in working not only with NTP and time zones on the ESP, but how to handle parsing strings and representing their principle characters in Morse code.

Interestingly enough, in the past we’ve seen a single LED clock that didn’t use Morse code to blink out the time, which might be a viable option as an alternate firmware for this device if you’re not in the Samuel Morse fan club.

Continue reading “NTP Morse Code Clock Powered By ESP8266”

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”

ESP8266 Clock Puts Time In A Jar

Ironically, with the wide availability of modular electronic components today, the hardest part of constructing your latest gadget might just end up being able to find a decent looking enclosure for it. Project boxes will only get you so far, and let’s be honest, they aren’t exactly the most attractive things in the world. But if you’re willing to think outside the box (get it?) there are some unconventional options out there that might fit the bill.

Take for example this ESP8266 clock by [ZaNgAbY] that’s housed in a glass pasta jar. With the addition of some window tint film for the LED display to shine through, the final result could nearly pass as modern art. Even if you don’t need an extra clock around the house, this same general principle could be used to create a slick-looking ticker for all sorts of information, from the weather to server uptime with just some adjustments to the code.

Inside the jar there’s six 8×8 MAX7219 LED matrix modules tacked together to create one long strip, with a NodeMCU board stuck to the back with double-sided tape. There’s also a DS3231 RTC module so the clock can keep halfway decent time, but depending on how aggressively you are willing to pull down the current time from NTP, that may or may not be required. A simple barrel jack is popped through the metal lid of the jar for power, and represents the only physical connection the internals have to the outside world.

For the next iteration [ZaNgAbY] is thinking of adding a temperature and humidity sensor, and a light sensor that can dim the LED display depending on the ambient light. While the environmental sensors will have to go on the outside of the lid if there’s any hope of pulling useful readings from them, the clear glass will allow him to keep the light sensor internal to the clock.

Believe it or not, this isn’t the first time we’ve seen somebody give their electronics the pickle treatment. We’ve previously played host to a server that “preserves” files in a Mason jar, as well as a gorgeous display of an iPod under glass.

Continue reading “ESP8266 Clock Puts Time In A Jar”