DIY Bitcoin Hardware
On this website you can find links to interesting DIY bitcoin and lightning-related projects. This includes hardware wallets, verification tools, POS terminals, full nodes and other stuff.
Please help us to fill this website! Open a pull request on github with DIY bitcoin or lightning project you find exciting.
- libwally - C library with wallet primitives by Blockstream (not so easy to run on embedded system)
- a version that works with Arduino IDE and Mbed out of the box
- secp256k1 - Optimized C library for elliptic curve operations on Bitcoin curve, by Bitcoin Core, used everywhere. The standard.
- a version that works with Arduino IDE, Mbed and MicroPython out of the box
- trezor-crypto - Trezor crypto library
- modtrezorcrypto - MicroPython bindings
- mbed-tls - general purpose crypto library that includes elliptic curve crypto, hash functions and other stuff necessary for Bitcoin wallet, but doesn't have any bitcoin-specific things (like base58 encoding etc)
- micro-bitcoin - C++ bitcoin library compatible with Arduino, Mbed and bare metal
- modcryptocurrency - ColdCard's fork of modtrezorcrypto
Real hardware wallets
If you are not scared of soldering you can build any of existing open-source hardware wallets like Trezor or Coldcard. Building your own wallet reduces risks of supply chain attack and gives you all the benefits of a normal hardware wallet.
DIY hardware wallets
DIY hardware wallets are not as secure as real ones, but they can be easily tuned for your needs and sometimes have very unique ux and security features.
Work In Progress
These wallets are still in development, so they may not have all the functionality planned by the authors yet, but it's worth to keep an eye on their progress.
- Specter (MicroPython) - DIY airgapped hardware wallet that uses QR codes for communication with the host. Based on STM32F469I-DISCO developer board (video).
- BitBoy (Micropython) - a hardware wallet based on M5Stack dev board (video). By @JustinMoon
- Koopa (Arduino) - 15$ watch-only hardware wallet that uses E-Ink display to show your next receiving address. Makes sense to take with you if you plan to receive money to your cold storage while keeping your real hardware wallet safe. By @BTCSocialist
- Bowser (Arduino) - M5Stack based hardware wallet hidden under Tetris game by @BTCSocialist. Youtube tutorial.
- SeedSigner (Raspi, python) - DIY offline, airgapped Bitcoin signing device for less than $50. Includes custom support for Specter Desktop, BlueWallet, Sparrow.
Here we put links to interesting projects that look abandoned / discontinued, mostly for educational and curiosity reasons.
- Hardware Bitcoin Wallet by someone42 - a 7 (!!!) years old repo, probably the very first hardware wallet ever
- 8bkc-wally - a hardware wallet for PocketSprite using libwally library (by GreenAddress)
- Simple hardware wallet (Arduino) - a hardware wallet based on Adafruit M0 board, includes web UI that talks to the wallet over WebUSB
- M5stack hardware wallet (Arduino) - a minimal hardware wallet based on M5Stack that talks to your computer over Bluetooth Serial
Point of sale terminals
- M5StackSats - Lightning POS based on M5Stack by @BTCSocialist
- lightning-pos. Can connect to OpenNode, BTCPay or LND REST interface. Written in Arduino.
TBD - plz send us the links
- Lightning beer tap and a video by @gugol
- Candy machine
- Lightning Scooter and Lightning Bike by @leblitzdick
- Lego Lightning ATM
- Fiat -> Lightning ATM by @21isenough
- Bleskomat (Fiat -> Lightning ATM), Github