* added rx serial buffer flush and serial debugging for BM1368
* added serial buffer flush to BM1366 also
* turned off ASIC serial debugging. let's see how this does on free heap
* add extended nonce debugging
* switch to semaphore for job timing
* clean up nonce debugging. hardcode 1366 job interval to 2s and show when new jobs are sent
* set nonce range to 0x0F0000 set job interval to 20s. better stratum debugging,
* testing out longer intervals on 1368
* looking at exact serial commands sent
* fix log value digit count
* add core from nonce debug
* set BM1366 initial chip difficulty to 32
* add version rolling debug
* improve debug printing again
* fix diff
* fix core_id extraction
* printf fix
* debug cleanup
* setup BM1368 for testing. reg10 to S21 default, job interval @ 0.5s
* set init diff on 1366 and 1368 back to 256
---------
Co-authored-by: Georges Palauqui <g.palauqui@gptechinno.com>
* try to explain nonce space duration from paramters
* Fix Nonce Space duration for BM1397 (no version-rolling)
* fixed issue with version mask on 1397. added easy serial debugging on 1397
* cleanup jobID debugs
---------
Co-authored-by: Skot <skot@bitnet.cx>
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.
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.