/NerdQaxe

qaxe bitcoin miner

Primary LanguageHTMLCERN Open Hardware Licence Version 2 - Strongly ReciprocalCERN-OHL-S-2.0

NerdQAxe+

NerdQaxe+ is a Qaxe+ with Nerdminer / Nerdaxe Display and is running the BitAxe Firmware as its core.

It runs standalone without Raspberry Pi and uses 4 ASICs of type BM1368.

Highlights:

  • uses the NerdAxe / NerdMiner display
  • better Buck converter that runs a lot cooler (about 10°C) with oltage / current / power monitoring
  • standalone, no Raspberry Pi or other PC needed
  • AxeOS with improvements and enhancements
    • Influx DB support
    • Better charting (10m, 1h, 1d), data doesn't get lost on Web UI reloads
    • ASIC clock and voltage adjustable without reboot
    • Stratum client stability improvements (TCP timeouts)

The NerdQAxe+ runs with a variant of the AxeOS firmware: https://github.com/shufps/ESP-Miner-NerdQAxePlus

rev5.0 Good to go, no bug found 🥳🚀

QAxe+

QAxe+ is a quad-BM1368 Variant. Mining speed is average 2.4TH/s at 55W (measured at 230V)


rev4: QAxe+ with BM1368, working but ASIC reset behaves weird sometimes. Measured performance is 2.4TH/s average with 55W (measured on 230V)
rev4.1: only change is 3 pull-down resistors on NRSTI pins

Qaxe

Qaxe is a quad-BM1366 Miner based on the PiAxe and BitAxe.

image

rev1: is tested and operating at about 1.7TH/s average speed.
rev2: working fine with the expected speed of ~1.8TH/s avg after some minor modifications (330µF caps are wrongly placed, see rev3)
rev3: Fixed Caps placement and added Boot-Switch. It should put the STM32 into DFU bootloader but not tested yet.
rev3.1: Added pulldown on PB2 that is needed for booting the USB bootloader
rev3.2: Board got 3mm larger for a perfect fit of low-profile coolers

note: If you have a board with BOOT-button (any rev3) please order the L072 STM32 (BOM has been updated) because usb bootloader is the easiest way to flash the STM.

ASICs

The QAxe uses 4 ASICs of type BM1366.

image

The QAxe+ and NerdQaxe+ uses 4 ASICs of type BM1368.

Compilation (Bootloader or CMSIS-DAP) (QAxe, QAxe+)

# install curl
sudo apt install curl

# install rust
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

# add to ~/.bash.rc (afterwards, opening a new terminal is needed)
echo 'source "$HOME/.cargo/env"' >> ~/.bashrc

# clone repository
git clone https://github.com/shufps/qaxe

# clone submodules
cd qaxe
git submodule init
git submodule update

# add rust target for STM32L0 variants
#rustup target add thumbv6m-none-eabi

# or add rust target for STM32L1 variants
rustup target add thumbv7m-none-eabi

# build firmware for L072
cd firmware/fw-L072CB
./build.sh

Installation via USB Bootloader on board with BOOT button (QAxe, QAxe+)

The STM32L072CB variant has an integrated DFU Bootloader that starts when pressing the BOOT button during reset.

Afterwards the firmware can be flashed via dfu-utils:

# install cargo-binutils and llvm tools
cargo install cargo-binutils
rustup component add llvm-tools-preview

# create the firmware.bin
DEFMT_LOG=info cargo objcopy --release --bin qaxe -- -O binary qaxe.bin

# install dfu-utils
sudo apt-get install dfu-util

now start the stm32 in DFU mode by pressing `boot` (only works with the STM32L072CB variant)

# after booting, list the devices
dfu-util --list

# flash the binary
dfu-util -a 0 -s 0x08000000:leave -D qaxe.bin

Mining Client (QAxe, QAxe+)

image

Stratum Mining Client:
https://github.com/shufps/piaxe-miner

Misc

If you like this project and want to support future work, feel free to donate to: bc1q29hp4fqtks2wzpmfwtpac64fnr8ujw2nvnra04