Skip to content
This repository has been archived by the owner on Aug 8, 2024. It is now read-only.
/ ESP-Miner Public archive
forked from skot/ESP-Miner

A bitcoin ASIC miner for the ESP32

License

Notifications You must be signed in to change notification settings

aaron3481/ESP-Miner

 
 

Repository files navigation

ESP-Miner

Supported Targets ESP32-S3 (BitAxe v2+)

Requires Python3.4 or later and pip

Install bitaxetool from pip. pip is included with Python 3.4 but if you need to install it check https://pip.pypa.io/en/stable/installation/

pip install --upgrade bitaxetool

Hardware Required

This firmware is designed to run on a BitAxe v2+

If you do have a Bitaxe with no USB connectivity make sure to establish a serial connection with either a JTAG ESP-Prog device or a USB-to-UART bridge

Preconfiguration

Starting with v2.0.0, the ESP-Miner firmware requires some basic manufacturing data to be flashed in the NVS partition.

  1. Download the esp-miner-factory-v2.0.3.bin file from the release tab. Click here for the release tab

  2. Copy config.cvs.example to config.cvs and modify asicfrequency, asicvoltage, asicmodel, devicemodel, and boardversion

The following are recommendations but it is necessary that you do have all values in your config.cvsfile to flash properly.

  • recommended values for the Bitaxe 1368 (supra)

    key,type,encoding,value
    main,namespace,,
    asicfrequency,data,u16,490
    asicvoltage,data,u16,1200
    asicmodel,data,string,BM1368
    devicemodel,data,string,supra
    boardversion,data,string,400
    
  • recommended values for the Bitaxe 1366 (ultra)

    key,type,encoding,value
    main,namespace,,
    asicfrequency,data,u16,485
    asicvoltage,data,u16,1200
    asicmodel,data,string,BM1366
    devicemodel,data,string,ultra
    boardversion,data,string,0.11
    
  • recomended values for the Bitaxe 1397 (MAX)

    key,type,encoding,value
    main,namespace,,
    asicfrequency,data,u16,475
    asicvoltage,data,u16,1400
    asicmodel,data,string,BM1397
    devicemodel,data,string,max
    boardversion,data,string,2.2
    

Flash

The bitaxetool includes all necessary library for flashing the binary file to the Bitaxe Hardware.

The bitaxetool requires a config.cvs preloaded file and the appropiate firmware.bin file in it's executed directory.

  1. Flash with the bitaxetool
bitaxetool --config ./config.cvs --firmware ./esp-miner-factory-v2.0.3.bin

API

Bitaxe provides an API to expose actions and information.

For more details take a look at main/http_server/http_server.c.

Things that can be done are:

  • Get System Info
  • Get Swarm Info
  • Update Swarm
  • Swarm Options
  • System Restart Action
  • Update System Settings Action
  • System Options
  • Update OTA Firmware
  • Update OTA WWW
  • WebSocket

Some API examples in curl:

# Get system information
curl http://YOUR-BITAXE-IP/api/system/info
# Get swarm information
curl http://YOUR-BITAXE-IP/api/swarm/info
# System restart action
curl -X POST http://YOUR-BITAXE-IP/api/system/restart

About

A bitcoin ASIC miner for the ESP32

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 50.7%
  • CSS 30.6%
  • TypeScript 9.5%
  • HTML 4.0%
  • SCSS 2.5%
  • Python 1.3%
  • Other 1.4%