468 Commits

Author SHA1 Message Date
Skot Croshere
d23a55608c added default difficulty to menuconfig and got rid of the I2C pin config 2023-07-01 14:20:48 -04:00
johnny9
dcc74213d4 admin: place bm_queue clear inside valid_jobs lock 2023-07-01 14:20:48 -04:00
johnny9
1ff595a736 miner: remove excess logging 2023-07-01 14:20:48 -04:00
johnny9
6c3de26821 miner: maintain a buffer of the recent jobs sent to the asic
The asic will continue to process nonces for previous job commands
so we need to map the nonce packet job id with our buffer of jobs
that we have recently sent in order to test if the nonce is valid
and submit the share with the correct information.
2023-07-01 14:20:48 -04:00
johnny9
adfb606164 miner: fix job packet id logic 2023-07-01 14:20:48 -04:00
johnny9
f46ae9694b bm1397: extra module to own component
Create an idf component for the bm1387 module and add a basic
test to verify that a bm1397 can produce a good nonce. bm1397
is also added to the list of tests under the unit test runner
component.
2023-07-01 14:20:48 -04:00
johnny9
5c65c42fa1 config: Remove unused IP settings configuration options 2023-07-01 14:19:51 -04:00
johnny9
e617f15049 chore: whitespace cleanup in miner.c 2023-07-01 14:19:51 -04:00
johnny9
1d6f8b9927 chore: remove unused variable 2023-07-01 14:19:51 -04:00
johnny9
f6f7f39886 chore: remove excess logging 2023-07-01 14:19:51 -04:00
johnny9
474f98d070 admin: only abandon work if there is work to abandon 2023-07-01 14:19:51 -04:00
johnny9
96217bc9a7 main: increase admin task priority 2023-07-01 14:19:51 -04:00
johnny9
13367a7208 queue: increase the queue size 2023-07-01 14:19:51 -04:00
johnny9
987415b40d queue: fix logic for abandoning queue
In addition, don't allow the admin queue to block if its
queue is full. Instead, force a new item in by calling
dequeue.
2023-07-01 14:19:51 -04:00
johnny9
e0b1dded87 miner: use stratum difficulty for nonce checking 2023-07-01 14:19:51 -04:00
johnny9
6b8db512ae queue: remove termination_flag param from dequeue 2023-07-01 14:19:51 -04:00
johnny9
50f0c11dcb bm1397: set default ticket to 256 diff 2023-07-01 14:19:51 -04:00
johnny9
a3b0608520 miner: fix job command memcpy 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
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
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
3f79ff615e reverted ticket_mask. tried testing nonces nerdminer style 2023-07-01 14:19:51 -04:00
Skot Croshere
1f2f520024 disabled extranonce rolling. doesn't seem like I'm getting nonces anymore? 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
f2509aa519 bm1397: comment out send_serial logging 2023-07-01 14:19:51 -04:00
johnny9
6eafb362a0 main: start SysTask before anything else 2023-07-01 14:19:51 -04:00
johnny9
b25e7b1e71 main: increase AsicTask stack to prevent overflow 2023-07-01 14:19:51 -04:00
johnny9
b93bd994b2 bm1397: set initial ticket to difficulty 512
Set the initial ticket high enough to get valid shares
2023-07-01 14:19:51 -04:00
johnny9
9cf8ee9b3b miner: generate more bm_jobs using extranonce 2 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
Skot Croshere
60ef52d923 fix sdkconfig port 2023-07-01 14:19:51 -04:00
Skot Croshere
670c11ac72 updated readme and sdkconfig menus 2023-07-01 14:19:49 -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
40cb7fac61 queue: clear queue when stratum says to abandon old work 2023-07-01 14:18:41 -04:00
johnny9
225126708c main: add bm_job construction to mining task 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
64161f9db2 main: create define for STRATUM_USERNAME 2023-07-01 14:18:41 -04:00
johnny9
dc5d75e444 main: rename main module to miner 2023-07-01 14:18:41 -04:00
johnny9
9f0ecd28cd main: add subscribe output parameters 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
johnny9
ec28d0a74d stratum: move recieve methods to module 2023-07-01 14:18:41 -04:00
johnny9
d34fcfabff Add definition for threaded work queue 2023-07-01 14:18:41 -04:00
johnny9
9c109e7553 Add basic stratum parsing using cJSON 2023-07-01 14:18:41 -04:00
johnny9
271cc33692 Implement recv_line for json-rpc 2023-07-01 14:18:41 -04:00
johnny9
d41a5d16ef Sub and auth to braiins pool 2023-07-01 14:18:41 -04:00