Bitcoin Forum
April 24, 2024, 01:51:33 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 [521] 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 ... 843 »
  Print  
Author Topic: OFFICIAL CGMINER mining software thread for linux/win/osx/mips/arm/r-pi 4.11.1  (Read 5805211 times)
This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic. (3 posts by 1+ user deleted.)
kano
Legendary
*
Offline Offline

Activity: 4466
Merit: 1798


Linux since 1997 RedHat 4


View Profile
May 30, 2013, 11:39:54 PM
 #10401

i downloaded the https://github.com/kanoi/cgminer-binaries/raw/master/Ubuntu_11.04_x86_64/cgminer-3.1.1a and i'm using xubuntu 12.10. I'll only need cgminer for ASICMINER usbs.

i'm getting this error :

Code:
./cgminer-3.1.1a: error while loading shared libraries: libOpenCL.so.1: cannot open shared object file: No such file or directory

if i got it right opencl is for GPU mining, that i will not need. So how may i use cgminer or bypass the error? Thanks.
look at what you downloaded ...

cgminer-3.1.1-x86_64-built/cgminer-nogpu

Edit: oops sorry you downloaded my 11.04
OK - that's compiled specifically for GPUs
No reason to be mining on 11.04 unless you have GPUs

Get the master ckolivas version (you'll need it on 12.04 anyway)

Pool: https://kano.is - low 0.5% fee PPLNS 3 Days - Most reliable Solo with ONLY 0.5% fee   Bitcointalk thread: Forum
Discord support invite at https://kano.is/ Majority developer of the ckpool code - k for kano
The ONLY active original developer of cgminer. Original master git: https://github.com/kanoi/cgminer
Each block is stacked on top of the previous one. Adding another block to the top makes all lower blocks more difficult to remove: there is more "weight" above each block. A transaction in a block 6 blocks deep (6 confirmations) will be very difficult to remove.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713923493
Hero Member
*
Offline Offline

Posts: 1713923493

View Profile Personal Message (Offline)

Ignore
1713923493
Reply with quote  #2

1713923493
Report to moderator
1713923493
Hero Member
*
Offline Offline

Posts: 1713923493

View Profile Personal Message (Offline)

Ignore
1713923493
Reply with quote  #2

1713923493
Report to moderator
1713923493
Hero Member
*
Offline Offline

Posts: 1713923493

View Profile Personal Message (Offline)

Ignore
1713923493
Reply with quote  #2

1713923493
Report to moderator
stepkrav
Full Member
***
Offline Offline

Activity: 188
Merit: 100



View Profile
May 30, 2013, 11:44:44 PM
 #10402

oh right, my fault.
in the meantime i decided to build from source.

Used this :

Code:
CFLAGS="-g -W -Wall" ./autogen.sh --disable-opencl --disable-adl --enable-icarus
Is that optimal ?

I think i made it fine. Haven't tested in mining but at least it is executable.  Smiley
kano
Legendary
*
Offline Offline

Activity: 4466
Merit: 1798


Linux since 1997 RedHat 4


View Profile
May 30, 2013, 11:46:25 PM
 #10403

oh right, my fault.
in the meantime i decided to build from source.

Used this :

Code:
CFLAGS="-g -W -Wall" ./autogen.sh --disable-opencl --disable-adl --enable-icarus
Is that optimal ?

I think i made it fine. Haven't tested in mining but at least it is executable.  Smiley

Yeah when I saw 12.04 in your post I assumed you were using ckolivas binary.
Sorry got that mixed up.

But since you are using 12.04, you will need to use the ckoivas binary anyway.

cgminer-3.1.1-x86_64-built/cgminer-nogpu

Pool: https://kano.is - low 0.5% fee PPLNS 3 Days - Most reliable Solo with ONLY 0.5% fee   Bitcointalk thread: Forum
Discord support invite at https://kano.is/ Majority developer of the ckpool code - k for kano
The ONLY active original developer of cgminer. Original master git: https://github.com/kanoi/cgminer
The Mafia
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
May 31, 2013, 05:14:37 AM
 #10404

ckolivas, I finally got my rig to error out again with verbose mode turned on.

Here are the errors:

http://users.on.net/pacey/bit/errorcaught.jpg

And here is the log file:

http://users.on.net/pacey/bit/logfile02.txt

I hope this helps you. Thanks!
-ck (OP)
Legendary
*
Offline Offline

Activity: 4088
Merit: 1631


Ruu \o/


View Profile WWW
May 31, 2013, 05:18:27 AM
 #10405

ckolivas, I finally got my rig to error out again with verbose mode turned on.

Here are the errors:
...snip
I hope this helps you. Thanks!
Thanks. That gets us part of the way there. At least I know what it is likely trying to do when you have the problem. Do you know what happened at that particular time  [2013-05-31 14:04:07] on your machine? Did your IP address change, did you have network outage, did your ISP go down, did the pool go down? Did you delete windows in disgust and install linux to fix this?

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
The Mafia
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
May 31, 2013, 05:27:10 AM
 #10406

Thanks. That gets us part of the way there. At least I know what it is likely trying to do when you have the problem. Do you know what happened at that particular time  [2013-05-31 14:04:07] on your machine? Did your IP address change, did you have network outage, did your ISP go down, did the pool go down? Did you delete windows in disgust and install linux to fix this?

I checked the router, and it didn't hang up or change IPs. The windows box has a static IP.

One other thing that might help - All machines mining on this particular internet connection would fail, not just this one. (They are all windows boxes)

That's the best I can tell you for now.

I haven't gone into the Linux world yet to mine because its been years, and I think I have been demoted to noob status again.

I probably should switch to linux though.
NR3000
Member
**
Offline Offline

Activity: 86
Merit: 10



View Profile
May 31, 2013, 06:06:56 AM
 #10407

when the new version of cgminer will come out?

-ck (OP)
Legendary
*
Offline Offline

Activity: 4088
Merit: 1631


Ruu \o/


View Profile WWW
May 31, 2013, 06:22:13 AM
Last edit: May 31, 2013, 12:36:22 PM by ckolivas
 #10408

New version 3.2.0 - 31st May 2013

Major upgrades to virtually all FPGA and ASIC drivers. Nothing much here for GPU miners.This version changes all the drivers to the direct USB mode so linux users will not need any drivers and all devices should now hotplug,that includes Avalon. Windows users will need to remove the ftdi driver for the ancient serial USB mode and use a tool like Zadig to associate their USB devices with the WinUSB driver (which is an official Microsoft driver). The code for all devices is built into the binaries I have uploaded except for Avalon on windows (but why on earth would anyone want to do that?).

Huge props and thanks to Sitarow for virtually unrestricted remote access to his avalon and Xiangfu to sponsor the Avalon development.
While the code is now heavily tested, being such a massive update, there may be new bugs.


Human readable changelog.

- Clamp initial GPU fanspeed to range provided by user.
- Update screen completely when going into a menu entry.
- Shut down/restart more reliably.
- Shows pool difficulty change in logs if it changes via stratum.
- Less locking around some of the stratum code may prevent some rare hangs or delays in processing stratum data.
- Decrease the amount of ram and threads used by stratum share submission to minimise the risk of running out of resources to submit shares.
- Fixed small memory leaks.
- New option: --lowmem            Minimise caching of shares for low memory applications
- Increase timeouts for windows comms.
- New windows DLLs for updated libcurl
- Major rewrite of icarus driver to move to direct USB.
- Rename of all devices to tell them apart.
- Massive changes under the hood supporting all the changes, along with bugfixes and improvements.
- Major rewrite of all the Avalon driver:
. Uses direct USB to the chip removing need for ftdi driver and its heavy polling which decreases overhead.
. Uses separate work submission and result parsing threads from the main hashing thread, to guarantee adequate work is submitted to keep the device busy, and ensure no results are lost due to receive delays or buffer overflows.
. Parses results using a buffered + scanned mechanism to avoid getting out of sync and needing to reset the device to recover. It can also discard garbage results without them affecting further results.
. More reliably detects hardware errors: The count will now appear higher due to "NMW - no matching work" being counted as a hardware error which it truly is.
. Idles the device if there is no work due to pool or network outage to avoid wasting unnecessary power.
. Disables the device gracefully and can hotplug it again if it is pulled out/plugged in via USB.
. Monitors temperature more reliably to adjust fanspeed by checking values returned more rigorously.
. Decreases the amount of memory in use by the device.
. Avoids run-over to start repeating results through much better timing of submitting new work.
. More reliably detect conditions that require an FPGA reset thus decreasing the number of resets but is more likely to recover when a reset occurs.
. Now displays ambient/operating temperature and fan %/RPM in the text user interface when run on a PC/console.
. Can start an avalon mining without any options being passed to it.
. Documentation of avalon options in ASIC-README.
. Numerous other low level bugfixes and improvements.


Full changelog

- Add FAQ about windows USB keyboards and hotplug interactions.
- Fix mingw build warnings in icarus driver.
- Make usb_ftdi_cts use the _usb_transfer_read function.
- Update ASIC-README with avalon info regarding default behaviour.
- Break out of idling loop in avalon_idle if the buffer is full.
- Provide some defaults for avalon if none are specified and do not try to claim
the device if it fails to reset with them and no options are specified.
- usbutils automatically track IO errors
- usbutils allow a short wait for resources to be released
- correct semaphore timeout comment
- Set the fanspeed to the nominal chosen for GPUs.
- Inverted sem_init logic.
- Document avalon options in ASIC-README
- Do avalon driver detection last as it will try to claim any similar device and
they are not reliably detected.
- Clamp initial GPU fanspeed to within user specified range.
- Use a counting semaphore to signal the usb resource thread that it has work to
do.
- Avalon fan factor is already multiplied into the info values.
- Get rid of zeros which corrupt display.
- Logic fail on minimum fanspeed reporting.
- Provide a workaround for fan0 sensor not being used on avalon and pad fan RPM
with zeros.
- Add ambient temp and lowest fan RPM information to avalon statline.
- Display max temperature and fanspeed data for avalon.
- Set devices to disabled after they exit the hashing loops to prevent the
watchdog thread from trying to act on them.
- Add avalon driver to hotplug.
- Shut down the avalon mining thread if the device disappears.
- Check for no usb device in usb_ftdi_cts
- Check for valid usbdev in _usb_read in case the device has been unplugged.
- Scanhash functions perform driver shutdown so don't repeat it.
- Change the opencl shutdown sequence.
- Send the shutdown message to threads and do the thread shutdown functions
before more forcefully sending pthread_cancel to threads.
- Use the cgpu_info shutdown to determine when to stop the avalon read and write
threads.
- Use semaphores to signal a reset to pause the read thread while the write
thread does the actual reset, making all writes come from the same place.
- Remove now unneeded fgpautils.h include from avalon.
- usb_transfer_read should also not play with the endianness.
- Use the USB wrappers for avalon, telling usbutils that we want the raw data.
- Use separate ep for avalon tasks vs avalon reset and do not loop in write
indefinitely.
- Remove unneeded function and checks in avalon write code.
- CMR handle baud options
- work_restart is reset within the queued hash work loop.
- Fix avalon shutdown sequence.
- Execute driver shutdown sequence during kill_work.
- Use nusleep in avalon_get_results in place of nmsleep.
- Provide an nusleep equivalent function to nmsleep.
- usb/ica add more (incomplete) CMR settings
- Give a buffer of perceived results in avalon during idle periods to allow for
results once it becomes active again.
- libusb_control_transfer are meant to be endian specific, but host endianness
so no conversion is needed.
- Reuse old MTX Handle
- usbutils check all memory allocation
- usb separate thread for resource locking and modified windows locking code
- Icarus report data direction with comms errors
- Set the read and write threads for avalon to not cancel within libusb
functions and wait for the threads to pthread_join on shutdown.
- Offset needs to be incremented after avalon reads.
- Make the avalon_read function parse the ftdi responses appopriately.
- Use the avalon read timeout to completion if no data has been read.
- wait_avalon_ready should only be used before writes.
- Ask for the correct amount to read in avalon get results.
- Spawn the avalon read thread first with info->reset set to discard any data
till work is adequately queued.
- Use direct usb read commands to avoid ftdi data being automatically cut off in
avalon reads.
- Do a simple usb_read_once for the avalon result from a reset command.
- Make sure avalon is ready to receive more usb commands before sending them.
- Implement avalon_ready and avalon_wait_ready functions for when usb is ready
to receive commands.
- avalon_read should not loop but just return whatever it has succeeded in
reading.
- Set avalon_info to device data void struct.
- Specify avalon in avalon_reset.
- First pass rewriting serialdev into direct usb dev for avalon driver.
- Define a cts equivalent for direct usb and use it for avalon driver full.
- Compile usbutils into avalon driver.
- Check results come in at least at 2/3 the rate they should be on avalon and if
not, reset it.
- Give a warning but don't reset if the avalon buffer is full early.
- Discard any reads obtained from the avalon get results thread during a reset.
- Differentiate initial reset in avalon from subsequent ones.
- Perform a mandatory reset if the avalon buffer signals it's full before it has
queued its normal quota of work.
- Wait till buffer is cleared after sending idle tasks to avalon before
returning from avalon_idle.
- Lock qlock mutex during reset from read thread in avalon to prevent more work
being sent till the reset is over.
- Reset avalon if we continue to be unable to send all the work items.
- Add avalon reset response to debugging output.
- Do a wait_avalon_ready before sending a reset code.
- Iterate over spare bytes in the avalon result returned from a reset request
trying to find the beginning of the reset.
- Idle avalon after reset.
- Check for nothing but consecutive bad results on avalon and reset the FPGA if
it happens.
- Make submit_nonce return a bool for whether it's a valid share or not.
- Unset the work restart flag sooner in avalon_flush_work to avoid re-entering
the flush work function and just reset the queued counter instead of rotating
the array to avoid runs of no valid work.
- Implement an avalon_flush_work function for work restarts.
- Shut down avalon read and write threads and idle the miners on closing it.
- Tighter control over work submissions in avalon allows us to use a smaller
array.
- Rotate avalon array to reset the queued count before releasing the lock so
work will always be available on next pass.
- Move avalon read thread start till after conditional wait, store idle status
in avalon_info and use it to determine whether an error is appropriate or not.
- Wait till the avalon_send_tasks thread has filled the avalon with idle work
before starting the avalon_get_results thread.
- Use AVA_GETS_OK macro in avalon_read.
- Do all writes on avalon with a select() timeout to prevent indefinite blocking
and loop if less than desired is written.
- Check explicitly that ava_buffer_full equals the macro.
- Send initial reset as an avalon task to remove avalon_write function.
- avalon_clear_readbuf is no longer required.
- Check for 2 stray bytes on avalon reset.
- Create a separate thread for handling all work and idle submission to the
avalon which messages the scanhash function it has completed to update
statistics.
- usbutils ensure it compiles without stats
- usbutils include transfer mode in usbstats
- Give the avalon get results thread name the device number as well.
- Make sure we're not adjusting temps on every successful work retrieval on
avalon.
- Count missing work items from behind a successful work read in avalon as well.
- Change message for work not found in avalon parser.
- usbutils handle bulk_transfer partial writes
- Simplify debugging and only discard from avalon read buffer if at least one
full result has been discarded.
- Only display discarded bytes in avalon if they're not used as nonces.
- Only loop once through avalon_parse_results, but do so after timeouts as well.
- Only debug and move ram if spare bytes exist in avalon buffer.
- Remove off by one error.
- Inverted logic.
- Add more debugging to avalon reads.
- Convert unsigned size_ts to ints for parsing avalon messages.
- Cope with not finding nonces in avalon parsing gracefully by not overflowing
buffers.
- Adjust avalon temp values on one lot of valid nonces from the parser.
- Created a threaded message parser for avalon reads.
- Avalon_wait_write is not effective during resets so do it after going idle.
- Send only a single byte reset.
- Repeat going idle after avalon reset, and wait for write ready before sending
each reset request instead of some arbitrary sleep time.
- Timeouts on avalon_read and avalon_write should be 100ms.
- Don't close avalon after detecting it until we're cleaning up, instead using
reset for comms failures.
- Check for avalon_wait_write before sending reset command.
- Sleep in avalon_write_ready.
- Make avalon_wait_write a bool function and check its return value.
- Show how many idle tasks are sent to avalon if it aborts on buffer full.
- Reset avalon->device_fd after it is closed.
- Create an avalon_wait_write function that is used before sending avalon idle
command.
- Avoid repeating avalon_idle in do_avalon_close and extra sleep.
- Pass fd to avalon_idle.
- Do avalon_reset after info structure is set up.
- Rework avalon reset sequence to include idling of chips and waiting for them
to go idle followed by 2nd reset and then checking result.
- Do a non-blocking read of anything in the avalon buffer after opening the
device.
- Assign the avalon info data to the device_data in cgpu_info.
- thread shutdown is different on windows
- usbutils make all windows timeouts 999ms
- usb add another Cairnsmore1 USB chip
- icarus do the full detect test twice if required
- CMR usb config guess
- usb add transfer_read and commented out in icarus
- usbutils allow unrounded control transfers
- icarus ICA initialisation
- icarus report err on read failure
- icarus correct device_id and use device_data for icarus_info
- miner.h remove unused device_file and add device_data
- miner.h icarus no long uses fd
- icarus AMU config transfers
- Create a logwin_update function which mandatorily updates the logwin and use
it when input is expected to prevent display refresh delays.
- usbutils force an unknown IDENT for zero
- icarus set default options/timing based on device
- Must unlock curses as well in logwin_update.
- Create a logwin_update function which mandatorily updates the logwin and use
it when input is expected to prevent display refresh delays.
- icarus report usb write error information
- Add name to icarus copyright notice.
- Check for *pth dereference on pthread_join
- usbutils name latency correctly
- Check for restart before buffering more reads in Icarus.
- Icarus should timeout if it's greater than the timeout duration even if it's
receiving data.
- We should check for amount buffered in icarus get_nonce against amount already
received.
- Make mining threads report out during work submission.
- submit_work_async is no longer used directly by driver code.
- Fix first read timeout on icarus get nonce.
- Retry icarus_initialise if the first read attempt fails.
- Properly pthread_join miner threads on shutdown.
- Properly pthread_join miner threads on shutdown.
- Use a persistent single separate thread for stratum share submission that uses
workqueues since all stratum sends are serialised.
- All stratum calls to recv_line are serialised from the one place so there is
no need to use locking around recv().
- Only allow the mining thread to be cancelled when it is not within driver
code, making for cleaner shutdown and allowing us to pthread_join the miner
threads on kill_work().
- Only allow the mining thread to be cancelled when it is not within driver
code, making for cleaner shutdown and allowing us to pthread_join the miner
threads on kill_work().
- Set pool->probed to true after an attempt to resolve the url via stratum code.
- icarus test nodev everywhere
- usbutils/icarus separate FTDI transfer values and more debug
- add icarus to hotplug
- usbutils add rest of icarus
- simple serial-USB python test script
- icarus->USB v0.1 incomplete - missing initialise()
- README spelling
- Update documentation for icarus switch to USB
- Add USB rules for supported USB devices
- switch icarus configuration to usb
- usbutils new command for icarus
- usb add a numeric sub-indentity for each name
- usbutils - make FTDI handling automatic
- fix duplicate name
- usbutils set Black Arrow Lancelot's as BAL and match the lot->llt name
- usbutils identify Icarus devices
- libusb_control_transfer 16 bit words are endian specific.
- usb_applog separate amt display
- Show pool difficulty more verbosely if it changes via stratum.
- Attribute whatever stats we can get on untracked stratum shares based on
current pool diff.
- Provide a --lowmem option which does not cache shares on failed submission to
prevent low memory hardware (eg Avalon) from crashing.
- Update util.c

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
NR3000
Member
**
Offline Offline

Activity: 86
Merit: 10



View Profile
May 31, 2013, 06:58:06 AM
 #10409

Thank you for the quick answer Grin

glowkeeper
Member
**
Offline Offline

Activity: 84
Merit: 10



View Profile WWW
May 31, 2013, 09:09:51 AM
 #10410

Nice! Thanks for your efforts....

New version 3.2.0 - 31st May 2013

Major upgrades to virtually all FPGA and ASIC drivers. Nothing much here for GPU miners.This version changes all the drivers to the direct USB mode so linux users will not need any drivers and all devices should now hotplug,that includes Avalon. Windows users will need to remove the ftdi driver for the ancient serial USB mode and use a tool like Zadig to associate their USB devices with the WinUSB driver (which is an official Microsoft driver). The code for all devices is built into the binaries I have uploaded except for Avalon on windows (but why on earth would anyone want to do that?).

Huge props and thanks to Sitarow for virtually unrestricted remote access to his avalon and Xiangfu to sponsor the Avalon development.
While the code is now heavily tested, being such a massive update, there may be new bugs.


Human readable changelog.

- Clamp initial GPU fanspeed to range provided by user.
- Update screen completely when going into a menu entry.
- Shut down/restart more reliably.
- Shows pool difficulty change in logs if it changes via stratum.
- Less locking around some of the stratum code may prevent some rare hangs or delays in processing stratum data.
- Decrease the amount of ram and threads used by stratum share submission to minimise the risk of running out of resources to submit shares.
- Fixed small memory leaks.
- New option: --lowmem            Minimise caching of shares for low memory applications
- Increase timeouts for windows comms.
- New windows DLLs for updated libcurl
- Major rewrite of icarus driver to move to direct USB.
- Rename of all devices to tell them apart.
- Massive changes under the hood supporting all the changes, along with bugfixes and improvements.
- Major rewrite of all the Avalon driver:
. Uses direct USB to the chip removing need for ftdi driver and its heavy polling which decreases overhead.
. Uses separate work submission and result parsing threads from the main hashing thread, to guarantee adequate work is submitted to keep the device busy, and ensure no results are lost due to receive delays or buffer overflows.
. Parses results using a buffered + scanned mechanism to avoid getting out of sync and needing to reset the device to recover. It can also discard garbage results without them affecting further results.
. More reliably detects hardware errors: The count will now appear higher due to "NMW - no matching work" being counted as a hardware error which it truly is.
. Idles the device if there is no work due to pool or network outage to avoid wasting unnecessary power.
. Disables the device gracefully and can hotplug it again if it is pulled out/plugged in via USB.
. Monitors temperature more reliably to adjust fanspeed by checking values returned more rigorously.
. Decreases the amount of memory in use by the device.
. Avoids run-over to start repeating results through much better timing of submitting new work.
. More reliably detect conditions that require an FPGA reset thus decreasing the number of resets but is more likely to recover when a reset occurs.
. Now displays ambient/operating temperature and fan %/RPM in the text user interface when run on a PC/console.
. Can start an avalon mining without any options being passed to it.
. Documentation of avalon options in ASIC-README.
. Numerous other low level bugfixes and improvements.


Full changelog

- Add FAQ about windows USB keyboards and hotplug interactions.
- Fix mingw build warnings in icarus driver.
- Make usb_ftdi_cts use the _usb_transfer_read function.
- Update ASIC-README with avalon info regarding default behaviour.
- Break out of idling loop in avalon_idle if the buffer is full.
- Provide some defaults for avalon if none are specified and do not try to claim
the device if it fails to reset with them and no options are specified.
- usbutils automatically track IO errors
- usbutils allow a short wait for resources to be released
- correct semaphore timeout comment
- Set the fanspeed to the nominal chosen for GPUs.
- Inverted sem_init logic.
- Document avalon options in ASIC-README
- Do avalon driver detection last as it will try to claim any similar device and
they are not reliably detected.
- Clamp initial GPU fanspeed to within user specified range.
- Use a counting semaphore to signal the usb resource thread that it has work to
do.
- Avalon fan factor is already multiplied into the info values.
- Get rid of zeros which corrupt display.
- Logic fail on minimum fanspeed reporting.
- Provide a workaround for fan0 sensor not being used on avalon and pad fan RPM
with zeros.
- Add ambient temp and lowest fan RPM information to avalon statline.
- Display max temperature and fanspeed data for avalon.
- Set devices to disabled after they exit the hashing loops to prevent the
watchdog thread from trying to act on them.
- Add avalon driver to hotplug.
- Shut down the avalon mining thread if the device disappears.
- Check for no usb device in usb_ftdi_cts
- Check for valid usbdev in _usb_read in case the device has been unplugged.
- Scanhash functions perform driver shutdown so don't repeat it.
- Change the opencl shutdown sequence.
- Send the shutdown message to threads and do the thread shutdown functions
before more forcefully sending pthread_cancel to threads.
- Use the cgpu_info shutdown to determine when to stop the avalon read and write
threads.
- Use semaphores to signal a reset to pause the read thread while the write
thread does the actual reset, making all writes come from the same place.
- Remove now unneeded fgpautils.h include from avalon.
- usb_transfer_read should also not play with the endianness.
- Use the USB wrappers for avalon, telling usbutils that we want the raw data.
- Use separate ep for avalon tasks vs avalon reset and do not loop in write
indefinitely.
- Remove unneeded function and checks in avalon write code.
- CMR handle baud options
- work_restart is reset within the queued hash work loop.
- Fix avalon shutdown sequence.
- Execute driver shutdown sequence during kill_work.
- Use nusleep in avalon_get_results in place of nmsleep.
- Provide an nusleep equivalent function to nmsleep.
- usb/ica add more (incomplete) CMR settings
- Give a buffer of perceived results in avalon during idle periods to allow for
results once it becomes active again.
- libusb_control_transfer are meant to be endian specific, but host endianness
so no conversion is needed.
- Reuse old MTX Handle
- usbutils check all memory allocation
- usb separate thread for resource locking and modified windows locking code
- Icarus report data direction with comms errors
- Set the read and write threads for avalon to not cancel within libusb
functions and wait for the threads to pthread_join on shutdown.
- Offset needs to be incremented after avalon reads.
- Make the avalon_read function parse the ftdi responses appopriately.
- Use the avalon read timeout to completion if no data has been read.
- wait_avalon_ready should only be used before writes.
- Ask for the correct amount to read in avalon get results.
- Spawn the avalon read thread first with info->reset set to discard any data
till work is adequately queued.
- Use direct usb read commands to avoid ftdi data being automatically cut off in
avalon reads.
- Do a simple usb_read_once for the avalon result from a reset command.
- Make sure avalon is ready to receive more usb commands before sending them.
- Implement avalon_ready and avalon_wait_ready functions for when usb is ready
to receive commands.
- avalon_read should not loop but just return whatever it has succeeded in
reading.
- Set avalon_info to device data void struct.
- Specify avalon in avalon_reset.
- First pass rewriting serialdev into direct usb dev for avalon driver.
- Define a cts equivalent for direct usb and use it for avalon driver full.
- Compile usbutils into avalon driver.
- Check results come in at least at 2/3 the rate they should be on avalon and if
not, reset it.
- Give a warning but don't reset if the avalon buffer is full early.
- Discard any reads obtained from the avalon get results thread during a reset.
- Differentiate initial reset in avalon from subsequent ones.
- Perform a mandatory reset if the avalon buffer signals it's full before it has
queued its normal quota of work.
- Wait till buffer is cleared after sending idle tasks to avalon before
returning from avalon_idle.
- Lock qlock mutex during reset from read thread in avalon to prevent more work
being sent till the reset is over.
- Reset avalon if we continue to be unable to send all the work items.
- Add avalon reset response to debugging output.
- Do a wait_avalon_ready before sending a reset code.
- Iterate over spare bytes in the avalon result returned from a reset request
trying to find the beginning of the reset.
- Idle avalon after reset.
- Check for nothing but consecutive bad results on avalon and reset the FPGA if
it happens.
- Make submit_nonce return a bool for whether it's a valid share or not.
- Unset the work restart flag sooner in avalon_flush_work to avoid re-entering
the flush work function and just reset the queued counter instead of rotating
the array to avoid runs of no valid work.
- Implement an avalon_flush_work function for work restarts.
- Shut down avalon read and write threads and idle the miners on closing it.
- Tighter control over work submissions in avalon allows us to use a smaller
array.
- Rotate avalon array to reset the queued count before releasing the lock so
work will always be available on next pass.
- Move avalon read thread start till after conditional wait, store idle status
in avalon_info and use it to determine whether an error is appropriate or not.
- Wait till the avalon_send_tasks thread has filled the avalon with idle work
before starting the avalon_get_results thread.
- Use AVA_GETS_OK macro in avalon_read.
- Do all writes on avalon with a select() timeout to prevent indefinite blocking
and loop if less than desired is written.
- Check explicitly that ava_buffer_full equals the macro.
- Send initial reset as an avalon task to remove avalon_write function.
- avalon_clear_readbuf is no longer required.
- Check for 2 stray bytes on avalon reset.
- Create a separate thread for handling all work and idle submission to the
avalon which messages the scanhash function it has completed to update
statistics.
- usbutils ensure it compiles without stats
- usbutils include transfer mode in usbstats
- Give the avalon get results thread name the device number as well.
- Make sure we're not adjusting temps on every successful work retrieval on
avalon.
- Count missing work items from behind a successful work read in avalon as well.
- Change message for work not found in avalon parser.
- usbutils handle bulk_transfer partial writes
- Simplify debugging and only discard from avalon read buffer if at least one
full result has been discarded.
- Only display discarded bytes in avalon if they're not used as nonces.
- Only loop once through avalon_parse_results, but do so after timeouts as well.
- Only debug and move ram if spare bytes exist in avalon buffer.
- Remove off by one error.
- Inverted logic.
- Add more debugging to avalon reads.
- Convert unsigned size_ts to ints for parsing avalon messages.
- Cope with not finding nonces in avalon parsing gracefully by not overflowing
buffers.
- Adjust avalon temp values on one lot of valid nonces from the parser.
- Created a threaded message parser for avalon reads.
- Avalon_wait_write is not effective during resets so do it after going idle.
- Send only a single byte reset.
- Repeat going idle after avalon reset, and wait for write ready before sending
each reset request instead of some arbitrary sleep time.
- Timeouts on avalon_read and avalon_write should be 100ms.
- Don't close avalon after detecting it until we're cleaning up, instead using
reset for comms failures.
- Check for avalon_wait_write before sending reset command.
- Sleep in avalon_write_ready.
- Make avalon_wait_write a bool function and check its return value.
- Show how many idle tasks are sent to avalon if it aborts on buffer full.
- Reset avalon->device_fd after it is closed.
- Create an avalon_wait_write function that is used before sending avalon idle
command.
- Avoid repeating avalon_idle in do_avalon_close and extra sleep.
- Pass fd to avalon_idle.
- Do avalon_reset after info structure is set up.
- Rework avalon reset sequence to include idling of chips and waiting for them
to go idle followed by 2nd reset and then checking result.
- Do a non-blocking read of anything in the avalon buffer after opening the
device.
- Assign the avalon info data to the device_data in cgpu_info.
- thread shutdown is different on windows
- usbutils make all windows timeouts 999ms
- usb add another Cairnsmore1 USB chip
- icarus do the full detect test twice if required
- CMR usb config guess
- usb add transfer_read and commented out in icarus
- usbutils allow unrounded control transfers
- icarus ICA initialisation
- icarus report err on read failure
- icarus correct device_id and use device_data for icarus_info
- miner.h remove unused device_file and add device_data
- miner.h icarus no long uses fd
- icarus AMU config transfers
- Create a logwin_update function which mandatorily updates the logwin and use
it when input is expected to prevent display refresh delays.
- usbutils force an unknown IDENT for zero
- icarus set default options/timing based on device
- Must unlock curses as well in logwin_update.
- Create a logwin_update function which mandatorily updates the logwin and use
it when input is expected to prevent display refresh delays.
- icarus report usb write error information
- Add name to icarus copyright notice.
- Check for *pth dereference on pthread_join
- usbutils name latency correctly
- Check for restart before buffering more reads in Icarus.
- Icarus should timeout if it's greater than the timeout duration even if it's
receiving data.
- We should check for amount buffered in icarus get_nonce against amount already
received.
- Make mining threads report out during work submission.
- submit_work_async is no longer used directly by driver code.
- Fix first read timeout on icarus get nonce.
- Retry icarus_initialise if the first read attempt fails.
- Properly pthread_join miner threads on shutdown.
- Properly pthread_join miner threads on shutdown.
- Use a persistent single separate thread for stratum share submission that uses
workqueues since all stratum sends are serialised.
- All stratum calls to recv_line are serialised from the one place so there is
no need to use locking around recv().
- Only allow the mining thread to be cancelled when it is not within driver
code, making for cleaner shutdown and allowing us to pthread_join the miner
threads on kill_work().
- Only allow the mining thread to be cancelled when it is not within driver
code, making for cleaner shutdown and allowing us to pthread_join the miner
threads on kill_work().
- Set pool->probed to true after an attempt to resolve the url via stratum code.
- icarus test nodev everywhere
- usbutils/icarus separate FTDI transfer values and more debug
- add icarus to hotplug
- usbutils add rest of icarus
- simple serial-USB python test script
- icarus->USB v0.1 incomplete - missing initialise()
- README spelling
- Update documentation for icarus switch to USB
- Add USB rules for supported USB devices
- switch icarus configuration to usb
- usbutils new command for icarus
- usb add a numeric sub-indentity for each name
- usbutils - make FTDI handling automatic
- fix duplicate name
- usbutils set Black Arrow Lancelot's as BAL and match the lot->llt name
- usbutils identify Icarus devices
- libusb_control_transfer 16 bit words are endian specific.
- usb_applog separate amt display
- Show pool difficulty more verbosely if it changes via stratum.
- Attribute whatever stats we can get on untracked stratum shares based on
current pool diff.
- Provide a --lowmem option which does not cache shares on failed submission to
prevent low memory hardware (eg Avalon) from crashing.
- Update util.c

tnkflx
Sr. Member
****
Offline Offline

Activity: 349
Merit: 250


View Profile
May 31, 2013, 10:04:04 AM
 #10411

Nice! Thanks for your efforts....

<cut>

You are allowed to not quote everything again here...

| Operating electrum.be & us.electrum.be |
bitpop
Legendary
*
Offline Offline

Activity: 2912
Merit: 1060



View Profile WWW
May 31, 2013, 12:16:20 PM
 #10412

We are able to remove -S now right?
Mine isn't detecting them. I have 20 BLT.

http://screencast.com/t/OGXeioWqyw

It's actually disconnecting and reconnecting all the USB devices. Some are failing with port reset failed and aren't coming back up.

http://screencast.com/t/Qhzs9AgQ
http://screencast.com/t/4JzULtqtJfOg


-ck (OP)
Legendary
*
Offline Offline

Activity: 4088
Merit: 1631


Ruu \o/


View Profile WWW
May 31, 2013, 12:19:25 PM
 #10413

We are able to remove -S now right?
Mine isn't detecting them. I have 20 BLT.

http://screencast.com/t/OGXeioWqyw

It's actually disconnecting and reconnecting all the USB devices. Some are failing with port reset failed and aren't coming back up.

http://screencast.com/t/Qhzs9AgQ
http://screencast.com/t/4JzULtqtJfOg


Yes there is no -S any more. I assume you're not plugging them into usb3 ports? They have problems for reasons we haven't worked out yet.

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
bitpop
Legendary
*
Offline Offline

Activity: 2912
Merit: 1060



View Profile WWW
May 31, 2013, 12:21:11 PM
 #10414

Yes I already switched to usb 2 because 3 failed at way lower devices.
Do I need to install winusb? What is that? Right now I'm using the latest FTDI driver..

-ck (OP)
Legendary
*
Offline Offline

Activity: 4088
Merit: 1631


Ruu \o/


View Profile WWW
May 31, 2013, 12:23:43 PM
 #10415

Yes I already switched to usb 2 because 3 failed at way lower devices.
Do I need to install winusb? What is that? Right now I'm using the latest FTDI driver..
Yes, as I said in my announce post. The FTDI driver is completely unused by cgminer now. Use zadig (you can get it from my cgminer directory) to install winusb driver and bind it to those devices.

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
bitpop
Legendary
*
Offline Offline

Activity: 2912
Merit: 1060



View Profile WWW
May 31, 2013, 12:28:35 PM
 #10416

Wow thats a big change. Thanks. Windows users may find this way harder because they are used to real plug and play.

Windows users, do this. Choose one device and replace it with WinUSB, it will replace all similar devices.

http://screencast.com/t/Gep6djxM

Quote
The best solution for this is to use a tool called Zadig to set the driver:
 http://sourceforge.net/projects/libwdi/files/zadig/

This allows you set the driver for the device to be WinUSB which is usually
required to make it work if you're having problems

With Zadig, you may need to run it as administrator and if your device is
plugged in but you cannot see it, use the Menu: Options -> List All Devices

You must also make sure you are using the latest libusb-1.0.dll supplied
with cgminer (not the libusbx version)

Bold: What does this mean? There are 3 options, WinUSB, libusb and libusbK. First it says use WinUSB but the bold says to use libusb. Which one is right?

-ck (OP)
Legendary
*
Offline Offline

Activity: 4088
Merit: 1631


Ruu \o/


View Profile WWW
May 31, 2013, 12:33:22 PM
 #10417

Wow thats a big change. Thanks. Windows users may find this way harder because they are used to real plug and play.

Windows users, do this. Choose one device and replace it with WinUSB, it will replace all similar devices.

http://screencast.com/t/Gep6djxM

Quote
The best solution for this is to use a tool called Zadig to set the driver:
 http://sourceforge.net/projects/libwdi/files/zadig/

This allows you set the driver for the device to be WinUSB which is usually
required to make it work if you're having problems

With Zadig, you may need to run it as administrator and if your device is
plugged in but you cannot see it, use the Menu: Options -> List All Devices

You must also make sure you are using the latest libusb-1.0.dll supplied
with cgminer (not the libusbx version)

Bold: What does this mean? There are 3 options, WinUSB, libusb and libusbK. First it says use WinUSB but the bold says to use libusb. Which one is right?

Use WinUSB. The libusb-1.0.dll is already in the cgminer zip folder and it's telling you not to install a different libusb dll.

FTDI is not plug and play for most people either by the way.

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
bitpop
Legendary
*
Offline Offline

Activity: 2912
Merit: 1060



View Profile WWW
May 31, 2013, 12:38:43 PM
 #10418

I don't know what that means. We aren't even using libusb. Is there a reason someone would use libusb vs WinUSB? And that would be the reason to tell Zadig to use your dll and not theirs?

-ck (OP)
Legendary
*
Offline Offline

Activity: 4088
Merit: 1631


Ruu \o/


View Profile WWW
May 31, 2013, 12:39:37 PM
 #10419

I don't know what that means. We aren't even using libusb. Is there a reason someone would use libusb vs WinUSB? And that would be the reason to tell Zadig to use your dll and not theirs?
Don't even think about libusb. Pretend we never mentioned it, it's all something cgminer does internally and you need not worry about it.

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
bitpop
Legendary
*
Offline Offline

Activity: 2912
Merit: 1060



View Profile WWW
May 31, 2013, 12:48:54 PM
 #10420

Lol ok, please cater us OCD people. I'll try to ignore it. Ok drivers installed. Everything is perfect but one thing, it hashes with 20 devices but only shows 2.

Ok restarting cgminer finally shows them all. Might be a cache thing or a bug?


Pages: « 1 ... 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 [521] 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 ... 843 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!