------------------------------------------------------------------------------- - ChangeLog O-3000 Host Driver ------------------------------------------------------------------------------- Version 2.1.0 SP 2020-05-19 * Added firmware update function. Version 2.0.3 2019-09-25 SP * Added "paranoia check" for wraparound_chunk_size check in handle_transfer(). * Moved macro definition of MAX_IMAGE_SIZE from o3000.c to o3000_private.h. 2019-10-22 PR * Library version defined in CMakeLists.txt and passed to preprocessor. * MinGW64 releasing target added (see "make release_minGW64") Version 2.0.2 2018-04-11 PR * Function handle_transfer() rewritten: The image frame synchronization was a bit hacky. Image frames were passed only to the overlaying application after the next image frame has been received. But when receiving a single snapshot, there won't follow an image. This causes a delay of one image until the application receives it. Now the function passes images to the application after a image is received completely without checking the preamble of the following image. * Bug race condition at o3000_init() function: Accessing the session table for getting next free session and allocation session structure must be atomic. * New function o3000_get_num_cam() added: This function returns the number of connected O-3000 cameras to the system. * New loglevel O3000_LOG_VERBOSE added: This loglevel will set the libusb to debugging mode and is very useful for debugging purposes. Version 2.0.1 2015-08-11 PR * Bugfix in function handle_transfer(): A negative byte offset was calculated when the resolution has changed during wrap-around. A SEGFAULT occured. * Fields added to image header and image header version update to 4: - data rate in bytes/seconds - frames per seconds - field-of-view added used by lense distortion algorithm * Short USB bulk transfers are supported now by the driver. Therefore the resolution doesn't have to be a multiple of 512 bytes anymore and binning is done correctly. There are following restrictions about image resolution settings: - Window size must start with an even pixel coordinate (see examples below) - Minimum image resolution is 640x480. - Binning is allowed at full-screen only (1280x960) E. g. valid window: X = 110 to 1111, Y = 32 to 917 E. g. invalid window: X = 111 to 1111, Y = 33 to 917 --> coordinate 111 and 33 are odd numbers 2016-03-01 * Calling convention added for Win32 and Win64. Version 2.0.0 2015-02-16 PR * Multi camera sessions capability. The host can scan the number of cameras and establish a connection to each of them. Sending a XML message to the camera uses the synchronous API with OS dependet timeout handling. Version 1.0.0 2015-02-16 PB * Inititial version