Something I wanted to make for folks to try out at the Bitcoin conference, but time and other factors didn't quite come together in time.
A pinball machine that takes Bitcoin....
I have some pinball machines, as do friends of mine. An appropriately themed game would be one of the newer, better games: Tron.
The game would be set up in a public area, for all to see. Instead of quarters, I'd print out a barcode and attach it to the front of the game. Pay to that address and the game would credit up, and then you get to play it.
The hardware would be straightforward. A little embedded Linux ARM board, running the Bitcoin client. A large SD card would have plenty of room for the blockchain and the rest of the Linux environment. The board would have at least one GPIO output, that my software could control. A little custom circuit would have to be made, using a relay, isolated, to use the GPIO to temporarily close a switch that is normally open, so that the pinball machine can be coined up. To run the Bitcoin protocol, the Linux board would have an Internet connection via cellular modem.
It should be trivial to write a little daemon that continuously monitors a particular Bitcoin address, and detects incoming payments to that address. Since the game would be something of low value (BTC 0.01 or BTC 0.005 per play, I'm thinking), and the player is waiting immediately to play, and the whole thing is a proof of concept anyway, I would feel comfortable accepting payments with zero confirmations. Since players are anonymous, I wouldn't need to care about the source of the funds, or trying to match them up with an identity. Somebody halfway around the world could make a payment, causing the game to seemingly add credits to itself out of thin air
Since it would only be accepting payments, and not sending them out, the device need not have the address in its wallet. This gives it more security, since if somebody breaks into the game and swipes my board, all that is lost is the value of the hardware, no Bitcoin would be lost.
The only disadvantage of this design is that it uses the Bitcoin protocol directly, and the payment amounts are small, so the transaction fee becomes a factor, and it seems kind of silly to have each little game stay on the blockchain for all time. However, by using Bitcoin directly, instead of a middleman service, it becomes available to all players as an impulse buy, without anybody having to register and fund first at a middleman service.
So, anybody done this already? Wonder if there's anybody else in the Bitcoin community who is into pinball. The same concept applies to any other arcade game or amusement device, as well. Vending machines could also be used, but there'd be a conversion factor to take into account, as the vending product would probably still have to be bought with fiat.
Josh