84 Commits

Author SHA1 Message Date
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
pixel::doc
e4fcfdca83
Add more Logging to esp_restart (#179) 2024-05-23 22:55:31 -04:00
MoellerDi
1da7132b6a
fix stratum parsing not always counting rejected shares (#163)
* fix stratum parsing not counting rejected messages

* add unit tests
2024-05-23 22:53:05 -04:00
Ben
b958b85d57 fix setting version rolling 2024-03-11 20:37:49 -04:00
Ben
feda6609c1 Correctly identify rejected stratum submission 2024-02-24 23:43:35 -05:00
Ben
c9b5b65275 set version mask on mining.configure 2024-01-13 15:08:56 -05: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
SatoshyBoy
032fe24f2a WIFI Failure
The firmware halts when it loses the wifi connection.
2023-09-04 22:17:47 -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
Georges Palauqui
87d7e7c5d0
Fix build with IDF-5.1 2023-08-16 16:55:10 +02: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
1b75644b67 added back stratum unit tests 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
ba384294b5 comments 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
12770f3393 fix jobid for ckpool 2023-07-01 14:23:35 -04:00
Skot Croshere
63bc2e6326 fix typo in mining.set_difficulty 2023-07-01 14:23:35 -04:00
Ben
6065ef05a3 Fixed issues with ckpool job id, parameter length, asic init 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
65f906eb3d change stratum_api TAG to match filename 2023-07-01 14:23:35 -04:00
Ben
a7bae3ce71 Modularized 3 tasks, created global state struct 2023-07-01 14:23:33 -04:00
Skot Croshere
0810936b3f free strings first when clearing the ASIC_jobs queue 2023-07-01 14:21:40 -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
c1f586c77a stratum: remove unused function 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
5a94acff09 stratum: don't attempt to recv authorize result
Previous implementation would miss the first mining.set_difficulty
message. We need to find a better way to manage result messages.
2023-07-01 14:20:48 -04:00
johnny9
ee04e437be stratum: don't try to check mining.suggest_difficulty result
Current implementation has a race condition with the first
mining.notify message and can cause the miner to take a long time
to start if it misses that message.
2023-07-01 14:19:51 -04:00
johnny9
f6f7f39886 chore: remove excess logging 2023-07-01 14:19:51 -04:00
johnny9
6b5e5b98f7 stratum: fix extranonce 2 generation when length > 4 2023-07-01 14:19:51 -04:00
johnny9
3d6d27b101 stratum: add an additional test to validate bm_job construction 2023-07-01 14:19:51 -04:00
johnny9
d583332f3b stratum: add additional test for test_nonce_value 2023-07-01 14:19:51 -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
278d948f10 mining: fix bm_job construction test 2023-07-01 14:19:51 -04:00
johnny9
da4fad9dab Revert "proper midstates are back!"
This reverts commit bf4715b58ffbf5bcd2d2000fe40376fb7ccec9d1.
2023-07-01 14:19:51 -04:00
johnny9
20ed65279b Revert "reverted ticket_mask. tried testing nonces nerdminer style"
This reverts commit eee399324d8e6caa1a7e51da3336dc84069c75c7.
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
fda3a36204 shorten the header debug and some others 2023-07-01 14:19:51 -04:00
Skot Croshere
3bdfd6d32d setup for running unit tests. press cmd-sft-p "test" 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