Two Factor Authentication With The ESP8266

Google Authenticator is a particularly popular smartphone application that can be used as a token for many two factor authentication (2FA) systems by generating a time-based one time password (referred to as TOTP). With Google Authenticator, the combination of your user name and password along with the single-use code generated by the application allows you to securely authenticate yourself in a way that would be difficult for an attacker to replicate.

That sounds great, but what if you don’t have a smartphone? That’s the situation that [Lady Ada] recently found herself in, and rather than going the easy route and buying a hardware 2FA token that’s compatible with Google Authenticator, she decided to build one herself based on the ESP8266. With the hardware and source documented on her site, the makings of an open source Google Authenticator hardware token are available for anyone who’s interested.

Generated codes can also be viewed via serial.

For the hardware, all you need is the ESP8266 and a display. Naturally [Lady Ada] uses her own particular spin on both devices which you can purchase if you want to create an identical device, but the concept will work the same on the generic hardware you’ve probably already got in the parts bin. Software wise, the code is written in CircuitPython, a derivative of MicroPython, which aims to make microcontroller development easier. If you haven’t tried MicroPython before, grab an ESP and give this a roll.

Conceptually, TOTP is relatively simple. You just need to know what time it is, and run an SHA1 hash. The time part is simple enough, as the ESP8266 can connect to the network and get the current time from NTP. The calculation of the TOTP is handled by the Python code once you’ve provided it with the “secret” pulled from the Google Authenticator application. It’s worth noting here that this means your 2FA secrets will be held in clear-text on the ESP8266’s flash, so try not to use this to secure any nuclear launch systems or anything, OK? Then again, if you ever lose it the beauty of 2-factor is you can invalidate the secret and generate a new one.

We’ve covered the ins and outs of 2FA applications before here at Hackaday if you’d like to know more about the concept, in addition to previous efforts to develop a hardware token for Google Authenticator.

Celebrate Display Diversity For A Circuit Circus Clock

There’s a lot to be said for nice, tidy projects where everything lines up and looks pretty. Seeing straight lines and pleasing proportions speaks to our obsessive-compulsive tendencies, and tends to soothe the mind and calm the spirit. But disorder is not without its charm, and mixing it up a little from time to time, such as with this mixed-media digital clock, can be a good idea.

Now, we know what you’re thinking — yet another Nixie clock. True, but that’s only half the story — or more accurately, one-sixth. There’s but a single Nixie in [Fuselage]’s circus-punk themed clock, used for the least significant digit in the hours part of the display. The other digits are displayed with four seven-segment devices — a Numitron, a vacuum fluorescent display, and an LED dot display — plus a real oddball, an old electromechanical display with individual slides for each character and a rear-screen projector. The RTC part of the project is standard Arduino fare, but as you can imagine the power supply needed for such a diversity of displays is pretty complex and has to provide everything from +5 to -270 volts. Each display needs its own driver, too, making this more of a zoo than a circus. The mixed up look just works with the circus theme, too. We’d really like more information on the projector display, though.

Looking for a real statement for your next clock build? Check out the rare as hens’ teeth NIMO tube.

Continue reading “Celebrate Display Diversity For A Circuit Circus Clock”

Have Your Own 200 Water Street Digital Clock

On the front of a building in New York City, above a branch of the ubiquitous Starbucks coffee chain, there is a clock. It is no ordinary clock, the 200 Water Street clock is an art installation created by the artist [Rudolph de Harak], and consists of 72 lighted numbers which are illuminated in sequence to show hours, minutes, and seconds. It is a landmark of sufficient fame that [Jason Ben Nathan] and [Eldar Slobodyan], Cornell University students of [Bruce Land], decided to make their own tribute to it as their course project.

Water Street clock at night
Water Street clock at night [via NYC ♥ NYC]
It’s a fairly straightforward build, thanks to the use of Adafruit Dotstar multicolour LED strips which are populated with APA102 pixels. Behind the scenes is a PIC32 microcontroller, and the time information comes from an off-the-shelf 60kHz WWVB time signal receiver. There is also a temperature sensor, for a handy second function.

The front panel is a piece of ply with the required numbers nicely laser-cut. All the schematics and code are available, should you fancy your hand at building your own version of the clock.

If you are curious about the real-life clock here’s an image. But you get a much more interesting perspective if you stand in front of it. If you just can’t go there, get an approximation through the wonders of Google Street View.

Seven-Segment Flip Clock Display Finally Finished

Earlier this year, we mentioned in a Hackaday Links article that [Spencer Hamblin] was in the process of building a seven-segment flip clock. Well, it’s finally finished, and it looks great!

Vintage seven segment digits make up the display. These digits work the same way that flip-dot displays work – current through each segment’s coil creates a magnetic field which causes the segment to flip over. Current in the other direction creates the opposite magnetic field and flips the segment the other way. On these digits, there are three connections on the coils. The middle one is power and the other two are used to enable and disable the segment – ie., flip it one way or the other. To save on pins on the microcontroller, [Spencer] connected all the middle coil pins together on a digit. Each coil can be powered using a single pin on the microcontroller. Similarly, the segments for each digit are connected together as well, so one pin on the micro controls the same segment on each of the digits. The microcontroller in question is the AVR ATMega48.

There are two parts of the clock face left to do: AM/PM and whether the alarm is set or not. [Spencer] used a fifth digit, slightly offset, for those – the top and middle segments are used.

For the housing of the clock, [Spencer] used layers of offsetting colored wood. The wood (sapele and ash) were CNC cut and aligned. The back plate, also made from wood, holds buttons for setting the time and alarm, as well as some LEDs for what [Spencer] calls the “daylight alarm.” A capacitive sensor on the top of the unit (inside the wooden case) is used to turn the alarm off.

The result, after sanding and shellacing, looks amazing. [Spencer] nailed the art-deco look he was going for. There are plenty of pictures and the circuit designs, schematics and code are on [Spencer]’s Hackaday.io page, and you can find the Hackaday links post here. This is a complete log of a project we mentioned earlier on Hackaday, here, but there are other mechanical flip display clock projects, such as this DIY mechanical flip seven-segment prototype, or, you could create your own (really big) clock using this Lego mechanical seven-segment display.

via Reddit.

LiquidWatch Is Dripping With Style

Some of the entries for the 2017 Coin Cell Challenge have already redefined what most would have considered possible just a month ago. From starting cars to welding metal, coin cells are being pushed way outside of their comfort zone with some very clever engineering. But not every entry has to drag a coin cell kicking and screaming into a task it was never intended for; some are hoping to make their mark on the Challenge with elegance rather than brute strength.

A perfect example is the LiquidWatch by [CF]. There’s no fancy high voltage circuitry here, no wireless telemetry. For this entry, a coin cell is simply doing what it’s arguably best known for: powering a wrist watch. But it’s doing it with style.

The LiquidWatch is powered by an Arduino-compatible Atmega328 and uses two concentric rings of LEDs to display the time. Minutes and seconds are represented by the outer ring of 60 LEDs, and the 36 LEDs of the inner ring show hours. The hours ring might sound counter-intuitive with 36 positions, but the idea is to think of the ring as the hour hand of an analog watch rather than a direct representation of the hour. Having 36 LEDs for the hour allows for finer graduation than simply having one LED for each hour of the day. Plus it looks cool, so there’s that.

Square and round versions of the LiquidWatch’s are in development, with some nice production images of [CF] laser cutting the square version out of some apple wood. The wooden case and leather band give the LiquidWatch a very organic vibe which contrasts nicely with the high-tech look of the exposed PCB display. Even if you are one of the legion that are no longer inclined to wear a timepiece on their wrist, you’ve got to admit this one is pretty slick.

Whether you’re looking to break new ground or simply refine a classic, there’s still plenty of time to enter your project in the 2017 Coin Cell Challenge.

Color Changing Clock Uses PCB Digits

There’s an old saying, that you should do everything at least twice. Once to learn how to do it, and then a second time to do it right. Perhaps [Zweben] would agree, since he wasn’t satisfied with his first Neopixel clock and proceeded to build another one. One lesson learned: soldering 180 tiny solder joints isn’t much fun. This time, [Zweben] set out to make a printed circuit board and redesign the clock to make it easier to assemble.

The clock uses multiple copies of a single circuit board. The board holds Neopixel strips in a 7-segment arrangement. Each board can also hold all of the electronics needed to drive the clock. Only the first board gets the microcontroller and other circuits.

Continue reading “Color Changing Clock Uses PCB Digits”

Driver Board Makes Nixie Projects Easier Than Ever

We know, we know — yet another Nixie clock. But really, this one has a neat trick: an easy to use, feature packed driver for Nixies that makes good-looking projects a snap.

As cool as Nixies are — we’ll admit that to a certain degree, familiarity breeds contempt — they can be tricky to integrate. [dekuNukem] notes that aside from the high voltages, laying hands on vintage driver chips like the 7441 can be challenging and expensive. The problem was solved with about $3 worth of parts, including an STM32 microcontroller and some high-voltage transistors. The PCBs come in two flavors, one for the IN-12 and one for the IN-14, and connections for the SPI interface and both high- and low-voltage supplies are brought out to header pins. That makes the module easy to plug into a motherboard or riser card. The driver supports overdriving to accommodate poisoned cathodes, 127 brightness levels for smooth dimming, and a fully adjustable RBG backlight under the tube. See the boards in action in the video below, which features a nicely styled, high-accuracy clock.

From Nixie tachs to Nixie IoT clocks, [dekuNukem]’s boards should make creative Nixie projects even easier. But if you’re trying to drive a Nixie Darth Vader, you’re probably on your own.