
Nrf bga
github-linguist/linguist
Language Savant. If your repository's language is being reported incorrectly, send us a pull request!

Final Year Engineering Project
StickPassV2 is an open-source printed circuit board by Drulex, from the Drulex/StickPass repository on GitHub. It is a 2-layer board of 50 × 18.3 mm with 12 parts on 9 nets, routed with 71 tracks and 1 via.
Its parts include 5 resistors, 3 diodes, 1 capacitor, 1 IC and 1 connector. It belongs with the AVR (ATmega, ATtiny) boards of this library.
StickPass is a hardware password manager based on the ATTINY85 microcontroller. It allows the user to securely store his identities (username/password combinations) on a physical device and use them with the press of a button. At the moment it uses the V-USB library to implement USB functionality in software.
The scope of the project is to develop a low cost integrated hardware password management solution. The project is realized as a final year electrical engineering project and the timeline is 12 weeks at about 9 hours of work per week.
There are two obvious ways of going when thinking about the architecture of this project:
Yet I chose to explore a third more obscure option: Use a software implementation of the USB protocol.
The reasons for this decision are the following:
At the moment this was only tested on Linux. Cross platform support is coming.
The following packages are required in order to build the firmware:
If you are not using the USBTINY programmer to flash your ATTINY85 modify line 6 of the Makefile to call your programmer.
To compile the project: make hex
To flash the chip: make flash
To flash the fuses: make fuse
Coming soon.
Coming soon... or not.
In order to use the user application (StickApp) you will need a recent version of:
To compile the app: make app
./stickapp --init <unlock key>
This will initialize the device with the given unlock key. This key must be used to unlock the device any time it is plugged in the future! When used on an already initialized device it will wipe the memory contents and reset the key.
./stickapp --send <idName> <idUsername> <idPassword>
./stickapp --clear
Will clear the memory contents and preserve the unlock key.
To use the device:
Some decisions were made to implement some features (most of them related to memory management) with limitations in order to satisfy the requirements, but at the same time decrease complexity and ultimately save some time. I am obviously aware that these implementations are suboptimal and I plan on fixing them as soon as the semester is done and time allows.
I already have some ideas for the next iteration the main ones being:
If you have suggestions contact me at alexandru@jora.ca I would love to get some feedback.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 68R | Resistors_ThroughHole:Resistor_Horizontal_RM7mm | R3, R4 |
| 2 | ZENER | Resistors_ThroughHole:Resistor_Horizontal_RM7mm | D1, D2 |
| 1 | 0.1u | Resistors_ThroughHole:Resistor_Horizontal_RM7mm | C1 |
| 1 | 10K | Resistors_ThroughHole:Resistor_Horizontal_RM10mm | R1 |
| 1 | 1k5 | Resistors_ThroughHole:Resistor_Horizontal_RM10mm | R2 |
| 1 | 220R | Resistors_ThroughHole:Resistor_Horizontal_RM10mm | R5 |
| 1 | ATTINY85-P | stickpass:DIP-8_W7.62mm | IC1 |
| 1 | LED | LEDs:LED-5MM | D3 |
| 1 | SW_PUSH | switch:SPST-4-PIN_6mm_thru | SW1 |
| 1 | USB_A | Connect:usb_a_molex_48037-0001 | P1 |
It measures 50 × 18.3 mm and has 2 copper layers, 1.6 mm thick.
12 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the Drulex/StickPass repository on GitHub, at the commit this page was made from: the board is electronics/StickPassV2.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask Drulex before reusing the design.

github-linguist/linguist
Language Savant. If your repository's language is being reported incorrectly, send us a pull request!


google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards



hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

VoronDesign/Voron-Tap
Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:

stacksmashing/pico-tpmsniffer
A simple, very experimental TPM sniffer for LPC bus