[File]
        DescText = "Banner iVu Plus Image Sensor";
        CreateDate = 01-04-2018;
        CreateTime = 10:22:00;
 	ModDate = 06-02-2020;
        ModTime = 10:11:00;
        Revision = 1.4;
        HomeURL = "http://www.bannerengineering.com/";

[Device]
        VendCode = 12;
        VendName = "Banner Engineering Corp.";
        ProdType = 43;
        ProdTypeStr = "Generic Device";
        ProdCode = 2;
        MajRev = 2;
        MinRev = 70;
        ProdName = "Banner iVu Plus";
        Catalog = "iVuPlus";
        Icon = "banner_ivu.ico";

[Device Classification]
        Class1 = EtherNetIP;

[Params]
   Param1 = 0,,,0x0004,0xC8,4,"RPI Range","","",50000,3200000,100000,1,1000,1,0,,,,,1; $RPI range
   Param2 = 0,,,0x0000,0xD2,2,"T->O word","WORD","",0,65535,0,,,,,,,,,;
   Param3 = 0,,,0x0000,0xD2,2,"O->T word","WORD","",0,65535,0,,,,,,,,,;


[Assembly]

   Assem1 = "O->T 0x70",,12,0x0000,,,
   16, Param3,		$ 6 16-bit WORDs
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3;

   Assem2 = "O->T 0x71",,480,0x0000,,,
   16, Param3,		$ 240 16-bit WORDs
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3,
   16, Param3;

   Assem3 = "T->O 0x64",,60,0x0000,,,
   16, Param2,		$ 30 16-bit WORDs
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,   
   16, Param2;

   Assem4 = "T->O 0x65",,480,0x0000,,,
   16, Param2,		$ 240 16-bit WORDs
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2;


   Assem5 = "T->O 0x66",,480,0x0000,,,
   16, Param2,		$ 240 16-bit WORDs
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2,
   16, Param2;


[Connection Manager]
   Connection1 =
 	0x04010002,
			$ TRIGGER AND TRANSPORT MASK
           	$     BIT=VAL DESCRIPTION
                $       0 = 0  (class 0:null)
                $       1 = 1  (class 1:dup. detect)
                $       2 = 0  (class 2:acknowledged)
                $       3 = 0  (class 3:verified)
                $       4 = 0  (class 4:non-block)
                $       5 = 0  (class 5:non-block, frag)
                $       6 = 0  (class 6:multicast, frag)
                $    7-15 = 0  (class  :reserved)
                $      16 = 1  (trigger: cyclic)
                $      17 = 0  (trigger: change of state)
                $      18 = 0  (trigger: application)
                $  19-23 = 0  (trigger: reserved (must be zero))
                $      24 = 0  (transport type: listen-only)
                $      25 = 0  (transport type: input-only)
                $      26 = 1  (transport type: exclusive-owner)
                $      27 = 0  (transport type: redundant-owner)
                $   28-30 = 0  (reserved (must be zero))
                $      31 = 0  (not used for Class 1)
      0x44640405,       
                $ CONNECTION PARAMETERS BIT ASSIGNMENTS
                $     BIT=VAL DESCRIPTION
                $        0 = 1  (O=>T fixed)
                $        1 = 0  (O=>T variable)
                $        2 = 1  (T=>O fixed)
                $        3 = 0  (T=>O variable)
                $     4-7 = 0  (reserved (must be zero))
                $   8-10 = 4  (O=>T header (4 byte run/idle))
                $      11 = 0  (reserved (must be zero))
                $   12-14 = 0  (T=>O header (pure data))
                $      15 = 0  (reserved (must be zero))
                $      16 = 0  (O=>T connection type: NULL)
                $      17 = 0  (O=>T connection type: MULTI)
                $      18 = 1  (O=>T connection type: P2P)
                $      19 = 0  (O=>T connection type: RSVD)
                $      20 = 0  (T=>O connection type: NULL)
                $      21 = 1  (T=>O connection type: MULTI)
                $      22 = 1  (T=>O connection type: P2P)
                $      23 = 0  (T=>O connection type: RSVD)
                $      24 = 0  (O=>T priority: LOW)
                $      25 = 0  (O=>T priority: HIGH)
                $      26 = 1  (O=>T priority: SCHEDULED)
                $      27 = 0  (O=>T priority: RSVD)
                $      28 = 0  (T=>O priority: LOW)
                $      29 = 0  (T=>O priority: HIGH)
                $      30 = 1  (T=>O priority: SCHEDULED)
                $      31 = 0  (T=>O priority: RSVD)
      Param1,,Assem1,    $ O=>T RPI, size, format
      Param1,,Assem3,    $ T=>O RPI, size, format
       ,,       $ config part 1 (not used)
       ,,       $ config part 2 (not used)
"Small Assemblies",      $ connection name
"",                     $ Help string
"20 04 24 80 2C 70 2C 64"; $ small size Assemblies path

 Connection2 =
 	0x04010002,
			$ TRIGGER AND TRANSPORT MASK
           	$     BIT=VAL DESCRIPTION
                $       0 = 0  (class 0:null)
                $       1 = 1  (class 1:dup. detect)
                $       2 = 0  (class 2:acknowledged)
                $       3 = 0  (class 3:verified)
                $       4 = 0  (class 4:non-block)
                $       5 = 0  (class 5:non-block, frag)
                $       6 = 0  (class 6:multicast, frag)
                $    7-15 = 0  (class  :reserved)
                $      16 = 1  (trigger: cyclic)
                $      17 = 0  (trigger: change of state)
                $      18 = 0  (trigger: application)
                $  19-23 = 0  (trigger: reserved (must be zero))
                $      24 = 0  (transport type: listen-only)
                $      25 = 0  (transport type: input-only)
                $      26 = 1  (transport type: exclusive-owner)
                $      27 = 0  (transport type: redundant-owner)
                $   28-30 = 0  (reserved (must be zero))
                $      31 = 0  (not used for Class 1)
      0x44640405,       
                $ CONNECTION PARAMETERS BIT ASSIGNMENTS
                $     BIT=VAL DESCRIPTION
                $        0 = 1  (O=>T fixed)
                $        1 = 0  (O=>T variable)
                $        2 = 1  (T=>O fixed)
                $        3 = 0  (T=>O variable)
                $     4-7 = 0  (reserved (must be zero))
                $    8-10 = 4  (O=>T header (4 byte run/idle))
                $      11 = 0  (reserved (must be zero))
                $   12-14 = 0  (T=>O header (pure data))
                $      15 = 0  (reserved (must be zero))
                $      16 = 0  (O=>T connection type: NULL)
                $      17 = 0  (O=>T connection type: MULTI)
                $      18 = 1  (O=>T connection type: P2P)
                $      19 = 0  (O=>T connection type: RSVD)
                $      20 = 0  (T=>O connection type: NULL)
                $      21 = 1  (T=>O connection type: MULTI)
                $      22 = 1  (T=>O connection type: P2P)
                $      23 = 0  (T=>O connection type: RSVD)
                $      24 = 0  (O=>T priority: LOW)
                $      25 = 0  (O=>T priority: HIGH)
                $      26 = 1  (O=>T priority: SCHEDULED)
                $      27 = 0  (O=>T priority: RSVD)
                $      28 = 0  (T=>O priority: LOW)
                $      29 = 0  (T=>O priority: HIGH)
                $      30 = 1  (T=>O priority: SCHEDULED)
                $      31 = 0  (T=>O priority: RSVD)
      Param1,,Assem2,    $ O=>T RPI, size, format
      Param1,,Assem4,    $ T=>O RPI, size, format
       ,,       $ config part 1 (not used)
       ,,       $ config part 2 (not used)
"Large Assemblies",      $ connection name
"",                     $ Help string
"20 04 24 80 2C 71 2C 65"; $ large size Assemblies path

Connection3 =
 	0x04010002,
			$ TRIGGER AND TRANSPORT MASK
           	$     BIT=VAL DESCRIPTION
                $       0 = 0  (class 0:null)
                $       1 = 1  (class 1:dup. detect)
                $       2 = 0  (class 2:acknowledged)
                $       3 = 0  (class 3:verified)
                $       4 = 0  (class 4:non-block)
                $       5 = 0  (class 5:non-block, frag)
                $       6 = 0  (class 6:multicast, frag)
                $    7-15 = 0  (class  :reserved)
                $      16 = 1  (trigger: cyclic)
                $      17 = 0  (trigger: change of state)
                $      18 = 0  (trigger: application)
                $  19-23 = 0  (trigger: reserved (must be zero))
                $      24 = 0  (transport type: listen-only)
                $      25 = 0  (transport type: input-only)
                $      26 = 1  (transport type: exclusive-owner)
                $      27 = 0  (transport type: redundant-owner)
                $   28-30 = 0  (reserved (must be zero))
                $      31 = 0  (not used for Class 1)
      0x44640405,       
                $ CONNECTION PARAMETERS BIT ASSIGNMENTS
                $     BIT=VAL DESCRIPTION
                $        0 = 1  (O=>T fixed)
                $        1 = 0  (O=>T variable)
                $        2 = 1  (T=>O fixed)
                $        3 = 0  (T=>O variable)
                $     4-7 = 0  (reserved (must be zero))
                $   8-10 = 4  (O=>T header (4 byte run/idle))
                $      11 = 0  (reserved (must be zero))
                $   12-14 = 0  (T=>O header (pure data))
                $      15 = 0  (reserved (must be zero))
                $      16 = 0  (O=>T connection type: NULL)
                $      17 = 0  (O=>T connection type: MULTI)
                $      18 = 1  (O=>T connection type: P2P)
                $      19 = 0  (O=>T connection type: RSVD)
                $      20 = 0  (T=>O connection type: NULL)
                $      21 = 1  (T=>O connection type: MULTI)
                $      22 = 1  (T=>O connection type: P2P)
                $      23 = 0  (T=>O connection type: RSVD)
                $      24 = 0  (O=>T priority: LOW)
                $      25 = 0  (O=>T priority: HIGH)
                $      26 = 1  (O=>T priority: SCHEDULED)
                $      27 = 0  (O=>T priority: RSVD)
                $      28 = 0  (T=>O priority: LOW)
                $      29 = 0  (T=>O priority: HIGH)
                $      30 = 1  (T=>O priority: SCHEDULED)
                $      31 = 0  (T=>O priority: RSVD)
      Param1,,Assem2,    $ O=>T RPI, size, format
      Param1,,Assem5,    $ T=>O RPI, size, format
       ,,       $ config part 1 (not used)
       ,,       $ config part 2 (not used)
"BCR Only",      $ connection name
"",                     $ Help string
"20 04 24 80 2C 71 2C 66"; $ Path for BCR Assembly 0x66 (102)


[Port]
        Port1 =
                TCP,
                "EtherNet/IP Port",
                "20 F5 24 01",
                1;

