mutatrum
48711ef0a7
Fix stratum message order ( #498 )
2024-11-21 11:45:08 -05:00
Erik Olof Gunnar Andersson
2536347c56
Improve failure handling and add fallback
2024-10-03 17:24:13 +02:00
adammwest
f130b05511
ASIC version mask now based on pool stratum version mask msg ( #349 )
...
* make set version mask a function call
* update name
* update init fuc to support version mask setting
* update parameter spec for bm1397
* parametrize set version rolling and update init func for BM136X +
* add default stratum mask
* update all bmchips with a new set_version_mask ASIC function which can be called in main
* update init func prototype params
* update self test to remove extra vmask call in init
* fix compiler errors
* fix compiler errors in main
* add version_mask_given bool to tell the next job to set a new version mask to the chip when a smg comes in
2024-09-26 11:30:06 -04:00
mutatrum
e3ef2e55bd
Implement client.reconnect and reset stratum uid on reconnect ( #253 )
...
* Implement client.reconnect and reset stratum uid on reconnect
2024-07-12 14:11:48 -04:00
mutatrum
e3edb87b6c
Change stratum message_id to 64bit
2024-06-25 15:34:15 +02:00
Skot
11c1d087a8
Stratum message ordering fix ( #192 )
...
* rough strategy for this fix. needs testing
* seems to be working with OCEAN. need to make sure nothing else is broken
* add version mask debug
* removed stratum setup response results from A/R shares tally
2024-05-31 17:43:10 -04:00
Ben
794af8d7b7
stratum password
2024-01-13 11:06:01 -05:00
johnny9
407881c8e4
main: send mining.configure before mining.authorize and parse the result
...
This reverts commit e5009e14ab3f81d22ed2dd594712ed49da5257ea.
Fixes #50
2023-11-29 22:07:51 -05:00
johnny9
706ee510ba
main: Determine ASIC model from NVS
...
This adds more hardware information to the example config.cvs.
If the model can't be determined at startup, the device will abort.
2023-09-23 14:27:11 -04:00
Ben
79430f6d3a
reformat entire c project
2023-08-26 12:28:17 -04:00
Benjamin Wilson
9bc0671563
Ultra ( #15 )
...
Pull BM1366 work into main
2023-08-20 13:09:55 -04:00
johnny9
bc326499ea
stratum: parse version-rolling config result
2023-07-01 14:23:35 -04:00
johnny9
c7de2c0795
bm1397: add multiple midstates using version mask
...
Job packets can have more that 1 midstate. If the stratum supports
version-rolling, calculate additional midstates by incrementing
the version with the version_mask provided by the stratum server.
Currently does 4 midstates for each extranonce2.
2023-07-01 14:23:35 -04:00
Ben
2171e55e14
reorder STRATUM_V1_submit_share params to fit api
2023-07-01 14:23:35 -04:00
Ben
8755a8fcbc
rervet changes - stratum messages must have unique id
2023-07-01 14:23:35 -04:00
Ben
35358e0e44
cleaning and optimizing stratum_task/stratum_api
2023-07-01 14:23:35 -04:00
Ben
c3301aab30
move queue
2023-07-01 14:23:35 -04:00
Skot Croshere
b14f21c697
added the beginning of stratum result parsing.
2023-07-01 14:21:40 -04:00
Ben
18d0f651e8
hashrate calc, WIP
2023-07-01 14:20:48 -04:00
Ben
02e4b0d76d
ticket_mask
2023-07-01 14:20:48 -04:00
johnny9
471c53c817
stratum: configure version-rolling and parse version mask
2023-07-01 14:20:48 -04:00
Skot Croshere
552795d61e
tighten up the serial_rx loop for collecting nonces. tried to fix the ckpool diff issue -- still broken
2023-07-01 14:20:48 -04:00
johnny9
b9858777b0
stratum: move prettyHex and flip32 into utils
2023-07-01 14:19:51 -04:00
johnny9
d23a106a65
mining: add test to check nonce diff
...
Test unconvered issues in the construction of the header
when hashing as well as issues with converting the hash to
a double.
2023-07-01 14:19:51 -04:00
johnny9
6bac906333
mining: fix extranonce_2_generate function definition
2023-07-01 14:19:51 -04:00
johnny9
b7a18871a7
Revert "cleaned up debug messages and hex printing a bit. still not checking nonces right"
...
This reverts commit ea0d14966264e9bc15630419e79f6283e30af40c.
2023-07-01 14:19:51 -04:00
johnny9
e27d9e32c8
Revert "added nonce checking fixes from @johnny9"
...
This reverts commit 2b06b3f4d7e290452fd082fdc1387246677ba860.
2023-07-01 14:19:51 -04:00
Skot Croshere
de237e1d34
added nonce checking fixes from @johnny9
2023-07-01 14:19:51 -04:00
Skot Croshere
61ed3c1c97
cleaned up debug messages and hex printing a bit. still not checking nonces right
2023-07-01 14:19:51 -04:00
Skot Croshere
ccb094a916
fix some warnings. trying to check nonce diff -- it's not working.
2023-07-01 14:19:51 -04:00
Skot Croshere
9927e2995b
added suggest_difficulty
2023-07-01 14:19:51 -04:00
johnny9
9c9c1ad540
stratum: add method to free bm_job struct
2023-07-01 14:19:51 -04:00
johnny9
8cf78d58cc
stratum: add methods for extranonce_2 generation
2023-07-01 14:19:51 -04:00
johnny9
e246a84c86
stratum: add mining.set_difficulty message parse
2023-07-01 14:19:51 -04:00
Skot Croshere
4cf368864e
added a midstate sha256 function
2023-07-01 14:18:41 -04:00
johnny9
27b24d3c3e
bm1397: integrate with stratum WIP
2023-07-01 14:18:41 -04:00
johnny9
bad72d638a
mining: swap endianess of prevblockhash when computing midstate
2023-07-01 14:18:41 -04:00
johnny9
f80805f53a
stratum_api: add method to check if previous work should be abandoned
2023-07-01 14:18:41 -04:00
johnny9
bbd2ebe249
mining: fix endianness of the block header version
2023-07-01 14:18:41 -04:00
johnny9
901d2da341
stratum_api: parse the uint32_t values from the mining.notify message
2023-07-01 14:18:41 -04:00
johnny9
ca827ee4b5
mining: construct a job for bm13xx
2023-07-01 14:18:41 -04:00
johnny9
812e4213c1
stratum_api: cleanup notify parsing
...
Split parsing into two steps, one for the method and one for the
params themselves. Currently it is up to the miner task to grab
the parameters in the format it needs.
2023-07-01 14:18:41 -04:00
johnny9
f98cbf208b
mining: fix merkle root calculation and add unit test
2023-07-01 14:18:41 -04:00
johnny9
23e588c94e
utils: add double sha256 method
2023-07-01 14:18:41 -04:00
johnny9
10fc3d017e
mining: add method to construct coinbase tx
2023-07-01 14:18:41 -04:00
johnny9
799d00dc2b
stratum: parse extranonce and extranonce2_len from subscribe result
2023-07-01 14:18:41 -04:00
johnny9
3066edb7f1
Make stratum module testable and introduce first unit test
2023-07-01 14:18:41 -04:00