Bitcoin Forum
November 10, 2024, 09:00:59 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Mining Control Panel & Managment Software (Web & desktop support)  (Read 2257 times)
Xenland (OP)
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
November 02, 2012, 05:24:13 AM
Last edit: November 02, 2012, 07:14:09 AM by Xenland
 #1

Hello everyone I plan on re-writing my Mining Farm application that was written for PHP, MySql, HTML, Pushpoold and Bitcoin. I would like to completely rewrite it so it's aim is for desktop and website software. Download packages will include 3 options (Desktop Support Only), (Website Support Only), (Desktop & Website Support).
I would like the software to incorporate Bitcoin integration as well as all or most of other AltCoin(s) Support.

This new project will be aimed at helping those who know how to set-up mining equipment already but who want a "Control Panel" to get stats on all their miners with out needed to open each miners terminal to calculate stats. Some other goals are to produce reports for groups miners, For example, A mining operator has some friends that want you the operator to manage their miners so they don't have to, you setup a contract/agreement on what you get paid in percentage and so the reports will produce what your friend get paid and what you get paid for managing their equipment so you can manually pay or automatically pay your friends.

I need from you is a list of features the basic desktop & website software should have(advanced features will come in due-time). Also I'm in need of a website-designer the requirements of the website designer is a PSD file of how the website software should look and I will slice up the PSD file and integrate it into the website software logic.

I will start the coding for this as soon as all the planning is in order, but the target date to get started for coding is December 1st 2012.

Lets get the basics down for what desktop and website software needs as far as managing your miners on a control panel setup.
Xenland (OP)
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
November 02, 2012, 05:44:09 AM
Last edit: November 02, 2012, 07:16:19 AM by Xenland
 #2

I'd imagine the basics should be something like the following...


Website Software:
*Login/Register
*Check up on miners
*Withdraw -Coins
*Add/Remove Miners
*Loook at graphs

Desktop Software
*View graphs of stats
*Send commands to miners remotely(Start/Stop/Edit miner parameters)
gweedo
Legendary
*
Offline Offline

Activity: 1498
Merit: 1000


View Profile
November 02, 2012, 07:58:54 AM
 #3

Website software
* Get Amount of hashing per second of the entire farm, and individual
* Shutdown
* if there is a hardware failure be notified by email and show popup thru the site (using ajax and querying a php script every 5mins)
* Dashboard that doesn't need to be refreshed


Why you need desktop software, I would have everything running thru the website, your probably going to need background software processes to get the information to the mysql database. 
Flowz
Member
**
Offline Offline

Activity: 114
Merit: 10


Bitcoin = Money for the people, by the people.


View Profile
November 02, 2012, 02:09:34 PM
 #4

I've done a similair project but I never got to releasing it!

In my project I built in:
- a screenshot application which would upload pictures to imgur on request.
--> so if the miner-software failed I could pull up a screenshot and see what's wrong!

- I had a command to start a miner remotly, and I stored the PID of the process on the server and client. It was fairly simple to retrieve the hashrate out of the command window, so each 60 seconds it would report in it's hashrate.
--> This allowed me to kill the miner process remotly. The client-sided software used the PID to check if the process was still running. I had fairly simple check statements:
If the process is not running: report to client.
If process is running and it has a hashrate above 0: you're doing fine
If the process is running and hashrate is 0: pull up screenshot + error report! (I also could've added an option to pull out the last 3 lines written in the command line of the miner and add it in the error report)

- In the main panel I could read all information about the computer , it stored each computer by HWID.
--> You have the option to label them with a name, and it stored all information from the CPU's information and the amount of memory on the system to the GPU's name and what drivers were installed.

- I stored information of the pools to mine in a database.
Each computer which wasn't assigned to a specific pool, was going to mine for the fallback pool.
If they were assigned a specific pool, and it appears to be down it would go back to the fallback pool.

I can provide screenshots on request if anyone would like to see what I made Smiley!
Xenland (OP)
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
November 02, 2012, 10:26:59 PM
 #5

Why you need desktop software, I would have everything running thru the website, your probably going to need background software processes to get the information to the mysql database. 
Website software will the priority over the Desktop since web development is my expertise and plus the website software will probably be preferred by most.



I can provide screenshots on request if anyone would like to see what I made Smiley!
Screen shots are always helpful, I need some ideas on how the GUI's should be set-up and what information/graphs operators like to see the most.


Was your project same idea or just Desktop/website only based? what languages did you use?
Flowz
Member
**
Offline Offline

Activity: 114
Merit: 10


Bitcoin = Money for the people, by the people.


View Profile
November 02, 2012, 10:49:01 PM
 #6


I can provide screenshots on request if anyone would like to see what I made Smiley!
Screen shots are always helpful, I need some ideas on how the GUI's should be set-up and what information/graphs operators like to see the most.


Was your project same idea or just Desktop/website only based? what languages did you use?

Mine was website only based at that moment but I had many plans for it.

I was thinking of adding an option to control it through IRC, so the webserver could just idle in an IRC and I could request updates of the miners.

I also had in mind of creating a simple android application for it, since I was working on an application at the same time then.

This is the miners overview:
http://screensnapr.com/e/wNALjc.jpg

When you click an ID it will lead you to this page:
http://screensnapr.com/e/q5Nknj.jpg

I made an option to mine for multiple pools at the same time so it would distribute the hashrate across them.

I actually have neveradded the option to retrieve the gpu name yet but it's a matter of a few minutes to implent it.
A giant tip: In the registry the following path: (under LocalMachine) contains a lot of information about the GPU: "\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winsat"! I found it by accident, which made me very happy as I was looking for that for a while. Checking if drivers exist should also be pretty easy through checking the registry..

It has that stupid picture as "main" picture when no pictures are in the database yet.


I dropped the project, as I had to set priorities.
It's all done in HTML/PHP/JS/MySQL + C# (.NET 2.0)!
Xenland (OP)
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
November 02, 2012, 10:54:19 PM
 #7

Excellent thanks for getting back to me so quickly, Cheers
Flowz
Member
**
Offline Offline

Activity: 114
Merit: 10


Bitcoin = Money for the people, by the people.


View Profile
November 02, 2012, 10:57:47 PM
 #8

Excellent thanks for getting back to me so quickly, Cheers

I updated the above post with a tip which you might like. You might already know but I searched ages for it!
Xenland (OP)
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
November 03, 2012, 09:09:32 PM
 #9

[Optimizations Notes]
Web pages could be (optionally)rendered a maximum once every 5 minutes (Except for dynamic pages like account settings where it needs to be updated instantly)
This can save query connections to the database again completely allowing more processing to the pushpoold/share INSERTS
gweedo
Legendary
*
Offline Offline

Activity: 1498
Merit: 1000


View Profile
November 03, 2012, 09:31:09 PM
 #10

[Optimizations Notes]
Web pages could be (optionally)rendered a maximum once every 5 minutes (Except for dynamic pages like account settings where it needs to be updated instantly)
This can save query connections to the database again completely allowing more processing to the pushpoold/share INSERTS

but unless your using this with many many many people like 100's people which I doubt and closing connections correctly the mysql database shouldn't use more processing that would affect pushpoold
Xenland (OP)
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
November 03, 2012, 10:24:25 PM
 #11

[Optimizations Notes]
Web pages could be (optionally)rendered a maximum once every 5 minutes (Except for dynamic pages like account settings where it needs to be updated instantly)
This can save query connections to the database again completely allowing more processing to the pushpoold/share INSERTS

but unless your using this with many many many people like 100's people which I doubt and closing connections correctly the mysql database shouldn't use more processing that would affect pushpoold
Actually now that you mention it I think the reason why so many complained about Mining Farm and Pushpoold was cuz of the table locking problems(MyISam), So I'll just take note to make it InnoDB for Pushpoold tables to prevent locking and web-frontend freeze ups.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!