We use the excellent M5Stack to build a simple 1.21 PoS device that can be retrofitted into any device that turns a thing on for a period of time and have it accept bitcoin:
https://github.com/arcbtc/M5Stack121
This is the LND node version of the project so you will need access to an LND node. If ...
Okay, here's a synthesized summary of the BTCIOT podcast episode, broken down into the requested sections:
1. Narrative Summary
This episode of BTCIOT explores a fascinating project: building a simple Lightning Network (LND) Point of Sale (PoS) module using an M5 Stack 1.21 Blitz device. The project, inspired by previous work for Open Node, allows users to request and pay Bitcoin invoices via a small, easily expandable hardware module. The device, costing around $30 in components, connects to a full LND node and utilizes the REST API to handle invoice requests, display QR codes, and verify payments. Upon successful payment, the module can trigger an external circuit, demonstrated humorously with a Jacob's Ladder, showcasing the potential for applications like controlling vending machine motors or other automated processes. The project's code is open-source and available on GitHub, with a future tutorial planned to cover a simplified version utilizing the Open Node API. While the current implementation involves a bit of "hacky" coding, it provides a practical and accessible entry point for integrating Lightning Network payments into physical devices.
2. Main Topics Discussed
- Project Overview: Introduction to the M5 Stack LND PoS module and its inspiration from previous Open Node projects.
- Hardware Setup: Details on the M5 Stack 1.21 Blitz device, ESP32 chip, screen, relay, and potential for expansion.
- Software Implementation: Discussion of the Arduino IDE, required libraries (m5 stack, Arduino JSON, Little VGL), and code available on GitHub.
- LND REST API Integration: Focus on using the LND REST API, specifically the "invoices endpoint," for requesting and managing invoices.
- Invoice Handling: Explanation of the process of requesting, retrieving, and checking the status of Bitcoin invoices, including the workaround for obtaining the invoice hash.
- Payment Verification: Description of the payment verification loop and timeout mechanism.
- Relay Control: Demonstration of relay activation upon successful payment and potential applications (e.g., vending machine control).
- Future Development: Announcement of a future tutorial covering an Open Node API-based version of the project.
3. Key Quotes
- "It's a bit messy, a bit hacky. So a lot of fun to make but this is a nice simple version of that." (Describing the project's development)
- "I don't know why they just don't give you the hash when you request the invoice personally." (Regarding the need to request an invoice before getting its hash)
- "4,000 volts of lightning fun right there. Little bit dangerous." (Referring to the Jacob's Ladder demonstration)
- "It could be a motor inside a vending machine for example and you could have one of these on the outside of the vending machine and people could pay and then receive an item from the vending machine so a super cool project super simple as well." (Describing a potential application of the module)
4. People Mentioned
- Host: (Unidentified) – Led the discussion and demonstration.
- Jacob: (Role unclear, likely involved in the project's development or the host) – Mentioned multiple times in connection with the project and demonstration.
5. Bitcoin Price
- "2 inches of Satoshi" – Used as a small amount of Bitcoin for demonstration purposes. No other specific Bitcoin prices were mentioned.
Let me know if you'd like any adjustments or further details!