Etch-A-NFT robot

Have you ever wanted to doodle on an etch-a-sketch but didn’t feel like getting up from your computer? Worry not my nostalgic lazy friend, for this dilemma has now been solved using robots, the cloud and blockchain!

Let me introduce you to the Etch-A-NFT, now live at www.etchanft.live!

Etch-A-NFT currently sitting on my floor

What the hell am I looking at?

This is a drone of sorts. What you see here is a robot chassis that surrounds an etch-a-sketch allowing a computer (Rasperry Pi) to turn either of the knobs, live-stream a video feed through Twitch from the camera suspended above it, to rotate it upside-down and back to “shake” it, and to mint an NFT of a picture of your work. This device is commanded by a website hosted at www.etchanft.live where anyone can go and take turns operating it.

Ok, so, how do you use it?

In order to keep abuse down, minimize dealing with money, and enforce a way of taking turns, the website requires you to spend an Etch-A-NFT token to take control. These tokens are for sale as NFTs on OpenSea. The website connects to your MetaMask wallet to check if you own one of these tokens in your Polygon account and if you do, it will burn it and a control panel will slide out to give you exclusive control of the robot for 1 hour! When you are done drawing you can Mint your picture as an NFT that will be deposited to your Polygon account. You can see what anyone has minted here at OpenSea and can also buy, sell and trade them as you see fit. Anyone on the website will see a live video feed of the device in action through Twitch, here is that feed now in fact:

How does it work?

The chassis, gears, mounts and such were all 3d modeled and printed. Here is a 3d viewer of the model to see it; hint: you can go full screen on this for a better view.

All motion is driven by 12v stepper motors powered by ULN2003 steppers and controlled by the Pi. The software on the Pi is written in .NET CORE and functions as a webservice hosted from my home network. The software is secured with a strong API key, runs within an HTTPS pipe, and is IP-restricted to the cloud server.

The public web site is hosted as a docker app with Digital Ocean and consists of a public website and API. This website handles all user authentication and commands and parlays those requests securely server-to-server behind the scenes to the device. The front-end is mostly javascript (bootstrap, jquery) and the API is .NET CORE.

The blockchain interactions leverage the Tatum.io API and use a ERC721 contract for NFT artwork and a separate ERC1155 contract for the tokens.

Videos & Screen Shots

Here is a live-stream showing what it looks like:

Home Page
Prompt to Sign and Start
Confirmation Message
Control Panel (buttons: shake, help, mint, time remaining)
Shake it?
Mint it?
Secret kind-works-mostly Batch Control

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.