Bitaxe is the most exciting thing to happen to home Bitcoin mining in years – a tiny, open‑source ASIC miner that you actually own. But if you’ve ever tried to set up solo mining on a Bitaxe, you know the pain: editing config.cfg, finding a trustworthy stratum URL, juggling three different browser tabs to see your hashrate, and wondering if the device is even connected.
I got so frustrated that I built Solobitaxe – a web dashboard that handles all of that nonsense for you. In this post I’ll walk through why I built it, how it works under the hood, and how you can start solo mining with your Bitaxe in literally one click.
The problem: Bitaxe solo mining is too manual
Out of the box, the Bitaxe firmware ships with a minimal web UI that shows basic stats. That’s great for checking hashrate, but when you want to configure it for solo mining, you have to:
- Find a reliable solo pool (or set up your own Bitcoin node with a stratum server).
- Figure out the exact stratum URL, port, worker name, and password.
- SSH or serial‑flash the configuration onto the device – or paste it into a tiny text box on the stock UI.
- Hope that the settings stick after a power cycle.
If you own more than one Bitaxe, you multiply this pain. If you’re a tinkerer who just wants the lottery mining experience without becoming a sysadmin, it’s a huge barrier.
I wanted something that felt like modern IoT: discover devices on your network, pick a pool, and go.
The solution: Solobitaxe.com
Solobitaxe is a web dashboard that runs right in your browser (or can be self‑hosted with Docker). It connects directly to your Bitaxe devices over your local network – no cloud account, no sign‑up, no data collection.
Here’s what you get:
- One‑click pool configuration – popular solo pools are pre‑loaded (you can add custom ones too)
- Live dashboard with hashrate, accepted shares, power consumption, and ASIC temperature in clean charts
- Automatic device discovery – finds all the Bitaxe miners on your LAN
- Firmware detection and over‑the‑air (OTA) update support
- Fully open‑source – you can self‑host it on a Raspberry Pi if you prefer
When you visit https://solobitaxe.com, the dashboard immediately scans your local network and shows every Bitaxe it finds. Select a device, choose “Solo CKPool” (or your own node), hit apply, and the Bitaxe starts hashing. You can monitor everything from a single tab, even on your phone.
How I built it – the tech that makes it tick
Since this is dev.to, let’s geek out about the stack a bit.
Talking to the Bitaxe
Bitaxe devices run on ESP32 microcontrollers and expose a simple HTTP API. That’s the key. Solobitaxe is essentially a local network orchestrator that sends HTTP requests to the Bitaxe’s IP to:
- Read system info (
/api/system/info) - Change stratum settings (
/api/system/config) - Restart the mining process after changes
All of this happens on the client side. The web dashboard itself is a static single‑page application that makes direct HTTP calls from your browser to the Bitaxe APIs. That means no backend server is required – your data never leaves your local network.
Tech stack
- Frontend: Vue 3 + Vite + Tailwind CSS I chose Vue for its gentle learning curve and excellent composition API. Tailwind made it fast to prototype the dashboard layout.
- Charts: Chart.js via vue‑chartjs Real‑time hashrate and temperature graphs update every second, giving you instant feedback.
- Device communication: Axios (browser‑side) All requests to the Bitaxe API go through a thin HTTP client. I had to handle CORS properly, which is why the production build includes a tiny proxy for some edge cases – but for most users, direct calls work out of the box.
- Self‑hosting option: Docker image with Nginx If you want to run Solobitaxe locally 24/7, the whole thing fits in a single container.
Challenges I hit (and what I learned)
- Cross‑origin requests from HTTPS to HTTP devices: Bitaxe devices serve their API over plain HTTP. When you access Solobitaxe over HTTPS, the browser blocks mixed content. I solved this by implementing a lightweight WebSocket relay that your browser can fall back to when needed, without any installation.
- Firmware version fragmentation: Not all Bitaxe devices run the same firmware, so the config API paths and payload formats differ. Solobitaxe auto‑detects the firmware version and adapts accordingly – that took a lot of testing with community members.
- Restarting the miner without dropping flags: After pushing a new pool config, you need to restart the miner cleanly. A simple reboot sometimes loses the new settings. I ended up carefully sequencing the HTTP calls to save config, verify, then issue a soft restart.
How to try it right now (no sign‑up)
If you have a Bitaxe on your local network, just open:
If you don’t own a Bitaxe but are curious, I put together a short demo video that walks through the whole flow.
The entire code is open source and lives on GitHub:
🔗 github.com/your‑org/solobitaxe (replace with actual repo)
What’s next
This is an early beta, and I’m actively gathering feedback from the Bitaxe community. Some things I’m considering:
- A mobile app (React Native) so you can check your miner on the go
- Support for additional open‑source mining hardware (like the NerdMiner)
- Alerts via Telegram/Discord when your Bitaxe finds a block or goes offline
I’d love to hear what you think – especially if you have ideas that would make solo mining even more accessible for normal people.
Drop a comment here, open an issue on GitHub, or find me on Twitter/X at @yourhandle.
Happy (solo) hashing! 🧡⛏️
If you enjoyed this, you might also like my other posts on building hardware‑adjacent web tools. And if you’re working on something related to Bitcoin self‑sovereignty, let’s connect!
Top comments (0)