-
Notifications
You must be signed in to change notification settings - Fork 4
FireWire
Firewire (also known as iEEE-1394) is a synchronous bus architecture with important features for image collection. Early versions were limited in speed to 100 to 400 Mbps (12.5 to 50 Mbytes/sec), but the 1394b standard had increased that data rate to 800 Mbps (100 Mbytes/sec) in common use, with future expansions to even higher data rates possible. These speeds are referred to as S100, S400, or S800.
The important properties of the Firewire bus are:
-
Synchronous. The bus protocol includes clock information, and the time of arrival of every packet of data can be obtained. This provides a common clock to all devices on the bus, so cameras can synchronize themselves (Pt. Grey, in particular) using that common clock. The bus clock can also be compared to real-time, so it is trivial to convert from bus time to real world time for synchronization with external devices.
-
Isochronous. It is possible to allocate up to 80% of the Firewire bus to devices that need to operate in "isochronous" mode. That means that each such device is allocated a fixed timeslot for transmitting data. This is important when there are multiple cameras all trying to send their data back to the host at the same time.
Because of these properties, knowing the time of an incoming image is relatively easy, and cameras can easily cooperate in use of the available bus bandwidth.
There have been many Firewire hardware implementations, most of which are poor to unusable for Argus work. The most significant issue is that the standard for Firewire OHCI (host control interface) requires the ability to allocate just four isochronous channels for incoming data. If you have a five camera system, this is not enough. Early Linux Firewire drivers allocated one isochronous channel for the driver, leaving only three available for cameras. Some implementations have actually changed their design without changing the integrated circuit part number. The recommended manufacturer for Firewire interface circuits is Agere, with the FW-323 being the most common. Because the circuit board manufacturers often do not list the actual chip in use, users are often left buying one to see what it has. Pt. Grey Firewire interfaces contain a newer version of an Agere chip, which makes them appropriate for use.
CIRN
Wiki Home
CIRN Website
CIRN Research and Workshops
CIRN Monthly Webinars Existing Monitoring Stations
Sampling Goals
Pixel Resolution
Fixed Mounting Platforms
Temporary Towers
FOV and Lenses
Installation Design
Cookbook
Data Processing
Understanding Image Geometries
Photogrammetry
Intrinsic Calibration
GCPs
Extrinsic Calibration
File Naming
Directory Naming
Time Conventions
Common Variable Names
Parallel Processing Issues
Etc
GitHub Help
GitHub Cheat Sheet
CIRN repository help
GitHub Best Practices and GuidelinesGitHub Repository Structure
GitHub Workflow Overview
Using Teams & Roles
Issues
Testing & Review
Code Requirements
General Guidance
Admin
Software Development Life Cycle