Technical Application Notes
Click an item to read from the list below.

Technical Application Notes


 

 

Transitioning from the Grasshopper to the Grasshopper2

Transitioning from the Grasshopper to the Grasshopper2 GigE
Technical Application Note TAN2010004
Revised May 24, 2012

 

Subject

Technical Application Note (TAN2010004): Transitioning from the Grasshopper to the Grasshopper2 GigE

10373

Applicable Product(s)

  • Grasshopper GRAS-xxxx
  • Grasshopper2 GS2-GE (all models)

 

Application Note Description

The Grasshopper2 was developed as the next-generation version of the popular Grasshopper FireWire camera. Packaged in the same housing and dimensions as the Grasshopper, the Grasshopper2 provides full Gigabit Ethernet video streaming at 1000 Mbps. Camera firmware supports version 1.32 of the Instrumentation & Industrial Digital Camera (IIDC) specification, making it easy for existing Grasshopper applications to migrate to the Grasshopper2. Alternatively, GenICam-compliant applications can interface with the pre-loaded XML device description file.

The purpose of this Technical Application Note is to:

  1. Answer some frequently-asked questions about transitioning from the Grasshopper to the Grasshopper2
  2. Outline the primary similarities and differences between the two cameras; and
  3. Offer suggestions and pointers to end users for migrating their custom applications from the Grasshopper to the Grasshopper2.

For customers upgrading from a Grasshopper camera, Point Grey strongly encourages putting the Grasshopper2 through a full requalification process.

 

Frequently Asked Questions About Upgrading from the Grasshopper to the Grasshopper2

Is the Grasshopper being discontinued?

No, there are no plans to discontinue Grasshopper FireWire (GRAS-xx) models at this time. The new GigE Vision GS2-GE models are intended to give customers an alternative to the GRAS-xx to address issues such as cable length, as well as provide next-generation functionality such as opto-isolated general purpose I/O.

What other new hardware do I need to use the Grasshopper GS2-GE?

  • Cable—Category 5, 5e or 6 cables up to 100 meters in length can be used (a significant improvement in distance over the FireWire standard). A 5-meter Category 5e cable can be purchased directly from Point Grey (Part No. ACC-01-2100)
  • Interface Card—The camera will require a Gigabit Ethernet network interface card (NIC) with support for “jumbo packets” to run at full 1 Gbit/s transfer rates. We strongly recommend customers use PCI Express NICs with Intel Pro 1000 chipsets. This card can be purchased directly from Point Grey (Part No. ACC-01-1100). GigE network interface cards are also widely available at consumer electronics stores, or supported on board existing hardware.
  • Power Supply—Power must be provided through the HR25 8-pin GPIO interface. The required input voltage is 12-24 V DC. A compatible 12 V wall-mount power supply and wiring harness can be purchased directly from Point Grey (Part No. ACC-01-9006). 

A tripod adapter is included with the Grasshopper2 at no extra charge. 

Can I run the Grasshopper2 GS2-GE with my existing FlyCapture-based application?

FlyCapture version 2.1 or later is required to control the GS2-GE and acquire images. Earlier versions do not support the GigE Vision-specific functionality that the camera implements.

How easy will it be to migrate my FireWire-based application for Grasshopper to the Grasshopper2?

The Grasshopper is an IIDC-1394 (FireWire) camera, while the Grasshopper2 is a GigE Vision camera. However, the IIDC-based control and status registers in the camera firmware, which are accessed by Point Grey’s FlyCapture API, remain mostly the same between the Grasshopper and Grasshopper2. As a result, upgrading an application from the Grasshopper to the Grasshopper2 should be fairly straightforward. Among the factors to consider are differences between versions 1.31 and 1.32 of the IIDC-1394 standard, supported pixel formats and modes (Grasshopper2 supports Format_7 only), and network management requirements for GigE Vision cameras. These differences, and others, are outlined in the following sections of this application note. Additionally, the FlyCapture SDK includes a GigEGrabEx sample program to show developers the basics of getting started in grabbing images with a GigE camera.

Can I use a GenICam-compliant application with the Grasshopper2?

Yes. The camera is loaded with a GenICam-compliant XML device description file. For a list of supported features or to access the file, consult the Grasshopper2 Technical Reference.

How does performance of the GigE network compare to that of the FireWire bus?

Data throughput on the IIDC-1394b bus is 800 Mb/s, while on the GigE network it is 1000 Mb/s. In practice, there is little measurable difference in performance, as approximately 15% of the GigE bandwidth is reserved for communications control data. Performance differences may be more noticeable in terms of load on the host CPU. GigE Vision applications may consume more resources because the CPU must process both data packet handling and image processing tasks. The CPU in FireWire systems handles only image processing tasks because data packets are delivered directly to main memory using direct memory access (DMA). To reduce GigE packet load on the CPU, Point Grey provides an Image Filter Driver, which is installed and enabled by default as part of downloading and installing the FlyCapture SDK. This driver works by isolating GigE Vision Streaming Protocol (GVSP) packets, and is recommended for improved image streaming performance on Windows systems. (On Linux systems, GigE Vision cameras communicate directly with native Ubuntu drivers.)

How does bandwidth management differ between GigE and FireWire in multiple-camera configurations?

The FireWire bus provides dedicated bandwidth and guaranteed timing for data packets, which guarantees packet delivery, particularly on systems with multiple cameras on the bus. In contrast, the User Datagram Protocol (UDP) used by the GigE Vision standard provides no guaranteed transmission or fixed timing mechanism. Bandwidth must be managed by adjusting packet size and packet delay, based on desired resolution and frame rate. These parameters are configurable using Point Grey’s FlyCapture API or the FlyCap demo program. Additional information about GigE bandwidth management is available in the Grasshopper2 Technical Reference.

How do I enumerate the Grasshopper2 camera on the GigE network?

Point Grey’s FlyCapture SDK includes an easy-to-use graphical interface tool for configuring the IP address of the camera and interface card. The Point Grey GigE Configurator provides IP configuration options based on the DHCP protocol, a persistent IP, or a link-local address (LLA). The IP address can also be configured programmatically using the FlyCapture SDK.

Does the Grasshopper2 GS2-GE support automatic inter-camera synchronization?

Not at this time. However, like all Point Grey cameras, the Grasshopper2 provides a GPIO connector and trigger functionality, which allows the start of exposure to be synchronized between multiple cameras using an external electrical signal.

 

General Considerations

Other Reference Documentation

Other useful sources of information regarding specific features of the Applicable Product(s) include:

  • Grasshopper Getting Started Manual
  • Grasshopper2 Getting Started Manual
  • Grasshopper and Grasshopper2 Technical Reference Manuals

Testing Tools

To configure and test the information presented in this TAN:

  1. Connect the camera’s GPIO pins to an oscilloscope or external trigger source. By connecting the appropriate GPIO pins to an external trigger source or oscilloscope, you can observe the differences in general purpose input/output capability of the Applicable Product(s). Consult your camera’s Technical Reference or Getting Started manual for:
    1. GPIO connector pin layouts; and
    2. GPIO electrical characteristics
  1. Download the FlyCapture SDK.  The SDK includes numerous example programs that demonstrate various camera features. Specific examples that relate to this TAN include CustomImageEx, AsyncTriggerEx and GigEGrabEx.
  1. Access the camera’s register space. The easiest way to try this is using the FlyCap demo software included with the FlyCapture SDK. For register definitions and individual bit descriptions, please refer to the Point Grey Digital Camera Register Reference or your camera’s Technical Reference manual.

 

Detailed Comparison Between Grasshopper and Grasshopper2

Mechanics

The Grasshopper and Grasshopper2 share many of the same form factor and general mechanical properties.

Description

Grasshopper

Grasshopper2

Data transfer and camera control connectors

Two standard 9-pin IEEE-1394b connectors for data transfer, camera control and powering the camera

One RJ-45 Ethernet jack for data transfer and camera control (power must be provided via the GPIO)

Frame grabber requirements

IEEE-1394b PCI, PCIe or ExpressCard

Gigabit Ethernet network interface

GPIO connector

Hirose HR25 8 pin connector

IR cut filter properties

The infrared cut-off filter used with color versions of the cameras is the same and has the same transmittance properties.

CCD sensor placement on PCB

The chip and lens holder mounting holes are centered relative to the four corner mounting holes.

Overall dimensions

Industry standard 44mm x 29mm x 58mm (excluding lens holder, 1394/GigE and GPIO connector)

Lens holder

C-mount

Case description

Black zinc (casted) with black aluminum top and Point Grey logo

Mass

Approximately 85 g, depending on sensor (excluding optics)

Tripod mounting bracket

Secured by four (4) M2x2mm screws
Meets ISO and ASA standards
Included free of charge with every camera.

Mounting holes

Three (3) M3x2.5mm holes on the bottom face
Four (4) M2x2mm holes on the bottom face (for mounting bracket)
Two (2) M2 holes on the top face

Removable glass / IR filter system

BW models: protective dust glass between sensor and optics
COL models: IR filter between sensor and optics
Glass / IR filter screwed into place to allow easy removal

Development kit

Includes cable, 1394 interface card, software CD and Getting Started Manual.

Not available.
NIC, cable and power supply available for purchase separately.
Software and Getting Started Manual available for download.

GPIO Properties

Pin

Grasshopper

Grasshopper2

GPIO0 (Pin 1)

Bi-directional input/output
Default direction: input
Default function: trigger
Drive strength: 10 mA at 30 V

Opto-isolated input
(+3.3 V to +30 V)
Direction: input
Default function: trigger in
Input delay time: 4 μs

GPIO1 (Pin 2)

Bi-directional input/output
Default direction: output
Drive strength: 10 mA at 30 V

Opto-isolated open collector output
(+3.3V to +30V)
Direction: output
Default function: strobe
Drive strength: 25 mA at 30 V

GPIO2 (Pin 3)

Bi-directional input/output
Default direction: output
Drive strength: 10 mA at 30 V

Bi-directional input/output
Default direction: output
Drive strength: 25 mA at 30 V

GPIO3 (Pin 4)

Bi-directional input/output
Default direction: input
Drive strength: 10 mA at 30 V

Bi-directional input/output
Default direction: input
Drive strength: 25 mA at 30 V

GND (Pin 5)

Ground pin for all pins

Ground pin for bi-directional IO, Vext, +3.3 V

GND (Pin 6)

Ground pin for all pins

Ground pin for opto-isolated IO pins

VEXT  (Pin 7)

Power camera externally

+3.3V (Pin 8)

Power external circuitry up to a total of 150 mA.

Other Hardware and Electronics

Description

Grasshopper

Grasshopper2

CCD imaging sensors

640x480 Kodak KAI-0340
648x488 Sony ICX414
1384x1032 Sony ICX267
1384x1036 Sony ICX285
1624x1224 Sony ICX274
2448x2048 Sony ICX625

1624x1224 Sony ICX274
2448x2048 Sony ICX625

Data transfer and camera control interface

2X 9-pin IEEE-1394b (800Mb/s)
Connector flush with case
Secure jack screw connector

1X RJ-45 Ethernet connector
(1000 Mb/s)
Connector flush with case
Secure jack screw connector

Power interfaces

Via IEEE-1394b bus or GPIO connector

Via GPIO connector only

Power consumption

Less than 4.0 W

Less than 4.7 W

Cable length/type supported

10-meter FireWire

100-meter Cat5, 5e, 6

A/D converter

Analog Devices, 14-bit resolution

Temperature Sensor

On-board, accessible via control and status registers (CSRs)

On-board; accessible via control and status registers (CSRs)

Voltage Sensor

Current Sensor

None

Case Temperature/Heat Dissipation

Camera runs warm in high data rate video modes. Heat dissipation is encouraged but not required in normal operating environments.

Camera runs at a higher temperature than Grasshopper and may require heat dissipation and active monitoring of ambient temperature.

LED Behavior

One general purpose status LED for monitoring camera power, initialization and FireWire activity.

One general purpose status LED for monitoring camera power, initialization and video streaming activity.
Two status LEDs on each side of RJ-45 Ethernet jack for monitoring GigE connection status.

Automatic inter-camera image synchronization

Cameras operating on the same FireWire bus are automatically synchronized.

Not supported; requires external trigger

Firmware

This section does not address the significant number of firmware enhancements that have been added in the Grasshopper2, but focuses on functional differences between the two cameras that could affect integration of the Grasshopper2 in existing Grasshopper-based applications. Users are encouraged to download the documents listed in Section 1.5.1: Other Reference Documentation for assistance with terms, camera specifications, and register definitions.

Many default startup (power-up) parameters, such as resolution, frame rate, and ROI have changed in the Grasshopper2. The memory channels on the Grasshopper2 can be used for creating new default settings.

Point Grey cannot predict if or how all of the following differences may affect user applications. This section provides recommendations on how to address some of the most obvious differences in functionality.

Format_7

Description

Grasshopper

Grasshopper2

Pixel Formats

Mono8, Mono16, Raw8, Raw16, YUV411, YUV422, YUV444, RGB8

Mono8, Mono12, Mono16, Raw8, Raw12, Raw16, YUV411, YUV422, YUV444, RGB8

Max frame rates at max resolution

 

 

1624x1224 Sony ICX274

30 FPS

29 FPS
(1600x1200 at 30 FPS)

2448x2048 Sony ICX625

15 FPS

15 FPS

Packet Size

User-configurable

By default, Format_7 packet size auto-adjusts to GigE Vision Stream Channel Packet Size setting, Stream Channel Packet Delay setting, and GigE link speed.
Alternatively, packet size is programmable via FlyCapture API (not recommended).

Modes

Mode_0

Region of interest only

Mode_1

2X vertical binning and 2X horizontal subsampling; values are aggregated and averaged; limited or no increase in intensity

2X vertical binning and 2X horizontal  subsampling (monochrome models) or 2X vertical and 2x horizontal subsampling (color models); values are aggregated without averaging; increased intensity, improved SNR.

Mode_2

2X vertical binning; values are aggregated and averaged, with limited or no increase in intensity

Not available

Mode_3

Region of interest only

Not available

Mode_4

Not available

2X vertical binning and 2X horizontal subsampling; increased frame rate; available on color models only

Mode_5

Not available

4X vertical binning and 4X horizontal  subsampling (monochrome models) or 4X vertical and 4x horizontal subsampling (color models); values are aggregated without averaging; increased intensity, improved SNR.

Mode_6

Not available

4X vertical binning and 4X horizontal subsampling; values are aggregated without averaging; increased intensity; available on color models only, in monochrome pixel formats only.

Mode_7

Not available

Region of interest only. Slower pixel clock, recommended for longer extended shutter times and/or improved imaging performance. Frame rate increase may not be possible with reduced ROI.

Mode_8

Not available

Region of interest only, maximum resolution 1600x1200 at 30 FPS. Available only on GS2-GE-20S4.

Control and Status Registers (CSRs)

Description

Grasshopper

Grasshopper2

Redefined Registers

LUT

1A40h – 1A44h
Point Grey implementation

80000h – 80048h
IIDC v1.32 implementation

XMIT_FAILURE 12FCh

No presence bit

Presence bit

FRAME_INFO 12F8h

No inquiry bits for each embedded information type

Inquiry bits for each information  type

New Registers

Y16 Endianness

Controlled using IMAGE_DATA_FORMAT 1048h

DATA_DEPTH 630h
IIDC v1.32 implementation

Mirror Image

MIRROR_IMAGE_CTRL 1054h

Y8 or Y16 Grayscale or Raw Bayer Output

BAYER_MONO_CTRL 1050h

Current Sensor Access

None

CURRENT 1A58h – 1A5Ch

GigE Vision Bootstrap Registers

Not applicable

Stream channel packet size, stream channel packet delay, heartbeat, and others.
For a complete list of all supported GigE Vision registers, see the Grasshopper2 Technical Reference.

Other Firmware Changes

Description

Grasshopper

Grasshopper2

IIDC Version

1.31

1.32

Pixel Format Standards

Standard (Format_0 or Format_1) and customizable (Format_7)

Customizable (Format_7) only

Color processing

Color models output greyscale information when run in standard (Format_0 or Format_1) Y8/Y16 modes. The conversion from raw Bayer information to greyscale is done on-board the camera.

On color models, conversion from raw Bayer information to greyscale is done on-board the camera.

Extended Shutter/Exposure Times

Supported

Up to 20 s in Format_7 Mode_7 only. Not available in other modes.

High Dynamic Range (HDR) Imaging

Not supported

Support through HDR registers 1800h – 1884h

Lookup table

11-bit to 9-bit mapping
Three (3) LUT’s for RGB

9-bit to 9-bit mapping
Two (2) banks, each containing three (3) channels for RGB

Trigger Modes

IIDC modes 0, 1, 3, 14, 15: Supported on all models

Supports multiple exposure modes.
IIDC modes 0, 1, 3, 4, 5, 14, 15: Supported on all models

Memory Channels

Two (2) channels for user-defined configuration sets; one (1) channel for restoring to factory default settings

Frame Buffer

32 MB for temporary image storage and re-transmission

Non-Volatile Flash Memory

512 KB for data storage

Pixel Clocks

Two (2) or more settings; may change with format/mode change

One clock setting; will not change with format/mode change

Software and Driver Support

Description

Grasshopper

Grasshopper2

Driver options

Point Grey FirePRO driver
Point Grey PGRCAM driver (for S800, requires Windows XP SP1 or Windows 7 drivers)

Point Grey Image Filter driver (recommended on Windows) or Microsoft/Linux native drivers

Bandwidth Management

Guaranteed bandwidth for all cameras on bus

Packet size and packet delay user configurable

Camera Enumeration

Enumeration on the FireWire bus is supported natively by the OS

Point Grey GigE Configurator tool for camera enumeration; configuring MTU/IP address for camera and NIC

FlyCapture 2.x Applications

Supported

Supported on v2.1 or later

FlyCapture 1.x Applications

Supported

Not supported

GenICam Applications

Not supported

Supported via on-board device description file. For a list of all supported features, see the Grasshopper2 Technical Reference.

Supported Operating Systems

Windows 2000 (PGRCAM driver only)
Windows XP 32-bit
Windows XP 64-bit (FIREPRO driver only)
Windows Vista 32/64-bit (FIREPRO driver only)
Windows 7 32/64-bit
Linux Ubuntu 8.04

Windows XP 32/64-bit
Windows Vista 32/64-bit
Windows 7 32/64-bit
Linux Ubuntu 8.04

Software Requirements with FlyCapture 2.1

MS Visual Studio 6.0 SP5 (to compile and run example code on Windows XP 32-bit)
MS Visual Studio 2005 SP1 (to compile and run example code on Windows XP 64-bit)
MS Visual Studio 2005 SP1 and SP1 Update for Vista (to compile and run example code on Windows Vista or Windows 7)