Drivers Newimage Cameras



8.8.1. Introduction¶

Imaging library is a collection of sample algorithms and image sensor drivers packaged with PSDKRA to enable camera based applications.It includes sensor driver framework which is a modular and extensible framework to

  • Add new sensor drivers easily.
  • Provide a consistent interface to applications and algorithms.

Welcome to New Image Anti-Aging & Cosmetic Laser Center. At New Image, we aspire above and beyond client anticipation. That flawless skin of your dreams can now be a virtual reality thanks to our state-of-the-art equipment. No longer must you worry about applying pounds of cover-up or endless days of shaving.

The goal of this framework is to add new sensors with zero code modifications to the applications.Any application using an image sensor is expected to be agnostic to the underlying HW. The application is expected to communicate with thedriver framework using RPC commands. The details of supported sensors and the sensor capabilities are queried at runtime.

Similarly algorithms communicating with image sensor (e.g. AutoExposure) are required to send RPC commands at runtimewithout knowing which sensor is operational.Driver framework is responsible for mapping the camera ID to the associated physical image sensor.

  • Because device drivers can parse the CCS Static Data format, vendors and system integrators can add support for new image sensors and update MSRs for existing ones without making driver changes. Now MIPI Alliance is introducing CCS Tools, a set of tools and libraries that will help component vendors and system integrators take advantage of CCS.
  • Step 1: Check if the driver update is needed. Step 2: If needed, update the camera driver. Step 1: Check if the driver update is needed. Open the current version (e.g., version 4 or 5) of the MetaXpress software on the ImageXpress Micro computer and select an image recently acquired with the ImageXpress Micro system using one of the following methods.

This mechanism allows algorithm and application code to remain unchanged as new sensors are added to the framework.

8.8.2. Documentation References¶

Capture high-resolution planetary, lunar and solar images with almost any telescope with the NexImage 5 Solar System Imager. Combined with the included software package, NexImage 5 brings out tremendous detail and produces images rivaling those taken with astronomical cameras costing hundreds more. A Webcam Driver is a program which allows communication between your webcam (in-built or external camera on your computer) and your PC. Webcam drivers should be updated in order to keep the devices running well. If you have updated your operating system or other related hardware or software, then you may need to also update your webcam drivers.

SDK ComponentDocumentationDescriptionSection
vision appsLINKSingle Camera VPAC DemoApplication / Demos > Basic Demos > Single Camera VPAC Application
vision appsLINKMulti Camera VPAC DemoApplication / Demos > Basic Demos > Multi Camera VPAC Application
imagingLINKImaging drivers and algosImaging / Modules > Imaging Sensor Driver Modules

8.8.3. Source Code References¶

SDK ComponentFile / FolderDescription
Imagingimaging/sensor_drvSensor driver source code
vision appsvision_apps/utils/issCommon ISS Utilities to be used by all camera based applications
vision appsvision_apps/apps/basic_demos/app_single_camDemo Application using a single camera instance
vision appsvision_apps/apps/basic_demos/app_multi_camDemo Application using a multiple (upto 8) camera instances

8.8.4. Key Data Structures¶

8.8.4.1. IssSensor_CreateParams¶

Create time parameters like width, height, dataformat, I2C address for the image sensor.For more details, please refer to imaging/sensor_drv/include/iss_sensor.h

8.8.4.2. IssSensorFxns¶

Set of callbacks of all routines to be implemented by the sensor driver.For more details, please refer to imaging/sensor_drv/include/iss_sensor.h

8.8.4.3. IssSensorIntfParams¶

Interface parameters e.g. number of CSI-2 date lanes, position, polarity etc.For more details, please refer to imaging/sensor_drv/include/iss_sensor.h

8.8.4.4. I2cParams¶

Struct containing register address, value and delay (milli seconds).For more details, please refer to imaging/sensor_drv/include/iss_sensor.h

8.8.4.5. IssSensorConfig¶

Struct containing pointers to sensor and SerDes configuration structures.

Note

  • Last entry in Serializer and Deserializer config scripts must be {0xFFFF, 0x00, 0x0}

8.8.4.6. IssSensors_Handle¶

Drivers

Handle to the image sensor driver including all the information about the sensorFor more details, please refer to imaging/sensor_drv/include/iss_sensor.h

8.8.5. Application - Driver Interface¶

8.8.5.1. RPC Commands¶

Application communicates with the sensor driver using RPC (Remote Procedure Call) commandsThe commands defined currently are listed below.

CommandDescription
IM_SENSOR_CMD_ENUMERATECalled by the application to get a list of names of all the sensors supported.
IM_SENSOR_CMD_QUERYCalled by the application to query the capabilities of an image sensor by name.
IM_SENSOR_CMD_PWRONCalled by the application to power ON the sensor. Sensor f/w invokes powerOn callback of the selected sensor.Exact implementation of this function is left to the specific sensor driver.
IM_SENSOR_CMD_PWROFFCalled by the application to power OFF the sensor. Sensor f/w invokes powerOff callback of the selected sensor.Exact implementation of this function is left to the specific sensor driver.
IM_SENSOR_CMD_STREAM_ONCalled by the application to start streaming. Sensor f/w invokes streamOn callback of the selected sensor.Exact implementation of this function is left to the specific sensor driver.
IM_SENSOR_CMD_STREAM_OFFCalled by the application to stop streaming. Sensor f/w invokes streamOff callback of the selected sensor.Exact implementation of this function is left to the specific sensor driver.
IM_SENSOR_CMD_CTLCalled by the application to send runtime control commands.Next section describes the runtime controls currently supported.

8.8.5.2. Control Commands¶

IM_SENSOR_CMD_STREAM_CTL command can have an argument for control command.Control commands defined currently are listed below.

CommandDescription
IMAGE_SENSOR_CTRLCMD_GETEXPPRGTypically called by the AutoExposure algorithm to know sensor’s exposure constraints, which can then be used forinitializing AutoExposure algorithm.
IMAGE_SENSOR_CTRLCMD_SETEXPGAINTypically called by the AutoExposure algorithm to set exposure time and analog/digital gain.Sensor f/w invokes setAeParams callback of the selected sensor.Exact implementation of this function is left to the specific sensor driver.
IMAGE_SENSOR_CTRLCMD_GETEXPGAINReserved for future use.
IMAGE_SENSOR_CTRLCMD_SETWBGAINReserved for future use.
IMAGE_SENSOR_CTRLCMD_GETWBGAINReserved for future use.
IMAGE_SENSOR_CTRLCMD_DEBUGReserved for future use.

8.8.6. Steps to create a new sensor driver¶

8.8.6.1. Create a folder¶

Create a new folder inside imaging/sensor_drv/src/ e.g. <newsensor123>

8.8.6.2. Create sensor driver file¶

Create a new source file implementing all the structures and callbacks mentioned in Key Data Structures.

8.8.6.2.1. createParams¶

ParameterUsage
namePick any unique string no longer than 32 characters
i2cInstIdSpecify I2C channel on which the sensor is connected. For Jacinto 7 EVM, default is 0x6
i2cAddrSensor

Array of sensor address aliases. Upto 8 instances supported. Must match alias values specified in UB960 config.

Note

If the sensor is connected directly i.e. without SerDes, provide sensor’s physical I2C address (7-bit) here

i2cAddrSerArray of serializer address aliases. Upto 8 instances supported. Must match alias values specified in UB960 config.
widthNumber of pixels per line in sensor output, not including H blanking.
heightNumber of lines per frame in sensor output, not including V blanking or metadata.
num_exposuresNumber of exposure channels per frame.
line_interleavedReserved for future use.
pixel_containerwidth of container element.
msbMSB of valid data. Must be set to bpp -1. E.g. MSB = 11 for 12b RAW.
featuresBinary mask specifying sensor capabilities.
fpsFrame rate per second. Not used currently.
numDataLanesNumber of CSI-2 data lanes. Must match sensor & deserializer settings.
dataLanesMapMapping of sensor CSI2 lanes to CSI2 Rx. Must match sensor & deserializer settings.
dataLanesPolarityReserved for future use.
csi_ddr_clockReserved for future use.
num_channelsNumber of camera instances supported. Valid values : 1-8.
dccIdUnique numerical identfier. Used for ISP tuning.

8.8.6.2.2. IssSensorFxns¶

API NameDescription
probeDetects if sensor is accessible, usually by reading sensor chip ID.
configConfigures serializer and sensor.Argument sensor_features_requested maybe used to load different configuration based on application request.For e.g 30fps mode vs 60fps mode.
streamOnEnables streaming on sensor and deserializer.
streamOffDisables streaming on sensor and deserializer.
powerOnHW dependent. Pull up/down any GPIOs, if needed.Configures the deserializer so that sensor is accessible over FPD Link backchannel.
powerOffHW dependent. Pull up/down any GPIOs, if needed.
getExpParamsReserved for future use. Must be implemented as a dummy function returning 0.
setAeParamsTranslates AE computed exposure time and analog gain to sensor specific settings.Updates sensor registers with new values.
getDccParamsReserved for future use. Must be implemented as a dummy function returning 0.
initAewbConfigReserved for future use. Must be implemented as a dummy function returning void.
getIspConfigReserved for future use. Must be implemented as a dummy function returning void.
readWriteRegReserved for future use. Must be implemented as a dummy function returning 0.
getExpPrgCalled by AE algorithm to get the sensor exposure constraints.
deinitReserved for future use. Must be implemented as a dummy function returning void.
Drivers Newimage Cameras

Drivers New Image Cameras Wireless

Note

For more details, please refer to an existing sensor driver

8.8.6.3. Update makefile¶

Drivers New Image Cameras Best Buy

Modify sensor_drv/src/concerto.mak to add the newly added sensor file. For e.g.

CSOURCES += newsensor123/iss_sensor_newsensor123.c

8.8.6.4. Register the new sensor with framework¶

Modify the function IssSensor_Init in the file sensor_drv/src/iss_sensors.c to call init function of the new sensor. For e.g.

8.8.6.5. Build and Run¶

Drivers New Image Cameras App

  • Do a clean build of imaging, followed by sdk build.
  • Upon execution, new sensor should be populated in the enumerated sensor list.
  • Select the sensor and run. If the sensor and SerDes settings are correct, a preview should be displayed on the connected display.
  • At this stage, sensor driver is functional. However, image quality may not be perfect.
  • Please refer to DCC Tuning Tool documentation for the steps to achieve good image quality using TI ISP.

Drivers New Image Cameras Software

  • August 22, 2019 2.9.8

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.9.8

    Released

    August 22, 2019

    Type

    ZIP

    Filesize

    3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 controller
    • Graphics card with 24 or 32 bit
    • Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Added several internal interfaces for particular sensors (J003).
  • January 25, 2019 2.9.6

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.9.6

    Released

    January 25, 2019

    Type

    ZIP

    Filesize

    3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 controller
    • Graphics card with 24 or 32 bit
    • Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Added missing Tonemapping Auto property.
  • May 4, 2018 2.9.5

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.9.5

    Released

    May 4, 2018

    Type

    ZIP

    Filesize

    3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 controller
    • Graphics card with 24 or 32 bit
    • Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Enabled tonemapping for 8bit video formats, e.g. Y800, RGB24 and RGB32.
  • November 21, 2017 2.9.4

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.9.4

    Released

    November 21, 2017

    Type

    ZIP

    Filesize

    3.2MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Repaired not working J003 mono sensor pattern fix on particular video formats.
    2. This driver version is the last that works in Windows XP.
  • January 9, 2017 2.9.3

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.9.3

    Released

    January 9, 2017

    Type

    ZIP

    Filesize

    3.2MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Added a pattern fix for J003 mono sensors.
  • January 9, 2017 2.9.1

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.9.1

    Released

    January 9, 2017

    Type

    ZIP

    Filesize

    3.2MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Fixed the driver signature Code 52 error on new Windows 10 v1607 systems.
  • January 15, 2016 2.8.9

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.8.9

    Released

    January 15, 2016

    Type

    ZIP

    Filesize

    2.3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Changed certificates so that the driver can also be installed in Vista.
  • November 9, 2015 2.8.7

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.8.7

    Released

    November 9, 2015

    Type

    ZIP

    Filesize

    2.3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Fixed an error which can appear when using sharpness on older CPUs.
  • October 20, 2015 2.8.5

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.8.5

    Released

    October 20, 2015

    Type

    ZIP

    Filesize

    2.3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Fixed a bug which can appear on LivePause call.
  • July 15, 2015 2.8.0

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.8.0

    Released

    July 15, 2015

    Type

    ZIP

    Filesize

    2.4MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Support of DFK ECU010-L34 with serial number property.
    2. Added tone mapping.
  • February 17, 2015 2.7.33

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.7.33

    Released

    February 17, 2015

    Type

    ZIP

    Filesize

    2.4MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. The Auto Focus Onepush Running flag now resets correctly after the auto focus has finished.
  • February 5, 2015 2.7.32

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.7.32

    Released

    February 5, 2015

    Type

    ZIP

    Filesize

    2.4MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Video format MJPG (2592x1944) of DFK AFU050-L34 camera can now be used.
  • January 14, 2015 2.7.31

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.7.31

    Released

    January 14, 2015

    Type

    ZIP

    Filesize

    2.3MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Support for IMX236 based cameras.
    2. Support for RGB64 color formats.
    3. Several performance improvements.
  • June 6, 2014 2.7.9.1152

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.7.9.1152

    Released

    June 6, 2014

    Type

    ZIP

    Filesize

    2.1MB

    Requirements

    • Intel Core i3 or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit), Windows 10 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Added new properties: Brightness, sharpness, de-noise, saturation, hue and contrast.
    2. Added new property: Highlight reduction.
    3. Added new property: White balance temperature controls.
    4. Pixelfix for Y16 cameras now works as expected.
    5. VideoControl_ExternalTrigger (DirectShow property) can now be set as expected.
  • January 1, 2014 2.6.5.1014

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.6.5.1014

    Released

    January 1, 2014

    Type

    ZIP

    Filesize

    1.9MB

    Requirements

    • Intel Pentium IV or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. Fixed missing auto-gain for DFK AFU130.
    2. Fixed focus when start value is out of auto_focus_range.
    3. Fixed problem with AUTOFOCUS_ROI_RIGHT: minimum possibly wrong.
    4. Fixed auto focus ROI not working for 21*UC cameras.
    5. Fixed crash on load/connect with certain cameras 22/72xUC.
    6. Fixed previous exposure settings not being loaded on reconnect.
    7. Complete reworking of internal property system.
    8. Fixed Windows XP driver load crash.
    9. Fixed drop counter to be accessible from DirectShow.
    10. Fixed Windows 8 problem with certain video formats needing converters with standard DirectShow filters (e.g. Y800, capturing to an Y800 avi file was not possible).
    11. Fixed a problem with Windows 8 usbxhci driver not allowing transfers larger then 4 MB.
  • February 26, 2013 2.4.14.851

    Device driver for all The Imaging Source USB cameras except the 33U, 37U, 38U and AFU auto focus series.

    Version

    2.4.14.851

    Released

    February 26, 2013

    Type

    ZIP

    Filesize

    1.9MB

    Requirements

    • Intel Pentium IV or similar, 2 GB RAM
    • USB 3.0 or USB 2.0 controller (depends upon camera model)
    • Graphics card with 24 or 32 bit
    • Windows XP, Windows Vista, Windows 7 (32 & 64 bit), Windows 8 (32 & 64 bit)
    • DirectX 9.0c or higher

    Changelog

    1. WHQL certification.