n0nce (OP)
|
|
August 29, 2022, 12:00:08 AM Last edit: August 29, 2022, 11:36:56 PM by n0nce Merited by hugeblack (15), mikeywith (10), vapourminer (5), gmaxwell (5), pooya87 (5), dkbit98 (5), PawGo (5), BlackHatCoiner (4), Cricktor (4), PowerGlove (4), Welsh (3), ABCbits (2), aliashraf (2), o48o (1), DdmrDdmr (1), dlystyr (1) |
|
For my first year Bitcointalk anniversary, I wanted to prepare a little bit of a special post. It could fit in the mining section, but since it’s kind of a work in progress and “Development and Technical Discussion” was mostly my home for this past year, I will present my latest project here. As it’s rather easy to source BM1387 (and similar other) ASIC chips from China for cheap, I set out to build an open-source low-power home miner that everyone can build themselves. The chips are used in Bitmain's Antminer S9, which utilizes 189 of them. I paid roughly 2€ for one such chip and 6€ (including taxes & shipping) for 5 of the PCBs you see below. If they're not available, it's easy to find broken S9 ASICs or just the hashboards, for cheap and ripping out the ASIC chips; most likely the majority of them is still good. So, my first step was to create and order a breakout board to be able to reverse engineer the communication. I also wanted to create a matching power supply; popular 1-chip mining sticks like sidehack’s stuff utilize rather high power buck converter circuits that shift 5V input voltage down to whatever the core needs; in this case, 0.4V at high currents of probably well over 10A. I’ve started to learn about buck converters and power electronics, but I’m not yet done with a circuit that I’m comfortable to get manufactured, so I designed this PCB as a pure breakout board, without any power supply circuitry and instead just a beefy 2-pin connector (rated to handle 400V, 32A). My hope is that for pure protocol reversing, the chip won’t pull a lot of power anyway and will only do so once it is instructed to start mining. This means a lab bench power supply set to 0.4V might suffice for this purpose. Even though this is meant for development purposes, I don't see why this board wouldn't work in 'mining' mode, though; as long as you add a good heatsink. A future revision should probably include mounting holes, but I couldn't find standardized, small heatsinks with holes in them, yet. A northbridge heatsink may fit, but may also be overkill. All in all, the board you see above cost me ~4€ in total; a synchronous Buck DC/DC converter circuit shouldn't be much more than 5 bucks for components and PCB, so I think you could get 20GH/s from a 10€ setup. It's not much, but a starting ground to hopefully move to a higher-end ASIC in the future. I may even keep the current design where the power supply is separate from the ASIC board; as long as the voltage is the same, it could be reused. Anyhow, the Gerber files are below and will also upload design files shortly. Gerber download: https://n0nce.eu/src/Gerber_PCB_BM1387_Breakout.zipI will continue to work on this project, so if anyone wants to chime in and / or help in this project (for example working on the power supply), don’t hesitate to comment or DM me! Any suggestions are welcome.
I’d like to take a bit of space here to thank everyone for the great discussions, helpful information and acceptance in signature & avatar campaigns very early on in my Bitcointalk journey. Thanks for taking your time to read through my topics and posts when my account was still in Newbie status. This has really been the best forum I’ve been registered on and it's enlightening and fun to log on almost every day. Some days I just read, learn and send merit, other days we have vivid discussions; what's for sure is that it never gets boring..
|
|
|
|
n0nce (OP)
|
|
August 29, 2022, 12:00:22 AM Last edit: August 29, 2022, 11:36:03 PM by n0nce Merited by vapourminer (3), ABCbits (1) |
|
Wow, in a pretty unpredictable turn of events (for me at least), I was just looking for this thread and found another one instead! Apparently, 3-4 months ago someone else came up with a similar idea. They went for a dual-chip configuration, like on the GekkoScience NewPac and it seems to be all open-source as well. I will get in touch with the guys from that project, then and see if we can join forces! Here a reference: Open Source Bitcoin ASIC miner project that uses 2x BM1387 (Antminer S9) For what it's worth, I had my PCBs already in February of this year, but forgot about the project for a while. Oopsie!
|
|
|
|
n0nce (OP)
|
|
August 29, 2022, 12:00:26 AM Last edit: August 29, 2022, 11:35:53 PM by n0nce |
|
Reserved
|
|
|
|
dkbit98
Legendary
Offline
Activity: 2408
Merit: 7547
|
|
August 29, 2022, 01:48:29 PM |
|
Anyhow, the Gerber files are below and will also upload design files shortly.
Who designed this and made Gerber files, you or someone made this for you? It looks very cool and you even added your own bitcointalk username on PCB, nice touch I will continue to work on this project, so if anyone wants to chime in and / or help in this project (for example working on the power supply), don’t hesitate to comment or DM me! Any suggestions are welcome. I am afraid that I am not even nearly enough skilled to help with power supply or asic miners, and I can only work basic electronic fixing, soldering, etc. Maybe you should try contacting guy who is working on Computer Module 4 raspberry pi devices, for running bitcoin nodes. He is called Mirek and you can also find him by the name MirkoPC.
|
|
|
|
n0nce (OP)
|
|
August 29, 2022, 02:01:37 PM Last edit: August 29, 2022, 11:35:47 PM by n0nce Merited by vapourminer (9), dkbit98 (3), ABCbits (2) |
|
Anyhow, the Gerber files are below and will also upload design files shortly.
Who designed this and made Gerber files, you or someone made this for you? It looks very cool and you even added your own bitcointalk username on PCB, nice touch Myself! Yeah, wouldn't have added it if someone else made it of course. Actually I found a footprint of the ASIC on the EasyEDA web editor - who knows, maybe they also created the Antminer S9 in EasyEDA! Other than that it was just a matter of creating large ground and Vcc planes and breaking out the pins. And of course hoping the footprint was legit and matched the real chips, which it does! I will continue to work on this project, so if anyone wants to chime in and / or help in this project (for example working on the power supply), don’t hesitate to comment or DM me! Any suggestions are welcome.
I am afraid that I am not even nearly enough skilled to help with power supply or asic miners, and I can only work basic electronic fixing, soldering, etc. Maybe you should try contacting guy who is working on Computer Module 4 raspberry pi devices, for running bitcoin nodes. He is called Mirek and you can also find him by the name MirkoPC. On this forum? I believe the biggest help would be someone experienced with power electronics giving advice for a good buck converter that takes 5V, 3A (such as from a GekkoScience USB hub) and spits out a nice clean 0.4V with dozens of amps available. But it may not even be required for now. I suspect the chips don't start hashing and pulling enormous amounts of power if you don't instruct them to. This repair guide with its 'signal description' chart should come in very handy during reverse engineering. https://www.zeusbtc.com/manuals/repair-guide/Antminer-S9-hash-board-Repair-guide.pdf
|
|
|
|
dkbit98
Legendary
Offline
Activity: 2408
Merit: 7547
|
|
August 30, 2022, 09:51:48 PM |
|
On this forum? I believe the biggest help would be someone experienced with power electronics giving advice for a good buck converter that takes 5V, 3A (such as from a GekkoScience USB hub) and spits out a nice clean 0.4V with dozens of amps available. But it may not even be required for now. I suspect the chips don't start hashing and pulling enormous amounts of power if you don't instruct them to.
No I don't think he is registered in this forum, at least not officially. You can use search terms I gave you to find him on internet, github (@mfolejewski) and I think he is active on twitter (@Mirek34416541). He is working on boards and other bitcoin related stuff.
|
|
|
|
n0nce (OP)
|
On this forum? I believe the biggest help would be someone experienced with power electronics giving advice for a good buck converter that takes 5V, 3A (such as from a GekkoScience USB hub) and spits out a nice clean 0.4V with dozens of amps available. But it may not even be required for now. I suspect the chips don't start hashing and pulling enormous amounts of power if you don't instruct them to.
No I don't think he is registered in this forum, at least not officially. You can use search terms I gave you to find him on internet, github (@mfolejewski) and I think he is active on twitter (@Mirek34416541). He is working on boards and other bitcoin related stuff. Alright, I'll have a look. From what I saw about the other BM1387 project, he doesn't have a custom power supply / buck converter yet, either (at least not on the PCB I've seen), so maybe it makes most sense to see if Skot is going to reply, first. This is kind of what I envision when doing such an open source project: multiple people interested in the same topic (in this case an ASIC chip) coming together and contributing what they can. In the end, everyone (involved or not) can order PCBs, assemble them & start hashing. Buck converters are power electronics though; kind of its own niche - it's not guaranteed that every EE guy has experience in this field.
|
|
|
|
NotFuzzyWarm
Legendary
Online
Activity: 3808
Merit: 2697
Evil beware: We have waffles!
|
|
August 31, 2022, 01:11:46 AM Last edit: August 31, 2022, 06:26:04 PM by NotFuzzyWarm Merited by vapourminer (3), ABCbits (2) |
|
Ja. Do remember that using your 5v 3A target, that is of course 15W. To pull that using a Vcore of 400mv means supplying 37.5A to the chip(s). A good place to start for resources is TI. https://www.ti.com/design-resources/design-tools-simulation/processor-fpga-power/overview.htmlhttps://www.ti.com/design-resources/design-tools-simulation/power-stage-designer.htmlAFAIK Vcore for Sidehacks single-chip Compac-F is 1.48V which helps a bit with the current (10.14A for 15W) but more to the point allows for more stable operation at high speeds. Can't say I've bothered to look at mine but I believe he uses a buck controller driving MOSFET's. And yes, TI has some rather nice controllers as well as matched power stages to work with them. Personally I'd lose the idea of powering a 2-chip design through the USB connector and use 12v in via a barrel connector. Most can handle up to 5A or so all day long though pushing them to their typical rating of >8A continuously is a bad idea. The higher input makes the power stages a fair bit easier.
|
|
|
|
n0nce (OP)
|
I know; that's why I went for the largest connector I could find (400V, 32A) Though I doubt that the BM1387 can pull 15W anyway, right? The S9 has 189 of these chips and pulls 1372W at 13.5TH/s, so we should get roughly 70GH/s per chip at 7W of power. That's only 17.5 amps. This was anyways just meant as a starting ground to figure out the connections and protocol, but obviously Skot has already done all that. I will try to replicate his setup based on my pure breakout and building the rest on breadboard. I actually have 2 of these so I can also try the concatenation aspect and then maybe make an x2 or x4 board. It may even be easier to build a 0.8V or 1.6V buck converter instead of a 0.4V one due to less drastic voltage drop / higher duty cycle, right? But mostly, I am looking to build a buck converter next (which I think is also missing in Skot's project) as running off a lab PSU is at best good enough for experimentation. Actually, cheaper lab bench power supplies don't even exceed 10A, so there's that. AFAIK Vcore for Sidehacks single-chip Compac-F is 1.48V which helps a bit with the current (10.14A for 15W) but more to the point allows for more stable operation at high speeds. Can't say I've bothered to look at mine but I believe he uses a buck controller driving MOSFET's. And yes, TI has some rather nice controllers as well as matched power stages to work with them.
Yup, he uses a synchronous buck controller IC together with 2 mosfets. Looks something like this. They are switched on and off by the controller, which creates accurate timings to achieve the required duty cycle and thus output voltage. Personally I'd lose the idea of powering a 2-chip design through the USB connector and use 12v in via a barrel connector. Most can handle up to 5A or so all day long though pushing them to their typical rating of >8A continuously is a bad idea. The higher input makes the power stages a fair bit easier.
I mean 2 of these can be powered through USB; sidehack proved it. But while I'd love to have an open-source USB based open-source miner, I agree that it will be easier, more practical and even cost-effective (economy of scale) to have a power supply circuit feeding a handful of ASIC chips instead of needing a buck per chip. That would then obviously exceed USB specs and be powered directly off of 12V, for sure. Even a 6-pin PCIe connector could be used. They are rated for up to 75W each. Optional connectors add 75 W (6-pin) or 150 W (8-pin) of +12 V power for up to 300 W total (2 × 75 W + 1 × 150 W).
|
|
|
|
mikeywith
Legendary
Offline
Activity: 2408
Merit: 6585
be constructive or S.T.F.U
|
Good stuff, I honestly believe that the future of home mining will be these small USB sticks that make no noise and generate almost no heat, and yet, they have the chance of hitting a solo block, I don't want to go into details on how I think every small miner with 10 or 20 ASICs in their garage is going to be forced to shut down as that would be off-topic I am just protecting that in 4-5 years, it's either you have a few tens of millions to be able to buy a few water-cooled pre-setup containers or get your self a small tiny device like this and try to hit the lottery, everything in between those options will vanish.
So the summary of the above paragraph, I believe if this turns into a mass production product like Apollo or Newpac, it would very likely be something in the future.
Now with that being said, why did you choose the BM1387, why not the BM1397?, they have double the efficiency and are more widely available in terms of 'second-hand', because the failure rate for the gears that use BM1397 is way above 50% (not a problem with the BM1397 itself), so for any sort of mass production when it comes to cost, the BM1397 beats everything else.
Also, on a side but related note, should you need to source chips from China in large quantities, reach out to me, and I will connect you to the right people.
|
|
|
|
n0nce (OP)
|
Good stuff, I honestly believe that the future of home mining will be these small USB sticks that make no noise and generate almost no heat, and yet, they have the chance of hitting a solo block, I don't want to go into details on how I think every small miner with 10 or 20 ASICs in their garage is going to be forced to shut down as that would be off-topic I am just protecting that in 4-5 years, it's either you have a few tens of millions to be able to buy a few water-cooled pre-setup containers or get your self a small tiny device like this and try to hit the lottery, everything in between those options will vanish.
Thanks for your insights! I know you're in the mining game for a long time. Theoretically, for the security and censorship resistance of Bitcoin, it would be optimal if as many people as possible were mining - ideally, every Bitcoin user; even if it's just a low hashrate ASIC. So the summary of the above paragraph, I believe if this turns into a mass production product like Apollo or Newpac, it would very likely be something in the future.
I'm not at all sure yet how the 'final package' will look like, but as it's an open source project, it's not unlikely that multiple products could come out of it. Once we have full documentation of the hardware (wiring) and protocol (which it seems Skot has achieved already), it's just a question of engineering different PCBs with different amounts of chips and matching power supply circuitry. I am sure there are people willing to spend a little bit more and go buy a PC PSU to power a 100-200W silent desktop 'pod', while others are happy to just fill the last empty slot on their existing GekkoScience USB hub. Now with that being said, why did you choose the BM1387, why not the BM1397?, they have double the efficiency and are more widely available in terms of 'second-hand', because the failure rate for the gears that use BM1397 is way above 50% (not a problem with the BM1397 itself), so for any sort of mass production when it comes to cost, the BM1397 beats everything else.
Honestly I just didn't know BM1397 is so easy to get! When I started looking into this (remember this was end of 2021, beginning 2022), I couldn't find those on popular Chinese marketplaces (yet - I guess). It also appears that there's just much more documentation available for the 1387 through service manual and whatnot. I think power supply is the biggest issue right now; once I have the skillset to design a reliable one for BM1387, I can tweak it to work with 1397, as well. That's another reason why the actual chip choice is not yet so crucial for me. Also, on a side but related note, should you need to source chips from China in large quantities, reach out to me, and I will connect you to the right people.
That's awesome, I really appreciate it and I may likely take you up on this offer at a later stage!
|
|
|
|
dlystyr
Jr. Member
Offline
Activity: 77
Merit: 7
|
|
September 06, 2022, 11:29:40 PM |
|
Great project, would you be looking at selling any prototypes? I would be very interested in testing them out.
I do a lot of work on embedded pharmaceutical product security / pen testing etc and would be interested in looking at these.
|
Crack Puzzle #66 Pool - http://www.ttdsales.com/66bit/index.php
|
|
|
n0nce (OP)
|
|
September 07, 2022, 01:34:45 AM |
|
Great project, would you be looking at selling any prototypes? I would be very interested in testing them out.
No need to pay, you can download the Gerbers and get 5 boards manufactured for under $10 shipped! Choose JLCPCB, PCBWay or whatever similar service you prefer. I do a lot of work on embedded pharmaceutical product security / pen testing etc and would be interested in looking at these.
Sounds good! Keep in mind this is a pure breakout board. You will need to create the necessary connections & small components (resistors, capacitors, oscillator) and provide 0.4V power; then you should be able to interface it through serial. From https://raw.githubusercontent.com/skot/bitaxe/master/bitaxe_schematic.pdf, we can see which values Bitcointalk user Skot used for his (dual chip) prototype and on which pins. I guess he got the information at least in part from this Bitmain Antminer S9 repair guide: https://www.zeusbtc.com/manuals/repair-guide/Antminer-S9-hash-board-Repair-guide.pdfOh, he also uses 2x TCR2EF18 to get the 1.8V that are required on some pins. Not sure about the power supply, though. I overspecced the connector to be able to push up to 32A, but his README says he suspects 3A to be enough. It's not easy to get cheap lab PSUs that deliver 0.4A at over 10A, but 3A is no problem. I will continue my experiments, soon!
|
|
|
|
dlystyr
Jr. Member
Offline
Activity: 77
Merit: 7
|
|
September 07, 2022, 05:08:46 AM |
|
Great project, would you be looking at selling any prototypes? I would be very interested in testing them out.
No need to pay, you can download the Gerbers and get 5 boards manufactured for under $10 shipped! Choose JLCPCB, PCBWay or whatever similar service you prefer. I do a lot of work on embedded pharmaceutical product security / pen testing etc and would be interested in looking at these.
Sounds good! Keep in mind this is a pure breakout board. You will need to create the necessary connections & small components (resistors, capacitors, oscillator) and provide 0.4V power; then you should be able to interface it through serial. From https://raw.githubusercontent.com/skot/bitaxe/master/bitaxe_schematic.pdf, we can see which values Bitcointalk user Skot used for his (dual chip) prototype and on which pins. I guess he got the information at least in part from this Bitmain Antminer S9 repair guide: https://www.zeusbtc.com/manuals/repair-guide/Antminer-S9-hash-board-Repair-guide.pdfOh, he also uses 2x TCR2EF18 to get the 1.8V that are required on some pins. Not sure about the power supply, though. I overspecced the connector to be able to push up to 32A, but his README says he suspects 3A to be enough. It's not easy to get cheap lab PSUs that deliver 0.4A at over 10A, but 3A is no problem. I will continue my experiments, soon! Bought, will be a bit of fun. Thank you! I once made a miner from my Python FPGA, il be honest, it was not great but it kept me busy for a few weeks
|
Crack Puzzle #66 Pool - http://www.ttdsales.com/66bit/index.php
|
|
|
Skot
Full Member
Offline
Activity: 225
Merit: 246
bitaxe.org
|
This is so cool! I'm so glad to see others hacking on this stuff.
Everyone should have a little solo mining rig running in their house. Nice and quiet and easy on the power bill, but all together it does a great deal to secure the network.
I'm totally down to work on this power supply issue.
-Skot
|
|
|
|
dlystyr
Jr. Member
Offline
Activity: 77
Merit: 7
|
|
September 08, 2022, 03:39:23 AM |
|
This is quite cheap for what it is.
How much would it cost (I am a newb at this so could use the help) to make something equivalent to an antminer - pcb wise and then fit the housing / fans / power yourself?
|
Crack Puzzle #66 Pool - http://www.ttdsales.com/66bit/index.php
|
|
|
n0nce (OP)
|
|
September 08, 2022, 10:10:02 AM |
|
This is so cool! I'm so glad to see others hacking on this stuff.
Everyone should have a little solo mining rig running in their house. Nice and quiet and easy on the power bill, but all together it does a great deal to secure the network.
I'm totally down to work on this power supply issue.
-Skot
Likewise! What's great is that once we figure the power supply out, we can easily scale it to fit different needs: - single-chip USB stick to just fill empty spots in your mining hub
- multi-chip USB stick with auxiliary power input
- 10-chip pod miner
- ...
This is quite cheap for what it is.
How much would it cost (I am a newb at this so could use the help) to make something equivalent to an antminer - pcb wise and then fit the housing / fans / power yourself?
A single BM1387 costs around 2-4€ and this PCB is 0.40€. However for a full-on Antminer replacement / alternative it doesn't make sense to go DIY. An S9 (same chips) goes for $500 and has 189 chips on it; so just for the chips you're barely overpaying over component-cost (when buying them as an end-customer in low volume). It's also a whole different league building such a thing with replaceable hashboards, different voltage domains, integrated cooling solution, etc. Hopefully, after publishing schematics and board files for simple, low-chip-count ASICs, someone with design skills can come up with a nice case and cooling mount (e.g. 3D-printable).
|
|
|
|
Skot
Full Member
Offline
Activity: 225
Merit: 246
bitaxe.org
|
|
September 08, 2022, 09:58:53 PM |
|
Maybe you should try contacting guy who is working on Computer Module 4 raspberry pi devices, for running bitcoin nodes. He is called Mirek and you can also find him by the name MirkoPC.
I think this is the RPi Compute Module 4 (CM4) project you are talking about. Looks like it would be a great node for home mining to! https://hackaday.io/project/179571-bitpirat-computer-gen1I started working on a PoE powered version for myself, but lost some steam once I realized CM4s with 8GB RAM are totally sold out everywhere. https://github.com/skot/bitcart
|
|
|
|
|
n0nce (OP)
|
|
September 16, 2022, 10:55:11 PM |
|
Hey, thanks, that's interesting! I'm working on a 0.8V power supply now, though, as Skot and I decided it makes more sense. It could just power 2 of these breakout boards with it or his Bitaxe and less problematic than a 0.4V power supply. Next PCB will definitely have 2 or maybe even 4 chips on it to make things easier! I just thought that for a pure breakout PCB, it is more convenient to have just one chip (less connections, less potential errors). So, little PSA: The project is continuing well, it's just that Skot and me are keeping the more frequent conversations in private for now, not to clog up forum threads unnecessarily and to get notified about a reply more quickly. He's looking at an ESP32-based controller and I'm hoping to order PSU PCBs this weekend or next week! I'll still be glad to read about any thoughts, ideas and opinions or contributions, and going to post updates whenever it makes sense.
|
|
|
|
|