A command line tool used to automate the Bobcat miner. This project also offers a robust python SDK's for interacting with the Bobcat miner.
Project description
bobcat miner python
A command line tool used to automate the Bobcat miner. This project also offers a robust python SDK's for interacting with the Bobcat miner.
Install
$ pipx install bobcat-miner
Please see this guide for more information about installing stand alone command line tools with pipx.
Quick Start
The bobcat autopilot
command will automatically diagnose and repair the Bobcat miner!
$ bobcat autopilot
✅ Sync Status: Synced (gap:-1) ✨
✅ Relay Status: Not Relayed ✨
✅ Network Status: Good 📶
✅ Temperature Status: Good (38°C) ☀️
or run with the offical Docker container
$ docker run --rm -it aidanmelen/bobcat autopilot
Run bobcat --help
to learn about the available commands and options.
Monitoring with Discord
Send events to a Discord channel using a webhook URL
$ bobcat --discord-webhook-url https://discord.com/api/webhooks/xxx autopilot
✅ Sync Status: Synced (gap:0) ✨
⚠️ Relay Status: Relayed
✅ Network Status: Good 📶
❌ Temperature Status: Hot (78°C) 🌋
By default, all events WARNING
or higher (i.e. ERROR
and CRITICAL
) will be sent to the Discord channel. This can be configured to include DEBUG
and INFO
events as well.
Finding your Bobcat
Manually Specify the Hostname / IP Address
By default, the Bobcat Autopilot will search the common 192.168.0.0/24
and 10.0.0.0/24
local networks and try to establish a Bobcat connection.
Otherwise, you can follow these instructions to find your Bobcats's ip address and manually specify it with:
$ bobcat --hostname 192.168.0.10 -C DEBUG autopilot
🐛 Connected to Bobcat: 192.168.0.10
🐛 The Bobcat Autopilot is starting 🚀 🚀 🚀
Search for Bobcat by Animal Name
This will connect to the Bobcat on your network that matches the animal name.
$ bobcat --animal "Fancy Awesome Bobcat" -C DEBUG autopilot
🐛 Connected to Bobcat: 192.168.0.10
🐛 Refresh: Miner Data
🐛 Verified Bobcat Animal: fancy-awesome-bobcat
🐛 The Bobcat Autopilot is starting 🚀 🚀 🚀
Bobcat Dry Run
This example is admittedly contrived, but it demonstrates how a dry run can show what actions would normally be performed against the bobcat.
$ bobcat --dry-run reboot
Do you want to reboot the Bobcat? [y/N]: y
⚠️ Dry run is enabled: Reboot Skipped
Bobcat SDK Usage
import bobcat_miner
bobcat = bobcat_miner.Bobcat("192.168.1.10")
# refresh
bobcat.refresh_status()
bobcat.refresh_miner()
bobcat.refresh_speed()
bobcat.refresh_temp()
bobcat.refresh_dig()
bobcat.refresh() # all endpoints
# properties
bobcat.status
bobcat.gap
bobcat.blockchain_height
bobcat.epoch
bobcat.tip
bobcat.ota_version
bobcat.region
bobcat.frequency_plan
bobcat.animal
bobcat.helium_animal
bobcat.pubkey
bobcat.state
bobcat.miner_status
bobcat.miner_height
bobcat.miner_alert
bobcat.miner_desc
bobcat.names
bobcat.image
bobcat.created
bobcat.p2p_status
bobcat.ports_desc
bobcat.ports
bobcat.private_ip
bobcat.public_ip
bobcat.peerbook
bobcat.timestamp
bobcat.error
bobcat.temp0
bobcat.temp1
bobcat.coldest_temp
bobcat.hottest_temp
bobcat.temp0_c
bobcat.temp1_c
bobcat.temp0_f
bobcat.temp1_f
bobcat.download_speed
bobcat.upload_speed
bobcat.latency
bobcat.dig_name
bobcat.dig_message
bobcat.dig_dns
bobcat.dig_records
# actions
bobcat.reboot()
bobcat.reset()
bobcat.resync()
bobcat.fastsync()
Troubleshooting
Please see No Witness's Troubleshooting Guide for more information.
Donations
Donations are welcome and appreciated! :gift:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for bobcat_miner-0.13.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 515b624cc7408a0f56fad3744758eb724cc0c6d677003bbcedb7a9891267d62b |
|
MD5 | 6d7f77fd86a2043624ee324315ba0596 |
|
BLAKE2b-256 | ffbd47f8618738d87f30d23cf9f6ec0a35b49b7de0592f50def898c900294bce |