bitaxe-monitor
Monitor Bitaxe Gamma Bitcoin miner status via HTTP API.
Bitaxe Monitor
Monitor and retrieve status information from Bitaxe Gamma (and compatible) Bitcoin miners via their HTTP API.
Overview
Bitaxe Gamma is an open-source Bitcoin miner based on the BM1370 ASIC. It exposes a REST API at http://<ip>/api/system/info that returns real-time statistics including:
- Hashrate (current, 1m, 10m, 1h averages)
- Power consumption and voltage
- Temperatures (ASIC, voltage regulator)
- Fan speed and RPM
- Share statistics (accepted/rejected)
- Best difficulty found
- WiFi status and signal strength
- Pool connection info
- Uptime and version info
Usage
Use the provided script to fetch and display miner status:
python3 scripts/bitaxe_status.py [ip_address] [--format {json,text}] [--set-ip IP]
IP Configuration
The script looks for the Bitaxe IP in this order:
- Command line argument
- Config file (
~/.config/bitaxe-monitor/config.json) BITAXE_IPenvironment variable- Error (if none found)
Saving IP Configuration
Option 1: Save to config file (recommended)
python3 scripts/bitaxe_status.py --set-ip 192.168.1.100
This saves the IP to ~/.config/bitaxe-monitor/config.json.
The config file is stored in a dedicated directory and does not modify your shell profile files.
Option 2: Set environment variable
export BITAXE_IP=192.168.1.100
python3 scripts/bitaxe_status.py
Option 3: Set for a single command
BITAXE_IP=192.168.1.100 python3 scripts/bitaxe_status.py
Checking Status
With IP configured:
python3 scripts/bitaxe_status.py
Override with different IP:
python3 scripts/bitaxe_status.py 192.168.1.105
Get raw JSON data:
python3 scripts/bitaxe_status.py --format json
API Endpoints
The Bitaxe API provides these main endpoints:
GET /api/system/info- Complete system status (used by default)GET /api/system/asic- ASIC-specific settingsGET /api/system/statistics- Historical statistics (requires data logging enabled)GET /api/system/statistics/dashboard- Dashboard-formatted statistics
Key Status Fields
| Field | Description | Unit |
|---|---|---|
hashRate | Current hashrate | GH/s |
hashRate_1m | 1-minute average | GH/s |
hashRate_10m | 10-minute average | GH/s |
power | Power consumption | Watts |
temp | ASIC temperature | °C |
vrTemp | Voltage regulator temp | °C |
fanspeed | Fan speed percentage | % |
fanrpm | Fan RPM | RPM |
sharesAccepted | Accepted shares | count |
sharesRejected | Rejected shares | count |
bestDiff | Best difficulty found | number |
wifiRSSI | WiFi signal strength | dBm |
uptimeSeconds | System uptime | seconds |
Resources
scripts/
bitaxe_status.py- Main script to fetch and display Bitaxe status- Supports both text (human-readable) and JSON output formats
- Handles connection errors gracefully
- Formats key metrics with emoji indicators
- Reads IP from config file or
BITAXE_IPenvironment variable - Saves IP to config file with
--set-ip
Configuration
Config File Location
The script stores configuration in:
~/.config/bitaxe-monitor/config.json
This directory is created automatically when using --set-ip.
Environment Variables
| Variable | Description | Required |
|---|---|---|
BITAXE_IP | IP address of your Bitaxe miner | Alternative to config file |
Error Handling
The script handles common errors:
- Connection failures (wrong IP, device offline)
- Invalid JSON responses
- Network timeouts
- Missing IP (prompts user to configure IP)
Command Reference
| Command | Description |
|---|---|
bitaxe_status.py | Check status using saved configuration |
bitaxe_status.py <IP> | Check status of specific IP (one-time) |
bitaxe_status.py --set-ip <IP> | Save IP to config file |
bitaxe_status.py --format json | Output raw JSON |
bitaxe_status.py --format text | Output formatted text (default) |
Examples
Quick setup (do once):
python3 scripts/bitaxe_status.py --set-ip 192.168.1.100
Daily usage:
python3 scripts/bitaxe_status.py
Check multiple miners:
python3 scripts/bitaxe_status.py 192.168.1.100
python3 scripts/bitaxe_status.py 192.168.1.101
References
For complete API documentation, see the official Bitaxe wiki: https://osmu.wiki/bitaxe/api/
The OpenAPI specification is available at: https://github.com/bitaxeorg/ESP-Miner/blob/master/main/http_server/openapi.yaml