Bitaxe Monitor
by @pietro395
Monitor Bitaxe Gamma Bitcoin miner status via HTTP API. Use when the user wants to check the status, hashrate, temperature, power consumption, or statistics of a Bitaxe Gamma miner. Supports config file or environment variable for device IP configuration, fetching system info, and formatting output as human-readable text or JSON.
clawhub install bitaxe-monitorπ About This Skill
name: bitaxe-monitor description: Monitor Bitaxe Gamma Bitcoin miner status via HTTP API. Use when the user wants to check the status, hashrate, temperature, power consumption, or statistics of a Bitaxe Gamma miner. Supports config file or environment variable for device IP configuration, fetching system info, and formatting output as human-readable text or JSON.
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:// that returns real-time statistics including:
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:
1. Command line argument
2. Config file (~/.config/bitaxe-monitor/config.json)
3. BITAXE_IP environment variable
4. 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 statisticsKey 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 statusBITAXE_IP environment variable
- Saves IP to config file with --set-ipConfiguration
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:
Command Reference
| Command | Description |
|---------|-------------|
| bitaxe_status.py | Check status using saved configuration |
| bitaxe_status.py | Check status of specific IP (one-time) |
| bitaxe_status.py --set-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
π‘ 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
βοΈ 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 |