×

INDI Library v2.0.7 is Released (01 Apr 2024)

Bi-monthly release with minor bug fixes and improvements

Image transfer problem with Atik 11000 camera

  • Posts: 105
  • Thank you received: 23
Hi, while trying to upgrade my Atik camera driver from version 1.13 to 1.26, it appears that there is a problem with the transfer of the image data from my camera to my laptop. When I run the atik_ccd_test program with the environment variable LIBUSB_DEBUG=9, I get the following output when the program tries to download the image data after a short exposure:

getImage

-> AtikCameraImpl::getImage(..., 10702697)
libusb: debug [libusb_alloc_transfer] transfer 0x13b7128
libusb: debug [libusb_submit_transfer] transfer 0x13b7128
libusb: debug [add_to_flying_list] arm timerfd for timeout in 30000ms (first in line)
libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 16
libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
libusb: debug [handle_events] poll() returned 1
libusb: debug [reap_for_handle] urb type=3 status=0 transferred=16
libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
libusb: debug [disarm_timerfd]
libusb: debug [usbi_handle_transfer_completion] transfer 0x13b7128 has callback 0x7fad7f3db520
libusb: debug [sync_transfer_cb] actual_length=16
libusb: debug [libusb_free_transfer] transfer 0x13b7128
libusb: debug [libusb_alloc_transfer] transfer 0x13a0768
libusb: debug [libusb_submit_transfer] transfer 0x13a0768
libusb: debug [add_to_flying_list] arm timerfd for timeout in 30000ms (first in line)
libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 21405395
libusb: error [submit_bulk_transfer] submiturb failed error -1 errno=12
libusb: debug [submit_bulk_transfer] first URB failed, easy peasy
libusb: debug [disarm_timerfd]
libusb: debug [libusb_free_transfer] transfer 0x13a0768
libusb_bulk_transfer -> LIBUSB_ERROR_IO
elapsed 0.024132 s
unlock()
<- AtikCameraImpl::getImage 0 [0x00 0x00 0x00 0x00...]

close

-> AtikCameraImpl::close()
libusb: debug [libusb_close]
libusb: debug [usbi_remove_pollfd] remove fd 9
<- AtikCameraImpl::close

Atik LF test failed: Failed to get image



With the test program included with version 1.13 I get:

getImage

-> AtikCameraImpl::getImage(..., 10702697)
libusb: debug [libusb_alloc_transfer] transfer 0xfee128
libusb: debug [libusb_submit_transfer] transfer 0xfee128
libusb: debug [add_to_flying_list] arm timerfd for timeout in 30000ms (first in line)
libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 16
libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
libusb: debug [handle_events] poll() returned 1
libusb: debug [reap_for_handle] urb type=3 status=0 transferred=16
libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
libusb: debug [disarm_timerfd]
libusb: debug [usbi_handle_transfer_completion] transfer 0xfee128 has callback 0x7f1b4bc0f520
libusb: debug [sync_transfer_cb] actual_length=16
libusb: debug [libusb_free_transfer] transfer 0xfee128
libusb: debug [libusb_alloc_transfer] transfer 0xfee128
libusb: debug [libusb_submit_transfer] transfer 0xfee128
libusb: debug [add_to_flying_list] arm timerfd for timeout in 30000ms (first in line)
libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 8388608
libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
libusb: debug [handle_events] poll() returned 1
libusb: debug [reap_for_handle] urb type=3 status=0 transferred=8388608
libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
libusb: debug [disarm_timerfd]
libusb: debug [usbi_handle_transfer_completion] transfer 0xfee128 has callback 0x7f1b4bc0f520
libusb: debug [sync_transfer_cb] actual_length=8388608
libusb: debug [libusb_free_transfer] transfer 0xfee128
libusb: debug [libusb_alloc_transfer] transfer 0xfee128
libusb: debug [libusb_submit_transfer] transfer 0xfee128
libusb: debug [add_to_flying_list] arm timerfd for timeout in 30000ms (first in line)
libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 8388608
libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
libusb: debug [handle_events] poll() returned 1
libusb: debug [reap_for_handle] urb type=3 status=0 transferred=8388608
libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
libusb: debug [disarm_timerfd]
libusb: debug [usbi_handle_transfer_completion] transfer 0xfee128 has callback 0x7f1b4bc0f520
libusb: debug [sync_transfer_cb] actual_length=8388608
libusb: debug [libusb_free_transfer] transfer 0xfee128
libusb: debug [libusb_alloc_transfer] transfer 0xfee128
libusb: debug [libusb_submit_transfer] transfer 0xfee128
libusb: debug [add_to_flying_list] arm timerfd for timeout in 30000ms (first in line)
libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 4628179
libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
libusb: debug [handle_events] poll() returned 1
libusb: debug [reap_for_handle] urb type=3 status=0 transferred=4628179
libusb: debug [handle_bulk_completion] handling completion status 0 of bulk urb 1/1
libusb: debug [handle_bulk_completion] last URB in transfer --> complete!
libusb: debug [disarm_timerfd]
libusb: debug [usbi_handle_transfer_completion] transfer 0xfee128 has callback 0x7f1b4bc0f520
libusb: debug [sync_transfer_cb] actual_length=4628179
libusb: debug [libusb_free_transfer] transfer 0xfee128
elapsed 22.5149 s
unlock()
<- AtikCameraImpl::getImage 1 [0x1d 0x01 0x7b 0x01...]

sample data...
285 379 355 371 363 387 385 371 376 379
393 380 388 345 409 407 378 454 379 386



The problem seems to be that in version 1.26 the driver is trying to download the image in one chunk while the 1.13 version uses several chunks. Is it possible to fix this problem?

Best regards,
Camiel
6 years 1 month ago #23627

Please Log in or Create an account to join the conversation.

  • Posts: 474
  • Thank you received: 168
You could try reducing the buffer size in driver configuration to for example 8MB . I had to do the same as otherwise my SX Loderstar X2 would time out taking guide frames during image transfer from Atik 383L+.
6 years 1 month ago #23629

Please Log in or Create an account to join the conversation.

  • Posts: 105
  • Thank you received: 23
Can you tell me where I can set this? In the Indi Control panel?
Last edit: 6 years 1 month ago by Camiel Severijns.
6 years 1 month ago #23631

Please Log in or Create an account to join the conversation.

  • Posts: 474
  • Thank you received: 168
Yes, in INDI panel, can't remember exactly which of the Atik driver tabs, but it's 24MB by default on x86.
6 years 1 month ago #23632

Please Log in or Create an account to join the conversation.

  • Posts: 105
  • Thank you received: 23
Okay, I found it under the Options tab. The driver works now.
6 years 1 month ago #23636

Please Log in or Create an account to join the conversation.

Time to create page: 0.684 seconds