Browse Source

Update documentation for icarus switch to USB

nfactor-troky
Kano 12 years ago
parent
commit
9f4a3a798d
  1. 7
      ASIC-README
  2. 29
      FPGA-README
  3. 61
      README
  4. 2
      cgminer.c
  5. 2
      driver-ztex.c

7
ASIC-README

@ -44,17 +44,12 @@ If your distribution does not have the plugdev group you can create it with:
sudo groupadd plugdev sudo groupadd plugdev
In order for the BFL devices to instantly be owned by the plugdev group and In order for the BFL devices to instantly be owned by the plugdev group and
accessible by anyone from the plugdev group you can either copy the file accessible by anyone from the plugdev group you can copy the file
"01-cgminer.rules" from the cgminer archive into the /etc/udev/rules.d "01-cgminer.rules" from the cgminer archive into the /etc/udev/rules.d
directory with the following command: directory with the following command:
sudo cp 01-cgminer.rules /etc/udev/rules.d/ sudo cp 01-cgminer.rules /etc/udev/rules.d/
Or you can manually create a file/add to a rules.d file with following rules
(most users won't want to do this manually):
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", SUBSYSTEMS=="usb", ACTION=="add", MODE="0666", GROUP="plugdev"
ATTRS{idVendor}=="1fc9", ATTRS{idProduct}=="0003", SUBSYSTEMS=="usb", ACTION=="add", MODE="0666", GROUP="plugdev"
After this you can either manually restart udev and re-login, or more easily After this you can either manually restart udev and re-login, or more easily
just reboot. just reboot.

29
FPGA-README

@ -2,16 +2,14 @@
This README contains extended details about FPGA mining with cgminer This README contains extended details about FPGA mining with cgminer
For ModMinerQuad (MMQ) and BitForce (BFL) For ModMinerQuad (MMQ) BitForce (BFL) and Icarus (ICA, BLT, LLT, AMU, CMR)
----------------------------------------- --------------------------------------------------------------------------
When mining on windows, the driver being used will determine if mining will work. When mining on windows, the driver being used will determine if mining will work.
If the driver doesn't allow mining, you will get a "USB init," error message If the driver doesn't allow mining, you will get a "USB init," error message
i.e. one of: i.e. one of:
open device failed, err %d, you need to install a Windows USB driver for the device open device failed, err %d, you need to install a Windows USB driver for the device
or
kernel detach failed :(
or or
claim interface %d failed, err %d claim interface %d failed, err %d
@ -32,19 +30,16 @@ with cgminer (not the libusbx version)
When mining on linux, but not using 'sudo' and not logged into 'root' you When mining on linux, but not using 'sudo' and not logged into 'root' you
may get a USB priviledge error (-3), so you may also need to do the following: may get a USB priviledge error (-3), so you may also need to do the following:
Create /etc/udev/rules.d/01-cgminer.rules sudo cp 01-cgminer.rules /etc/udev/rules.d/
With:
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", SUBSYSTEMS=="usb", ACTION=="add", MODE="0666", GROUP="plugdev"
ATTRS{idVendor}=="1fc9", ATTRS{idProduct}=="0003", SUBSYSTEMS=="usb", ACTION=="add", MODE="0666", GROUP="plugdev"
And also: And also:
sudo usermod -G plugdev -a `whoami` sudo usermod -G plugdev -a `whoami`
Then reboot ...
If your linux distro doesn't have the 'plugdev' group, you can create it like: If your linux distro doesn't have the 'plugdev' group, you can create it like:
sudo groupadd plugdev sudo groupadd plugdev
Then reboot ...
- -
There is a hidden option in cgminer to dump out a lot of information There is a hidden option in cgminer to dump out a lot of information
@ -53,8 +48,7 @@ problems:
--usb-dump 0 --usb-dump 0
It will only help if you have a working MMQ or BFL device attached to the It will only help if you have a working FPGA device listed above
computer
ModMinerQuad (MMQ) ModMinerQuad (MMQ)
@ -190,8 +184,8 @@ the MH/s value reported with the changed firmware - and the MH/s reported
will be less than the firmware speed since you lose work on every block change. will be less than the firmware speed since you lose work on every block change.
Icarus (ICA) Icarus (ICA, BLT, LLT, AMU, CMR)
------------ --------------------------------
There are two hidden options in cgminer when Icarus support is compiled in: There are two hidden options in cgminer when Icarus support is compiled in:
@ -245,8 +239,8 @@ scan hash time, for the first 5 nonce's or one minute (whichever is longer)
In 'default' or 'value' mode the 'constants' are calculated once at the start, based on the default In 'default' or 'value' mode the 'constants' are calculated once at the start, based on the default
value or the value specified value or the value specified
The optional additional =N specifies to set the default abort at N 1/10ths of a second, not the The optional additional =N specifies to set the default abort at N * 100ms, not the calculated
calculated value, which is 112 for 2.6316ns value, which is ~112 for 2.6316ns
To determine the hash time value for a non Icarus Rev3 device or an Icarus Rev3 with a different To determine the hash time value for a non Icarus Rev3 device or an Icarus Rev3 with a different
bitstream to the default one, use 'long' mode and give it at least a few hundred shares, or use bitstream to the default one, use 'long' mode and give it at least a few hundred shares, or use
@ -258,6 +252,9 @@ Icarus Rev3 requires and also is less than ~840MH/s and greater than 2MH/s
If an FPGA device does hash faster than ~840MH/s it should work correctly if you supply the If an FPGA device does hash faster than ~840MH/s it should work correctly if you supply the
correct hash time nanoseconds value correct hash time nanoseconds value
The Icarus code will automatically detect Icarus, Lancelot, AsicminerUSB and Cairnsmore1
FPGA devices and set default settings to match those devices if you don't specify them
The timing code itself will affect the Icarus performance since it increases the delay after The timing code itself will affect the Icarus performance since it increases the delay after
work is completed or aborted until it starts again work is completed or aborted until it starts again
The increase is, however, extremely small and the actual increase is reported with the The increase is, however, extremely small and the actual increase is reported with the

61
README

@ -111,7 +111,7 @@ CGMiner specific configuration options:
--disable-adl Override detection and disable building with adl --disable-adl Override detection and disable building with adl
--enable-bflsc Compile support for BFL ASICs (default disabled) --enable-bflsc Compile support for BFL ASICs (default disabled)
--enable-bitforce Compile support for BitForce FPGAs(default disabled) --enable-bitforce Compile support for BitForce FPGAs(default disabled)
--enable-icarus Compile support for Icarus Board(default disabled) --enable-icarus Compile support for Icarus bitstream FPGAs(default disabled)
--enable-modminer Compile support for ModMiner FPGAs(default disabled) --enable-modminer Compile support for ModMiner FPGAs(default disabled)
--enable-ztex Compile support for Ztex Board(default disabled) --enable-ztex Compile support for Ztex Board(default disabled)
--enable-avalon Compile support for Avalon (default disabled) --enable-avalon Compile support for Avalon (default disabled)
@ -235,13 +235,14 @@ ASIC and FPGA mining boards (BFL ASIC, BitForce, Icarus, ModMiner, Ztex)
only options: only options:
Cgminer will automatically find all of your BFL ASIC, BitForce FPGAs, Cgminer will automatically find all of your BFL ASIC, BitForce FPGAs,
ModMiner FPGAs or Ztex FPGAs ModMiner FPGAs, Icarus bitstream FPGAs or Ztex FPGAs
The --usb option can restrict how many BFL ASIC, BitForce FPGAs or
ModMiner FPGAs it finds: The --usb option can restrict how many BFL ASIC, BitForce FPGAs,
ModMiner FPGAs or Icarus bitstream FPGAs it finds:
--usb 1:2,1:3,1:4,1:* --usb 1:2,1:3,1:4,1:*
or or
--usb BAS:1,BFL:1,MMQ:0 --usb BAS:1,BFL:1,MMQ:0,ICA:0
or or
--usb :10 --usb :10
@ -260,15 +261,16 @@ This is useful if you unplug a device then plug it back in the same port,
it usually reappears with the same bus_number but a different device_address it usually reappears with the same bus_number but a different device_address
You can see the list of all USB devices on linux with 'sudo lsusb' You can see the list of all USB devices on linux with 'sudo lsusb'
Cgminer will list the recognised USB devices with the '--usb-dump 0' option Cgminer will list the recognised USB devices with the '-n' option or the
'--usb-dump 0' option
The '--usb-dump N' option with a value of N greater than 0 will dump a lot The '--usb-dump N' option with a value of N greater than 0 will dump a lot
of details about each recognised USB device of details about each recognised USB device
If you wish to see all USB devices, include the --usb-list-all option If you wish to see all USB devices, include the --usb-list-all option
The second version The second version
--usb BAS:1,BFL:1,MMQ:0 --usb BAS:1,BFL:1,MMQ:0,ICA:0
allows you to specify how many devices to choose based on each device allows you to specify how many devices to choose based on each device
driver cgminer has - there are currently 3 USB drivers: BAS, BFL & MMQ driver cgminer has - there are currently 4 USB drivers: BAS, BFL, MMQ & ICA
N.B. you can only specify which device driver to limit, not the type of N.B. you can only specify which device driver to limit, not the type of
each device, e.g. with BAS:n you can limit how many BFL ASIC devices will each device, e.g. with BAS:n you can limit how many BFL ASIC devices will
be checked, but you cannot limit the number of each type of BFL ASIC be checked, but you cannot limit the number of each type of BFL ASIC
@ -283,28 +285,8 @@ not scan for any more
If one of the 10 devices stops working, hotplug - if enabled, as is default If one of the 10 devices stops working, hotplug - if enabled, as is default
- will scan normally again until it has 10 devices - will scan normally again until it has 10 devices
--usb :0 will disable all USB I/O other than to initialse libusb
--scan-serial|-S <arg> Serial port to probe for Icarus mining device
This option is only for Icarus bitstream FPGAs
By default, cgminer will scan for autodetected Icarus unless at least one
-S is specified for that driver. If you specify -S and still want cgminer
to scan, you must also use "-S auto". If you want to prevent cgminer from
scanning without specifying a device, you can use "-S noauto". Note that
presently, autodetection only works on Linux, and might only detect one
device depending on the version of udev being used.
On linux <arg> is usually of the format /dev/ttyUSBn
On windows <arg> is usually of the format \\.\COMn
(where n = the correct device number for the Icarus device)
The official supplied binaries are compiled with support for all FPGAs.
To force the code to only attempt detection with a specific driver,
prepend the argument with the driver name followed by a colon.
For example, "icarus:/dev/ttyUSB0" or using the short name: "ica:/dev/ttyUSB0"
This option not longer matters since Icarus is the only serial-USB
device that uses it
For other FPGA details see the FPGA-README For other FPGA details see the FPGA-README
@ -657,27 +639,6 @@ A: Cgminer currently supports 2 ASICs: Avalon and BitForce SC devices. They
are Application Specify Integrated Circuit devices and provide the highest are Application Specify Integrated Circuit devices and provide the highest
performance per unit power due to being dedicated to only one purpose. performance per unit power due to being dedicated to only one purpose.
Q: How do I get my Icarus/Lancelot/Cairnsmore device to auto-recognise?
A: On linux, if the /dev/ttyUSB* devices don't automatically appear, the only
thing that needs to be done is to load the driver for them:
Icarus: sudo modprobe pl2303 vendor=0x067b product=0x230
Lancelot: sudo modprobe ftdi_sio vendor=0x0403 product=0x6001
Cairnsmore: sudo modprobe ftdi_sio product=0x8350 vendor=0x0403
On windows you must install the pl2303 or ftdi driver required for the device
pl2303: http://prolificusa.com/pl-2303hx-drivers/
ftdi: http://www.ftdichip.com/Drivers/VCP.htm
Q: On linux I can see the /dev/ttyUSB* devices for my Icarus FPGAs, but
cgminer can't mine on them
A: Make sure you have the required priviledges to access the /dev/ttyUSB* devices:
sudo ls -las /dev/ttyUSB*
will give output like:
0 crw-rw---- 1 root dialout 188, 0 2012-09-11 13:49 /dev/ttyUSB0
This means your account must have the group 'dialout' or root priviledges
To permanently give your account the 'dialout' group:
sudo usermod -G dialout -a `whoami`
Then logout and back in again
Q: Can I mine scrypt with FPGAs or ASICs? Q: Can I mine scrypt with FPGAs or ASICs?
A: No. A: No.

2
cgminer.c

@ -1089,7 +1089,7 @@ static struct opt_table opt_config_table[] = {
#ifdef USE_FPGA_SERIAL #ifdef USE_FPGA_SERIAL
OPT_WITH_ARG("--scan-serial|-S", OPT_WITH_ARG("--scan-serial|-S",
add_serial, NULL, NULL, add_serial, NULL, NULL,
"Serial port to probe for Icarus FPGA Mining device"), "Serial port to probe for Avalon Mining device"),
#endif #endif
OPT_WITH_ARG("--scan-time|-s", OPT_WITH_ARG("--scan-time|-s",
set_int_0_to_9999, opt_show_intval, &opt_scantime, set_int_0_to_9999, opt_show_intval, &opt_scantime,

2
driver-ztex.c

@ -7,7 +7,7 @@
* Copyright (C) 2009-2011 ZTEX GmbH. * Copyright (C) 2009-2011 ZTEX GmbH.
* http://www.ztex.de * http://www.ztex.de
* *
* This work is based upon the icarus.c worker which is * This work is based upon the icarus.c worker which was
* Copyright 2012 Luke Dashjr * Copyright 2012 Luke Dashjr
* Copyright 2012 Xiangfu <xiangfu@openmobilefree.com> * Copyright 2012 Xiangfu <xiangfu@openmobilefree.com>
* *

Loading…
Cancel
Save