| 1 | # Hardpass Prototype, v.2 |
| 2 | A Raspberry Pi Zero based WiFi Enabled Hardware Password Manager, now with a PCB. |
| 3 | |
| 4 | ## Currently Implemented: |
| 5 | - OLED (demo) |
| 6 | - USB Gadgets (full) |
| 7 | - USB HID send keys progam |
| 8 | |
| 9 | ## TODO |
| 10 | - OLED: Menu program |
| 11 | - WiFi: compile & install driver |
| 12 | - Button Matrix (same program as OLED) |
| 13 | |
| 14 | ## Install ESP driver |
| 15 | If you want to use the ESP8266 on the SDIO pins of the Pi, download and install the driver from Andrew Litt. |
| 16 | ```sh |
| 17 | # on the pi: |
| 18 | git clone https://github.com/al177/esp8089.git |
| 19 | make && sudo make install |
| 20 | ``` |
| 21 | |
| 22 | ## In this repository |
| 23 | This repository contains: |
| 24 | * USB HID progam `scan` with examples in `./send_hid` |
| 25 | * OLED menu system in `./oled`, using the `ArduiPi_OLED` driver from http://hallard.me |
| 26 | * Patcher and installer for `pass` in `./pass` |
| 27 | * KiCAD schematic and PCB layout in `./kicad` |
| 28 | |
| 29 | |
| 30 | ## Setting up |
| 31 | To automatically load necessary kernel modules for the OLED on boot, run as root on the Pi: |
| 32 | ```sh |
| 33 | echo "i2c-dev">>/etc/modules |
| 34 | echo "dwc2">>/etc/modules |
| 35 | ``` |
| 36 | |
| 37 | A small systemd unit file is included; place it in `/etc/systemd/system/` and modify it, so it points to `init_usb.sh`, which you can also modify to your needs. |
| 38 | |
| 39 | ## License |
| 40 | I hereby release my work under the GNU GPLv3 where applicable. The complete license text, if not included, can be read at `https://www.gnu.org/licenses/gpl-3.0.txt`. Where the GPLv3 isn't applicable, the work is released under the Creative Commons Attribution-ShareAlike 4.0 International. |
| 41 | This repository also includes the ArduiPi_OLED library from [hallard](https://github.com/hallard); see [this website](http://hallard.me/adafruit-oled-display-driver-for-pi/) for details. |
| 42 | and the kicad-ESP8266 library from [jdunmire](https://github.com/jdunmire/kicad-ESP8266), which is released under the Creative Commons Attribution-ShareAlike 4.0 International License. |