Mining crypto... with a microcontroller

Photo by Kanchanara on Unsplash

Mining crypto... with a microcontroller


3 min read

Cryptocurrency has been in the news a lot lately - you probably know about Bitcoin and Ethereum and Dogecoin by now, and you might have heard stories about how people made billions by mining crypto.

For anyone who doesn't know, mining is the process in which people use their computer's processing power to solve lots of complex hash functions (kind of like math problems), which help the crypto network stay secure. Miners are rewarded with currency, which can be used to pay for everyday items or converted to USD.

Mining cryptocurrency always sounds enticing to people like me - free money, using only your computer! Anyone who's somewhat experienced in the field, though, will tell you that crypto mining is a lot more complicated. Ten years ago, you could mine on your laptop, but nowadays you need extremely high processing power to make profit. A lot of capital is required to purchase materials, with long ROI (return on investment) times and high electricity fees. In order to earn just $5 a day, you might have to spend thousands of dollars on expensive equipment like GPUs or ASIC hardware.

I've always wanted to try out crypto mining, but I don't exactly have thousands of dollars to invest. Instead, I wanted to look for a way to mine with only hardware I already had at home. After a little bit of research, I found a coin that won't make you rich but can be mined with almost anything: Duino-coin.

And by 'almost anything', I don't mean just PCs or laptops. Duino-coin can be mined with microcontrollers - including Arduinos, SAMD boards, ESP8266/32, and much more. Anything with a browser can join the fun by using Javascript to mine.


Right now at home, I have an embarrassingly extensive and rapidly growing collection of microcontroller boards that are compatible with Duino-coin. The mining process was super simple - upload the C++ code to the board like normal, plug the USB into your computer, run the Python script on the host, and you're done.

If you'd like to try this yourself, first set up a cloud wallet:

Download and install the scripts (see documentation for Windows):

git clone
cd duino-coin
python3 -m pip install -r requirements.txt

Use the Arduino IDE to upload the corresponding .ino file to your microcontroller:

  • Arduinos: Arduino_Code.ino (For AVR, SAM, SAMD, STM32, Teensy, or megaAVR boards)
  • ESP8266: ESP8266_Code.ino (Connects to Wifi by itself, doesn't need host)
  • ESP32: ESP32_Code.ino (Connects to Wifi by itself, doesn't need host)

Then run the Python script

Screen Shot 2022-05-05 at 8.15.17 PM.png

Type in your credentials and the port of your microcontroller. If everything goes well, you should see some blinking lights and some green status notifications.

Your Arduino is online and making passive income - just wait a few days and you'll be rolling in cash.

Wait, this thing actually earns you money?

Yep! Just to be sure, let's check the online wallet to see if the new mining rig appears:

Screen Shot 2022-05-05 at 8.17.36 PM.png

Screen Shot 2022-05-05 at 8.18.02 PM.png

$0.001 a day? Okay, forget the cash, but Duino-coin is still a great way to introduce yourself to crypto and how mining actually works. If you really want to get serious about mining, then do yourself a favor and go invest in professional mining equipment - but as for me, I'll still be stuck here waiting several years to get a single dollar.

Did you find this article valuable?

Support Gabe Tao by becoming a sponsor. Any amount is appreciated!