Pages:
Author

Topic: NanoFury Project - Open Source Design (Read 75414 times)

hero member
Activity: 686
Merit: 500
FUN > ROI
July 01, 2015, 05:11:34 AM
And as for the X1 crystal - do not change it. It is used for the USB communication (and will not overclock anything).

Clock speed on the BitFury chip is determined by the voltage - and the two resistors you mentioned will change that. (exact formula and details are in the previous posts)
lol, derp.  It's been too long Sad

Will adjust post ( and also point to more complete BoM with DK partnos Smiley )
vs3
hero member
Activity: 622
Merit: 500
July 01, 2015, 03:26:32 AM
Steve - thanks for covering for me! Smiley

Here are the actual parts (including DigiKey part numbers) that were used on some of the NanoFury NF1 v0.7 boards:

Code:
#        Designators        Value        Package        "count/board"        OEM P/N        DigiKey P/N
1        C1 C3 C6 C10 C12 C13 14 C15 C22 C23 C24 C25 CF1.8-1        100nF        0603        13        CL10B104KO8NNNC        1276-1005-2-ND
2        C2 CF1        22uF/6.3V        0805        2        C2012X6S0J226M085AC        445-14469-2-ND
3        C4 C5 C11 C21        22uF/4V        0805        4        AMK212AC6226MG-T         587-3264-6-ND
4        C8 C9        10uF/6.3V        0805        2        CL21F106ZPFNNNE        1276-3012-2-ND
5        C7        1.1nF        0603        1        CL10B102KB8SFNC        1276-1916-2-ND
6        R1        13K        0603        1        RC0603JR-0713KL        311-13KGRTR-ND
7        R2        180        0805        1        RC0805FR-07180RL        311-180CRTR-ND
8        R3        2.4K        0603        1        RC0603FR-072K4L        311-2.40KHRTR-ND
9        R4 R6 R8 R9        2K        0603        4        MCR03EZPEJ202        1056-MCR03J202-CHP
10        R5        2K        0805        1        RMCF0805JT2K00        RMCF0805JT2K00TR-ND
11        R7 R11 R12        1K        0603        3        MCR03EZP5J102        1056-MCR03J102-CHP
12        D1        LED        2PLCC        1        LY T67K-J2M1-26-Z        475-2562-6-ND
13        L1        10R@100MHz        0603        1        "CIB10P100NC(or ACML-0603-060)"        1276-6388-6-ND
14        L2        2.2uH        0630        1        NR6028T2R2N        587-2098-6-ND
15        Q1        BSS138L        SOT-23        1        BSS138LT3G        BSS138LT1GOSDKR-ND
16        U1        BD9C301FJ        HTSOP-8        1        BD9C301FJ-E2        846-1117-6-ND
17        U2        LDO-1.8V        SOT-23-5        1        LD39015M18R        497-6977-6-ND
18        U3        LDO-3.3V        SOT-23        1        MCP1700T-3302E/TT        MCP1700T3302ETTDKR-ND
19        U4        BITFURY        QFN48        1               
20        U5        MCP2210-I/SS        SSOP-2        1        MCP2210-I/SS        MCP2210-I/SS-ND
21        X1        12MHz        3SMD*        1        CSTCE12M0G55-R0        490-1197-6-ND
22        CN1        USB-A plug        USBA        1        1001-011-01101        1175-1008-ND

And as for the X1 crystal - do not change it. It is used for the USB communication (and will not overclock anything).

Clock speed on the BitFury chip is determined by the voltage - and the two resistors you mentioned will change that. (exact formula and details are in the previous posts)
hero member
Activity: 686
Merit: 500
FUN > ROI
June 30, 2015, 02:14:31 PM
No problem - if you end up making a NanoFury, or even designing a miner of your own ( have a look at two guys building a StickMiner from scratch using a relatively new chip: GekkoScience BM1384 Project Development Discussion ), be sure to share Smiley
newbie
Activity: 7
Merit: 0
June 30, 2015, 01:53:38 PM
Good to see you took my recommendation Smiley

Flat BOM (generated out of KiCAD):
Code:
Reference, Value, Footprint, Datasheet, P/N, Manufacturer Part Number
C1,100nF,0603,
C2,22uF/6.3V,0805,,C2012X6S0J226M085AC,
C3,100nF,0603,
C4,22uF,0805,,AMK212AC6226MG,
C5,22uF,0805,,AMK212AC6226MG,
C6,100nF,0603,
C7,1.1n,0603,
C8,10uF,0805,
C9,10uF/4V,0805,,LMK212AB7106MG,
C10,100nF,0603,
C11,22uF,0805,,AMK212AC6226MG,
C12,100nF,0603,
C13,100nF,0603,
C14,100nF,0603,
C15,100nF,0603,
C21,22uF,0805,,AMK212AC6226MG,
C22,100nF,0603,
C23,100nF,0603,
C24,100nF,0603,
C25,100nF,0603,
CF1,22uF/6.3V,0805,,C2012X6S0J226M085AC,
CF1.8-1,100n,0805,
CN1,USB-A,CNC-1001-011-01101,1001-011-01101.pdf,1001-011-01101,
D1,LED,2PLCC,LO_LS_LY_T67K_Pb_free.pdf,LY T67K-J2M1-26-Z,
L1,10R@100MHz,0603,,CIB10P100NC (or ACML-0603-060),
L2,2.2uH,0630,wound04_e.pdf,NR6028T2R2N,
P1,TST,TP,
P2,TST,TP,
P3,TST,TP,
P4,TST,TP,
P5,TST,TP,
P6,TST,TP,
P7,TST,TP,
P8,TST,TP,
Q1,BSS138L,SOT23,BSS138LT1-D.pdf,,BSS138LT3G
R1,13k,0603,
R2,100,0805,
R3,2.4k,0603,
R4,2k,0603,
R5,2k,0805,
R6,2k,0603,
R7,1k,0603,
R8,2K,0603,
R9,2k,0603,
R11,1k,0603,
R12,1k,0603,
U1,BD9C301FJ,HTSOP-J8,bd9c401efj-e.pdf,BD9C301FJ-E2,
U2,LDO - 1.8V,SOT23-5,tlv70218.pdf,TLV70218DBVT,
U3,LDO - 3.3V,SOT23,202250A.pdf,MCP1700T-3302E/TT,
U4,BITFURY,QFN48,
U5,MCP2210-I/SS,SSOP-20,22288A.pdf
U51,MCP2210-I/SO,SOIC20,22288A.pdf
X1,12MHz,CSTCE_G15C,p16e.pdf,CSTCE12M0G55Z-R0,

Compressed BOM:
Code:
Reference Value Footprint Count P/N
Reference, Value, Footprint,Count, P/N
C1,C3,C6,C10,C12,C13,C14,C15,C22,C23,C24,C25,100nF,603,12,
C2,CF1,22uF/6.3V,805,2,C2012X6S0J226M085AC
C4,C5,C11,C21,22uF,805,4,AMK212AC6226MG
C7,1.1n,603,1,
C8,10uF,805,1,
C9,10uF/4V,805,1,LMK212AB7106MG
CF1.8-1,100n,805,1,
CN1,USB-A,CNC-1001-011-01101,1,1001-011-01101
D1,LED,2PLCC,1,LY T67K-J2M1-26-Z
L1,10R@100MHz,603,1,CIB10P100NC (or ACML-0603-060)
L2,2.2uH,630,1,NR6028T2R2N
Q1,BSS138L,SOT23,1,BSS138LT3G
R1,13k,603,1,
R2,100,805,1,
R3,2.4k,603,1,
R4,R5,R6,R8,R9,2k,603,5,
R7,R11,R12,1k,603,3,
U1,BD9C301FJ,HTSOP-J8,1,BD9C301FJ-E2
U2,LDO - 1.8V,SOT23-5,1,TLV70218DBVT
U3,LDO - 3.3V,SOT23,1,MCP1700T-3302E/TT
U4,BITFURY (either Rev1 or Rev2 accepted),QFN48,1,
U5 OR U5/1,MCP2210-I/SS,SSOP-20 OR SOIC20,1,
X1,12MHz,CSTCE_G15C,1,CSTCE12M0G55Z-R0

The passives are all pretty generic, as are the LDOs.. there's probably replacement parts for some of them anyway.
You can play with the value of R2 a bit if you want to mess with under/overclocking (change crystal X1).
You can probably combine a few more of these parts - e.g. C8 and C9, C2+ and C4+.
Important note from the schematic: All components should be rated 105°C or above.

Sourcing the BitFury chip will be your biggest hurdle, but have a look at the marketplace and e-bay.. there's full BitFury blades from which you can salvage them if you can't find a direct source of chips (can always post a WTB in the marketplace as well.. there's bound to be some still laying around).

thank you so much love to see someone willing to help me out Smiley thanks
hero member
Activity: 686
Merit: 500
FUN > ROI
June 30, 2015, 01:42:49 PM
Good to see you took my recommendation Smiley

Flat BOM (generated out of KiCAD):
See improved BoM with Digikey part numbers in vs3's post:
https://bitcointalksearch.org/topic/m.11761192

The passives are all pretty generic, as are the LDOs.. there's probably replacement parts for some of them anyway.
You can play with the value of R2 a bit if you want to mess with under/overclocking (change crystal X1) yeah no, don't - it's the USBSER clocker, nothing to do with hashing.
You can probably combine a few more of these parts - e.g. C8 and C9, C2+ and C4+.
Important note from the schematic: All components should be rated 105°C or above.

Sourcing the BitFury chip will be your biggest hurdle, but have a look at the marketplace and e-bay.. there's full BitFury blades from which you can salvage them if you can't find a direct source of chips (can always post a WTB in the marketplace as well.. there's bound to be some still laying around).
newbie
Activity: 7
Merit: 0
June 30, 2015, 01:07:59 PM
Hello I am having troubles opening up a Bom for the nf1 v0.7 does anyone else have this problem. I think it may be my computer that is the problem. Would anyone be kind enough to reply to my message with the bom list? with the amounts of each part required for building the pcb?
Thank you in advance and also good job Vs3 on the wicked design.
newbie
Activity: 40
Merit: 0
April 27, 2015, 01:29:54 PM
i bought 1 nanofury 2 and i install the winusb driver for cgminer but i prefer bfgminer, as I can install the previous driver?
legendary
Activity: 1484
Merit: 1004
February 18, 2015, 08:58:00 AM
Awesome job VS3!

Thanks for your help on the community!

Hope you will bring a new device!  Grin
vs3
hero member
Activity: 622
Merit: 500
February 18, 2015, 03:07:54 AM
Project Update And Wrap Up

Many people have PM-ed me asking about the status and future of this project, so I figured I should post a quick official note -

As everyone knows this project was designed specifically for Bitfury's (gen1) chips. Unfortunately those chips are no longer available for purchase. Without chips you cannot make use of this design. Until we see the next generation of Bitfury's chips there isn't much we can do. It is also likely that those new chips will require a (significantly) different design, so I guess I'll worry about that when and if they become available.

Many of the design concepts however can easily be repurposed for other projects - like the power converter module, voltage shifter, USB interface, etc.

As for this project - I think it has served its purpose and can move towards a well-deserved retirement phase.

I want to thank one more time everyone who contributed to this project - from the good and critique comments, to actual work, programming, development, ideas, feedback and all other kinds of help! It was much appreciated! And even though at times this project gave me quite some heartburn I also had fun doing that work!

I hope everyone has enjoyed the ride too! Thank you for being aboard! Smiley


p.s. I'll continue to be around and keep an eye for some other chip that might present a similar opportunity. And if that happens it will live in its own separate thread. As for the NanoFury project - if you have any questions feel free to post them here or PM me.
newbie
Activity: 1
Merit: 0
November 14, 2014, 07:17:18 AM
Can someone post project NF2 ?
Programs, schema and everything else required to build NF2 by my own Smiley)
vs3
hero member
Activity: 622
Merit: 500
November 03, 2014, 02:24:25 AM
I have a tray of chips and other bitfury gear left over for sale :

I have a tray of 260 BitFury chips from the second revision (that's still Gen-1) for sale. Those are the same ones which had reported over 4GH/s. For the sake of perfectionism I'd say you should expect to achieve over 3.5GH with those when pushed, and when running on "power saving mode" should do easily below 0.3-0.4W/GH

I am selling it as a full unopened tray. I am not interested in breaking it apart and will not be selling individual chips.



I have a BitFury M-card v3.0 + H-Board PCI v2.2 with heatsink for sale.

If that matters to anyone - they're brand new, never used, never powered, still in their original packaging from punin (from bitfurystrikesback.com). Those are leftovers from a previous project that never took off and I don't see any point of keeping them around to collect dust.

I also have the Raspberry PI with the original SD card as preloaded by BFSB (which is also in its original box and has never been powered). I don't insist on selling the RasPI as I can still use it for other purposes, but if you want it - it's yours.



This is just the essential info. Please see the full posts for more pictures and details.
hero member
Activity: 686
Merit: 500
FUN > ROI
September 22, 2014, 09:06:44 PM
There are a few reasons why I didn't go with that idea
Ha - yeah, mostly the same reasons I figured that although it would be a nicety, wouldn't really make sense. Still interesting to see it happen though.

The NF1 is indeed a very elegant-in-its-simplicity design, as is the NF6 (and I'm sure the NF2 as well) Smiley
vs3
hero member
Activity: 622
Merit: 500
September 22, 2014, 07:05:27 PM
What smaller miners could do is present themselves as an external drive [...]

Not sure if you remember that discussion - but just thought I'd drop in here and say that somebody has actually gone ahead and done that:
https://bitcointalksearch.org/topic/m.8932422
http://www.btcgt.com/goods.php?id=41

Yep, I do remember it.

There are a few reasons why I didn't go with that idea - specifically adding a flash storage for the drivers -
#1 : cost - there is nothing free on this world Smiley Adding that would probably double or even triple the BOM.
#2 : effort - or more cost in terms of man-hours - this complicates the USB device identification (both a HID and a mass-storage), requires a dedicated microcontroller, as a result there is a lot of coding that would need to happen.
#3 : benefit - I'd say negligible at best. Whatever drivers you put on that storage will be obsolete by the time the device reaches its end users. They'll pretty much ignore them and just download the most recent ones from the web. Pretty much the same stuff as that CD that you get with your new motherboard - those drivers are almost always obsolete.
#4 : security - I can go on for hours on this one. Let's say that it's been more than once when I get a brand new (supposedly blank) flash drive and it wants to auto-run and install some "stuff" (including malicious software).
#5 : manufacturing - and last but not least comes the manufacturing cost - where you have added an extra step to program that microcontroller and upload the software.

I guess it's probably just me, but I'm a big fan of The KISS Principle - and that's how the NanoFury was designed.
In it's design I looked for the most simple possible solution - just a few examples :
- I didn't go with a dedicated microcontroller (as pretty much everyone else) and decided to expose the SPI interface directly to the USB (via the MCP2210 chip) which saved hundreds of manhours of (software development) work and as a side effect did not require any programming knowledge (especially since it was meant to be an open-source design).
- I didn't even use a level shifter chip - just some resistors and a transistor.
- not even a temperature sensor - which would've been a nicety but not really a mandatory element
- all of the software changes were contained in the open-source bfgminer and cgminer
- original design didn't even require a heatsink - the copper plane on the back of the board was sufficient for getting 1.5GH with zero artificial cooling and no heatsink Smiley
- the only "extra" that I added was the LED Smiley

So in essence - yes, there are many things that could've been added, but they're all in the "nice to have" category - not in the "must have" one.
I think the NanoFury project achieved its goal to be as simple as possible miner - for both the end users and also manufacturers and enthusiasts who home-built theirs.
hero member
Activity: 686
Merit: 500
FUN > ROI
September 22, 2014, 06:34:14 PM
What smaller miners could do is present themselves as an external drive [...]

Not sure if you remember that discussion - but just thought I'd drop in here and say that somebody has actually gone ahead and done that:
https://bitcointalksearch.org/topic/m.8932422
http://www.btcgt.com/goods.php?id=41
vs3
hero member
Activity: 622
Merit: 500
August 14, 2014, 12:44:37 AM
NanoFury NF6 DIY kits update - The last two can be yours for $100 plus shipping (or $60 if you wanted just one of the two).


I have a few extra boards for NanoFury NF6 DIY kits
They're 8 boards per panel.

TO PLACE AN ORDER:
PM me with what you want and I'll send you a quote with the final amount and payment instructions.
Please put DIY KIT in the message subject line.
For the quote I'll need a shipping address, and if you prefer UPS/FEDEX also a phone number.
Payment options (in the order of preference) will include: BTC (coinbase rate), check, paypal.

Here are some images:


here is how the solder mask looks like:

newbie
Activity: 30
Merit: 0
August 03, 2014, 12:55:31 AM
ah, I see. Thank you for the detailed explanation!
vs3
hero member
Activity: 622
Merit: 500
August 02, 2014, 02:13:52 AM
vs3, quick question: why do the bitfurys in the nf6 design not run at their top frequency (6x3.5 = 21GH vs ~12.5GH)?

The main reason is voltage.

First, not all chips will get 3.5GH. Each chip is slightly different and will get the best results at a specific voltage and speed (osc6 bits).
The voltage for that is usually in the vicinity of 0.95-1.1V.

With NF6 specifically you can't easily adjust the voltage for each individual chip - they split somewhat even the input voltage which on a theory is supposed to be 5.0V.
In practice I've seen it vary all the way down from 3.8V to 5.3V. Some crappy USB hub power supplies will start dropping the voltage with higher amperage usage.

For example - I just got a very nice SIIG 10-port USB3 hub with 12V/5A power supply - and the results speak for themselves:
Code:
bfgminer version 4.5.0 - Started: [2014-08-01 23:46:09] - [  0 days 00:16:48]
 Manage devices Pool management Settings Display options
 Pool 0: stratum.bitcoin.cz  Diff:47  +Strtm  LU:[00:02:50]  User:vs3.nanofury1
 Block: ...3f31a753 #313602  Diff:18.7G (134.1Ph?)  Started: [23:59:20]
 ST:25  F:0  NB:2  AS:1  BW:[ 53/ 42 B/s]  E:272.54  I:61.47uBTC/hr  BS:3.49k
 6/23         | 57.15/56.82/55.90Gh/s | A:351 R:0+0(none) HW:331/2.5%
--------------------------------------------------------------------------------------
 NFY 0:       |  2.20/ 2.34/ 2.30Gh/s | A: 21 R:0+0(none) HW: 27/4.8%
 NFY 1:       |  4.85/ 4.80/ 4.91Gh/s | A: 26 R:0+0(none) HW: 19/1.6%
 NFY 2:       |  4.92/ 4.93/ 4.86Gh/s | A: 27 R:0+0(none) HW: 10/.87%
 NFY 3:       | 16.56/16.79/16.11Gh/s | A: 85 R:0+0(none) HW:156/4.0%
 NFY 4:       | 15.85/15.88/15.63Gh/s | A:106 R:0+0(none) HW: 89/2.4%
 NFY 5:       | 12.74/12.69/12.69Gh/s | A: 87 R:0+0(none) HW: 35/1.2%
--------------------------------------------------------------------------------------

#0 is a NF1, 1 and 2 are NF2s.
#3 (56 bits) and #4 (55 bits) are NF6 both with Gen2 chips, #5 (56 bits) is a NF6 with Gen1 chips.


So, if you want to get a few extra hashes you need to increase the 5V voltage. With 5V there are about 4.9 to be split among the chips, or that gives you 0.817V per chip.
If you increase that to 5.3V that will give you 0.87V per chip and you should easily be able to get over 3-3.2GH/chip.
You can try increasing it even further, but there is a risk that you may damage the USB hub or your computer. There is also the risk of overheating, so you have to be careful. Increasing it to 5.5V will give you 0.917V/chip and with that you should be able to get even more hashes.

Aside from that - what the others wrote is also valid to some extent - standard USB2 port provides 0.5A and USB3 is 0.9A. So in either case you will need a powered USB hub and you need to make sure that you have at least 1.2-1.3A per NF6 device (and 1.5A or more if you're going to be pushing it).

The MCP2210 also contributes to the limitations - it adds a gap between the transmissions which limits you how quickly you can scan all chips. If you search in the previous posts I think there was someone who experimented with longer chains and basically started hitting the limits after the 8th chip. In my guesstimate the limitation will be at around 20-25GH.
newbie
Activity: 30
Merit: 0
July 31, 2014, 07:21:25 AM
so, with external power and an upgraded chip it would be possible?
newbie
Activity: 49
Merit: 0
July 31, 2014, 07:19:23 AM
vs3, quick question: why do the bitfurys in the nf6 design not run at their top frequency (6x3.5 = 21GH vs ~12.5GH)?
The throughput of SPI on MCP2210 is the factor of the hash rate…
(the buffer size on MCP2210 is too short to feed a job to a bitfury in one transmission. Two transmissions are always needed. And more, the gap between two transmissions is another issue…
legendary
Activity: 4004
Merit: 2702
July 31, 2014, 07:03:02 AM
Over USB you don't have enough Power (~1A) for higher frequencies...
Pages:
Jump to: