pangz-lab / verus_miner-release

VerusMiner App release
https://pangz-lab.github.io/verusminer/
105 stars 36 forks source link

USERNAME is limited to VRSC address #5

Closed PSLLSP closed 1 year ago

PSLLSP commented 1 year ago

Verus miner 3.4.1

Form in the miner configuration validates USERNAME (that is called WALLET ADDRESS), it has to be VRSC address. That is true in most cases but parameter -u to the miner means username, not address... Please, change this check to just warning, I would like to enter username that is not valid VRSC address... With current setup I cannot enter username as it is not valid address and I cannot save the configuration, so I am limited to pools that has VRSC address as username.

One example, ZERG pool allows users to mine one coin but get paid in other coin and that other coin address is username. So, I want to mine VRSC but get paid in BTC, so my username is BTC address and password field describes what to mine and what to earn... I cannot use such setup with current Verus miner for Android, I am limited to VRSC coin... :-(

pangz-lab commented 1 year ago

Just leave the wallet address as it is then configure using custom parameters.

Basically each flag with value should be separated by semicolon (;)

Like -u nonveruswallet;-p c=BBC;

PSLLSP commented 1 year ago

Similar issue with MINER NAME (or WORKER NAME) field. It is mandatory and it is added to username. ZERG pool doesn't use this schema, WORKER name is passed in password field. I cannot save configuration when WORKER NAME is empty... :-( That makes no sense to require user to enter WORKER NAME, that is an optional parameter...

pangz-lab commented 1 year ago

Similar issue with MINER NAME (or WORKER NAME) field. It is mandatory and it is added to username. ZERG pool doesn't use this schema, WORKER name is passed in password field. I cannot save configuration when WORKER NAME is empty... :-(

Just leave the username as it is. You can share here the format of configuration you want to use. It's already supported. You just need to ask.

PSLLSP commented 1 year ago

PORT in Custom POOL configuration is limited to 4 digits, like TCP port 9999 is the highest port that can be used. This is wrong assumption, TCP port can be in range 1-65535, it is 16-bit unsigned integer..

PASSWORD filed is not in the form...

I understand I can overwrite all those fields with custom parameter but it is confusing. And running miner shows information entered to the form fields, not real configuration that it use!!! :-( Really confusing...

pangz-lab commented 1 year ago

PORT in Custom POOL configuration is limited to 4 digits, like TCP port 9999 is the highest port that can be used. This is wrong assumption, TCP port can be in range 1-65535, it is 16-bit unsigned integer..

PASSWORD filed is not in the form...

I understand I can overwrite all hose fields with custom parameter but it is confusing. And running miner shows information entered to the form filelds, not real configuration that it use!!! :-( Really confusing...

Well, since you know so much, probably the best way for now is to create your own miner.

I will close this issue now. This is not a place to whine or share your ideals and aspirations.

PSLLSP commented 1 year ago

Try this configuration:

-o stratum+tcp://eu-01.miningrigrentals.com:3333 -u droidMiner.217232 -p TESTBOX1

When it fails, then Verus miner doesn't support client.reconnect method

This is just a workaround when miner doesn't support client.reconnect, TCP port 50361 was dynamically allocated and will be closed in a week:

-o stratum+tcp://eu-01.miningrigrentals.com:50361 -u droidMiner.217232 -p TESTBOX2

UPDATE. I verified that even VerusMiner 3.4.1 for Android is broken and doesn't support client.reconnect method. You can find similar report against nanominer, nanominer doesn't support client.reconnect (desktop clients are easier to debug/troubleshoot, they generate detailed log)...


I do not think you can fix that missing support for client.reconnect method but I add here a demo of open source miner that works well with MRR. It doesn't support VerusHash, so I have example with Scrypt and run test on Linux box. Import point is that miner is configured with URL eu-de01.miningrigrentals.com:3333 but it switches to different URL because it understands method client.reconnect ; new URL in this case is eu-de01.miningrigrentals.com:51235:

$ cat mine-scrypt-mrr.sh 
#!/bin/sh

POOL="eu-de01.miningrigrentals.com:3333"

USER="droidMiner.187382"
PASS="TESTBOX4"

OPTS=""

./minerd --version
./minerd -a scrypt -o "stratum+tcp://$POOL" -u "$USER" -p "$PASS" $OPTS $@
$ sh mine-scrypt-mrr.sh 
cpuminer 2.5.1
 built on Jun 25 2020
 features: x86_64 PHE SSE2 AVX AVX2 XOP
libcurl/7.71.0 mbedTLS/2.16.6 zlib/1.2.11
[2023-08-26 01:05:02] Starting Stratum on stratum+tcp://eu-de01.miningrigrentals.com:3333
[2023-08-26 01:05:02] Binding thread 0 to cpu 0
[2023-08-26 01:05:02] 4 miner threads started, using 'scrypt' algorithm.
[2023-08-26 01:05:02] Binding thread 2 to cpu 2
[2023-08-26 01:05:02] Binding thread 3 to cpu 3
[2023-08-26 01:05:02] Binding thread 1 to cpu 1
[2023-08-26 01:05:02] Server requested reconnection to stratum+tcp://eu-de01.miningrigrentals.com:51235
[2023-08-26 01:05:10] Stratum requested work restart
[2023-08-26 01:05:11] thread 2: 4104 hashes, 12.46 khash/s
[2023-08-26 01:05:11] thread 0: 4104 hashes, 12.34 khash/s
[2023-08-26 01:05:11] thread 3: 4104 hashes, 12.21 khash/s
[2023-08-26 01:05:11] thread 1: 4104 hashes, 11.77 khash/s
[2023-08-26 01:05:24] Stratum requested work restart
[2023-08-26 01:05:24] thread 0: 174336 hashes, 13.31 khash/s
[2023-08-26 01:05:24] thread 3: 173832 hashes, 13.27 khash/s
[2023-08-26 01:05:24] thread 2: 177024 hashes, 13.51 khash/s
[2023-08-26 01:05:24] thread 1: 169728 hashes, 12.97 khash/s

when run with parameter -P, it shows protocol details...

$ sh mine-scrypt-mrr.sh -P
cpuminer 2.5.1
 built on Jun 25 2020
 features: x86_64 PHE SSE2 AVX AVX2 XOP
libcurl/7.71.0 mbedTLS/2.16.6 zlib/1.2.11
[2023-08-26 01:06:38] Binding thread 3 to cpu 3
[2023-08-26 01:06:38] Binding thread 0 to cpu 0
[2023-08-26 01:06:38] 4 miner threads started, using 'scrypt' algorithm.
[2023-08-26 01:06:38] Starting Stratum on stratum+tcp://eu-de01.miningrigrentals.com:3333
[2023-08-26 01:06:38] Binding thread 2 to cpu 2
[2023-08-26 01:06:38] Binding thread 1 to cpu 1
*   Trying 188.166.161.62:3333...
* Connected to eu-de01.miningrigrentals.com (188.166.161.62) port 3333 (#0)
* Connection #0 to host eu-de01.miningrigrentals.com left intact
[2023-08-26 01:06:38] > {"id": 1, "method": "mining.subscribe", "params": ["cpuminer/2.5.1"]}
[2023-08-26 01:06:38] < {"error": null, "id": 1, "result": [["mining.notify", "ae6812eb4cd7735a302a8a9dd95cf71f"], "f800002e", 4]}
[2023-08-26 01:06:38] > {"id": 2, "method": "mining.authorize", "params": ["droidMiner.187382", "TESTBOX4"]}
[2023-08-26 01:06:38] < {"error": null, "id": 2, "result": true}
[2023-08-26 01:06:38] < {"method": "client.reconnect", "id": 0, "error": null, "params": ["eu-de01.miningrigrentals.com","51235"]}
[2023-08-26 01:06:38] Server requested reconnection to stratum+tcp://eu-de01.miningrigrentals.com:51235
*   Trying 188.166.161.62:51235...
* Connected to eu-de01.miningrigrentals.com (188.166.161.62) port 51235 (#0)
* Connection #0 to host eu-de01.miningrigrentals.com left intact
[2023-08-26 01:06:38] > {"id": 1, "method": "mining.subscribe", "params": ["cpuminer/2.5.1"]}
[2023-08-26 01:06:39] < {"id":1,"result":[[["mining.set_difficulty","512"],["mining.notify","23f4c14b52cfa5ee3ca44ffa369d2cd5"]],"810001d9",4],"error":null}