NEW VERSION 5.5.0, JANUARY 3 2018
Human readable changelog:
- Support for Alcheminer using a USB->UART dongle
- openwrt: Binary packages for (LEDE) 17.01 "Reboot".
- Update bundled dependency libraries (including bundled libblkmaker, for out-of-the-box Segwit support).
Full changelog: https://bitcointalk.org/?topic=877081.msg27617319#msg27617319
NEW VERSION 5.4.2, MARCH 26 2016
Happy Easter!
Human readable changelog:
- Fix some possible edge case problems with stratum proxying (--stratum-port).
- openwrt: Binary packages for 15.05 "Chaos Calmer".
- Fix 2D work support for GBT servers (requires libblkmaker 0.5.3 or newer).
Full changelog: https://bitcointalk.org/?topic=877081.msg14339279#msg14339279
NEW VERSION 5.4.1, NOVEMBER 21 2015
Human readable changelog:
- Updated bundled libblkmaker to 0.5.2 for BIP65 (OP_CHECKLOCKTIMEVERIFY) support.
- openwrt: bitmain driver enabled for official ar71xx binaries.
Full changelog: https://bitcointalk.org/?topic=877081.msg13034566#msg13034566
NEW VERSION 5.4.0, OCTOBER 23 2015
Human readable changelog:
- RPC: Ability to change pool management strategy.
- Pool option #cksuggest to use CKPool-compatible mining.suggest_difficulty stratum extension.
- alchemist: New scrypt ASIC driver, written and maintained by jstefanop (requires custom FPGA reprogramming).
- antminer, avalon, compac, hashfast, and jingtian: Support for setting clock frequency from the TUI's device management interface.
- antminer & compac: Support for setting clock by frequency MHz.
- bitforce: Ability to change voltages from RPC and TUI.
- bitmain: New driver for Bitmain Antminer S-series units (up to S5).
Full changelog: https://bitcointalk.org/?topic=877081.msg12760972#msg12760972
NEW VERSION 5.3.0, SEPTEMBER 5 2015
Human readable changelog:
- compac: Support for the GekkoScience Compac BM1384 USB stick miner
Full changelog: https://bitcointalk.org/?topic=877081.msg12333127#msg12333127
NEW VERSION 5.2.0, JUNE 5 2015
Human readable changelog:
- antminer: Compatibility with Antminer U3; see README.ASIC for details.
- icarus: Refactor timeout logic to work with millisecond precision on Linux and Windows.
Full changelog: https://bitcointalk.org/?topic=877081.msg11539139#msg11539139
NEW VERSION 5.1.0, FEBRUARY 19 2015
Miners must upgrade to 3.10.9, 4.10.2, or 5.1.0 to continue using GBT pools post-BIP66 or solo mining with Bitcoin Core 0.10 or newer.
Human readable changelog:
- Update libblkmaker for compatibility with BIP66 version 3 blocks.
- Merge Kano's web-based config file loader from cgminer.
Full changelog: https://bitcointalk.org/?topic=877081.msg10513504#msg10513504
NEW VERSION 5.0.0, NOVEMBER 29 2014
Human readable changelog:
- Multi-blockchain support: BFGMiner can now be told which pools use the same "mining goals", and will track the blockchain independently for ones that don't. This allows you to mine multiple cryptocurrencies concurrently using any pool strategy (including balance and load-balance).
- Multi-algorithm support: BFGMiner is now capable of hashing on both scrypt and SHA256d work at the same time, and you can assign the mining algorithm to use on a per-goal basis. As with multi-blockchain support, this works even in balancing strategies. Note that at this time, only CPU, OpenCL, and Proxy drivers actually support multiple algorithms at the same time (DualMiner must be preconfigured for only one, and GridSeed remains scrypt-only).
- Stratum extensions for mining goals: New experimental methods mining.capabilities and mining.set_goal for Stratum allow you to expose control of the mining algorithm to the pool. These extensions are considered draft and may be changed based on the needs of multiblockchain pool operators.
- RPC: Also extended for multiple mining goals/algorithms. Interface is subject to change.
- kncasic: New driver for KnCMiner Neptune (and 2nd-gen Jupiter modules).
- minion: New driver for BlackArrow Prospero X1.5.
- titan: Work flushing optimisations from KnCMiner, and reduce processor view from per-core to per-die.
- Keccak: Support for the SHA-3 winner hash as a proof-of-work algorithm.
- opencl: Workaround broken global work offset support in buggy drivers.
- opencl: GPU mining is now disabled by default for scrypt. Use -S opencl:auto to enable it.
Full changelog: https://bitcointalk.org/?topic=877081.msg9686536#msg9686536
NEW VERSION 4.10.0, OCTOBER 21 2014
Human readable changelog:
- minergate: Support for Spondoolies SP30.
- titan: Numerous fixes and improvements from the KnCMiner team.
Full changelog: https://bitcointalk.org/?topic=626361.msg9273307#msg9273307
NEW VERSION 4.9.0, OCTOBER 5 2014
Please note that the new Titan driver is maintained by KnCMiner, and neither nwoolls nor myself can provide support for it.
Human readable changelog:
- titan: Driver for KnCMiner's scrypt ASIC machine.
Full changelog:
- Upgraded Windows libraries:
- - libcurl from 7.37.0 to 7.38.0
- - libusb from 1.0.18 to 1.0.19 (Win64 only)
- - mingw64-runtime from 3.1.0 to 3.2.0 (Win64 only)
- - uthash from 1.9.7 to 1.9.9
- Travis: Update for titan driver
- configure: Accept --enable-titan=CONTROLLER to select controller
- make-release: Remove unnecessary knc-asic/{*.rbf,*system,waas} from release source
- extra_work_queue so devices can influence their effect on the central work queue somewhat (titan needs less than 1-per-proc)
- Avoid adding include paths for titan driver
- Bugfix: titan: Add missing printf formatting for core busy status
- avalon: Drop custom hexdump logging
- Build titan driver independently from knc (Jupiter) driver
- titan: Do not fill up next slot immediately after urgent setwork
- titan: Pre-fill work queue so that all ASICs have fresh jobs after a flush
- Build instructions for KnC Titan
- Doesn't compile without explicitly included inttypes.h on some machines
- knc-asic: Updated to e5c986d3c44fde8c5b069508ef6979f2f2be92d6
- Fix Makefile.am to build bfgminer for titan
- titan: Subdivide full nonce range only between cores in one ASIC (because works are now distributed per-ASIC too)
- titan: DC/DCs does not like broadcast flushes (urgent setwork). Do not do it!
- titan: Preparation to setting threads-per-core externally, by user
- titan: Re-flush cores in case of slot number collision
- titan: Per-ASIC flush, per-ASIC work management
- titan: Start cores after flush individually, not by broadcast.
- titan: Default frequency is 275 MHz
- titan: Difficulty is offset by one in ASIC cores.
- titan: Fix first_proc pointer
- titan: Use 2 threads per core
- titan: Use setup_core from knc-asic library
- titan: Poll all enabled ASICs amd dies, not only one
- titan: Properly set work_accepted flag
- titan: Hint detection function about expected device type
- titan: Fix setup_core command
- titan: Use knc-asic library for transport layer
- Add knc-asic as submodule
- titan: Change spi device to spidev1.0
- titan: Add define to .h file
- titan: Increase workqueue size up to number of slots per core
- titan: Send data to hashmeter
- titan: Disregard stale reports after flush
- titan: Check for next asic/die switch when processing info results
- Bugfix: titan: Fix segfault
- titan: Set actual hardware nonce_diff for works in prepare_work
- titan: Do clean flush ("purge") on init
- titan: Store last_nonce right
- titan: First attempt to process nonce responses
- titan: Change 'scanhash' minerloop to 'queue'
- titan: Init all cores for their own nonce ranges
- titan: For RPi we use spidev0.1
- titan: Setup_core command implemented
- titan: New commands set_work & get_report
- titan: Move asic-specific functionality to the separate file (titan-asic.c)
- titan: First ugly detect of Titan chip over SPI
- knc-titan: Begin work on Titan (scrypt miner) driver
- libbase58: Use git URI for submodule to avoid failure on systems without HTTPS support
- Travis: Cross-compile a Win64 build
- RPC: Initialise json_config to silence false warning
- Make sure MOUSE_MOVED from wincon is ignored (it conflicts with curses)
- Travis: Perform full builds with libbase58's base58 tool (which is used for tests)
- Travis: Test many configuration variations
- Travis: Build with libsensors and VFIO
- Travis: Upgrading GCC triggers locale rebuild, so just do the one in use
- Travis: No need to upgrade GCC for LLVM build
- Travis build configuration
- Run BFGMiner's unit tests for 'make check', and have --unittest exit with failure if any problems occur
- libbase58: Update to pick up on LLVM fixes
- Bugfix: configure: Affect gridseed driver with --disable-other-drivers
- Bugfix: configure: minergate driver needs lowlevel for claiming sockets
- Bugfix: configure: --disable-other-drivers should not affect non-driver options
- Bugfix: configure: --with[out]-vfio needs $withval, not $enableval
- Bugfix: rockminer: Correct types for short read error message
- Bugfix: icarus: fix the STATS RPC API call crashes with a multi-proc device
- Bugfix: cointerra: Check lowlevel device is USB before trying to probe it (as USB)
- bitforce: Reinstate device work inprogress count sanity check for 28nm devices
- littlefury: Read uC temperature sensor
- littlefury: Keep track of enabled chips and power state explicitly in case of trouble
- Bugfix: async minerloop fix for devices disabled at start
- twinfury: Implement device protocol dump more low-level
NEW VERSION 4.8.0, SEPTEMBER 10 2014
Human readable changelog:
- New option --benchmark-intense for hardware manufacturers to properly test their miners can perform properly as Bitcoin grows.
- Logic to check validity and optionally benefactors of the generation transaction (GBT and Stratum only). See the new --coinbase-check-* options to configure it, or append #skipcbcheck to pool URIs to disable it.
- cointerra: New driver for the TerraMiner.
- Stratum proxy: Numerous crash conditions fixed.
Full changelog: https://bitcointalk.org/?topic=626361.msg8757798#msg8757798
NEW VERSION 4.7.0, AUGUST 17 2014
Human readable changelog:
- avalonmm: Guess sensible defaults when user does not specify clock/voltage.
- minergate: New driver supporting the Spondoolies SP10.
- Stratum: Support for mining.set_extranonce extension; put "#xnsub" at the end of the pool URI to enable.
Full changelog: https://bitcointalk.org/?topic=626361.msg8390976#msg8390976
NEW VERSION 4.6.0, AUGUST 2 2014
Human readable changelog:
- avalonmm: New driver for both Avalon2 and Avalon3 rigs.
Full changelog: https://bitcointalk.org/?topic=626361.msg8145760#msg8145760
NEW VERSION 4.5.0, JULY 26 2014
Human readable changelog:
- bitforce: A new setup-vfio shell script is included to simplify configuring VFIO for Monarchs on PCIe.
- bitforce: Support for PCIe on Windows.
- cairnsmore, icarus, zeusminer: Per-core mining statistics support.
- gridseed: Ability to set clock speed via Manage TUI.
- hashfast: Include chip/core address in RPC procdetails.
- hashfast: Implement ability to change clock setting at runtime.
- rockminer: Allow setting clock 300-2560 as long as prefixed by "unsafe:".
- zeusminer: Support for the GAW War Machine.
- zeusminer: Ability to set clock speed via Manage TUI.
Full changelog: https://bitcointalk.org/?topic=626361.msg8038266#msg8038266
NEW VERSION 4.4.0, JULY 7 2014
Human readable changelog:
- getwork and stratum proxy drivers: Proxy-share difficulty is now adjustable using --set pxy:diff=N and/or --set pxy@username:diff=N
- Mac OS X: Support for automatic detection of capable devices at startup.
- jingtian: Support for this new platform. Must be compiled on the Raspberry Pi itself with --enable-jingtian
Full changelog: https://bitcointalk.org/?topic=626361.msg7720976#msg7720976
NEW VERSION 4.3.0, JUNE 30 2014
I plan to move 3.10.x to stable soon, so if you're still using 3.5.x, please upgrade and report any regressions (note them as such).
Human readable changelog:
- URI parameter #getcbaddr to request coinbase address from bitcoind or compatible servers for solo mining.
- When running on systems with a configured Bitcoin Core server, it is automatically configured as a final failover and used for local block submission (GBT pools only) to reduce the risk of a stale block.
- bitforce: Implement some last-minute Monarch interface changes.
- zeusminer: New driver for these scrypt ASIC devices.
Full changelog: https://bitcointalk.org/?topic=626361.msg7602542#msg7602542
NEW VERSION 4.2.0, JUNE 11 2014
Human readable changelog:
- rockminer: New driver for ROCKMINER R-BOX.
Full changelog: https://bitcointalk.org/?topic=626361.msg7245764#msg7245764
NEW VERSION 4.1.0, JUNE 6 2014
Human readable changelog:
- Stratum: Fix recovery of dead pools.
- gridseed: 80-chip G-Blade support.
- Stratum: Support for authenticated TLS with the CA model, using #tlsca URI parameter.
Full changelog: https://bitcointalk.org/?topic=626361.msg7160734#msg7160734
NEW VERSION 4.0.0, MAY 26 2014
Human readable changelog:
- Various options (specifically, --temp-cutoff, --temp-target, and the various --<driver>-options) have been migrated to the --set-device interface.
- Automatic hotplug support for Linux and Windows.
- TUI: Redesigned pool information line to include share difficulties in multipool modes and timestamp of the last explicit work update (which are no longer logged).
- Forbid cross-domain server redirection by default, unless pool URI has #redirect in it.
- Stratum: Unauthenticated TLS support.
- Stratum: Improve support for stratum-compliant scrypt servers, while still cleanly handling the expectations of many broken servers.
- bifury: Support for OneStringMiner and Hex*Fury (see README.ASIC for notes about boards with buggy firmware).
- bitfury: Detect gen2 chips and report hashrate correctly.
- bfx: New driver for BFx2 Bitfury USB stick miners.
- bitforce: Support for Monarch 28nm cards, including PCI-Express support on Linux (see README.ASIC for setup instructions).
- drillbit: Add support for protocol version 4 devices.
- dualminer: New driver, supporting both SHA256d and scrypt ASIC mining.
- gridseed: New driver, supporting only scrypt ASIC mining.
- hashbusteravalon: New driver for Avalon2-based HashBuster devices, such as the HashBuster Alpha.
- hashfast: Display of temperature and voltage, as well as setting clock frequency at startup.
- icarus & cairnsmore: Since Block Erupters are far more popular, and less unprofitable, the erupter driver is now preferred over icarus and cairnsmore drivers. This means you must change -S all to -S icarus:all or -S cairnsmore:all.
- knc: Added a use_dcdc setting that can be used on Nov batch units to avoid triggering DCDC problems (--set knc:use_dcdc=no).
- nanofury: Support for new, multi-chip NF2 and NF6 units.
- RPC: cpu* and gpu* commands have all been deprecated; CPUs and GPUs are now accessible using pga* and proc* commands just like everything else.
- Stratum proxy: Support for GBT upstream pools, as well as scrypt algorithm.
- getwork proxy: Support for scrypt and included in Win64 binaries.
- opencl: Major updating of code to use set-device interfaces.
- opencl: Support for loading kernels by filename, provided they use a known interface. Loading most scrypt kernel should just work, and most SHA2 kernels can be enabled by adding a single comment to the CL source.
- opencl: Support for new "xintensity" unit by using --set-device OCL:intensity=x5 (for example).
- opencl: Raise max scrypt GPU intensity to 31, and enabled driver by default for scrypt.
- opencl: Add some optimised scrypt kernels by zuikkis and psw.
- scrypt: Fixed nonce-based (third) hashrate, and display sub-one share difficulties.
- Default log interval (and first hashrate rolling average) increased from 5 seconds to 20 seconds to make it more useful.
- Benchmark mode refactored to work for both SHA256d and scrypt, and with the third hashrate.
- Many uncommon options (including CPU and GPU mining related ones) have had their "shorthand" forms deprecated. A future release will remove (and perhaps redefine) these shorthands entirely.
- Bundled a start-bfgminer.sh shell script for *nix which will start/restart BFGMiner in a screen session, and can safely be used in init/cron tasks.
Full changelog: https://bitcointalk.org/?topic=626361.msg6958527#msg6958527
NEW VERSION 3.10.0, JANUARY 15 2014
Human readable changelog:
- Support for AntMiner U1, Drillbit, and HashFast devices.
- Option --weighed-stats to display share-count columns (A/R) weighed to difficulty 1.
- x6500: maxclock setting (use with --set-device) to limit dynamic clocking range.
- opencl/adl: Fixed crash on exit with R9 series GPUs.
Full changelog: https://bitcointalk.org/?topic=168174.msg4532634#msg4532634