Open Authenticator

An open source TOTP based hardware authenticator using ESP32.

GitHub watchers GitHub Repo stars GitHub forks GitHub issues GitHub forks GitHub repo size GitHub license

The Open Authenticator is an open source TOTP based hardware authenticator using ESP32. In layman’s terms, this does what Google Authenticator or Authy does. This uses a custom built pcb and a 3d case, also it uses a firmware built for this purpose using esp-idf, uses lvgl as the GUI library.

The features of open authenticator’s printer circuit board are:

  • Small form factor of 82mm x 42mm
  • Uses ESP32-WROOM-32D module
  • Uses 128x64 0.96” inch OLED panel
  • Uses DS3231 RTC with battery backup (CR2032) for timekeeping
  • Powered by 3.7V 300 mAh LiPo battery
  • Uses MCP73831 for charging LiPo battery
  • Uses TPS63001 Buck Boost Converter IC for efficient 3.3V power supply, with input range from 1.8V - 5.5V
  • Uses TPS22919 Load switch to control power to OLED and RTC chip
  • Autoselect power source, i.e., battery or USB
  • USB Type-C for charging only (no data pins connected)

Media Coverage

Project logs




  • OSHPark - Thanks to OSHPark for sponsoring first prototype
  • PCBWay - Thanks to PCBway for sponsoring the final prototype
  • Asahitec - Thanks for discounts on stencil