kramble
|
|
November 16, 2013, 09:20:53 AM Last edit: November 17, 2013, 11:50:35 AM by kramble |
|
Well have CM1 up and running on SHA256. So I know it's working. So I'm ready for when ever kramble has something he wants tested (I think I can figure out SW1 and SW6 setting for a bitstream update. but take your time I'm in no rush at all.
I'm very close. I've got a working bitstream and driver for cgminer 3.1.1 however both are currently very buggy. The bitstream is only hashing at about a quarter of the expected rate, but I think I fixed that in the overnight build which I'll be testing later today/tomorrow (Saturday is family day in the kramble household, so not much development will get done today). Seems I was caught out by clock domain crossing again (novice error, I thought I could use the hasvoodo top as-is, but the timing is slightly different on the golden_ticket strobe in the bitcoin and blakecoin cores). Cgminer is a more serious problem as it crashes in the curses module on windows, so needs to be run with the -T flag, strangely it works OK with ztex though. I'm seriously considering abandoning cgminer in favour of bfgminer, though the change to the mingw build environment is putting me off at the moment. As bluedragon suggested I'm currently using the hashvoodo firmware as this was already installed and I didn't want to take the risk of reflashing it at this early stage (hashvoodo also has better clock distribution as it uses LVDS). I'm currently using the onboard programmer via VirtualBox/xc3prog which to be honest is a right dog's breakfast. It is just so temperamental as to be almost unusable, but I'm persevering as this is how its going to be programmed by the end users. I can usually manage to get the bitstreams loaded up OK after a bit of a fight, but I've never once had a confirmed verification that the load succeeded. I'm also getting drop-outs of the USB driver while mining which require a complete power cycle to reset which is very frustrating due to the need to reload the bitstreams (I'm not yet at the stage where I want to reflash the configuration ROMs). EDIT Having finally taken the time to RTFM I now understand why I was having such problems. The -I switch is only used to load the bitstream used to flash the MCS ROMs, but I was using it for the main bitstream. It works much more reliably without it Anyway hopefully I'll have something for you to test in the next couple of days, though the clock speed is lower than I'd like to see (only getting 100MHz ATM, compared with 200MHz for the ztex). I'll also look to getting a port for the official 1.5 firmware based on makomk's code (it needs more than just swapping the clock source, as this version retains the icarus chaining of the fpgas, so only two serial ports rather then the four for hashvoodo), though as I'll have to flash the firmware I want to get the hashvoodo mostly complete before risking this.
|
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 16, 2013, 03:26:45 PM |
|
As I said no rush. A family day is very good idea. I am very much a noon on this and fumbling in Linux adds to the fun. Do not have the xilinx tools installed yet jI am running it on bfgminer right now but have the virtual box. That sounds like my next step then hashvoodo. Should I install 14.1 or 14.2? What to be on the same version just in case the is a subtle difference that could bite us. I am running it on bfgminer ATM but have Blake version and current cgminer available.
|
|
|
|
kramble
|
|
November 16, 2013, 08:43:50 PM Last edit: November 17, 2013, 05:49:46 PM by kramble |
|
Enterpoint Cainmore CM1 port https://github.com/kramble/FPGA-Blakecoin-Miner/tree/master/experimental/CM1This code is derived from the HashVoodoo FPGA Bitcoin Miner Project https://github.com/pmumby/hashvoodoo-fpga-bitcoin-minerLicensed under GPL. My thanks to Paul Mumby (Glasswalker), makomk and TheSeven. Test bitstream https://www.dropbox.com/s/m901icq7pt9nl4l/CM1-hv-v04a-80MHz-ucf-75-fmax-78.bitFaster version https://www.dropbox.com/s/xm8gjm7b2qnhgig/CM1-hv-v04a-120MHz-ucf-100-fmax-103.bitFaster version https://www.dropbox.com/s/ledl95oolt7lgts/CM1-hv-v04a-150MHz-ucf-130-fmax-140.bitFaster version https://www.dropbox.com/s/bbevqb8792emll9/CM1-hv-v04a-175MHz-ucf-150-fmax-161.bitNB This requires the hashvoodo firmware from https://github.com/pmumby/hashvoodoo-fpga-bitcoin-miner/downloadsUse hashvoodoo_controller_25.bit from any of the later releases, NOT the 08_04_2012. Some useful instructions at https://en.bitcoin.it/wiki/CM1Quickstart (these are for bitcoin but the programming guide is relevant). It was rather temperamental and may require multiple attempts at programming to get the bitstreams to load. I would recommend just loading the bitstream and not attempting to flash the configuration ROMs. What I find to work is the following [EDIT After RTFM I took out the -I switch which was causing most of my problems, it works a lot better now] ... Boot the VirtualBox machine and copy the bitstream (I use "nc" rather than fiddling with usb sticks, ftp also works but needs passive mode). Power up the CM1 board wait for it to fully load Set switch 3 OFF (configuration mode) then connect the USB cable. Execute "xc3sprog -c cm1 -v -p0 CM1-hv-v04a-80MHz-ucf-75-fmax-78.bit" for each fpga in turn p0, p1, p2, p3 This takes about 20 seconds, successful loading is indicated by bright red and yellow LEDs, with a short flash of green. Return switch 3 to "on", the red LEDs will now flash slowly. Shutdown VirtualBox (run "init 0"), disconnect then reconnect the USB cable, then start cgminer. I have supplied two windows versions and also on github (uses updated driver_icarus.c). https://www.dropbox.com/s/m18kr3kgrl102w2/cgminer-311-2013-11-16-CM1.exehttps://www.dropbox.com/s/d3gbhpqboo9itei/cgminer-311-2013-11-16-CM1-notest.exeThe second one is a fallback if the fpgas are not detected as valid icarus devices (the icarus detect result is ignored). NOTE, these are rather buggy (the -T switch is required else it crashes in libcurses). Run them as follows on windows (using the relevant COM ports for your system) ... cgminer -T --disable-gpu --icarus-timing long -S \\.\COM20 -S \\.\COM21 -S \\.\COM22 -S \\.\COM23 --url localhost:8772 --userpass username:password 2>log.txt I've swapped the green and blue LED designations, green is now the I/O indicator and blue is a valid hash (it made more sense as blue is much brighter). Its all very rough and the current speed is very slow (80MHz) but this will improve in future builds. Dynamic clock is enabled in the bitstream but not supported by this version of of cgminer. Good Luck! [Edited for typos etc, I was a bit rushed yesterday]
|
|
|
|
feeleep
Legendary
Offline
Activity: 1197
Merit: 1000
|
|
November 16, 2013, 10:06:37 PM |
|
I will put stratum-mining-blakecoin code on Github this weekend but it is highly experimental and not fully functional also it imports stratum which might also have bugs that have not been found yet! the merkleroot calculation is not done in one place in the stratum pool software but try this: class MerkleTree: def __init__(self, data, detailed=False): self.data = data self.recalculate(detailed) self._hash_steps = None def recalculate(self, detailed=False): L = self.data steps = [] if detailed: detail = [] PreL = [] StartL = 0 else: detail = None PreL = [None] StartL = 2 Ll = len(L) if detailed or Ll > 1: while True: if detailed: detail += L if Ll == 1: break steps.append(L[1]) if Ll % 2: L += [L[-1]] L = PreL + [doublesha(L[i] + L[i + 1]) for i in range(StartL, Ll, 2)] Ll = len(L) self._steps = steps self.detail = detail def hash_steps(self): if self._hash_steps == None: self._hash_steps = doublesha(''.join(self._steps)) return self._hash_steps def withFirst(self, f): steps = self._steps for s in steps: f = BLAKE(256).digest(f + s) return f def merkleRoot(self): return self.withFirst(self.data[0]) this should be Blake-256(SHA-256(SHA-256(merkleRoot))) as it is in the wallet code? Excuse my ignorance but I am still trying to figure out what is wrong (above code still gives merkleroot mismatch in client). I started to analyze cpu miner code and found following: static void stratum_gen_work(struct stratum_ctx *sctx, struct work *work) { unsigned char merkle_root[64]; int i;
pthread_mutex_lock(&sctx->work_lock);
strcpy(work->job_id, sctx->job.job_id); work->xnonce2_len = sctx->xnonce2_size; memcpy(work->xnonce2, sctx->job.xnonce2, sctx->xnonce2_size);
/* Generate merkle root */ sha256d(merkle_root, sctx->job.coinbase, sctx->job.coinbase_size); for (i = 0; i < sctx->job.merkle_count; i++) { memcpy(merkle_root + 32, sctx->job.merkle[i], 32); sha256d(merkle_root, merkle_root, 64); } and I dont see here using blake algo to generate merkleroot - maybe here is the problem?
|
|
|
|
trepex
|
|
November 17, 2013, 01:06:30 AM |
|
Hi, I just compiled the blakecoind under Mac OSX 10.8.5 and testing it for Solo Mining. Time to retire my big & loud Win8 GPU system. A Ztex 1.15y attached to a r-pi is doing the mining. cgminer version 3.1.1 - Started: [2013-11-16 20:19:12] -------------------------------------------------------------------------------- (5s):573.9M (avg):1.141Gh/s | A:0 R:0 HW:4 U:0.0/m WU:14.1/m ST: 6 SS: 0 NB: 66 LW: 0 GF: 0 RF: 0 Connected to 192.168.178.31 diff 2.06K without LP as user trepex Block: 107cc80348bd3c9e... Diff:2.06K Started: [01:01:18] Best share: 466 -------------------------------------------------------------------------------- [P]ool management [ S ]ettings [D]isplay options [Q]uit ZTX 0: 04A36E0780-1 | 196.0MHz | 388.3M/392.8Mh/s | A:0 R:0 HW: 0 U:0.00/m ZTX 1: 04A36E0780-2 | 196.0MHz | 390.3M/392.8Mh/s | A:0 R:0 HW: 1 U:0.00/m ZTX 2: 04A36E0780-3 | 180.0MHz | 359.5M/361.7Mh/s | A:0 R:0 HW: 76 U:0.00/m ZTX 3: OFF / 0.000h/s | A:0 R:0 HW: 0 U:0.00/m -------------------------------------------------------------------------------- If anyone is interested, I could compile a binary of the blakecoind with static libraries and upload it to MEGA. I would like to get the GUI as binary, I failed to compile the GUI for another altcoin (DEM, Deutsche eMark) and will not even try to compile to BlakeCoin version. trepex
|
|
|
|
BlueDragon747 (OP)
Legendary
Offline
Activity: 1509
Merit: 1030
Solutions Architect
|
|
November 17, 2013, 05:13:33 AM Last edit: November 17, 2013, 05:26:29 AM by BlueDragon747 |
|
and I dont see here using blake algo to generate merkleroot - maybe here is the problem?
The merkleroot is a double SHA-256 and uses the same ecdsa curve as Bitcoin like I have said in pm to you but the stratum pool software does not just do a single doublesha on the merkleroot also the cpu miner uses the getwork2 for mining the wallet?
|
Info: Github - Blakecoin.org - BCT Blakecoin thread - Twitter - BCS - BlakeZone Trade Blakecoin: Xeggex.com Merged Mining Pools: EU3 - NY2/AT1 - LA1Donation Addresses: BLC: Bd3jJftFbwxWSKNSNz35vkDd57kG6jHAjt PHO: BZXPMc8eF9YZcJStskkP2bVia38fv9VmuT BBTC: 2h8c4NbzXJXk6QQ89r7YYMGhe13gQUC2ajD ELT: e7cm6cAgpfhvk3Myh2Jkmi1nqaHtDHnxXb UMO: uQH9H17t7kz3eVQ3vKDzMsWCK4hn5nh2gC LIT: 8p8Z4h5fkZ8SCoyEtihKcjzZLA7gFjTdmL BTC: 1Q6kgcNqhKh8u67m6Gj73T2LMgGseETwR6
|
|
|
BlueDragon747 (OP)
Legendary
Offline
Activity: 1509
Merit: 1030
Solutions Architect
|
|
November 17, 2013, 05:34:12 AM |
|
Hi, I just compiled the blakecoind under Mac OSX 10.8.5 and testing it for Solo Mining. Time to retire my big & loud Win8 GPU system. A Ztex 1.15y attached to a r-pi is doing the mining. cgminer version 3.1.1 - Started: [2013-11-16 20:19:12] -------------------------------------------------------------------------------- (5s):573.9M (avg):1.141Gh/s | A:0 R:0 HW:4 U:0.0/m WU:14.1/m ST: 6 SS: 0 NB: 66 LW: 0 GF: 0 RF: 0 Connected to 192.168.178.31 diff 2.06K without LP as user trepex Block: 107cc80348bd3c9e... Diff:2.06K Started: [01:01:18] Best share: 466 -------------------------------------------------------------------------------- [P]ool management [ S ]ettings [D]isplay options [Q]uit ZTX 0: 04A36E0780-1 | 196.0MHz | 388.3M/392.8Mh/s | A:0 R:0 HW: 0 U:0.00/m ZTX 1: 04A36E0780-2 | 196.0MHz | 390.3M/392.8Mh/s | A:0 R:0 HW: 1 U:0.00/m ZTX 2: 04A36E0780-3 | 180.0MHz | 359.5M/361.7Mh/s | A:0 R:0 HW: 76 U:0.00/m ZTX 3: OFF / 0.000h/s | A:0 R:0 HW: 0 U:0.00/m -------------------------------------------------------------------------------- If anyone is interested, I could compile a binary of the blakecoind with static libraries and upload it to MEGA. I would like to get the GUI as binary, I failed to compile the GUI for another altcoin (DEM, Deutsche eMark) and will not even try to compile to BlakeCoin version. trepex not tried to compile for Mac OSX myself and the makefile is almost untouched and should be very similar to Bitcoin 0.8.5 it is best to check how others are building Bitcoin 0.8.5 on Mac OSX and apply the same build method and any tweaks to the makefile to get it working please report your results here as you are first to try and build on Mac as far as I know
|
Info: Github - Blakecoin.org - BCT Blakecoin thread - Twitter - BCS - BlakeZone Trade Blakecoin: Xeggex.com Merged Mining Pools: EU3 - NY2/AT1 - LA1Donation Addresses: BLC: Bd3jJftFbwxWSKNSNz35vkDd57kG6jHAjt PHO: BZXPMc8eF9YZcJStskkP2bVia38fv9VmuT BBTC: 2h8c4NbzXJXk6QQ89r7YYMGhe13gQUC2ajD ELT: e7cm6cAgpfhvk3Myh2Jkmi1nqaHtDHnxXb UMO: uQH9H17t7kz3eVQ3vKDzMsWCK4hn5nh2gC LIT: 8p8Z4h5fkZ8SCoyEtihKcjzZLA7gFjTdmL BTC: 1Q6kgcNqhKh8u67m6Gj73T2LMgGseETwR6
|
|
|
feeleep
Legendary
Offline
Activity: 1197
Merit: 1000
|
|
November 17, 2013, 06:15:22 AM |
|
and I dont see here using blake algo to generate merkleroot - maybe here is the problem?
The merkleroot is a double SHA-256 and uses the same ecdsa curve as Bitcoin like I have said in pm to you but the stratum pool software does not just do a single doublesha on the merkleroot also the cpu miner uses the getwork2 for mining the wallet? Hi - correct me if I am wrong but when you mine a wallet you don't calculate merkleroot therefore you can find blocks with cpuminer or cgminer, but when you mine with stratum pool then cpuminer is calculating merkleroot (just sha algo), then stratum server calculates it once again (with blake algo according to your modified function) and then wallet checks merkleroot (also with blake algo) and this check fails. Thats why I pointed this part of stratum work build function in cpuminer as first step which logically is wrong (assuming wallet function as baseline).
|
|
|
|
BlueDragon747 (OP)
Legendary
Offline
Activity: 1509
Merit: 1030
Solutions Architect
|
|
November 17, 2013, 10:09:13 AM |
|
and I dont see here using blake algo to generate merkleroot - maybe here is the problem?
The merkleroot is a double SHA-256 and uses the same ecdsa curve as Bitcoin like I have said in pm to you but the stratum pool software does not just do a single doublesha on the merkleroot also the cpu miner uses the getwork2 for mining the wallet? Hi - correct me if I am wrong but when you mine a wallet you don't calculate merkleroot therefore you can find blocks with cpuminer or cgminer, but when you mine with stratum pool then cpuminer is calculating merkleroot (just sha algo), then stratum server calculates it once again (with blake algo according to your modified function) and then wallet checks merkleroot (also with blake algo) and this check fails. Thats why I pointed this part of stratum work build function in cpuminer as first step which logically is wrong (assuming wallet function as baseline). yes I see what you mean I have tested with a modified stratum proxy and the block candidate is still rejected but I have not yet tried with a modified block submission method and the modified stratum proxy at the same time this is the only way I can think of to avoid a calculation error like the one you are suggesting only issue with that fix is the pool has a lot more duplicate shares that get submitted
|
Info: Github - Blakecoin.org - BCT Blakecoin thread - Twitter - BCS - BlakeZone Trade Blakecoin: Xeggex.com Merged Mining Pools: EU3 - NY2/AT1 - LA1Donation Addresses: BLC: Bd3jJftFbwxWSKNSNz35vkDd57kG6jHAjt PHO: BZXPMc8eF9YZcJStskkP2bVia38fv9VmuT BBTC: 2h8c4NbzXJXk6QQ89r7YYMGhe13gQUC2ajD ELT: e7cm6cAgpfhvk3Myh2Jkmi1nqaHtDHnxXb UMO: uQH9H17t7kz3eVQ3vKDzMsWCK4hn5nh2gC LIT: 8p8Z4h5fkZ8SCoyEtihKcjzZLA7gFjTdmL BTC: 1Q6kgcNqhKh8u67m6Gj73T2LMgGseETwR6
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 17, 2013, 08:32:24 PM Last edit: November 17, 2013, 08:50:35 PM by mogrith |
|
EDit Wrong cgminer was using one for GPU. D/L correct one now. new hashvoodo loaded as controller hashvoodoo_controller_25.bit bitstream loaded on p0-p3 CM1-hv-v04a-80MHz-ucf-75-fmax-78.bit Can't get cgminer to run WIn7 D:\Coin_Wallets\Miners\cgminer-blake256>D:\Coin_Wallets\Miners\cgminer-blake256\ cgminer -T --disable-gpu -S \\.\COM20 -S \\.\COM21 -S \\.\COM22 -S \\.\COM23 --u rl localhost:8772 -u mogrith -p xxxx 2>log.txt [2013-11-17 12:28:43] cgminer: -S: unrecognized option
|
|
|
|
BlueDragon747 (OP)
Legendary
Offline
Activity: 1509
Merit: 1030
Solutions Architect
|
|
November 17, 2013, 08:47:58 PM |
|
new hashvoodo loaded as controller hashvoodoo_controller_25.bit
bitstream loaded on p0-p3 CM1-hv-v04a-80MHz-ucf-75-fmax-78.bit
Can't get cgminer to run WIn7
D:\Coin_Wallets\Miners\cgminer-blake256>D:\Coin_Wallets\Miners\cgminer-blake256\ cgminer -T --disable-gpu -S \\.\COM20 -S \\.\COM21 -S \\.\COM22 -S \\.\COM23 --u rl localhost:8772 -u mogrith -p xxxx 2>log.txt [2013-11-17 12:28:43] cgminer: -S: unrecognized option
are you sure that is the right cgminer? use the version kramble has modded as the newer versions of cgminer don't support the -S option any more https://www.dropbox.com/s/m18kr3kgrl102w2/cgminer-311-2013-11-16-CM1.exe
|
Info: Github - Blakecoin.org - BCT Blakecoin thread - Twitter - BCS - BlakeZone Trade Blakecoin: Xeggex.com Merged Mining Pools: EU3 - NY2/AT1 - LA1Donation Addresses: BLC: Bd3jJftFbwxWSKNSNz35vkDd57kG6jHAjt PHO: BZXPMc8eF9YZcJStskkP2bVia38fv9VmuT BBTC: 2h8c4NbzXJXk6QQ89r7YYMGhe13gQUC2ajD ELT: e7cm6cAgpfhvk3Myh2Jkmi1nqaHtDHnxXb UMO: uQH9H17t7kz3eVQ3vKDzMsWCK4hn5nh2gC LIT: 8p8Z4h5fkZ8SCoyEtihKcjzZLA7gFjTdmL BTC: 1Q6kgcNqhKh8u67m6Gj73T2LMgGseETwR6
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 17, 2013, 08:55:21 PM |
|
Now I get program cannot start because libsub-1.0.dll is missing
|
|
|
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 17, 2013, 09:25:04 PM |
|
progress got icarus fails so tried -notest version D:\Coin_Wallets\Miners\cgminer-blake256-FPGA>D:\Coin_Wallets\Miners\cgminer-blak e256-FPGA\cgminer-311-2013-11-16-CM1-notest.exe -T --disable-gpu --icarus-timing long -S \\.\COM20 -S \\.\COM21 -S \\.\CM22 -S \\.\COM23 --url 127.0.0.1:8772 -u mogrith -p nonono 2>log.txt [2013-11-17 13:20:47] Started cgminer 3.1.1 [2013-11-17 13:20:48] Icarus Detect: Test failed at \\.\COM20: get 00000000, sh ould: 00468bb4 [2013-11-17 13:20:48] Icarus Detect: Test failed at \\.\COM21: get 00000000, sh ould: 00468bb4 [2013-11-17 13:20:48] Icarus Detect: Failed to open \\.\CM22
[2013-11-17 13:20:48] Icarus Detect: Test failed at \\.\COM23: get 00000000, sh ould: 00468bb4 [2013-11-17 13:20:48] Probing for an alive pool [2013-11-17 13:20:48] Network diff set to 1.46K [2013-11-17 13:20:48] No suitable long-poll found for http://127.0.0.1:8772
[2013-11-17 13:20:59] Network diff set to 1.46K [2013-11-17 13:20:59] New block detected on network [2013-11-17 13:21:45] Network diff set to 1.46K [2013-11-17 13:21:45] New block detected on network [2013-11-17 13:22:30] Network diff set to 1.46K [2013-11-17 13:22:30] New block detected on network (5s):1.138G (avg):1.115Gh/s | A:0 R:0 HW:0 U:0.0/m WU:0.0/m
so it's sorta running
|
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 17, 2013, 09:28:04 PM |
|
May not have loaded bitsteam correctly all 4 have yellow and red solid led no blue slow red blinker center of board
|
|
|
|
kramble
|
|
November 17, 2013, 09:31:41 PM |
|
May not have loaded bitsteam correctly all 4 have yellow and red solid led no blue slow red blinker center of board Turn switch 3 back on, the red LEDs should start to blink. If you used the VirtualBox instance to program the devices, shut it down (init 0), unplug then replug the USB cable, then start cgminer (runblake.bat).
|
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 17, 2013, 09:41:42 PM |
|
this is my current config holding board with 4 & 6 pin power pointing left (green phoniex on top) switches as follow
x x x x
x x x x
this is what CM1Quickstart calls Mining software configuration
|
|
|
|
kramble
|
|
November 17, 2013, 09:48:35 PM |
|
this is my current config holding board with 4 & 6 pin power pointing left (green phoniex on top) switches as follow
x x x x
x x x x
this is what CM1Quickstart calls Mining software configuration
My configuration ... x x x x x x x x Switch 2 is the fan override since I'm not using the supplied fans. Switch 5 is the clock speed setting, needs to be in the opposite direction for the hashvoodo firmware.
|
|
|
|
mogrith
Legendary
Offline
Activity: 1470
Merit: 1001
Use Coinbase Account almosanywhere with Shift card
|
|
November 17, 2013, 09:55:32 PM |
|
altered switches ok were blue at powerup then turned red/yellow
com 20-23 is my com ports also
got 3 test failed one failed to open (com22)
|
|
|
|
|