-
Notifications
You must be signed in to change notification settings - Fork 201
Parts List
Not including the programmer, each U2F token should cost about $5 in parts.
You need these 8 surface mount parts per U2F token which can all be purchased from Digikey or Mouser (totals ~$3 per board):
- Microcontroller (E0)
- Digikey: EFM8UB11F16G-C-QSOP24
- Mouser: EFM8UB11F16G-C-QSOP24
- Secure element (A1):
- Digikey: ATECC508A-SOIC8
- Mouser: 556-ATECC508A-SSHDAB
- [RGB LED] for status indication (RGB1):
- Digikey: Cree Inc. CLVBA-FKA
- 100 Ohm current limiting resistor 0805 (R1):
- Digikey: Vishay Dale CRCW0805100RFKEA
- Zener diode for ESD protection (Z1):
- Digikey: Toshiba DF5A5.6FU
- Push button for user input (SW1):
- Digikey: E-Switch TL3305AF260QG
- Mouser: E-Switch TL3305AF260QG
- 4.7 uF bypass capacitor (C4) and 0.1 uF bypass capacitor (C3). All 0805.
Thank you to thenoviceoof for upgrading the parts to be more hand-solder friendly.
If your part has never been programmed, you do not need a programmer. You can use the build in EFMUB1 USB HID bootloader. You will have to disable extra functionality like the user RNG, SEED, wink, and HID locking (none of which is necessary for U2F). Fair warning: if something messes up and the bootloader gets overwritten, you will need a programmer to recover.
You can also use any Arduino board as a programmer. See this repository to get going.
If you are interested in getting a programmer, read the following. You can use any EFM8 Silicon Labs development board. It is available in Digikey and Mouser ($30-40).
Or you can buy the 8 bit Silicon Labs debugger. It is available in Digikey and Mouser ($35).
- Regular soldering iron and solder
- SMT part holder or painters tape.
You can also use an air solder gun, paste, and stencil which I find a little easier. You can order a $5 stencil from OSH Stencil.
Here I will provide links you can use to purchase PCBs. You can order from Osh Park and get PCBs for about $1.5 each. Warning: They are 1.6 mm thick which is slightly too small and will require some electric tape or something to compensate thickness.
You can order panelized or non-panelized from Dirty PCBs. Free shipping is available and costs about $3.5 or $1.13 per PCB respectively. You can get a long lasting ENIG finish for an extra $15.
- Osh Park (Only 1.6 mm, too thin)
- Panelized Dirty PCBs (You must select 2 mm!)
- Non-panelized Dirty PCBs (You must select 2 mm!)
Alternatively you can upload the source to your preferred PCB vendor.
Thanks to gregose for panelizing the boards.
Link to OSH Stencils for a stencil. Note these will only work with the boards linked above, and not what is currently in git repo.