Supported Targets | ESP32-S3 |
---|---|
Old Platform | |
----------------- | --------------------- |
Required Platform | ESP-IDF v5.2.X |
----------------- | --------------------- |
This is a forked version of ESP-miner, the original firmware of Bitaxe project developed by @skot/ESP-Miner, @ben and @jhonny.
The current fork supports LVGL library with an UI that works with 8bit parallel screen over TTGO-TdiplayS3
board.
This features unfortunatelly can't be added to the original project because requires specific ESP-IDF version to be built.
Now firmware is up to date with current ESP-miner, so this firmware adds a Display layer
Easyiest way to flash firmware. Build your own miner using the folowing firwmare flash tool:
- Get a TTGO T-display S3
- Get a NerdAxe board
- Go to flasher online tool: https://flasher.bitronics.store/ (recommend via Google Chrome incognito mode)
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.
- Flash with the bitaxetool
bitaxetool --config ./config.cvs --firmware ./esp-miner-factory-nerd101-v2.1.4.bin
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
Starting with v2.0.0, the ESP-Miner firmware requires some basic manufacturing data to be flashed in the NVS partition.
-
Download the esp-miner-factory-v2.0.3.bin file from the release tab. Click here for the release tab
-
Copy
config.cvs.example
toconfig.cvs
and modifyasicfrequency
,asicvoltage
,asicmodel
,devicemodel
, andboardversion
The following are recommendations but it is necessary that you do have all values in your config.cvs
file to flash properly.
-
recommended values for the NerdAxe 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,101
Nerdaxe uses same bitaxe API funcitons.
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