IMAQdx with JAI and a hardware trigger

Hello,
We are working with two 'JAI AD-080' cameras and IMAQdx, and have two problems regarding the triggering and frame grabbing:
1)  We are unable to change the trigger source through IMAQdx property node or the Vision Acquisition Express; Vision Acquisition block.
2)  When we manually edit the trigger source property using the NI Measurement and Automation Explorer (MAX) to its correct value, we can't get all four of the CCD's to run at a time without resulting in bad packets, e.g. horizontal black lines across the images.
Our goal is to obtain the images from the 4 CCD's at a rate of 5 Hz using our hardware trigger.  We can already connect and obtain all four images at full speed, but the 5 Hz trigger is not being used by the cameras in that case.
Details of the setup:
NI 2011, Windows 7 
Two (2) JAI AD-080 cameras (with 2 CCD's each), GigE cameras connected over Ethernet
Hardware triggering at 5 Hz, on pin:  'Line 7 - TTL In 1'
Details of the problem:
(1)  Setting the trigger source not possible in Vision Express or IMAQdx property node
In order to use our hardware trigger, we have to set the camera property 'CameraAttributes::AcquisitionControl::TriggerSour​ce' to a specific pin (Line 7 - TTL In 1).  This property is available in MAX, but is not usable in the Vision Express Block.  The property is present, but the values are invalid.  Here is what I think is happening:  the list of properties are read from the camera, but LabVIEW does not know what the valid values are for that property and it populates the value drop-down menu with whatever was loaded last.  This can be seen in figures 1 and 2 where the values in the drop down menu change.
Similarly, this property of 'Trigger Source' cannot be changed programmatically using the IMAQdx property node shown here: http://digital.ni.com/public.nsf/allkb/E50864BB41B​54D1E8625730100535E88
I have tried all numeric values from 0 to 255, and most give me a value out of range error, but the ones that do work result in no change to the camera.
(2)  Lost packets in image during triggering
If I set the 'Trigger Source' property in MAX to the correct pin, save the configuration, and then use the Vision Acquisition Express block to connect to the camera, the triggering works properly (the hardware trigger is used and the images are received by LabVIEW at 5 Hz).  However, this only works for one CCD:  If i use the same code for all four CCD's at the same time, I get black bars on the images, and at least one of the CCD's result in an error in 'IMAQdx Get Image.vi'  (code -1074360308, -1074360316)
I tested this by using the configuration attributes created by the Vision Express Block, (The string used in the 'IMAQdx Read Attributes From String.vi'),  in the code we have been developing as well as a very simplified version which I have attached.  Those configuration attributes are saved in the text files:  JAI_Config_TrigON.txt and JAI_Config_TrigOFF.txt for using triggering or not respectively.  
So my final questions are:
Is there a problem with the IMAQdx because it doesn't recognize the trigger source value?
Do you have any suggestions for why there are bad packets and trouble connecting to the cameras when I load them with the trigger on attributes?
Thank you for your time - 
Attachments:
Fig1_VisionAcq.png ‏387 KB
Fig2_VisionAcq.png ‏442 KB
Fig3_BadPackets.png ‏501 KB

Hello,
Thank you for your response; especially the speed in which you responded and the level of detail.  
I have not solved the problem fully in LabVIEW yet, but I was able remove the black lines and apparitions from the images using different camera parameters.  
Since this was a significant victory I wanted to update:
1)  Version of IMAQdx?
I have IMAQdx 4.0, but the problem persists.
2)  Setting configuration files
Your suggestion to pay attention to the order in which the properties are set as well as using the MAX settings is very helpful.  I have not explored this feature fully, but I was able to successfully use MAX to set the default settings and then open the cameras programmatically without loading a new configuration file.  
3)  Bandwidth limitations
I modified the CCD's to only use 250 Mbits/second, but the lost packets (or missing lines/ apparitions) were still present.  
4)  JAI AD-080GE Specifics
I am using the JAI AD-080GE; and there are two settings for this camera that I want to mention:  
JAI Acquisition Control>> Exposure Mode (JAI)>>Edge pre-select
JAI Acquisition Control>> Exposure Mode (JAI)>>Delayed readout EPS trigger
The "Edge pre-select" mode uses an external trigger to initiate the capture, and then the video signal is read out when the image is done being exposed.
The "Delayed readout EPS trigger" can delay the transmission of a captured image in relation to the frame start.  It is recommended by JAI to prevent network congestion if there are several cameras triggered simultaneously on the same GigE interface.  The frame starts when the 'trigger 0' is pulsed, then stored on the camera, then is transmitted on 'trigger 1'.  
The default selection is the "Delayed readout EPS trigger", however, I do not know how to set the 'trigger 1' properly yet and I only have one connection available on my embedded board that is handling the triggering right now (I don't know if 'trigger 1' needs to be on a separate line or not).  Incidentally, the system does not work on this setting and gives me the black lines (aka lost packets/ apparitions).
I was able remove the black lines and apparitions using the "Edge pre-select" option on all 4 images with a 5 Hz simultaneous trigger.  I confirmed this using the "JAI Control Tool" that ships with the cameras.  I am unable to make this happen in MAX though, as the trigger mode is automatically switched to 'off' if I use the mode:  JAI Acquisition Control>> Exposure Mode (JAI)>>Edge pre-select
i.e. when manually switching the trigger mode to 'on' in MAX, "JAI Acquisition Control>> Exposure Mode (JAI)>>Delayed readout EPS trigger" option is forced by MAX.  The vise-versa is also forced so that if EPS mode is chosen, "Trigger Mode Off" is forced.
Additionally, there is a setting called:
Image Format Control>>Sync Mode>>Sync     &     Image Format Control>>Sync Mode>>Async
When the "Sync" option is chosen the NIR CCD uses the trigger of the VIS CCD.  In addition to using the "Edge pre-select" option, the "Sync" option improves the triggering results significantly.  
5)  Future troubleshooting
Since I cannot set the camera parameters manually in MAX (due to MAX forcing different combinations of parameters in 4), I am going to explore manually editing the configuration file and loading those parameters at startup.  This can be tricky since a bad combination will stall the camera, but I can verify the settings in JAI Control Tool first.  There is also an SDK that is shipped with the cameras, so I may be able to use those commands.  I haven't learned C/C++ yet, but I have teammates who have.

Similar Messages

  • Sun FastEthernet PCI with MII and x86 Hardware

    Hello
    I have two Sun FastEthernet PCI cards, each with one RJ45 port and a port labeled "MII". Would I be able to use these cards in a PC (Dell Precision 7xx) or x86 hardware in general?
    Thanks
    Matt

    Find the barcode paper sticker on the NIC and read the numbers. Report back here with what you find. That will be the actual part number of the product, in a format of something like
    501-XXXXyyyyWe would be interested in only the first seven digits.
    I vaguely remember that MS Operating Systems (at least from Win9x through WinXP) should recognize it natively from its chipset manufacturer. You wouldn't damage anything by just installing it to a PCI slot and booting your system. Your mileage may vary.
    I'm guessing you may find it to be this *<--link*
    (Ignore the `notes` on that web page, and the embedded URL's are broken as well. It's not a Sun Microsystems web site.)

  • PCI expansion slots with LV and NI hardware

    I was wondering if there were any hardware or software limitations
    with the use of a PCI expansion unit with NI boards and LabVIEW.

    pincpanter wrote:
    Hello LabVIEWers,
    I tried to install the old DAQ-mX 7.5 to drive a NI 6601 PCI card under Microsoft's Virtual XP (host is Win7 Pro).
    The driver installation failed somewhere (the errore message did'nt specify exactly what went wrong).
    Also, the card itself was not seen by the virtualized OS.
    Documentation available is somewhat limited and confusing, so I prefer to ask to actual users.
    Are you running multiple LabVIEW versions on different VM's? Which ones? Do you get troubles?
    Are the virtual OS really able to recognize the hardware? Is it possible to install different versions of the DAQ drivers on each?
    Thank you in advance for your help
    The PCI bus is not exposed to the MS XP virtual machine -  You can't get there on that VM although.. while not officially supported other XP VM emulators do exist.  a quick search on the forums should yeild results
    Jeff

  • MOVED: MSI 785GT-E63 problems with temps and temp hardware

    This topic has been moved to Off-Topic Technical.
    https://forum-en.msi.com/index.php?topic=140927.0

    I also use cpuid hwmonitor to check temps n volts 12 vlt rail is at 12.05 during load. The gpu load temps on the lightning nvr exceed 72c at stock and 76c with the oc. Should I get a new mobo? Compatibility issue? I was looking at a asrock 990fx extreme 3 as this would allow me to upgrade my CPU later if I choose. I am on my current main pc bc bulldozer didn't grab me. Some benches r less than the x6s, my two 6970s perform btr than a single 7970 for my needs and the only increase I would see is if I got two 7970s that's way to much coin n would be bottlenecked by my current CPU I'm sure. Any ideas? I'm at a loss

  • JAI and color palette

    Hi, I�m working with JAI, and I would like to know how could I change and manipulate the color palette of an image. I�m working with RenderedOp objects.
    I think that this could be done using ColorModel or Sample model classes, but i dont know how.
    I look foward on receiving an answer. Thanks

    Not quite sure of what you're asking...
    If the ColorModel is TYPE_..INDEXED or BINARY (or similar) you can change palette colors their. If the image is of TYPE_INT_RGB or the like, i think you can only change pixels (colors).
    The only way i can think of is for example, generate an BufferedImage with a say TYPE_BYTE_INDEXED (IndexColorModel) with 1,4,8 bit depth. Then, it's easier for me to, getColorModel, covert the byte array to an RBG int array; change the color with some Color methods, reconvert back to byte array. Then generate a new image with BufferedImage(IndexColorModel, 'oldimage'.getRaster()). Make sense?, this is kind of wack but i can stand dealing with the byte array!
    With JAI though i don't know what colormodels are being shot out, i make my own (inferior) Codecs. it helps me understand BMP,TGA,BMP better. The jpg codec i assume is generating 24 bit RGB but i assume tht BMP codec is >8 bit Indexed as it should be. Hope this helps

  • Triggering GigE Camera with Hardware Trigger

    Hello,
    Here is an outline of what I want to accomplish:
    -LabView program starts running and waits for GigE camera to output frames
    -Hardware trigger leads to GigE camera outputting frames
    -Some simple arithmetic is done on each frame to generate the average pixel value--> this average value is plotted for each frame
    -Repeat the above three steps
    Please see the attached VI. I have successfully set my camera's settings in MAX to make it wait for an external hardware trigger. However, the output of IMAQdx Grab2.vi inside the While Loop is only a single frame (even though in MAX I have set the Acquisition Mode to MultiFrame - 255 Frames).
    Any help would be appreciated!
    Thank You.
    Solved!
    Go to Solution.
    Attachments:
    ImageGrab.vi ‏57 KB

    The "problem" that you are having is the frame rate of video acquisition, which you think is about 20 Hz.  Take the very simple VI I posted and run it with your camera -- all it does is continuously take frames (and display them) -- does this have an acceptable rate?  I suspect it will.
    If so, then "start with what works and add to it", rather than trying to "fix what is broken".  First, let's consider how to (better) control the Start and Stop of frame acquisition.  I like your idea of using the 6009, but I recommend (if you are using a 3V signal as the trigger) that you wire the trigger to one of the Digital I/O ports (as 0 and 3V are acceptable TTL levels for False and True).
    Your Video loop will be "clocked" by the Camera at its frame rate, so you might consider using the same loop to clock the DIO.  Take a Digital sample of the line to which you've wired your TTL signal, and as long as it is True, run the loop.  [You'll need to think about how to get the loop started ...].  It should, I think, be possible to read from your USB 6009 within a 60th of a second -- if it is too slow, there are other ways of handling this with a separate parallel loop, but let's not go there until we see it is a problem.
    So now, in principle, you've gone from a simple loop showing frames at 60 Hz to a loop controlled by a TTL signal showing frames at 60 Hz.  All we need now is to process those frames.
    Here is where you want to use a Consumer/Producer pattern -- you don't want to do processing inside this loop (because the loop cannot run faster than all of its parts, taken together, and if you are processing incoming data, you have to get the data, then do the processing).  Instead, you have have two loops running in parallel -- the Producer loop acquiring the videos, and then "exporting" them to a Consumer loop that processes them.
    Are you familiar with this pattern?  There are numerous examples around (look in File/New/From Template/Framework/Design Patterns, and at some of the Sample Projects).  It uses a Queue, with data put onto the Queue by the Producer and removed by the Consumer.  You might need to increase the number of buffers for your camera, but you should be able to do quite a bit of processing in 1/60 of a second.
    Bob Schor

  • Nscans pretrigger and post trfigger upon analog hardware trigger

    How can i sample N samples from multipli AI upon analog hardware trigger ? I need some pretrigger and some posttrigger samples. I'm using the pci6071e A/D.

    There are examples that do exactly what you are explaining that get installed with the NI-DAQ driver. Depending on the API (LabVIEW, C, etc.) you are using and the version of the driver (NI-DAQmx, Traditional NI-DAQ), the examples will be called different things and found in different places.
    Basically, you want to find an example that does Analog Input With Reference Triggering. If you are using LabVIEW, then launch the Example Finder and look for an example called Acq&Graph Voltage-Int Clk-Dig Ref.vi (if you're using DAQmx) or Acquire N Scans Digital Trig.vi (if you're using Traditional NI-DAQ).
    Jared A

  • Form with view having instead-of-trigger gives FRM-40501 and ORA-02014

    I created a data-entry from with a 'view' as datas-source block. This view gives crosstab query results with a data from a single base-table but it is complex and uses decode and aggregate funciton 'max' just to create group by in a crosstab query. I have created a instead of trigger on this view to update or insert a record in base table. A test to update base table works fine at SQl prompt. A test to insert at SQL shows '1 row created' but in fact when I query the database, it does not show newly inserted row. Also, when I compile and run this form, I get FRM-40501 and ORA-02014. Help!!!
    I know that DML operations on a view with DECODE, aggregate functions or group by can not be performed but I thought the "instead of" trigger on the view to update the base table should eleminate this restriction and hence pusued further but now stuck!
    BTW: I can post details of base table, view, and instead of trigger, if you want to see them to further decipher the problem. Just let me know. Thanks!
    VERSIONS: Forms in developer suite v10.1.2.0.2 on Windows XP 64 bit desktop - ; Backend database: 9.2.0.8 on Windows 2003 EE server
    Edited by: user8647268 on Aug 19, 2009 1:19 PM
    Edited by: user8647268 on Aug 19, 2009 1:25 PM

    I just forgot to ask you one question: In my experience with forms, I have captured before_value and after_value and implemented logic based on results many times. This form I am working on is kinda first multi-record form where I have a tabular page with date and about 7 other columns forming a grid of cells, which users wanted. Each line is a record from a view. I tried relying on forms to do DML on underlying table and since the underlying table is a paritioned table, I ran into FRM-40509 and ORA-00936, where returning ROWID becomes problematic. I found a note 167550.1 which says to set Key mode to 'Updateable' or 'Non-Updateable' but not 'Unique' or 'Automatic' as a solution #1. Solution#1 failed i.e. the errors persisted. The note also says in that case, implement Solution #2, which is to write explicit trigger to do each of the DML on view. Here I run into kinda problem: In a tabular form with say 31 records each row having 7 cells which is like capturing 217 before values..that is too many. Addressing them with ':old.xxx' or ':new.xxx' which works in instead of trigger, does not work in trigger inside forms. Without checking these before and after values, it inserts rows with nulls for empty cells where we wnated it to skip and do nothing. So iam looking for a way to capture before value using some kinda standard form mechanism..Do you have any suggestions! (Sorry for long explanation but that is the only way to do it..)

  • Continuous data acquisition using NiDAQmx with a start and a stop trigger

    I'm sorry if this has been answered many times before, I can't quite seem to find the answer I'm looking for.
    I am using LabWindows CVI version 7 and NiDAQmx with a PCI6023E.
    I wish to acquire data continuously using an external clock as a timebase - I am happy with this.
    I wish the acquisition to start when an external signal (say on PFI7) goes high. I am also happy with this.
    What I also need is for the acquisition to stop when the signal on PFI7 goes low, or possibly when a signal on say PFI8 goes high. I'm not too concerned about which approach to use.
    How do I stop the acquisition with an external signal?
    Thanks in advance,
    Crispie

    I don't have CVI installed, but I've attached screen shots of a LabVIEW program that I believe accomplishes what you are trying to do. Translating it to the C API should be straight forward. I'll try to explain what the program is doing since it's using some of the more advanced features of the driver. Also, the DAQ device you are using doesn't support a true "stop" trigger so I'm using a reference trigger to get as close to the desired functionality as possible.
    First, the program configures a finite acquisition that uses both a start trigger and a reference trigger. The acquisition is using an external sample clock and will acquire 4 samples (2 pre-trigger samples and 2 post-trigger samples). Four may seem like an odd number here, but it allows us to emulate the functionality of a stop trigger as close as possible. Given this configuration, you must acquire at least 2 samples before the "stop" trigger is recognized, and you must acquire 2 more samples after the "stop" trigger is recognized. Hopefully this restriction is acceptable. You can always discard the last two data points after the stop trigger if they're not of interest, but you're stuck always acquiring at least two points between when the start and stop triggers are recognized.
    The program also overrides the default buffer size and read position. By default, the DAQmx driver will pick a buffer size exactly big enough to fit the pre-trigger and post-trigger data (4 samples in this case) and will begin reading data from the start of the pre-trigger data. Explicitly allocating a larger buffer will allow your acquisition to execute without receiving buffer overflow errors, and changing the default read position will allow you to read all of the data between the start and stop triggers as it is acquired and not just the pre-trigger and post-trigger data.
    Finally, the while loop takes care of reading the data. In this case, the loop continues to read data until the task is done and there are no longer samples available for reading from the buffer. The number of samples read per iteration is the lesser of the user specified amount or the number of samples available for reading from the buffer.
    I hope this helps. Good luck.
    Attachments:
    Stop_Trigger1.JPG ‏40 KB
    Stop_Trigger2.JPG ‏43 KB

  • Image capturing with ni1409 and Jai CV-A1

    I am using NI IMAQ 2.5 version.
    I have done the procedures for interfacing Jai A1 camera with IMAQ 1409.
    1. Download and install the camera control utility from the JAI Web site.
    2. Launch the JAI A1 control utility, and click Start>>Programs>>CV-A1 Control Tool>>CV-A1 Control Tool.
    3. Click the Shutter and Sync Signals button.
    4. Set the Pixel Clock Out radio button to On to output the pixel clock.
    Configuration Files
    1. Copy the JAI CV-A1(1409).icd file into the \Data folder. Go to ftp://ftp.ni.com/support/imaq/camera_support/
    camera_files/analog/jai/ to download this camera configuration file.
    2. Launch Measurement & Automation Explorer (MAX).
    3. Expand the Devices and Interfaces branch of the tree view.
    4. Expand the IMAQ PCI/PXI-1409 branch of the tree view.
    5. Right-click Channel 0: RS-170, and select Camera>>JAI>>JAI CV-A1.
    6. Click Save.
    When we are using the software for JAI A1, Camera control Tool interface(downloaded from JAI web site), the About window and Camera control window shows red color bar at the bottom and Communication window shows status in red color i.e. offline. I have tried to connect the camera control tool with JAI camera using the Communication window by clicking “auto” button. It is showing “no camera found”.
    I have tried with both types of wire viz. BNC and NI. But the results are same.
    The picture error.jpg shows the different windows those I have opened.
    The window “Acquisition Error” arises when I have tried to grab the frame using NI Measurement & automation software. Rests are for Camera Control Tool software for CV-A1.

    Hi again,
    Please see your original thread, and use the "reply" button to create a response. Posting in multiple threads will make it more difficult to assist you in troubleshooting!
    Thank you,
    Robert

  • Installing a PCMCIA-GPI​B card on an IBM A22m laptop with NT2000 and I get an "Unknown Hardware Error"

    I am trying to install the NI PCMCIA-GPIB card on an IBM A22m NT2000 laptop. The GPIB V1.7 driver installs properly and recognizes the interface but fails to locate instruments.
    The troubleshooter Wizard reports an unknown hardware error that may be due to a resource conflict or configuration error. I checked for hardware conflicts and found none and found no errors in the event viewer.
    The Laptop was originally installed with WIN98 and the PCMCIA card worked fine then. After installing NT2000 I uninstalled the GPIB driver and reinstalled it. The card also works properly on another laptop with Win95.

    Hi Dave,
    You should try using the lastest driver for the PCMCIA-GPIB interfaces. This is NI-488.2 2.1. You can find it in the Driver and Updates page.
    DiegoF
    National Instruments.

  • WorkFlow get triggered even if we set trigger for item update with SPEmailEventReceiver and workflow attached to same Library

    Hi All,
               I have a situation, SPEmailEventReceiver and WorkFlow is attached to same library, WorkFlow is configured to run after item is updated, but soon as the email is received in library the workflow
    is getting triggered, We have a action to create folder with subject and date and put the attachment with the date folder in SPEmailEventReceiver e.g: once a mail is received in library the SPEmailEventReceiver will create a folder with Subject and then Folder
    with Date and then put the attachment in the date folder so hierarchy will be subject folder/Date folder/attachment
    I have tried to alter the SquenceNumber attribute in Feature Element file to 1 and make the Synchronization as synchronous but no luck.

    Hi,
    Here are some articles for your reference:
    Programmatically creating Folders within SharePoint List
    http://www.mindfiresolutions.com/Programmatically-creating-Folders-within-SharePoint-List-487.php
    How to use SPEmailEventReceiver?
    http://kkryczka.wordpress.com/2010/11/05/how-to-use-spemaileventreceiver/
    Attachments disappear with custom email event handler
    http://blogs.msdn.com/b/malag/archive/2009/05/13/attachments-disappear-with-custom-email-event-handler.aspx?PageIndex=2
    Thanks,
    Dennis Guo
    TechNet Community Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Dennis Guo
    TechNet Community Support

  • Problems sharing internet with iptables and dnsmasq

    I followed this exactly: http://wiki.archlinux.org/index.php/Internet_Share
    And here is my dnsmasq.conf
    # Configuration file for dnsmasq.
    # Format is one option per line, legal options are the same
    # as the long options legal on the command line. See
    # "/usr/sbin/dnsmasq --help" or "man 8 dnsmasq" for details.
    # The following two options make you a better netizen, since they
    # tell dnsmasq to filter out queries which the public DNS cannot
    # answer, and which load the servers (especially the root servers)
    # uneccessarily. If you have a dial-on-demand link they also stop
    # these requests from bringing up the link uneccessarily.
    # Never forward plain names (without a dot or domain part)
    #domain-needed
    # Never forward addresses in the non-routed address spaces.
    #bogus-priv
    # Uncomment this to filter useless windows-originated DNS requests
    # which can trigger dial-on-demand links needlessly.
    # Note that (amongst other things) this blocks all SRV requests,
    # so don't use it if you use eg Kerberos, SIP, XMMP or Google-talk.
    # This option only affects forwarding, SRV records originating for
    # dnsmasq (via srv-host= lines) are not suppressed by it.
    #filterwin2k
    # Change this line if you want dns to get its upstream servers from
    # somewhere other that /etc/resolv.conf
    #resolv-file=
    # By default, dnsmasq will send queries to any of the upstream
    # servers it knows about and tries to favour servers to are known
    # to be up. Uncommenting this forces dnsmasq to try each query
    # with each server strictly in the order they appear in
    # /etc/resolv.conf
    #strict-order
    # If you don't want dnsmasq to read /etc/resolv.conf or any other
    # file, getting its servers from this file instead (see below), then
    # uncomment this.
    #no-resolv
    # If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
    # files for changes and re-read them then uncomment this.
    #no-poll
    # Add other name servers here, with domain specs if they are for
    # non-public domains.
    #server=/localnet/192.168.0.1
    # Example of routing PTR queries to nameservers: this will send all
    # address->name queries for 192.168.3/24 to nameserver 10.1.2.3
    #server=/3.168.192.in-addr.arpa/10.1.2.3
    # Add local-only domains here, queries in these domains are answered
    # from /etc/hosts or DHCP only.
    #local=/localnet/
    # Add domains which you want to force to an IP address here.
    # The example below send any host in doubleclick.net to a local
    # webserver.
    #address=/doubleclick.net/127.0.0.1
    # --address (and --server) work with IPv6 addresses too.
    #address=/www.thekelleys.org.uk/fe80::20d:60ff:fe36:f83
    # You can control how dnsmasq talks to a server: this forces
    # queries to 10.1.2.3 to be routed via eth1
    # --server=10.1.2.3@eth1
    # and this sets the source (ie local) address used to talk to
    # 10.1.2.3 to 192.168.1.1 port 55 (there must be a interface with that
    # IP on the machine, obviously).
    # [email protected]#55
    # If you want dnsmasq to change uid and gid to something other
    # than root, you will need to have CONFIG_SECURITY_CAPABILITIES
    # enabled in your kernel. The default uid and gid of nobody will
    # be used if capability is available and this is not set.
    #user=
    #group=
    # If you want dnsmasq to listen for DHCP and DNS requests only on
    # specified interfaces (and the loopback) give the name of the
    # interface (eg eth0) here.
    # Repeat the line for more than one interface.
    interface=eth0
    # Or you can specify which interface _not_ to listen on
    #except-interface=
    # Or which to listen on by address (remember to include 127.0.0.1 if
    # you use this.)
    #listen-address=
    # If you want dnsmasq to provide only DNS service on an interface,
    # configure it as shown above, and then use the following line to
    # disable DHCP on it.
    #no-dhcp-interface=
    # On systems which support it, dnsmasq binds the wildcard address,
    # even when it is listening on only some interfaces. It then discards
    # requests that it shouldn't reply to. This has the advantage of
    # working even when interfaces come and go and change address. If you
    # want dnsmasq to really bind only the interfaces it is listening on,
    # uncomment this option. About the only time you may need this is when
    # running another nameserver on the same machine.
    bind-interfaces
    # If you don't want dnsmasq to read /etc/hosts, uncomment the
    # following line.
    #no-hosts
    # or if you want it to read another file, as well as /etc/hosts, use
    # this.
    #addn-hosts=/etc/banner_add_hosts
    # Set this (and domain: see below) if you want to have a domain
    # automatically added to simple names in a hosts-file.
    #expand-hosts
    # Set the domain for dnsmasq. this is optional, but if it is set, it
    # does the following things.
    # 1) Allows DHCP hosts to have fully qualified domain names, as long
    # as the domain part matches this setting.
    # 2) Sets the "domain" DHCP option thereby potentially setting the
    # domain of all systems configured by DHCP
    # 3) Provides the domain part for "expand-hosts"
    #domain=thekelleys.org.uk
    # Set a different domain for a particular subnet
    #domain=wireless.thekelleys.org.uk,192.168.2.0/24
    # Same idea, but range rather then subnet
    #domain=reserved.thekelleys.org.uk,192.68.3.100,192.168.3.200
    # Uncomment this to enable the integrated DHCP server, you need
    # to supply the range of addresses available for lease and optionally
    # a lease time. If you have more than one network, you will need to
    # repeat this for each network on which you want to supply DHCP
    # service.
    #dhcp-range=192.168.20.100,192.168.20.149,12h
    # This is an example of a DHCP range where the netmask is given. This
    # is needed for networks we reach the dnsmasq DHCP server via a relay
    # agent. If you don't know what a DHCP relay agent is, you probably
    # don't need to worry about this.
    dhcp-range=192.168.20.100,192.168.20.149,255.255.255.0,12h
    # This is an example of a DHCP range with a network-id, so that
    # some DHCP options may be set only for this network.
    #dhcp-range=red,192.168.0.50,192.168.0.150
    # Supply parameters for specified hosts using DHCP. There are lots
    # of valid alternatives, so we will give examples of each. Note that
    # IP addresses DO NOT have to be in the range given above, they just
    # need to be on the same network. The order of the parameters in these
    # do not matter, it's permissble to give name,adddress and MAC in any order
    # Always allocate the host with ethernet address 11:22:33:44:55:66
    # The IP address 192.168.0.60
    dhcp-host=00:E0:B8:9C:B7:2C,192.168.20.1
    # Always set the name of the host with hardware address
    # 11:22:33:44:55:66 to be "fred"
    #dhcp-host=11:22:33:44:55:66,fred
    # Always give the host with ethernet address 11:22:33:44:55:66
    # the name fred and IP address 192.168.0.60 and lease time 45 minutes
    #dhcp-host=11:22:33:44:55:66,fred,192.168.0.60,45m
    # Give a host with ethernet address 11:22:33:44:55:66 or
    # 12:34:56:78:90:12 the IP address 192.168.0.60. Dnsmasq will assume
    # that these two ethernet interfaces will never be in use at the same
    # time, and give the IP address to the second, even if it is already
    # in use by the first. Useful for laptops with wired and wireless
    # addresses.
    #dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.60
    # Give the machine which says its name is "bert" IP address
    # 192.168.0.70 and an infinite lease
    #dhcp-host=bert,192.168.0.70,infinite
    # Always give the host with client identifier 01:02:02:04
    # the IP address 192.168.0.60
    #dhcp-host=id:01:02:02:04,192.168.0.60
    # Always give the host with client identifier "marjorie"
    # the IP address 192.168.0.60
    #dhcp-host=id:marjorie,192.168.0.60
    # Enable the address given for "judge" in /etc/hosts
    # to be given to a machine presenting the name "judge" when
    # it asks for a DHCP lease.
    #dhcp-host=judge
    # Never offer DHCP service to a machine whose ethernet
    # address is 11:22:33:44:55:66
    #dhcp-host=11:22:33:44:55:66,ignore
    # Ignore any client-id presented by the machine with ethernet
    # address 11:22:33:44:55:66. This is useful to prevent a machine
    # being treated differently when running under different OS's or
    # between PXE boot and OS boot.
    #dhcp-host=11:22:33:44:55:66,id:*
    # Send extra options which are tagged as "red" to
    # the machine with ethernet address 11:22:33:44:55:66
    #dhcp-host=11:22:33:44:55:66,net:red
    # Send extra options which are tagged as "red" to
    # any machine with ethernet address starting 11:22:33:
    #dhcp-host=11:22:33:*:*:*,net:red
    # Ignore any clients which are specified in dhcp-host lines
    # or /etc/ethers. Equivalent to ISC "deny unkown-clients".
    # This relies on the special "known" tag which is set when
    # a host is matched.
    #dhcp-ignore=#known
    # Send extra options which are tagged as "red" to any machine whose
    # DHCP vendorclass string includes the substring "Linux"
    #dhcp-vendorclass=red,Linux
    # Send extra options which are tagged as "red" to any machine one
    # of whose DHCP userclass strings includes the substring "accounts"
    #dhcp-userclass=red,accounts
    # Send extra options which are tagged as "red" to any machine whose
    # MAC address matches the pattern.
    #dhcp-mac=red,00:60:8C:*:*:*
    # If this line is uncommented, dnsmasq will read /etc/ethers and act
    # on the ethernet-address/IP pairs found there just as if they had
    # been given as --dhcp-host options. Useful if you keep
    # MAC-address/host mappings there for other purposes.
    #read-ethers
    # Send options to hosts which ask for a DHCP lease.
    # See RFC 2132 for details of available options.
    # Common options can be given to dnsmasq by name:
    # run "dnsmasq --help dhcp" to get a list.
    # Note that all the common settings, such as netmask and
    # broadcast address, DNS server and default route, are given
    # sane defaults by dnsmasq. You very likely will not need
    # any dhcp-options. If you use Windows clients and Samba, there
    # are some options which are recommended, they are detailed at the
    # end of this section.
    # Override the default route supplied by dnsmasq, which assumes the
    # router is the same machine as the one running dnsmasq.
    #dhcp-option=3,1.2.3.4
    # Do the same thing, but using the option name
    #dhcp-option=option:router,1.2.3.4
    # Override the default route supplied by dnsmasq and send no default
    # route at all. Note that this only works for the options sent by
    # default (1, 3, 6, 12, 28) the same line will send a zero-length option
    # for all other option numbers.
    #dhcp-option=3
    # Set the NTP time server addresses to 192.168.0.4 and 10.10.0.5
    #dhcp-option=option:ntp-server,192.168.0.4,10.10.0.5
    # Set the NTP time server address to be the same machine as
    # is running dnsmasq
    #dhcp-option=42,0.0.0.0
    # Set the NIS domain name to "welly"
    #dhcp-option=40,welly
    # Set the default time-to-live to 50
    #dhcp-option=23,50
    # Set the "all subnets are local" flag
    #dhcp-option=27,1
    # Send the etherboot magic flag and then etherboot options (a string).
    #dhcp-option=128,e4:45:74:68:00:00
    #dhcp-option=129,NIC=eepro100
    # Specify an option which will only be sent to the "red" network
    # (see dhcp-range for the declaration of the "red" network)
    # Note that the net: part must precede the option: part.
    #dhcp-option = net:red, option:ntp-server, 192.168.1.1
    # The following DHCP options set up dnsmasq in the same way as is specified
    # for the ISC dhcpcd in
    # http://www.samba.org/samba/ftp/docs/textdocs/DHCP-Server-Configuration.txt
    # adapted for a typical dnsmasq installation where the host running
    # dnsmasq is also the host running samba.
    # you may want to uncomment some or all of them if you use
    # Windows clients and Samba.
    #dhcp-option=19,0 # option ip-forwarding off
    #dhcp-option=44,0.0.0.0 # set netbios-over-TCP/IP nameserver(s) aka WINS server(s)
    #dhcp-option=45,0.0.0.0 # netbios datagram distribution server
    #dhcp-option=46,8 # netbios node type
    # Send RFC-3397 DNS domain search DHCP option. WARNING: Your DHCP client
    # probably doesn't support this......
    #dhcp-option=option:domain-search,eng.apple.com,marketing.apple.com
    # Send RFC-3442 classless static routes (note the netmask encoding)
    #dhcp-option=121,192.168.1.0/24,1.2.3.4,10.0.0.0/8,5.6.7.8
    # Send vendor-class specific options encapsulated in DHCP option 43.
    # The meaning of the options is defined by the vendor-class so
    # options are sent only when the client supplied vendor class
    # matches the class given here. (A substring match is OK, so "MSFT"
    # matches "MSFT" and "MSFT 5.0"). This example sets the
    # mtftp address to 0.0.0.0 for PXEClients.
    #dhcp-option=vendor:PXEClient,1,0.0.0.0
    # Send microsoft-specific option to tell windows to release the DHCP lease
    # when it shuts down. Note the "i" flag, to tell dnsmasq to send the
    # value as a four-byte integer - that's what microsoft wants. See
    # http://technet2.microsoft.com/WindowsServer/en/library/a70f1bb7-d2d4-49f0-96d6-4b7414ecfaae1033.mspx?mfr=true
    #dhcp-option=vendor:MSFT,2,1i
    # Send the Encapsulated-vendor-class ID needed by some configurations of
    # Etherboot to allow is to recognise the DHCP server.
    #dhcp-option=vendor:Etherboot,60,"Etherboot"
    # Send options to PXELinux. Note that we need to send the options even
    # though they don't appear in the parameter request list, so we need
    # to use dhcp-option-force here.
    # See http://syslinux.zytor.com/pxe.php#special for details.
    # Magic number - needed before anything else is recognised
    #dhcp-option-force=208,f1:00:74:7e
    # Configuration file name
    #dhcp-option-force=209,configs/common
    # Path prefix
    #dhcp-option-force=210,/tftpboot/pxelinux/files/
    # Reboot time. (Note 'i' to send 32-bit value)
    #dhcp-option-force=211,30i
    # Set the boot filename for netboot/PXE. You will only need
    # this is you want to boot machines over the network and you will need
    # a TFTP server; either dnsmasq's built in TFTP server or an
    # external one. (See below for how to enable the TFTP server.)
    #dhcp-boot=pxelinux.0
    # Boot for Etherboot gPXE. The idea is to send two different
    # filenames, the first loads gPXE, and the second tells gPXE what to
    # load. The dhcp-match sets the gpxe tag for requests from gPXE.
    #dhcp-match=gpxe,175 # gPXE sends a 175 option.
    #dhcp-boot=net:#gpxe,undionly.kpxe
    #dhcp-boot=mybootimage
    # Encapsulated options for Etherboot gPXE. All the options are
    # encapsulated within option 175
    #dhcp-option=encap:175, 1, 5b # priority code
    #dhcp-option=encap:175, 176, 1b # no-proxydhcp
    #dhcp-option=encap:175, 177, string # bus-id
    #dhcp-option=encap:175, 189, 1b # BIOS drive code
    #dhcp-option=encap:175, 190, user # iSCSI username
    #dhcp-option=encap:175, 191, pass # iSCSI password
    # Test for the architecture of a netboot client. PXE clients are
    # supposed to send their architecture as option 93. (See RFC 4578)
    #dhcp-match=peecees, option:client-arch, 0 #x86-32
    #dhcp-match=itanics, option:client-arch, 2 #IA64
    #dhcp-match=hammers, option:client-arch, 6 #x86-64
    #dhcp-match=mactels, option:client-arch, 7 #EFI x86-64
    # Do real PXE, rather than just booting a single file, this is an
    # alternative to dhcp-boot.
    #pxe-prompt="What system shall I netboot?"
    # or with timeout before first available action is taken:
    #pxe-prompt="Press F8 for menu.", 60
    # Available boot services. for PXE.
    #pxe-service=x86PC, "Boot from local disk", 0
    # Loads <tftp-root>/pxelinux.0 from dnsmasq TFTP server.
    #pxe-service=x86PC, "Install Linux", pxelinux
    # Loads <tftp-root>/pxelinux.0 from TFTP server at 1.2.3.4.
    # Beware this fails on old PXE ROMS.
    #pxe-service=x86PC, "Install Linux", pxelinux, 1.2.3.4
    # Use bootserver on network, found my multicast or broadcast.
    #pxe-service=x86PC, "Install windows from RIS server", 1
    # Use bootserver at a known IP address.
    #pxe-service=x86PC, "Install windows from RIS server", 1, 1.2.3.4
    # If you have multicast-FTP available,
    # information for that can be passed in a similar way using options 1
    # to 5. See page 19 of
    # http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf
    # Enable dnsmasq's built-in TFTP server
    #enable-tftp
    # Set the root directory for files availble via FTP.
    #tftp-root=/var/ftpd
    # Make the TFTP server more secure: with this set, only files owned by
    # the user dnsmasq is running as will be send over the net.
    #tftp-secure
    # Set the boot file name only when the "red" tag is set.
    #dhcp-boot=net:red,pxelinux.red-net
    # An example of dhcp-boot with an external TFTP server: the name and IP
    # address of the server are given after the filename.
    # Can fail with old PXE ROMS. Overridden by --pxe-service.
    #dhcp-boot=/var/ftpd/pxelinux.0,boothost,192.168.0.3
    # Set the limit on DHCP leases, the default is 150
    #dhcp-lease-max=150
    # The DHCP server needs somewhere on disk to keep its lease database.
    # This defaults to a sane location, but if you want to change it, use
    # the line below.
    #dhcp-leasefile=/var/lib/misc/dnsmasq.leases
    # Set the DHCP server to authoritative mode. In this mode it will barge in
    # and take over the lease for any client which broadcasts on the network,
    # whether it has a record of the lease or not. This avoids long timeouts
    # when a machine wakes up on a new network. DO NOT enable this if there's
    # the slighest chance that you might end up accidentally configuring a DHCP
    # server for your campus/company accidentally. The ISC server uses
    # the same option, and this URL provides more information:
    # http://www.isc.org/index.pl?/sw/dhcp/authoritative.php
    #dhcp-authoritative
    # Run an executable when a DHCP lease is created or destroyed.
    # The arguments sent to the script are "add" or "del",
    # then the MAC address, the IP address and finally the hostname
    # if there is one.
    #dhcp-script=/bin/echo
    # Set the cachesize here.
    #cache-size=150
    # If you want to disable negative caching, uncomment this.
    #no-negcache
    # Normally responses which come form /etc/hosts and the DHCP lease
    # file have Time-To-Live set as zero, which conventionally means
    # do not cache further. If you are happy to trade lower load on the
    # server for potentially stale date, you can set a time-to-live (in
    # seconds) here.
    #local-ttl=
    # If you want dnsmasq to detect attempts by Verisign to send queries
    # to unregistered .com and .net hosts to its sitefinder service and
    # have dnsmasq instead return the correct NXDOMAIN response, uncomment
    # this line. You can add similar lines to do the same for other
    # registries which have implemented wildcard A records.
    #bogus-nxdomain=64.94.110.11
    # If you want to fix up DNS results from upstream servers, use the
    # alias option. This only works for IPv4.
    # This alias makes a result of 1.2.3.4 appear as 5.6.7.8
    #alias=1.2.3.4,5.6.7.8
    # and this maps 1.2.3.x to 5.6.7.x
    #alias=1.2.3.0,5.6.7.0,255.255.255.0
    # and this maps 192.168.0.10->192.168.0.40 to 10.0.0.10->10.0.0.40
    #alias=192.168.0.10-192.168.0.40,10.0.0.0,255.255.255.0
    # Change these lines if you want dnsmasq to serve MX records.
    # Return an MX record named "maildomain.com" with target
    # servermachine.com and preference 50
    #mx-host=maildomain.com,servermachine.com,50
    # Set the default target for MX records created using the localmx option.
    #mx-target=servermachine.com
    # Return an MX record pointing to the mx-target for all local
    # machines.
    #localmx
    # Return an MX record pointing to itself for all local machines.
    #selfmx
    # Change the following lines if you want dnsmasq to serve SRV
    # records. These are useful if you want to serve ldap requests for
    # Active Directory and other windows-originated DNS requests.
    # See RFC 2782.
    # You may add multiple srv-host lines.
    # The fields are <name>,<target>,<port>,<priority>,<weight>
    # If the domain part if missing from the name (so that is just has the
    # service and protocol sections) then the domain given by the domain=
    # config option is used. (Note that expand-hosts does not need to be
    # set for this to work.)
    # A SRV record sending LDAP for the example.com domain to
    # ldapserver.example.com port 289
    #srv-host=_ldap._tcp.example.com,ldapserver.example.com,389
    # A SRV record sending LDAP for the example.com domain to
    # ldapserver.example.com port 289 (using domain=)
    #domain=example.com
    #srv-host=_ldap._tcp,ldapserver.example.com,389
    # Two SRV records for LDAP, each with different priorities
    #srv-host=_ldap._tcp.example.com,ldapserver.example.com,389,1
    #srv-host=_ldap._tcp.example.com,ldapserver.example.com,389,2
    # A SRV record indicating that there is no LDAP server for the domain
    # example.com
    #srv-host=_ldap._tcp.example.com
    # The following line shows how to make dnsmasq serve an arbitrary PTR
    # record. This is useful for DNS-SD. (Note that the
    # domain-name expansion done for SRV records _does_not
    # occur for PTR records.)
    #ptr-record=_http._tcp.dns-sd-services,"New Employee Page._http._tcp.dns-sd-services"
    # Change the following lines to enable dnsmasq to serve TXT records.
    # These are used for things like SPF and zeroconf. (Note that the
    # domain-name expansion done for SRV records _does_not
    # occur for TXT records.)
    #Example SPF.
    #txt-record=example.com,"v=spf1 a -all"
    #Example zeroconf
    #txt-record=_http._tcp.example.com,name=value,paper=A4
    # Provide an alias for a "local" DNS name. Note that this _only_ works
    # for targets which are names from DHCP or /etc/hosts. Give host
    # "bert" another name, bertrand
    #cname=bertand,bert
    # For debugging purposes, log each DNS query as it passes through
    # dnsmasq.
    #log-queries
    # Log lots of extra information about DHCP transactions.
    #log-dhcp
    # Include a another lot of configuration options.
    #conf-file=/etc/dnsmasq.more.conf
    #conf-dir=/etc/dnsmasq.d
    eth0 is set up for 192.168.20.1, netmask 255.255.255.0.  I can get an IP from my client machine and ping 192.168.20.1, but cannot access the internet.  resolv.conf on the client machine has a nameserver of 192.168.20.1.  Also, Firefox time sout trying to access Google via it's static IP.
    What should I do to grant the internet to my client machine?

    http://wiki.archlinux.org/index.php/DNS_with_bind -> Did you try it too ?

  • Sync output timing to hardware trigger (PFI?)

    I'd like to sync the output of my cards (2 PCI-6733 connected with an RTSI cable, and using  BNC-2110's) to the AC power line of the lab I work in. That is, when told to output, they will always wait and output at the same point in the 60Hz cycle.  
    To that end, I've built a circuit that gives a TTL signal that is synced to the building's AC line. I now need to find a way to take this TTL signal and use it as the starter for my experimental sequence. If there is a delay that's ok, however it needs to be a consistant delay (to within a few microseconds preferably). This is so that everytime I run my experimental sequence, I'm starting at the same point in the AC power cycle.
    Is it correct to use the PFI port to try and do this? Other suggestions?
    The sequence would be:
    Step 1: Cards are ready to write
    Step 2: Cards write once, started by hardware trigger of the TTL from the circuit I built.
    Step 3: Other Labview code runs, and then returns to step 1.
    Solved!
    Go to Solution.

    Ok. Knowing about DAQmx export signal is definitely helpful. I don't think I've got everything set up quite right though, as it's giving me an error with what I tried. 
    Error -89136 occurred at DAQmx Start Task.vi:1
    Possible reason(s):
    Specified route cannot be satisfied, because the hardware does not support it.
    Property: StartTrig.OutputTerm
    Destination Device: Dev1
    Destination Terminal: PFI0
    Task Name: _unnamedTask<1E>
    I'm not sure on the correct order of the DAQmx functions. I currently have: Create Channel -> Timing -> Write -> Export Signal (?) -> Start Task. This doesn't seem to be the correct way to do this though. The sample you linked to had the Write after the Start Task... which doesn't quite make sense to me... In addition, I'm not sure where to put the DAQmx Trigger.vi in this sequence.
    Any pointers to set me in the right direction? I've attached a screenshot and vi of my current code to show you what I do now. 
    Attachments:
    Write2PCI6733 (SubVI).vi ‏54 KB
    WriteToPCIscheme_Mar9_2012.PNG ‏59 KB

  • Is there any plan to for usb 9234 to support hardware trigger?

    We expect to provide our low cost modal testing solution based on NI usb-9234 and ModalVIEW software. Hardware trigger is needed when using usb 9234 to perform impact testing.
    Message Edited by Troglodyte on 07-11-2008 10:44 PM

    Thank you for your post. 
    In order to keep the power of the board to a minimum, and to keep our prices very competitive, our customers use software triggering for applications such as impact hammer test.  We are happy to coach your development team in the implementation of software analog triggering in LabVIEW, Our Sound and Vibration Assistant, or with our "C" Api.  I have asked our Product Support Engineer to post a note regarding the "C" api function calls.  Stay tuned. 
    Also, please feel free to contact us directly as the need arises. 
    Sincerely,
    Preston Johnson
    Principal Sales Engineer
    Condition Monitoring Systems
    Vibration Analyst III - www.vibinst.org, www.mobiusinstitute.com
    National Instruments
    [email protected]
    www.ni.com/mcm
    www.ni.com/soundandvibration
    www.ni.com/biganalogdata
    512-683-5444

Maybe you are looking for

  • Can't connect to wireless network in XP under bootcamp

    Hey there, I'm hoping that someone here can provide some help. I've got XP sp2 running 'fine' in Bootcamp - 10.6.3 iMac 27 i7. The only thing that I can't get working is the wireless connection. I can't for the life of me figure out how I am supposed

  • How to setup new site in dreamweaver if not working with Local Site Folder?

    Dear All, I am working with a website design (wordpress) project with a group of people, since we are working together on the same design, our developing site is not located in the local folder but on remote server, but I can't setup the website in D

  • SMTP error from remote mail service

    I am receiving a error that states"SMTP error from remote mail service" This is my work e-mail that is a out look e-mail service--but was put on my laptop in mozilla. If I test send e-mails to my gmail, aol and the work e-mail the work e-mail goes th

  • Regarding the function module --error is coming.

    Hi All I am executing function module and i am getting one error after actvating that FM. Error is - REPORT/PROGRAM statement missing, or program type is I (INCLUDE).           Waiting for the fovarable reply.

  • How do i retrive menory for my ipod ?

    HOW DO I RETRIVE MENORY FOR MY IPOD