A professional terminal application for controlling XMRig Monero mining operations with intelligent CPU management, real-time monitoring, and performance analytics.
- Interactive Pool Selection - Compare 6+ popular pools with detailed metrics (SupportXMR, MineXMR, MoneroOcean, P2Pool, Nanopool, HashVault)
- Dynamic CPU Control - Real-time thread and priority adjustment
- Real-Time Dashboard - Live statistics with auto-refresh and visual performance indicators
- Settings Persistence - Remembers your pool and wallet between sessions
- Cross-Platform - Native support for macOS, Linux, and Windows
- OS: macOS 10.15+, Linux (x86_64/ARM64), or Windows 10+
- Python: 3.8 or higher
- RAM: 512MB minimum, 1GB recommended
- Monero Wallet: Valid XMR address (starts with
4or8)
git clone https://github.com/anomalyco/monero-mining-controller.git
cd monero-mining-controller
python setup.pyThe setup script will:
- Validate Python version and system compatibility
- Install required packages (
rich,psutil) - Download appropriate XMRig binary for your platform
- Create initial configuration files
pip install rich psutil
# Download XMRig from https://github.com/xmrig/xmrig/releases
# Place xmrig executable in project directory
cp config.json.example config.jsonpython mining_controller.pyFirst-time setup:
- Press
1- Select mining pool (MoneroOcean recommended) - Press
2- Enter your Monero wallet address - Press
3- Configure CPU threads (start with 50% of cores) - Press
4- Start mining!
Subsequent runs: Press 4 to start mining immediately (settings are remembered)
| Option | Description |
|---|---|
| 1 | Select/Change Mining Pool |
| 2 | Set/Change Wallet Address |
| 3 | Configure CPU Usage |
| 4 | Start Mining |
| 5 | Stop Mining |
| 6 | Restart Mining |
| 7 | View Configuration |
| 8 | View Pool Comparison |
| 9 | View XMRig Logs |
| 10 | Check Mining Status |
| 11 | Troubleshoot Connection |
| 12 | Reset Settings |
| 0 | Exit Application |
| Pool | Fee | Min Payout | Type | Best For |
|---|---|---|---|---|
| MoneroOcean β | 0.5% | 0.003 XMR | PPLNS | Frequent payouts, auto coin switching |
| SupportXMR β | 0.6% | 0.1 XMR | PPLNS | Beginners, community support |
| MineXMR β | 1.0% | 0.1 XMR | PPLNS | Stable, established pool |
| P2Pool β | 0% | 0.0003 XMR | P2P | Privacy-focused, decentralized |
| Nanopool | 1.0% | 1.0 XMR | PPS | Multi-currency, PPS payments |
| HashVault | 0.9% | 0.5 XMR | PPLNS | Competitive fees, reliable |
| CPU Cores | Recommended Threads |
|---|---|
| 2-4 | 1-2 |
| 6-8 | 3-4 |
| 10-16 | 5-8 |
| 16+ | 8-12 |
Tip: Start with 50% of available cores, then adjust based on system responsiveness.
| Priority | Level | Use Case |
|---|---|---|
| 0 | Highest | Dedicated mining rigs |
| 1-2 | High | Primary mining machines |
| 3 | Normal | General use machines |
| 4-5 | Low | Background mining |
- π Slow (< 1 KH/s)
- π Good (1-10 KH/s)
- π Fast (10-100 KH/s)
- π₯ Blazing (100 KH/s - 1 MH/s)
- β‘π Legendary (β₯ 1 MH/s)
- Disable TLS: Use option 11 β Press 1 to disable TLS
- Switch Ports: Try alternative ports (10001, 10002, 10128)
- Try Different Server: Use option 11 β Press 3 to switch servers
- Check Network: Ensure stable internet connection
# Check XMRig exists and is executable
ls -la xmrig*
chmod +x xmrig # macOS/Linux
# View current config
python mining_controller.py
# Press 7 to view configuration- Increase thread count (option 3)
- Lower CPU priority (0-2 for better performance)
- Close unnecessary applications
- Monitor CPU temperature (<80Β°C recommended)
python mining_controller.py
# Press 10: Check Mining Status
# Press 11: Troubleshoot Connection
# Press 9: View XMRig LogsmacOS:
# Disable App Nap
defaults write -g NSAppSleepDisabled -bool trueLinux:
# Enable huge pages
echo 128 > /proc/sys/vm/nr_hugepages
# Set CPU governor to performance
cpupower frequency-set -g performanceWindows:
- Set power plan to "High Performance"
- Disable Windows Defender real-time protection for mining folder
- β Use a dedicated mining wallet
- β Move mined coins to secure wallet regularly
- β Never reuse addresses for different purposes
- β Avoid using exchange deposit addresses for mining
- Choose privacy-focused pools (P2Pool)
- Configuration stored locally only
- Application sends no data externally
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- XMRig: GPLv3 License
- Rich: MIT License
- psutil: BSD License
This software is provided "as is" without warranty. Cryptocurrency mining involves financial risk. Always verify transactions and use secure practices.