Entry for SquareInch competition: TOTP token

Similar projects worth following
A tiny TOTP token for two-factor authentication. Powered from a coin cell, and displayed on an OLED display. Can hold multiple hashes and sources, so for example you can have your Google and Dropbox accounts on one device.

A tiny (one square inch) board for a TOTP two-factor authentication generator. My phone is as often as not out of battery, or I forget it, so I wanted something that I could maybe attach to my keys to always have it handy. Powered on board from a 2032 coin cell (true to the competition), and with a small OLED screen for readout.

  • 1 × ATmega168 Microprocessors, Microcontrollers, DSPs / Microcontrollers (MCUs)
  • 1 × 32 kHz oscillator Watch crystal for RTC
  • 1 × ER-OLED-0.96 OLED display
  • 4 × 10k resistor (0402)
  • 1 × 390k resistor (0402)

View all 13 components

  • Broken AVR programmer...

    A Logan12/22/2015 at 22:15 2 comments

    Well - I'm pretty annoyed. As ever (for me at least), the hardware side was good and I'm 85% sure the software is good but I'm also 100% sure my (cheap, knock off) AVR programmer is broken. Dead in Windows, Linux, different drivers etc and it's not even programming boards I know work. So, unfortunately I can't show you a nice video of it working - pretty disappointing way to end up for the (inch)^2 mini-competition, but I'm going to spend a few extra pounds and get a good reliable programmer and finish it off anyway. Aside from that problem, I'm happy with the way it's turned out - you can actually pack quite a bit into a really tiny board, and those little OLED displays are fantastic. I've also uploaded the demonstration code and a compiled (I obviously don't know if it works) hex file. It should all be self-explanitary, and I'll improve it so that it's more useful with connectivity rather than hard coded values.

    Things to address: re-write in native code (rather than using the Arduino basic setup) to optimise for low power, reduce the size of the AVR (I used a 328, but the firmware is only about 10k, so a 168 would be fine), and check the power consumption of the OLED when it's not in use.

    I have two spare boards and parts, if anyone is interested, please just get in touch :)

    Two assembled pictures - on a phone camera in low light, so please excuse the blurriness.

  • Board nicely reflowed

    A Logan12/18/2015 at 22:22 0 comments

    As per title, reflowed the board today. Turns out the 0402 is really small, and I'm glad I went for reflow rather than hand soldering. Code is pretty much written as well, so just to put it together in time :)

  • Hardware's here!

    A Logan12/02/2015 at 03:04 1 comment

    Boards, components, and displays have arrived - 1 inch^inch is pretty small it turns out! Code to start tomorrow :)

  • Boards on the way

    A Logan11/02/2015 at 17:41 0 comments

    Boards ordered, should order displays, and then get going on the code :)

View all 4 project logs

Enjoy this project?



alpha_ninja wrote 12/07/2015 at 01:13 point

[verified: no design files missing]

  Are you sure? yes | no

A Logan wrote 12/07/2015 at 01:15 point

Thank you :)

  Are you sure? yes | no

alpha_ninja wrote 12/02/2015 at 00:44 point

This is your one-week reminder to upload design documents:

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates