Pages:
Author

Topic: X6500 Custom FPGA Miner - page 29. (Read 220101 times)

legendary
Activity: 1764
Merit: 1002
February 18, 2012, 12:27:20 PM
My setup:






The fans sit on top of the stacking post quite nicely. I used one to screw the fan on it.

Laptop is an old Asus 1UF, running LInux Mint Debian Edition, using a tiny SSD for even less power usage.

Running at 200mhz each and they don't warm up a bit. Estimated power usage no more than 80W - pretty good for 800MH/s

Any comments and criticism are welcome.






that looks pretty cool.  are the fans blowing up or down? 

the only issue for me is i'm considering buying 10 of these so stacking would be ideal in terms of spacing.

why hasn't anyone considered sticking a stack of 10 of these inside a small dorm refrigerator with a hole drilled the top for cords?  you could adjust the temp to anything you want to achieve good cooling and avoid condensation i would think.
full member
Activity: 411
Merit: 101
🦜| Save Smart & Win 🦜
February 18, 2012, 12:14:28 PM
My setup:






The fans sit on top of the stacking post quite nicely. I used one to screw the fan on it.

Laptop is an old Asus 1UF, running LInux Mint Debian Edition, using a tiny SSD for even less power usage.

Running at 200mhz each and they don't warm up a bit. Estimated power usage no more than 80W - pretty good for 800MH/s

Any comments and criticism are welcome.




sr. member
Activity: 445
Merit: 250
February 16, 2012, 02:40:05 PM
Glad it helped!  Cheesy
sr. member
Activity: 249
Merit: 250
February 16, 2012, 12:11:58 PM
hero member
Activity: 504
Merit: 500
FPGA Mining LLC
February 16, 2012, 02:10:12 AM
It's windows, so you have to restart  Roll Eyes
Nah, you don't have to reboot for that. Smiley
sr. member
Activity: 445
Merit: 250
February 16, 2012, 01:58:30 AM
I'd be curious to see thirdlight's non-useftd2xx windows guide.
I used pyusb-1.0.0a2 and libusb-win32 from http://sourceforge.net/apps/trac/libusb-win32/wiki

I installed pyusb, and ran the inf wizard from libusb-win32 /bin

This created a .inf file for the X6500:
Code:
; USB_Serial_Converter.inf
; Copyright (c) 2010 libusb-win32 (GNU LGPL)
[Strings]
DeviceName = "USB Serial Converter"
VendorName = "Future Technology Devices International, Ltd"
SourceName = "USB Serial Converter Install Disk"
DeviceID   = "VID_0403&PID_6001"
DeviceGUID = "{B0351505-A12F-4830-89C3-3A58F80F10B3}"

[Version]
Signature   = "$Windows NT$"
Class       = "libusb-win32 devices"
ClassGuid   = {EB781AAF-9C70-4523-A5DF-642A87ECA567}
Provider    = "libusb-win32"
CatalogFile = USB_Serial_Converter.cat
DriverVer   = 01/17/2012, 1.2.6.0

[ClassInstall32]
Addreg = libusb_class_install_add_reg

[libusb_class_install_add_reg]
HKR,,,0,"libusb-win32 devices"
HKR,,Icon,,-20

[Manufacturer]
%VendorName% = Devices, NT, NTAMD64, NTIA64

;--------------------------------------------------------------------------
; libusb-win32 files
;--------------------------------------------------------------------------

[SourceDisksNames]
1 = %SourceName%

[SourceDisksFiles.x86]
libusb0.sys     = 1,x86
libusb0_x86.dll = 1,x86

[SourceDisksFiles.amd64]
libusb0.sys     = 1,amd64
libusb0.dll     = 1,amd64
libusb0_x86.dll = 1,x86

[SourceDisksFiles.ia64]
libusb0.sys     = 1,ia64
libusb0.dll     = 1,ia64
libusb0_x86.dll = 1,x86

[DestinationDirs]
libusb_files_sys       = 10,system32\drivers
libusb_files_dll       = 10,system32
libusb_files_dll_wow64 = 10,syswow64
libusb_files_dll_x86   = 10,system32

[libusb_files_sys]
libusb0.sys

[libusb_files_dll]
libusb0.dll

[libusb_files_dll_x86]
libusb0.dll, libusb0_x86.dll

[libusb_files_dll_wow64]
libusb0.dll, libusb0_x86.dll

;--------------------------------------------------------------------------
; libusb-win32 device driver
;--------------------------------------------------------------------------

[LIBUSB_WIN32_DEV.NT]
CopyFiles = libusb_files_sys, libusb_files_dll_x86

[LIBUSB_WIN32_DEV.NTAMD64]
CopyFiles = libusb_files_sys, libusb_files_dll, libusb_files_dll_wow64

[LIBUSB_WIN32_DEV.NTIA64]
CopyFiles = libusb_files_sys, libusb_files_dll, libusb_files_dll_wow64

[LIBUSB_WIN32_DEV.NT.HW]
DelReg = libusb_del_reg_hw
AddReg = libusb_add_reg_hw

[LIBUSB_WIN32_DEV.NTAMD64.HW]
DelReg = libusb_del_reg_hw
AddReg = libusb_add_reg_hw

[LIBUSB_WIN32_DEV.NTIA64.HW]
DelReg = libusb_del_reg_hw
AddReg = libusb_add_reg_hw

[LIBUSB_WIN32_DEV.NT.Services]
AddService = libusb0, 0x00000002, libusb_add_service

[LIBUSB_WIN32_DEV.NTAMD64.Services]
AddService = libusb0, 0x00000002, libusb_add_service

[LIBUSB_WIN32_DEV.NTIA64.Services]
AddService = libusb0, 0x00000002, libusb_add_service

; Older versions of this .inf file installed filter drivers. They are not
; needed any more and must be removed
[libusb_del_reg_hw]
HKR,,LowerFilters
HKR,,UpperFilters

; libusb-win32 device properties
[libusb_add_reg_hw]
HKR,,SurpriseRemovalOK,0x00010001,1

; (Optional) the usb configuration value to select when this device
; is started.  If this key does not exist the first config is selected.
;HKR,,InitialConfigValue,0x00010001,

;--------------------------------------------------------------------------
; libusb-win32 service
;--------------------------------------------------------------------------

[libusb_add_service]
DisplayName   = "libusb-win32 - Kernel Driver 01/17/2012 1.2.6.0"
ServiceType   = 1
StartType     = 3
ErrorControl  = 0
ServiceBinary = %12%\libusb0.sys

;--------------------------------------------------------------------------
; libusb-win32 devices
;--------------------------------------------------------------------------

; Hardware IDs in a 'Devices' section can be installed by libusb-win32
; using usb_install_driver_np(), usb_install_driver_np_rundll(), or the
; inf-wizard utility.
;
[Devices]
%DeviceName% = LIBUSB_WIN32_DEV, USB\%DeviceID%

[Devices.NT]
%DeviceName% = LIBUSB_WIN32_DEV.NT, USB\%DeviceID%

[Devices.NTAMD64]
%DeviceName% = LIBUSB_WIN32_DEV.NTAMD64, USB\%DeviceID%

[Devices.NTIA64]
%DeviceName% = LIBUSB_WIN32_DEV.NTIA64, USB\%DeviceID%

It's windows, so you have to restart  Roll Eyes

Never looked back!
hero member
Activity: 720
Merit: 528
February 14, 2012, 04:54:02 PM
@Fizzisist:

Any update on when Rev 3.0 will be out and available?

We're looking at about 3 weeks right now, if everything goes perfectly. Unfortunately, nothing ever does Wink, so let's call it 4 weeks. Smiley
legendary
Activity: 1540
Merit: 1002
February 14, 2012, 10:38:31 AM
watching
sr. member
Activity: 249
Merit: 250
February 14, 2012, 10:34:48 AM
@Fizzisist:

Any update on when Rev 3.0 will be out and available?
sr. member
Activity: 249
Merit: 250
February 13, 2012, 08:50:11 AM

@ check_status:

There was a post by Langyi the hardware guy for the x6500 who said that watercooling would probably work but you would still need some air cooling to keep the other components cool.
full member
Activity: 196
Merit: 100
Web Dev, Db Admin, Computer Technician
sr. member
Activity: 445
Merit: 250
February 12, 2012, 04:53:10 AM
I'd be curious to see thirdlight's non-useftd2xx windows guide
I'll try to put something together a bit later.  Smiley
sr. member
Activity: 249
Merit: 250
February 11, 2012, 05:31:26 PM
@ Fizzisist:

I don't mind, go for it!


Cheers,

nbtcminer

Thanks nbtcminer for this thorough guide! This will be very helpful for everyone.

TheSeven, a correction to your corrections. Wink The default path for the firmware is mpbm\worker\fpgamining\firmware\x6500.bit.

I should point out that this guide is best if you want to be able to use x6500-miner and mpbm side by side on the same windows system.
I'd be curious to see thirdlight's non-useftd2xx windows guide, which he says will break the x6500-miner dependencies. Using pyusb instead of "PyD2XX" should be a bit faster and less prone to bugs, I believe. Also, coblee's Mac guide would be sweet!

Maybe we should create a wiki at the Github repo? nbtcminer, would you mind having your guide included there (after including TheSeven's corrections)?
hero member
Activity: 720
Merit: 528
February 11, 2012, 05:19:04 PM
Thanks nbtcminer for this thorough guide! This will be very helpful for everyone.

TheSeven, a correction to your corrections. Wink The default path for the firmware is mpbm\worker\fpgamining\firmware\x6500.bit.

I should point out that this guide is best if you want to be able to use x6500-miner and mpbm side by side on the same windows system.
I'd be curious to see thirdlight's non-useftd2xx windows guide, which he says will break the x6500-miner dependencies. Using pyusb instead of "PyD2XX" should be a bit faster and less prone to bugs, I believe. Also, coblee's Mac guide would be sweet!

Maybe we should create a wiki at the Github repo? nbtcminer, would you mind having your guide included there (after including TheSeven's corrections)?
hero member
Activity: 504
Merit: 500
FPGA Mining LLC
February 11, 2012, 01:07:46 PM
Thanks a lot for writing this guide!

Just some quick corrections:

- PyUSB 1.6 and 1.0a (I have 1.6 installed so I can run the standard miner and 1.0a get "USB" directory should copied into the MPBM miner directory (i.e C:\MPBM\USB) You can get both: Here (1.6) http://bleyer.org/pyusb/ and 1.0a here http://sourceforge.net/projects/pyusb/files/PyUSB%201.0/1.0.0-alpha-2/pyusb-1.0.0a2.zip/download
PyUSB (I'll call that 1.6 thing PyD2XX for clarity) isn't needed if you use the "useftd2xx": True and "takeover": False flags.
Also, PyUSB 1.0.0a isn't strictly neccessary, PyUSB 0.4.3 should work as well (and is shipped with some linux distributions, so this might be easier for some people).

- Ztexmerge 200mhz Bitstream (or lower if your card can't handle it. Place the Bitstream file "ztexmerge_200mhz.bit" into "mpbm\worker\fpgamining\".). You can get it Here:http://fpgamining.com/bitstreams/
If you save it as "x6500.bit" instead, you won't need to specify the firmware path in the configuration file.

4.) You going to want to change this to:
Code:
  # Single X6500 worker
  { \
    "type": worker.fpgamining.x6500.X6500Worker, \
    "deviceid": "EnterYourSerialHere", \
    "useftd2xx": True, \
    "firmware": "worker/fpgamining/ztexmerge_200mhz.bit", \
    "takeover": True, \
#    "uploadfirmware": True, \
  }, \
"takeover" might not work correctly when using D2XX. This combination is just an experimental hack. I'd probably remove the takeover flag and, if you ever get "device is in use" issues after MPBM was killed in a non-clean fashion, just re-plug the boards.
Commenting "uploadfirmware" here but telling people to place the bit file in the firmware folder might cause some confusion.
Also, just using the hotplug worker might be better (it supports the same flags, but you might need to set "takeover": False explicitly if PyUSB isn't installed), because it currently has better error recovery mechanisms.

1.) In the “Search for Programs and Files” field type: CMD. Click and open the program.
Might be worth mentioning Windows+R. Or even better, open the command prompt in the correct directory directly by shift-clicking on the directory and choosing "open command prompt here" (only on win7).
sr. member
Activity: 249
Merit: 250
February 11, 2012, 12:20:58 PM
Instructions Continued: How to configure MPBM for your pool:

Once you've tested MPBM to be working, you can now enter your own pool information:

1.) Open up the "config.py" file and scroll down to the # List of work sources # section of the file.
2.) From here you'll need to look for the following code:
Code:
  # Sample pool entry (BTCMP)
      # Please leave this entry active to support further development of this software (see above)
      { \
        # Pool interface module
        "type": pool.theseven.bcjsonrpc.JSONRPCPool, \
        # Display name of the pool (default: host name)
        "name": "BTCMP (demo)", \
        # Priority (default: 1)
        "priority": 10, \
        # Host name of the pool
        "host": "rr.btcmp.com", \
        # HTTP port of the pool (default: 8332)
        "port": 7332, \
        # HTTP authentication user name (default: no authentication)
        "username": "TheSeven.worker", \
        # HTTP authentication password (default: empty)
        "password": "TheSeven", \

You can choose to leave this pool active (there are two more under this entry) or modify it to your own needs. Here what you should change it to:
Code:
{ \
        # Pool interface module
        "type": pool.theseven.bcjsonrpc.JSONRPCPool, \
        # Display name of the pool (default: host name)
        "name": "PoolName ", \
        # Priority (default: 1)
        "priority": 1000, \
        # Host name of the pool
        "host": "btcguild.com", \
        # HTTP port of the pool (default: 8332)
        "port": 8332, \
        # HTTP authentication user name (default: no authentication)
        "username": "Miner_Name", \
        # HTTP authentication password (default: empty)
        "password": "Password", \

Hit the save button and restart the miner.py to see if everything is working.

I hope that this point you’ve all got it working. If not, feel free to post here or in the main MPBM thread for help.


Cheers,
nbtcminer
sr. member
Activity: 249
Merit: 250
February 11, 2012, 12:20:22 PM
Hey All!


Just wanted to make a post about MPBM and how I got it working for my X6500. Hope this helps others who want to test out MPBM and can even help tweak it for the X6500:

(*Note: This guide is in draft form and there may some bugs I have to work out. Keep in mind I'm doing this for the sake of the X6500 and getting more people to use MPBM so that we can make it work better.)

What I'm running:
-Windows 7 64-Bit
- 1 x X6500

Here what you'll need (I going to assume you have version 0.3 of the standard miner already):
- Theseven's Modular Python Bitcoin Miner. You can get it here: https://github.com/TheSeven/Modular-Python-Bitcoin-Miner
- Python 2.6.7 (MPBM is now compatible with it and it it used for the standard X6500 miner). You can get it here: http://www.activestate.com/activepython/downloads
- FTDI D2XX Drivers for the X6500. (It'll work and won't break the old standard X6500 miner). You can get it here: http://www.ftdichip.com/Drivers/D2XX.htm
- PyUSB 1.6 and 1.0a (I have 1.6 installed so I can run the standard miner and 1.0a get "USB" directory should copied into the MPBM miner directory (i.e C:\MPBM\USB) You can get both: Here (1.6) http://bleyer.org/pyusb/ and 1.0a here http://sourceforge.net/projects/pyusb/files/PyUSB%201.0/1.0.0-alpha-2/pyusb-1.0.0a2.zip/download
- Windows curses for python. You can get it here: http://www.lfd.uci.edu/~gohlke/pythonlibs/#curses
- Ztexmerge 200mhz Bitstream (or lower if your card can't handle it. Place the Bitstream file "ztexmerge_200mhz.bit" into "mpbm\worker\fpgamining\".). You can get it Here:http://fpgamining.com/bitstreams/


Instructions Con't:



Once you've gone through all this, you'll now need to configure MPBM for your X6500 and mining pool:

1.) Goto the directory root directory of MPBM (i.e C:\MPBM) and locate a file titled "default_config.py". Copy this file into the folder again and rename it "config.py"
2.) Open up the “config.py” file with a text editor (notepad or the python editor)
3.) Scroll down to the # List of workers # part of the file. This is where you’ll enter your information in. Look for the following line:
Code:
  # X6500 hotplug worker
  { \
    # Worker module
    "type": worker.fpgamining.x6500hotplug.X6500HotplugWorker, \
  }, \
4.) You going to want to change this to:
Code:
  # Single X6500 worker
  { \
    "type": worker.fpgamining.x6500.X6500Worker, \
    "deviceid": "EnterYourSerialHere", \
    "useftd2xx": True, \
    "firmware": "worker/fpgamining/ztexmerge_200mhz.bit", \
    "takeover": True, \
#    "uploadfirmware": True, \
  }, \
(Thanks to Theseven and  Coblee for figuring this one out)

At this point you should test out MPBM to make sure it's working. Doing so will do 2 things:
1.)   Ensure that you installed all the right software and that you’ve configured your miner correctly.
2.)   Mining for a while to test (10-30mins) will generate some BTC for the developer of the software (Theseven) so he can continue developing the software. Or you can simply donate some BTC to: 13NuRX6rdE4Do4vddzhfKK7FqmGSTMcjYh

To run the MPBM software you’ll need to do the following:
1.) In the “Search for Programs and Files” field type: CMD. Click and open the program.
2.) From here you’ll need to right click on the top bar of the CMD window and select :”Properties”.
3.) Another window titled “Windows Command Processor” Properties should appear, select the “Layout” tab.
4.) You’ll see the following here: “Screen Buffer Size” and “Window Size”, change the width to “175” for both and the height to “40” for both.
5.) Click on the “ok” button and go back to the command prompt.

At this point you just simply need to get into the MPBM directory and type: miner.py
sr. member
Activity: 249
Merit: 250
February 09, 2012, 12:06:19 PM
@tgmarks:
That's great! Whats the CFM rating for your fan? I always found the 80mm fans to be a bit loud (thats why I went with a 120mm).

Cheers,

nbtcminer

I get these same numbers with a single 80mm fan directly on top of the factory heatsinks without changing anything like thermal epoxy.
donator
Activity: 490
Merit: 500
February 09, 2012, 10:52:41 AM
@ Coblee:

With this method of cooling I've managed to successfully get around 380 - 420 mh/s as displayed by the miner. I've noticed that my pool mh/s rate went from 370-500 mh/s varying every hour and  number of stales & shares. I also tend to end up with around 0.3-0.5% stales and shares after 24 /48 hours.

I get these same numbers with a single 80mm fan directly on top of the factory heatsinks without changing anything like thermal epoxy.
sr. member
Activity: 249
Merit: 250
February 09, 2012, 01:23:15 AM
@ Coblee:

I tried cooling from the side (i.e making a wind tunnel) but I found that I still got a lot of errors after a while (both dupes and stales after 6+ hours were above 4%). Now I've gotten some criticism that I put on too much epoxy / thermal grease (I used both, see the pictures from page 28) but I found that cooling from the side just wasn't as efficient as cooling from directly above (*think of the way CPUs are cooled, fan are placed directly on top of the heat sinks and blow cool air directly onto the heatsink as well as the rest of the on-board components). With this method of cooling I've managed to successfully get around 380 - 420 mh/s as displayed by the miner. I've noticed that my pool mh/s rate went from 370-500 mh/s varying every hour and  number of stales & shares. I also tend to end up with around 0.3-0.5% stales and shares after 24 /48 hours. I would give the over the top method of cooling a try to see if it helps with the cooling for both of the units (*i.e maybe get two 120mm fans, one for each X6500). You may want to consider powering your fans the way mentioned in the post above (shoutouts to Theseven and Fizzisist for pointing out that the onboard molex can supply power if you are using a barrel connector).

Another thing I've found with the X6500 is that it does not like to be on a shared USB port or hub. I tried syncing my phone while mining and it dropped my hashing speed to 250-300 mh/s each time and i had to unplug my X6500 / reload the bitstream and then re-run the miner to get back to +400 mh/s speeds. Speeds also seemed to suffer when I tried using an angled mini USB connector; it admittedly was quite old and was meant for an old motorola razr.

Hope this info helps you out! Let me know if the over the top method of cooling helps with your hashing power!


Cheers,

nbtcminer


I have epoxied my heatsinks also and have an active 120mm fan over 2 stacked x6500. I have getwork of 15. At first I thought the epoxy wasn't put on correctly so heat wasn't dissipating properly. But seeing that I'm getting much better results with MPBM makes me think the default x6500 miner wasn't efficient. It might also just be not efficient on a Mac.
Pages:
Jump to: