{
  "$type": "UnigeFrontEnd.Config.DescUsbSettings",
  "PIds": [
    {
      "Id": 0,
      "ShortName": "DPNC333_01",
      "FriendlyName": "Baby Mind FEB v1"
    },
	{
      "Id": 1,
      "ShortName": "DPNC349_01",
      "FriendlyName": "VATA FEB v1"
    },
	{
      "Id": 2,
      "ShortName": "DPNC342_01",
      "FriendlyName": "32-ch DRS4 ACQ Board v1"
    },
	{
      "Id": 3,
      "ShortName": "DPNC333_02",
      "FriendlyName": "Baby Mind FEB v2"
    },
	{
      "Id": 4,
      "ShortName": "DPNC369_01",
      "FriendlyName": "SIPHRA FEB v1"
    }	
  ],
  "LibIds": [
    {
      "Id": 0,
      "ShortName": "V0",
      "FriendlyName": "Protocol and readout on GPIF"
    },
	{
      "Id": 1,
      "ShortName": "V1",
      "FriendlyName": "Protocol on UART"
    },
    {
      "Id": 2,
      "ShortName": "V2",
      "FriendlyName": "Protocol on UART + CRC"
    },
	{
      "Id": 3,
      "ShortName": "V3",
      "FriendlyName": "Protocol on UART + CRC + UserGet/SetCmd"
    },
	{
      "Id": 4,
      "ShortName": "V4",
      "FriendlyName": "Protocol on UART + CRC + UserGet/SetCmd.\nUSB Reader with for 512K FX3 (DMA size = 8KB).\nAuto Board ID"
    },
	{
      "Id": 5,
      "ShortName": "V5",
      "FriendlyName": "Protocol on UART + CRC + UserGet/SetCmd (UserGet data latched on ACK).\nUSB Reader with for 512K FX3 (DMA size = 8KB).\nAuto Board ID"
    }	
  ],  
  "Settings": [
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "Timeout",
	  "ToolTip": "Xfer Timeout assertion time while reading on readout EP1IN (ms)",
      "Type": "UInt32",
      "Default": 1500,
      "Min": 0,
      "Max": 4294967295,
      "BitSize": 32,
      "MemoryLayout": {
        "Index": 0
      },
      "UnitName": "ms"
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "StopOnTimeout",
	  "ToolTip": "Enable readout stop when timeout asserted",
      "Type": "Bool",
      "Default": true,
      "Min": 0,
      "Max": 1,
      "BitSize": 1,
      "MemoryLayout": {
        "Index": 0
      }
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "AutoResetOnTimeout",
	  "ToolTip": "Enable autoreset EP1IN flux control when timeout asserted",
      "Type": "Bool",
      "Default": false,
      "Min": 0,
      "Max": 1,
      "BitSize": 1,
      "MemoryLayout": {
        "Index": 0
      }
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "PacketSize",
	  "ToolTip": "Number of bytes per packet during the USB transfer. Nominal=16384 for optimized data throughput on FX3 >=v3.0 (12288 for FX3 <v3.0), should be reduced when data throughput is low (else timeout my be asserted)",
      "Type": "UInt16",
      "Default": 16384,
      "Min": 1024,
      "Max": 16384,
      "BitSize": 16,
      "MemoryLayout": {
        "Index": 0
      },
	  "UnitName": "Bytes"
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "Packets",
	  "ToolTip": "Number of packets transferred before data is written into file. Minimum 8 for optimized data throughput, should be reduced when data throughput is low (else timeout my be asserted)",
      "Type": "Byte",
      "Default": 2,
      "Min": 1,
      "Max": 16,
      "BitSize": 8,
      "MemoryLayout": {
        "Index": 0
      }
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "FileLimit",
	  "ToolTip": "Define the limit of readout file size i.e. Readout is automatically stopped when this size is reached",
      "Type": "UInt32",
      "Default": 1024,
      "Min": 1,
      "Max": 4294967295,
      "BitSize": 32,
      "MemoryLayout": {
        "Index": 0
      },
      "UnitName": "KB"	  
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "Queues",
	  "ToolTip": "Number of queues used in asynchronous USB data transfer (NOT. IMPL)",
      "Type": "Byte",
      "Default": 1,
      "Min": 1,
      "Max": 8,
      "BitSize": 8,
      "MemoryLayout": {
        "Index": 0
      },
      "Gui": {
        "Graphical": "Disabled"
      }
    },
    {
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "StartRequestOnly",
	  "ToolTip": "Chain mode function : only check this box for starting the readout on the next boards in chain mode ",
      "Type": "Bool",
      "Default": false,
      "Min": 0,
      "Max": 1,
      "BitSize": 1,
      "MemoryLayout": {
        "Index": 0
      }
    },
	{
      "$type": "UnigeFrontEnd.Config.DescVariable",
      "Name": "StopDaqEndTimeout",
	  "ToolTip": "Timeout assertion time on FPGA answer after a stop request (from user stop, script, Xfer Timeout or File Limit)",
      "Type": "UInt32",
      "Default": 5000,
      "Min": 2000,
      "Max": 4294967295,
      "BitSize": 32,
      "MemoryLayout": {
        "Index": 0
      },
      "UnitName": "ms"
    }	
  ]
}