The HackADay crew has chosen Atmel’s ATmega 32U4 microcontroller (MCU) to power its offline password keeper. Known as “Mooltipass,” the platform is also equipped with an easily readable screen, a read-protected smart-card (AT88SC102) and flash memory to store encrypted passwords.
“Atmel’s ATmega 32U4 is the same microcontroller [found] in the Arduino Leonardo, allowing us to use the numerous libraries that have been developed for it. In the final schematics, we’ll add an expansion connector so users may connect additional peripherals (we may switch to a FOUR4 layers PCB at this point),” explained HackADay’s Mathieu Stephan. “The microcontroller’s USB lines are protected from ESD by the IP4234CZ6. For encrypted password storage, we found the cheap 1Mbit AT45DB011D FLASH which also has 2/4/16Mbits pin compatible versions. If our beta testers find that 1Mbit is not enough, upgrading the Mooltipass would be easy.”
As noted above, Atmel’s AT88SC102 was chosen to be the secure smart-card, which offers 1024bits read/write protected EEPROM. In terms of the display, Stephan says the team has temporarily opted for the OLED screen shown in the picture above, although the creation of another mooltipass version with an IPS LCD is more than likely.
“These components choices made the voltages electronics fairly simple. The whole solution is powered by the ~5V coming from the USB, and the ~3.3V required by both the flash and the display is provided by the ATmega32U4 internal LDO regulator (~55mA @ 3.0 to 3.6V),” Stephan continued.
“The +12V also needed by the display is generated by a $1 regulated charge pump DC-DC converter. If we had to use a conventional step-up, the component count (and cost) would be much higher. Notice that we put a P-MOSFET in series with the latter as the output voltage when the DC-DC is not working is not 0V but VCC (here +5V). We also used another P-MOSFET to switch the power supply going to the smart card.”
In addition, the HackADay crew selected two resistor networks R6&R7 as voltage dividers to transform 5V signals to 3.3V.
“Fortunately, the ATmega32U4 can receive LVTTL signals, so we don’t need level shifters to get the data coming from the 3.3v-powered flash memory,” he added.
Interested in learning more about the Atmel-powered Mooltipass? You can check out the project’s official dedicated Google Group page here.