AS OF NOVEMBER 2015
I no longer have any time to dedicate to this project. I don't see that changing anytime in the near or distant future.
The installation package is now only available on GitHub. If you find it somewhere, be EXTREMELY CAREFUL, as it may be infected.
The source code is on github if anyone wishes to fork it and modify it for their own use.
I've sold my last miner and at this point in time I'm planning on holding on to my few coins for the long term to see if they'll ever be worth anything significant.
If someone or a group of people are interested in having an enhancement made to this project by making "more worth my while", feel free to PM me.
GitHub link:
https://github.com/mdude77/MMinerMonitorM
---
It grew old having to manually check each of my Bitmain Ants to see how they were doing. So I created this. I've since added support for Spondoolie units (may not initially work for SP10).
Note that this is no longer called M's Ant Monitor. At this point I'm open to adding support for any miner that uses cgminer. Note that I can not and will not attempt to physically obtain every type of miner out there. I need your help for this. There's a "get miner info" button on the Miner Config tab in this app. Use that to get the cgminer API output from your miner and PM it to me, and then I'll work on adding it as time allows.
Features:
- Look at all your Bitmain Ants (S1/S2/S3/S4/S5/C1) and your Spondoolie units (SP10/SP20/SP30/SP31/SP35) in one spot, assuming you're using Windows (uses .net 4.0) and your PC can reach them all via your network.
- Can trigger visual alerts based on your criteria (temp too high, hash too low, fan too high, fan too low, X count too high).
- It can initiate a software reboot automatically if it detects a specified number of dreaded Xs in the status (for Ants), if the hash rate drops too low, or if it fails to respond properly to an API poll request.
- Can scheduled automatic reboots, either by schedule, or by miner uptime.
- You can manually reboot miners from the display.
- You can manually *temporarily* update pool info for one or more S2, C1, and S4s (and S1/S3/S5s and Spondoolie units if you configured it to allow API access).
- Uses the API for all miners, and supports Web scraping for S1, S2, S3, and S4. The Web port, SSH port, and API port are completely configurable per miner.
- Shows the true hardware error percentage.
- You can use it to scan your network to pick up the miner addresses, or you can enter them manually.
- Open source (GPL3):
https://github.com/mdude77/MMinerMonitor.
- Has configurable multi-threaded polling of your miners. You can use 1 to 64 threads simultaneously for your Ant farm. It defaults to not displaying the updates to the grid until 1 second after the refresh was initiated. You can (and should!) increase that value if you have a large number of miners and/or you have slow video rendering.
- See
https://bitcointalksearch.org/topic/m.8761439: Scanned 1200 Ants in 52 seconds.
Notes:
- There are two ways to monitor Spondoolie units.
1 - Via HTTP (web). The downside to using this is you can not reboot your device remotely. However, Spondoolie units usually don't need this.
HTTPS is available if you want/need to secure your credentials. Note that this may not work with all hosting configurations!
2 - Via the API. This only works if you have API access, which by default, is not enabled. API access usually is not available if your unit is remote. To enable API access, do the following:
* This may not work with SP10s. If yours doesn't work, use the "Get Miner Info" button and PM me the output!
HOW TO ENABLE API SUPPORT on your Spondoolie unit:
My SP20 came with only local API access allowed. That means this program won't be able to talk to it. To enable it, you need to SSH into your miner (you may have to enable SSH) and edit /etc/cgminer.conf to allow network access. If you don't know how to do this, try this at your own risk:
SSH to your miner
type "vi /etc/cgminer.conf"
NOTE: with newer firmware it may be cgminer.conf/template
On my SP20, I see one line of data that start with this:
{"api-listen":true,"api-allow":"W:127.0.0.1","pools":
press 'i' on your keyboard to allow editing
scroll to the end of the section that reads "W:127.0.0.1" and add ",your ip", like this where "your ip" is the IP address the monitoring app is running from. It should look something like this:
{"api-listen":true,"api-allow":"W:127.0.0.1,192.168.0.194","pools":
press Esc, ':' then 'w' and then 'q' and press enter.
Restart cgminer from the miner console, and on the pools tab you should see the new API allow.
- To copy the configuration from the PC for use on another PC, go into RegEdit, navigate to HKEY_CURRENT_USER\Software\MAntMonitor. Right click the MAntMonitor key on the left and click Export. Save that file, and then on the other PC, open RegEdit and click File -> Import and import that file you just exported.
- Items on the output that may need additional explanation:
- HWE = Hardware Error Percentage
- Pools = 3 letters, one for each pool. U = up, D = down, N = N/A (blank). Hover the cursor over this column to see complete pool info.
- Status = the number of Xs OR dashes in each chain (Ants only). 0X is zero Xs, not "O" X. That's a good thing!
- Rej% = Pool percentage rejects
- Stale% = Pool percentage stale
- HFan = High fan speed of all fan speeds (Ants only)
- HTemp = High temperature of all temperature readings
- ATemp = Average temperature of all the temperature readings
- XCount = How many Xs are across all your chains (Ants only)
- ACount = How many Alert counts there are for this Ant (Ants only). Sort by this column to have them bubble to the top.
Notes on how to use the pool info:
- Once you establish what pool #1, #2, and #3 are, the option to update pool info will appear on the right click menu on the output grid.
- To update more than one miner at a time you'll need to enable to selection column.
- Importing existing pool configs from miners doesn't retrieve the password. The PW doesn't seem to be in the API. Most pools don't care about the PW, so I didn't consider this to be a big deal.
- Setting the pool en masse does NOT work for S1s and S3s unless you modify the cgminer config to allow SSH API access. You have to know how to do that (hint: google should be able to find it for you). I personally haven't figured out how to do it yet.
- Blank passwords are passed as "abc". I haven't found a way to get the API to take a blank password yet. Since most pools that would want a blank PW don't care about the PW, I don't see this to be a big deal.
- Updates performed this way are not permanent! The API doesn't appear to have a way to set this permanently. Next reboot or UI change will cause the pool settings to revert to what they were before.
Troubleshooting:
- BitDefender seems to cause problems with this app. I think you can whitelist the app to fix the problem. Other malware apps might cause problems as well.
File: MMinerMonitor52.zip
CRC-32: b424c313
MD4: 38587553924a77ac74bb1743e843b4cd
MD5: ee56f8d1d39ca61566d5fccdb09e2b6c
SHA-1: a91a651dd95796f62219c7da3216464990d70002
M