user2446: I've been using CgMiner 3.4.1 since late September. It can see my four USB Block Erupters, and works:
 cgminer version 3.4.1 - Started: [2013-11-20 07:48:07]
--------------------------------------------------------------------------------
 (5s):1.223G (avg):978.4Mh/s | A:18  R:0  HW:1  WU:17.4/m
 ST: 2  SS: 0  NB: 1  LW: 37  GF: 0  RF: 0
 Connected to stratum.bitcoin.cz diff 3 with stratum as user joesmith
 Block: 00070bedfe64cbc8...  Diff:609M  Started: [07:48:07]  Best share: 124
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
 AMU 0:                | 307.2M/327.5Mh/s | A:12 R:0 HW:0 WU:10.0/m
 AMU 1:                | 267.8M/314.6Mh/s | A: 0 R:0 HW:0 WU: 2.5/m
 AMU 2:                | 280.3M/322.7Mh/s | A: 6 R:0 HW:0 WU: 3.7/m
 AMU 3:                | 127.4M/308.9Mh/s | A: 3 R:0 HW:1 WU:10.5/m
--------------------------------------------------------------------------------

 [2013-11-20 07:48:43] Accepted 1326b92d Diff 13/3 AMU 0
 [2013-11-20 07:48:47] Accepted 3e086003 Diff 4/3 AMU 0
 [2013-11-20 07:48:58] Accepted 487047eb Diff 3/3 AMU 3

But it regularly crashes with a stack overflow. 
About a month ago i tried to upgrade to CgMiner 3.6, but it fails to find my USB devices:
 cgminer version 3.6.0 - Started: [2013-11-20 07:49:52]
--------------------------------------------------------------------------------
 (5s):0.000 (avg):0.000h/s | A:0  R:0  HW:0  WU:0.0/m
 ST: 2  SS: 0  NB: 1  LW: 2  GF: 0  RF: 0
 Connected to stratum.bitcoin.cz diff 3 with stratum as user joesmith
 Block: 00070bedfe64cbc8...  Diff:609M  Started: [07:49:52]  Best share: 0
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
--------------------------------------------------------------------------------

 [2013-11-20 07:49:49] Started cgminer 3.6.0
 [2013-11-20 07:49:49] Loaded configuration file cgminer.conf
 [2013-11-20 07:49:51] No devices detected!
 [2013-11-20 07:49:51] Waiting for USB hotplug devices or press q to quit
 [2013-11-20 07:49:51] Probing for an alive pool
 [2013-11-20 07:49:52] Pool 0 difficulty changed to 3
 [2013-11-20 07:49:52] Network diff set to 609M

So i reverted to 3.4.1, living with the semi-daily crashes and having to remember to restart CgMiner. This morning i tested CgMiner 3.8, hoping they fixed its inability to see USB Block Eruptors (and the stack overflow). Unfortunately it still does not see USB devices:
 cgminer version 3.8.0 - Started: [2013-11-20 07:44:46]
--------------------------------------------------------------------------------
 (5s):0.000 (avg):0.000h/s | A:0  R:0  HW:0  WU:0.0/m
 ST: 2  SS: 0  NB: 1  LW: 16  GF: 0  RF: 0
 Connected to stratum.bitcoin.cz diff 1 with stratum as user joesmith
 Block: 70bedfe6...  Diff:609M  Started: [07:44:46]  Best share: 0
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
--------------------------------------------------------------------------------

 [2013-11-20 07:44:42] Started cgminer 3.8.0
 [2013-11-20 07:44:42] Loaded configuration file cgminer.conf
 [2013-11-20 07:44:44] AMU 0 SendWork usb write err:(-7) LIBUSB_ERROR_TIMEOUT
 [2013-11-20 07:44:44] FAIL: USB get_lock not found (3:2)
 [2013-11-20 07:44:44] FAIL: USB remove not already in use (3:2)
 [2013-11-20 07:44:45] No devices detected!
 [2013-11-20 07:44:45] Waiting for USB hotplug devices or press q to quit
 [2013-11-20 07:44:45] Probing for an alive pool
 [2013-11-20 07:44:46] Pool 0 difficulty changed to 3
 [2013-11-20 07:44:46] Network diff set to 609M
 [2013-11-20 07:45:14] Pool 0 difficulty changed to 1
 [2013-11-20 07:45:14] Stratum from pool 0 requested work restart
 [2013-11-20 07:45:14] Stratum from pool 0 requested work restart

So i am, once again, reverted to CgMiner 3.4.1.
What did they break after CgMiner 3.4, and how do i fix it?
WinUSB
Just to preempt people who might suggest it, rather than offering any insight, i re-ran zadiag 2.0.1.162 (Updated 11/20/2013), and "reinstalled" the WinUSB driver for my for USB devices (and rebooted)

No effect.
What is CgMiner 2.8 doing wrong that CgMiner 2.4 did right?
Edit: Using Silicon Labs own VCP (Virtual COM Port driver):

gives the error (in BfgMiner):
usb_devinfo_scan: Error opening device: LIBUSB_ERROR_NOT_SUPPORTED

In CgMiner it gives:
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 1:3
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:3
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:2
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:6
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:8
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:10
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:11
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:12
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:13
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 6:2
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 8:3
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 8:1

So i've changed it trying every driver with some of the miners. Three are using the libusb-win32 driver, three are using the libusbx.org driver, and the rest are using the Silicon Labs CP210x USB to UART Bridge driver:

Both CgMiner and BfgMiner detect no devices.

user942: cgminer's FPGA and ASIC support was originally taken from BFGMiner. Due to the maintainers of GPU mining being upset over the obsoletion of GPU mining, they forked the project and eventually (poorly) rewrote the FPGA/ASIC drivers. You are seeing the effects of that.
BFGMiner continues to maintain the original (working) drivers, but you will need to remove the Zadig/WinUSB driver and install the official CP210x driver provided by Silabs. (CP210x is the chip used by the Block Erupters)

2446: <p>I've been using <a href="http://ck.kolivas.org/apps/cgminer/3.4/" rel="nofollow noreferrer">CgMiner 3.4.1</a> since late September. It can see my four USB Block Erupters, and works:</p>

<pre><code> cgminer version 3.4.1 - Started: [2013-11-20 07:48:07]
--------------------------------------------------------------------------------
 (5s):1.223G (avg):978.4Mh/s | A:18  R:0  HW:1  WU:17.4/m
 ST: 2  SS: 0  NB: 1  LW: 37  GF: 0  RF: 0
 Connected to stratum.bitcoin.cz diff 3 with stratum as user joesmith
 Block: 00070bedfe64cbc8...  Diff:609M  Started: [07:48:07]  Best share: 124
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
 AMU 0:                | 307.2M/327.5Mh/s | A:12 R:0 HW:0 WU:10.0/m
 AMU 1:                | 267.8M/314.6Mh/s | A: 0 R:0 HW:0 WU: 2.5/m
 AMU 2:                | 280.3M/322.7Mh/s | A: 6 R:0 HW:0 WU: 3.7/m
 AMU 3:                | 127.4M/308.9Mh/s | A: 3 R:0 HW:1 WU:10.5/m
--------------------------------------------------------------------------------

 [2013-11-20 07:48:43] Accepted 1326b92d Diff 13/3 AMU 0
 [2013-11-20 07:48:47] Accepted 3e086003 Diff 4/3 AMU 0
 [2013-11-20 07:48:58] Accepted 487047eb Diff 3/3 AMU 3
</code></pre>

<p>But it <a href="https://bitcointalk.org/index.php?topic=28402.10980" rel="nofollow noreferrer">regularly crashes</a> <a href="https://bitcointalk.org/index.php?topic=28402.10960" rel="nofollow noreferrer">with a</a> <a href="https://bitcointalk.org/index.php?topic=28402.12395;wap" rel="nofollow noreferrer">stack overflow</a>. </p>

<p>About a month ago i tried to upgrade to <a href="http://ck.kolivas.org/apps/cgminer/3.6/" rel="nofollow noreferrer">CgMiner 3.6</a>, but it fails to find my USB devices:</p>

<pre><code> cgminer version 3.6.0 - Started: [2013-11-20 07:49:52]
--------------------------------------------------------------------------------
 (5s):0.000 (avg):0.000h/s | A:0  R:0  HW:0  WU:0.0/m
 ST: 2  SS: 0  NB: 1  LW: 2  GF: 0  RF: 0
 Connected to stratum.bitcoin.cz diff 3 with stratum as user joesmith
 Block: 00070bedfe64cbc8...  Diff:609M  Started: [07:49:52]  Best share: 0
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
--------------------------------------------------------------------------------

 [2013-11-20 07:49:49] Started cgminer 3.6.0
 [2013-11-20 07:49:49] Loaded configuration file cgminer.conf
 [2013-11-20 07:49:51] No devices detected!
 [2013-11-20 07:49:51] Waiting for USB hotplug devices or press q to quit
 [2013-11-20 07:49:51] Probing for an alive pool
 [2013-11-20 07:49:52] Pool 0 difficulty changed to 3
 [2013-11-20 07:49:52] Network diff set to 609M
</code></pre>

<p>So i reverted to <code>3.4.1</code>, living with the semi-daily crashes and having to remember to restart CgMiner. This morning i tested <a href="http://ck.kolivas.org/apps/cgminer/3.8/" rel="nofollow noreferrer">CgMiner 3.8</a>, hoping they fixed its inability to see USB Block Eruptors (and the stack overflow). Unfortunately it <em>still</em> does not see USB devices:</p>

<pre><code> cgminer version 3.8.0 - Started: [2013-11-20 07:44:46]
--------------------------------------------------------------------------------
 (5s):0.000 (avg):0.000h/s | A:0  R:0  HW:0  WU:0.0/m
 ST: 2  SS: 0  NB: 1  LW: 16  GF: 0  RF: 0
 Connected to stratum.bitcoin.cz diff 1 with stratum as user joesmith
 Block: 70bedfe6...  Diff:609M  Started: [07:44:46]  Best share: 0
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
--------------------------------------------------------------------------------

 [2013-11-20 07:44:42] Started cgminer 3.8.0
 [2013-11-20 07:44:42] Loaded configuration file cgminer.conf
 [2013-11-20 07:44:44] AMU 0 SendWork usb write err:(-7) LIBUSB_ERROR_TIMEOUT
 [2013-11-20 07:44:44] FAIL: USB get_lock not found (3:2)
 [2013-11-20 07:44:44] FAIL: USB remove not already in use (3:2)
 [2013-11-20 07:44:45] No devices detected!
 [2013-11-20 07:44:45] Waiting for USB hotplug devices or press q to quit
 [2013-11-20 07:44:45] Probing for an alive pool
 [2013-11-20 07:44:46] Pool 0 difficulty changed to 3
 [2013-11-20 07:44:46] Network diff set to 609M
 [2013-11-20 07:45:14] Pool 0 difficulty changed to 1
 [2013-11-20 07:45:14] Stratum from pool 0 requested work restart
 [2013-11-20 07:45:14] Stratum from pool 0 requested work restart
</code></pre>

<p>So i am, once again, reverted to CgMiner 3.4.1.</p>

<p>What did they break after CgMiner 3.4, and how do i fix it?</p>

<h1>WinUSB</h1>

<p>Just to preempt people who might suggest it, rather than offering any insight, i re-ran <a href="http://zadig.akeo.ie/" rel="nofollow noreferrer">zadiag</a> <a href="http://zadig.akeo.ie/downloads/zadig_v2.0.1.162.exe" rel="nofollow noreferrer">2.0.1.162</a> (Updated 11/20/2013), and <em>"reinstalled"</em> the <strong>WinUSB</strong> driver for my for USB devices (and rebooted)</p>

<p><img src="https://i.stack.imgur.com/4OXzD.png" alt="enter image description here"></p>

<p>No effect.</p>

<p>What is CgMiner 2.8 doing wrong that CgMiner 2.4 did right?</p>

<p><strong>Edit</strong>: Using Silicon Labs own VCP (Virtual COM Port driver):</p>

<p><img src="https://i.stack.imgur.com/QIgbV.png" alt="enter image description here"></p>

<p>gives the error (in BfgMiner):</p>

<pre><code>usb_devinfo_scan: Error opening device: LIBUSB_ERROR_NOT_SUPPORTED
</code></pre>

<p>In CgMiner it gives:</p>

<pre><code>USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 1:3
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:3
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:2
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:6
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:8
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:10
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:11
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:12
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 3:13
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 6:2
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 8:3
USB init, open device failed, err -12, you need to install a WinUSB driver for - AMU device 8:1
</code></pre>

<p>So i've changed it trying every driver with some of the miners. Three are using the <strong>libusb-win32</strong> driver, three are using the <strong>libusbx.org</strong> driver, and the rest are using the <strong>Silicon Labs CP210x USB to UART Bridge</strong> driver:</p>

<p><img src="https://i.stack.imgur.com/W0Vgp.png" alt="enter image description here"></p>

<p>Both <strong>CgMiner</strong> and <strong>BfgMiner</strong> detect no devices.</p>
 942: <p>cgminer's FPGA and ASIC support was originally taken from <a href="http://bfgminer.com" rel="nofollow">BFGMiner</a>. Due to the maintainers of GPU mining being upset over the obsoletion of GPU mining, they forked the project and eventually (poorly) rewrote the FPGA/ASIC drivers. You are seeing the effects of that.</p>

<p>BFGMiner continues to maintain the original (working) drivers, but you will need to remove the Zadig/WinUSB driver and install <a href="http://www.silabs.com/products/mcu/pages/usbtouartbridgevcpdrivers.aspx" rel="nofollow">the official CP210x driver</a> provided by Silabs. (CP210x is the chip used by the Block Erupters)</p>
