bitaxeorg / esp-miner-multichip

GNU General Public License v3.0
3 stars 6 forks source link

GitHub Downloads (all assets, all releases)

ESP-Miner-Multichip

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-Multichip firmware requires some basic manufacturing data to be flashed in the NVS partition.

  1. Download the esp-miner-multichip-factory.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.

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-multichip-factory.bin

Build from source

Building the esp-miner-multichip firmware requires ESP-IDF v2.2 upwards and npm 10.2+

--> install VSCode extension for esp-idf and express install

in ./main/http_server/axe-os --> npm install--> npm run build

in ./ --> idf.py build --> this will create the build dir and you can use the esp-miner-multichip.binand wwww.bin to update your Device.

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:

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