Meet Metalith, a Supercharged Bitcoin Vending Machine
This year at Porcfest, one project stood out in a great way, a fully functional Bitcoin vending machine named The Metalith. Not only does The Metalith offer products for Bitcoin, but also offers them for Fiat currency. In addition to Bitcoin payments, The Metalith is jam-packed with awesome features such as the ability to convert fiat to Bitcoin and Bitcoin to fiat, and the fact that it runs a full Bitcoin node.
I had the opportunity to speak with Derrick Slopey of Alien Seed Software, the spearhead of The Metalith project about the decisions they made and to find out more about this awesome system:
“The Metalith is a vending machine which takes both bitcoin and usd as payment for products, and which can also convert bitcoin to dollars and dollars to bitcoin. It uses an E-Paper screen for displaying product information and payment QR codes, and has a simple four button menu system for navigating menus to convert currency and confirm transactions. Bitcoin is refunded to the user through scanning a QR code with a camera mounted behind the glass.
We wanted to make a vending machine that took bitcoin, but we took the machine a few steps further because a two way currency conversion was possible and potentially very useful. Because we could.
Having worked with the NBitcoin library on previous projects, I had quite a bit of code written for running a full bitcoin node on a webserver. The code was adapted into application software which handles two way transactions between USD and BTC, and integrated into an inventory management and dispensing system running on a Windows PC.
We obtained a vending machine early this year on Ebay, previously used in a laundromat in Connecticut. I reverse engineered the dispensing system and other comments. The main system board was replaced with multiple Arduino Nano microcontrollers for interfacing the Windows PC with the dispensing system, coin mechanism, dollar bill validator, keypad, and a new e-paper display that was created from a e-paper “BADGEr” which was designed originally to be a name-badge at the Open Source Hardware Summit in 2013. The original equipment only took one dollar bills, so the bill validator was replaced with a newer model which took larger bills (up to $100).
The Metalith runs as a full bitcoin node, storing it’s private keys in a database on the Windows PC. The only external service required for operation other than the bitcoin network was an exchange quote service.
Because the Metalith was designed to dispense product from unconfirmed bitcoin funds, we utilize a two tier bitcoin wallet system. There are two sets of addresses in the software named Escrow and Vault. All incoming funds go into the Escrow addresses, and the balance in these addresses are displayed to the user as spendable. When a product is selected to be dispensed, a transaction from the Escrow funds into the Vault funds are published to the bitcoin network. If other nodes accept this transaction we can be somewhat assured that the inputs in the Escrow accounts have not already been spent by a malicious user, and the product is dispensed. The software also monitors network transaction rate and block arrival latency to help assure that there is a solid connection to the network. Escrow refunds (coin return button) are made from the same inputs that were sent to the machine.
All usd to bitcoin conversions are paid out using confirmed funds (oldest first) from the Vault.
Bitcoin to usd conversion also go through the two tier wallet system, the Escrow is funded, then the user is able to convert the bitcoin into usd using the menu system, an Escrow to Vault transaction is posted, and if successful the usd value is credited to the machine and the user can then press the coin return button to receive the USD value in coins. Future work may include replacing the dollar bill acceptor with a bill recycler which would enable paying out usd funds in bills as well as coins.
One happy porcfester was able to convert buckets of change into bitcoin using the Metalith on the last day of Porcfest.”
Drew Phillips, another prominent team member, further commented on the reactions from attendees of the festival:
“Silver was the most popular items we sold all week, a few thousand worth from Roberts and Roberts brokerage inc. We had 10oz and 5oz bars along with one ounce silver rounds and some silver dime cards. The other practical products also sold well, Flashlights and batteries. People loved the humor in selling marijuana test kit and pregnancy test kits and we did sell one of each. The theme for the MetaLith was to “Sell all the things for all the money” and we did that by stocking it with ear plugs, rain ponchos, glow sticks and other odds and ends.
You will see an ambulance in some of the photos and this was the hacker mobile, The Botanybay. This is where the Maine Hacker club was able to get a remote Internet connection to make bitcoin transactions possible in the remote area of the white mountains of New Hampshire.”
The Metalith project is very unique for a few reasons, mostly because it really highlights Bitcoin’s potential for a pseudo-anonymous transaction medium that is more secure than other digital payment options offered in vending machines. With a vending machine like The Metalith, customers have a large assortment of purchase options and the ability to digitally pay for those goods in a more anonymous way (and secure) way than traditional vending machine payment options. In the past, people have had funds stolen from their cards with “skimmers” or devices installed by criminals to read and transfer card data from the machine.
Digital payments have a lot of significance now for vending machines and the variety of products that are economically viable to sell in such machines. Many malls and airports now carry large vending machines that sell products like tablets, mp3 players, and other expensive electronics, this was made possible by the increased popularity of digital payments in vending machines.
Bitcoin is a powerful option for The Metalith because it allows for the sale of multiple products with a variety of different prices and gives customers the ability to purchase their items with more privacy than if they were to use a card to pay.
To get a better look at the machine, check out this Youtube video that highlights some of the many products offered for sale:
https://www.youtube.com/watch?v=EhpZgtaau3g
You can browse Tim’s gallery of Metalith Images here.
The Metalith was also recently mentioned in an article in Maxim Magazine.
What do you think about The Metalith Project? Let us know in the comments below!
Images courtesy of Tim Frey