



Follow me on Twitter:



Follow me on Twitter: @JustinMilone





1.4.1.2 (ReadMe)

Current version release: July 27, 2014

Current version:Current version release: July 27, 2014 *includes only version 1.3.1 or newer

News/Updates



Have more than one mining rig? See how CGWatcher can help make it easier to manage them until CGRemote is finished... or join the CGRemote beta to start using it to manage all of your miners in one program.



February, 2015 - CGWatcher and CGRemote are no longer associated with CoinMyne, Inc. and are back under my control.



DO NOT DOWNLOAD CGWATCHER FROM ANYWHERE OTHER THAN IT'S OFFICIAL PAGE!

The new official download page is located at The new official download page is located at http://www.cgwatcher.com . Do not download CGWatcher from SourceForge, as modified files appear there occasionally.



See











- CGWatcher and CGRemote are no longer associated with CoinMyne, Inc. and are back under my control.See Bitcointalk.org thread or Readme for more information.







Profitability Mining - mine the most profitable coin, or use other values like reward, difficulty, and network hashrate to automatically determine which coin to mine. If you don't want to jump on the coin everyone else is, you can set it to mine 2nd, 3rd, 4th, etc. most profitable (or whichever value you're using).

- mine the most profitable coin, or use other values like reward, difficulty, and network hashrate to automatically determine which coin to mine. If you don't want to jump on the coin everyone else is, you can set it to mine 2nd, 3rd, 4th, etc. most profitable (or whichever value you're using). Using Web Config Files - instead of selecting a .conf file on your computer, you can enter a URL in CGWatcher. This allows you to share configs between two or more miners. Then use arguments or variables to customize any config options per machine.

- instead of selecting a .conf file on your computer, you can enter a URL in CGWatcher. This allows you to share configs between two or more miners. Then use arguments or variables to customize any config options per machine. Remote Control - CGRemote allows you to monitor and control all of your miners remotely inside one application. While it works with miners on any OS, miners running CGWatcher have a number of additional features allowing you to configure and manage miners and profiles as if you were at that computer. Once you know what CGWatcher is, you can read more about some popular features in more detail:

Description



CGWatcher is a GUI for bitcoin miners CGMiner and BFGMiner (32-bit and 64-bit). Along with giving a graphical interface to the miner, it has several options to monitor the miner and correct problems when they are detected, minimizing downtime. It is not affiliated with CGMiner or BFGMiner, it just helps to ensure they stay running while providing something a little easier to look at. CGWatcher is a GUI for bitcoin miners CGMiner and BFGMiner (32-bit and 64-bit). Along with giving a graphical interface to the miner, it has several options to monitor the miner and correct problems when they are detected, minimizing downtime. It is not affiliated with CGMiner or BFGMiner, it just helps to ensure they stay running while providing something a little easier to look at.





It works via the miner's API, which was created for this purpose - to allow other software to communicate with the miner. While there are several web applications to allow remote monitoring of these miners, that is not the purpose of CGWatcher. It is designed to run on the same computer as the miner, and will watch for the conditions you set to determine if the miner is working properly. If it is not, CGWatcher takes the appropriate actions to correct the problem. The idea is to create a program that does the monitoring for you, so you don't have to use those web applications to constantly check on your miners.





CGWatcher is a small and portable .NET application. It will run as a 64-bit application in 64-bit Windows, and a 32-bit application in 32-bit Windows. It can be run inside sandbox environments like Sandboxie if you don't trust it, however settings and profiles may not be saved. The application includes a few libraries (see credits below) and creates its own config file (CGWatcher.exe.ini), log (cgwatcher.log), log for mining events (miner.log) and data files for profiles and named config files (profiles.dat, config.dat).

*Screenshots are as of version 1.2.0.0 and do not include the About tab.







Features

Monitor mining - Set an interval (in seconds) for checking mining status. This is how often CGWatcher will update mining data. This must be enabled to use the checking features, including:



■ Restarting the miner or computer when a sick or dead GPU/FPGA/ASIC is detected.

■ Restart the miner if the total hashrate falls below a specified number or percentage of average hashrate for a specified number of seconds. You can specify hashrates for sha256 and scrypt separately.

■ Restart the miner if CGWatcher had full API access but now only has read-only (in the same miner process), or if the API access was enabled but was lost completely.

■ Restart the miner or computer if accepted or total shares do not increase for X number of minutes.

■ Restart the miner after X hours of continuous mining to cover any problems that other checks may have missed. That ensures that if a problem arises, at worst the downtime will be limited to the number of hours you set here.

■ Ensure miner stays running option makes sure that mining never stops unless you stop it using CGWatcher (by clicking the Pause Mining or Stop buttons.)

■ Restart the miner if a minimum number of devices are not properly mining.

- Set an interval (in seconds) for checking mining status. This is how often CGWatcher will update mining data. This must be enabled to use the checking features, including: ■ Restarting the miner or computer when a sick or dead GPU/FPGA/ASIC is detected. ■ Restart the miner if the total hashrate falls below a specified number or percentage of average hashrate for a specified number of seconds. You can specify hashrates for sha256 and scrypt separately. ■ Restart the miner if CGWatcher had full API access but now only has read-only (in the same miner process), or if the API access was enabled but was lost completely. ■ Restart the miner or computer if accepted or total shares do not increase for X number of minutes. ■ Restart the miner after X hours of continuous mining to cover any problems that other checks may have missed. That ensures that if a problem arises, at worst the downtime will be limited to the number of hours you set here. ■ Ensure miner stays running option makes sure that mining never stops unless you stop it using CGWatcher (by clicking the Pause Mining or Stop buttons.) ■ Restart the miner if a minimum number of devices are not properly mining.

Statistics - These miners provide a lot of information. CGWatcher attempts to present it in an easier-to-read interface, using tabs to separate information. Basic mining stats can be found on the Status tab. Device-specific stats can be found on the Devices tab, and pool-specific on the Pools tab. More detailed information on the miner and CGWatcher can be found in the Report tab.

Control - You can easily change miner settings while it is running. Change GPU core, memory, voltage, or intensity. Re-prioritize and enable/disable pools. A large Pause/Start Mining button allows you to easily stop and resume mining. Another button opens the miner's configuration file in the Config File Editor. I've tried to add buttons to open files or directories wherever you may want to so you can do it all from inside the program.

Overheat Protection - CGMiner provides overheat protection for AMD cards. Using the temp-target, temp-overheat, and temp-cutoff settings, it can adjust fan and clock speeds to maintain a target temperature and disable devices that get too hot (if auto-fan and auto-gpu are enabled.) CGWatcher now also provides similar protection for Nvidia cards by adjusting intensity to maintain the target temperature and disabling GPUs that get too hot. It will enable and/or slowly raise intensity back to their original values once temperatures cool down back into the target range. I'm not sure if anyone mines with Intel HD integrated graphics since modern CPUs have better OpenCL support. Currently CGWatcher does not support overheat protection for Intel devices, but I will be doing some tests to see whether the CPU temperatures it is now capable of getting are enough to provide similar support for these devices. You can see if the miner or CGWatcher is providing overheat protection for a GPU in the GPU tab next to the temperature.



For GPUs that miner is providing overheat protection for (AMD), CGWatcher takes a hands-off approach except for when the miner disables them for exceeding temp-cutoff. Although the miner is supposed to re-enable them once they return to target temperatures, this does not seem to happen so CGWatcher will restart the GPU once it has returned to temp-target temperature. Scheduling - Scheduled actions give you complete control over what your miner does and when. Actions include start mining, stop mining, restart mining, restart computer, change intensity, switch profile, etc. Along with creating actions to run at specified times, you can create actions that run at set intervals.



You can create profiles for each coin you mine, then set CGWatcher to switch to whatever is most profitable at the times or intervals you specify.



You can also set CGWatcher to increase GPU intensities when the computer is idle, and it will return them to their original values once you start using the computer again. You set the intensity, you set how long the computer must be idle before intensities are changed.







Variables - You can post config files online and use their URL when setting up profiles in CGWatcher. You can also create custom variables on each computer to customize the shared config file to each computer's hardware or configuration. Set your variable names and values in CGWatcher and it replaces the variable name with the value in config files, arguments, and batch files before it uses those files to start or restart the miner.

- These miners provide a lot of information. CGWatcher attempts to present it in an easier-to-read interface, using tabs to separate information. Basic mining stats can be found on the Status tab. Device-specific stats can be found on the Devices tab, and pool-specific on the Pools tab. More detailed information on the miner and CGWatcher can be found in the Report tab.

Profiles

something.







When you switch to a new profile ("activate" a profile), CGWatcher will use that profile's settings any time it starts or restarts the miner. However, if you switch profiles while a miner is running, you will obviously need to restart the miner in order for the new profile to be used. You can see which profile a currently running miner is using on the Status tab. Ideally it would always be the same as the active profile you've set... but if you changed profiles while mining and chose not to restart the miner when prompted, keep in mind that the miner will still be running on the previous profile until it is restarted (or stopped and started). CGWatcher allows you to create mining profiles using different miners, config files, and/or arguments. When you first use it, it will create a default profile and try to locate a miner if one is running or one is located in the same directory or subdirectories of CGWatcher. If it cannot find a miner, you will have to manually specify where it is located and (optionally) a config file and/or arguments you want to use. You can do this by clicking the 'Manage Profiles...' button in the Settings tab. You can create as many profiles as you'd like for the different crypto-currencies you mine. You can also rename the default profile if you'd like, it just names the first one Default because I had to name itWhen you switch to a new profile ("activate" a profile), CGWatcher will use that profile's settings any time it starts or restarts the miner. However, if you switch profiles while a miner is running, you will obviously need to restart the miner in order for the new profile to be used. You can see which profile a currently running miner is using on the Status tab. Ideally it would always be the same as the active profile you've set... but if you changed profiles while mining and chose not to restart the miner when prompted, keep in mind that the miner will still be running on the previous profile until it is restarted (or stopped and started).

Coin Profitability





More information on Profitability Mining with CGWatcher Coin profitability is updated continuously at regular intervals to show which coins are most profitable at the moment. This information is also used when you create scheduled actions to automatically switch to your profile that is most profitable, has lowest difficulty, highest reward, etc. You can also choose the rank of the coin, so setting it to switch to 2nd most profitable instead of 1st may give you more time on that coin without difficulty spikes. And if none of those fields suit you, you can create your own formula for determining profitability using coin fields and common mathematical functions.

Config File Editor





Settings that are set to default values are not written to the config file upon saving. They are also not converted to arguments, because they are set to default values and don't need to be explicitly set.

To add, edit, or remove pools, locate Pools in the config file grid. (There may be a Pools category heading as well in Category view mode), but you want the Pools that says ' (Collection) ' in the cell next to it. Click on the word ' (Collection) ' and a small [...] button will appear in the cell. Click on this [...] button to open the pool window. If you've ever used a property grid in Microsoft or similar software, you will recognize this type of grid and the accompanying collection editor.

in the config file grid. (There may be a category heading as well in Category view mode), but you want the that says ' ' in the cell next to it. Click on the word ' ' and a small [...] button will appear in the cell. Click on this [...] button to open the pool window. If you've ever used a property grid in Microsoft or similar software, you will recognize this type of grid and the accompanying collection editor. When editing pools, you can create names for them as well so they are more easily identifiable when editing them later on. Pool names are saved inside the config file, but will not cause a problem with the miner. To change pool priorities, use the up and down arrows in the pools window to move pools up and down the list. The top of the list is the first priority, the bottom of the list is last priority.

' Name # ' textbox - You can name your config files so when you're using them in profiles they will be easier to access. Enter a name for the config file in the Name textbox. Then when managing your profiles, you can select a Named config file from the Config File textbox drop-down instead of needing to browse your computer for it. After clicking out of the Config File textbox, it will be converted to the config file path automatically.

' textbox - You can name your config files so when you're using them in profiles they will be easier to access. Enter a name for the config file in the Name textbox. Then when managing your profiles, you can select a Named config file from the Config File textbox drop-down instead of needing to browse your computer for it. After clicking out of the Config File textbox, it will be converted to the config file path automatically. Ensure API is enabled upon saving' : If enabled, the API access needed by CGWatcher will always be enabled when saving the config file, regardless if these settings were enabled in the grid. It will not affect other groups/IP address in the api-allow setting, it only makes sure api-listen is enabled and that 127.0.0.1 is included in the W: group of api-allow.

The Config File Editor Menu ■ File -> New - Create a new config file.

■ File -> Open - Open an existing config file.

■ File -> Save (As) - Save the current config file.

■ File -> Close - Close the Config File Editor.

■ Tools -> Import Settings -> From Config File... - select an existing config file to import settings from. The current settings will be overwritten, but will not be permanent until you save the config file.

■ Tools -> Import Settings -> From Named Config File -> <select> - if you've set names for config files using the Name textbox in Config File Editor, these config files can be loaded quickly by just this name, both in Config File Editor and in the Mining Profiles window. This is the same as the previous menu item, but quicker and easier.

■ Tools -> Import Settings -> From Arguments - enter or paste miner arguments to have them converted to a config file. If you have a config file open, you will be asked if you want to overwrite only the settings listed in the arguments, or if you want to create a new config file using only the settings listed in the arguments.

■ Tools -> Export Settings -> To Arguments - converts the current config file to miner arguments.

■ Tools -> Open this Config File in Notepad - opens config file in Notepad. There is also a button next to the config file's Path to open in Notepad.

■ Tools -> Validate this Config File - checks the config file for errors in the settings' formats or values.



The Config File Editor attempts to make editing your miner's configuration easier. To start, it displays the config file in a grid allowing you to see all available settings and a description of each. Settings that can only be enabled or disabled will have a true or false option. Settings that allow numbers only (not including lists of numbers) will only allow numbers. The 'Validate' button attempts to check your settings for errors that may prevent the miner from starting or working correctly. Some things to know about the Config File Editor:- Create a new config file.- Open an existing config file.- Save the current config file.- Close the Config File Editor.- select an existing config file to import settings from. The current settings will be overwritten, but will not be permanent until you save the config file.- if you've set names for config files using the Name textbox in Config File Editor, these config files can be loaded quickly by just this name, both in Config File Editor and in the Mining Profiles window. This is the same as the previous menu item, but quicker and easier.- enter or paste miner arguments to have them converted to a config file. If you have a config file open, you will be asked if you want to overwrite only the settings listed in the arguments, or if you want to create a new config file using only the settings listed in the arguments.- converts the current config file to miner arguments.- opens config file in Notepad. There is also a button next to the config file's Path to open in Notepad.- checks the config file for errors in the settings' formats or values.

Requirements

CGWatcher runs on Windows and requires the .NET framework 4.0. It should work with the latest versions of CGMiner and BFGMiner, although changes to those miners may require changes to CGWatcher.

In order for CGWatcher to work correctly, it needs full access to the miner's API. While previous versions required that you ensure this is enabled manually, version 1.1.5.0 now does this automatically when the miner is started using CGWatcher. Regardless of whether the api-listen and api-allow options are set correctly, CGWatcher will make sure they are enabled before starting the miner without altering your config file or arguments.



While you no longer need to manually ensure these options are set, the following is how you would set these options via arguments or a config file:



Command-line arguments:

--api-listen --api-allow W:127.0.0.1



Configuration file entries (separate entries with commas):

"api-listen" : true

"api-allow" : "W:127.0.0.1"





To-Do List



- Originally created to use with CGMiner, testing with BFGMiner is not as thorough.





CGRemote





http://www.minerremote.com I am working on a program called CGRemote which will create a dashboard to monitor and control your miners remotely. It will communicate with CGWatcher or the miner directly (for non- Windows miners). This program is currently in beta and updates and information can be found here:

Support

You can send bugs or feature requests to the email address in the ReadMe or post in a comment here. You can check #cgwatcher on Freenode for live support. Donations are greatly appreciated as they motivate me and allow me to spend more time on this project. After all, the program's goal is to help you make more money. Feature requests from those who donate get priority.

Donation addresses:

BTC: 12TAYjmSrdDHLNpmix2MG6y3R868SMM7Fx

LTC: LM6Un6hZvPzLBggJWiAVG6E6w2GfaHukXY

NMC: NJjD4rP5xy2mgSK8gXXsZwFkdknbvtvy3q

More donation options are available in the About tab.

Download

By downloading you agree that while CGWatcher will attempt to provide basic overheat protection to supported devices not already protected by the miner, there is no guarantee made and you assume sole responsibility for any problems caused by overheating. See how overheat protection works in the ReadMe.





Required Software

Credits















AMS.Profile.dll by Alvaro Mendez Newtonsoft.Json.dll by James Newton-King CGMiner written by Con Kolivas BFGMiner by Luke-Jr. OpenHardwareMonitorLib.dll by Michael Möller OpenCLNET.dll by ananth NCalc.dll by sebastienros