matteocrippa / leafminer

A FOSS bitcoin miner for ESP8266 and ESP32
MIT License
51 stars 9 forks source link
bitcoin btc esp32 esp8266 miner

LeafMiner ☘️⛏️

LeafMiner is a Free and Open Source Software (FOSS) ESP(*) device Bitcoin miner.

LeafMiner Logo

Disclaimer: While the chances of successfully mining a block with LeafMiner are highly unlikely due to the current complexity, the primary goal of this project is to serve as a learning platform for gaining a deeper understanding of how Bitcoin and SHA256 operate.

LeafMiner on Lilygo-T-S3 LeafMiner on GeekMagic Clock Small TV
Lilygo-T-S3 GeekMagic Clock - SmallTV

Features

The SHA256 code is based on a tweaked version of NerdSHA256plus by NerdMiner.

Supported Boards:

Board Status Expected Hashrate
ESP8266 🟩 ±16 kH/s
ESP32 🟩 ±48 kH/s
ESP32-S2 🟩 ±19 kH/s
ESP32-S3 🟩 ±80 kH/s
LILYGO-T-S3 🟩 ±80 kH/s
SMALLTV (ESP8266) 🟩 ±16 kH/s
Legend Icon Description
🟩 Fully functional
🟧 Partially functional
🟥 Not working

Mining Method:

How to Use

Requirements

Build & Install

Flash Binary

Board Link
ESP8266 0.0.16
[GeekMagic SmartTV]() 0.0.16
ESP32 0.0.16
ESP32-S2 0.0.16
ESP32-S3 0.0.16
LILYGO-T-S3 0.0.16

For example this is how ESP32-S3 will look like:

LeafMiner Web flash

Build from Scratch

Quick Start Guide

Follow these steps to set up your ESP32/ESP8266 with LEAFMINER:

  1. Power Up: Power up your ESP32/ESP8266 device.

  2. Connect to LEAFMINER WiFi: Connect to the WiFi network named "LEAFMINER."

  3. Access Configuration Page: Open your web browser and navigate to http://192.168.4.1 if the captive portal doesn't appear automatically.

  4. Provide Information and Save: Fill out the form, click the save button, and then reboot your device.

    We've set pool.vkbit.com as the default solo pool, but feel free to change it to your preference.

Verification: If the setup is successful, you'll see your miner in the stats.

Resetting Setup

If you need to reset the setup flow:

After resetting, rediscover the LEAFMINER WiFi and go through the setup process again.

Mass Deploy

Starting from version 0.0.6, we now offer the capability for mass deployment through Platformio. If you need to apply the same configuration to multiple devices, simply modify the massdeploy.h file, uncomment the relevant lines, and customize the parameters according to your requirements. This allows you to effortlessly deploy a pre-configured firmware to multiple devices.

Donate

If you want to support this project, consider donating:

AliExpress Referral Use referral links in the list of hardware above
⚡️ Lightning leafminer@lifpay.me
Bitcoin bc1quqr7agnx6e0k9kn8h24zfj5dueeurhzflt3qjg

Credits

Inspired by:

Useful documentation: