private static string UID = "XYZ"; // Change XYZ to the UID of your Industrial Dual 0-20mA Bricklet

    #endregion Fields

    #region Methods

    // Callback function for current reached callback (parameter has unit nA)
    static void CurrentReachedCB(BrickletIndustrialDual020mA sender, byte sensor,
	                             int current)
    {
        Console.WriteLine("Sensor: " + sensor);
        Console.WriteLine("Current: " + current/1000000.0 + " mA");
        Console.WriteLine("");
    }
    private static string UID = "XYZ"; // Change XYZ to the UID of your Industrial Dual 0-20mA Bricklet

    #endregion Fields

    #region Methods

    static void Main()
    {
        IPConnection ipcon = new IPConnection(); // Create IP connection
        BrickletIndustrialDual020mA id020 =
          new BrickletIndustrialDual020mA(UID, ipcon); // Create device object

        ipcon.Connect(HOST, PORT); // Connect to brickd
        // Don't use device before ipcon is connected

        // Get current current from sensor 1 (unit is nA)
        int current = id020.GetCurrent(1);
        Console.WriteLine("Current (Sensor 1): " + current/1000000.0 + " mA");

        Console.WriteLine("Press enter to exit");
        Console.ReadLine();
        ipcon.Disconnect();
    }
    static void Main()
    {
        IPConnection ipcon = new IPConnection(); // Create IP connection
        BrickletIndustrialDual020mA id020 =
          new BrickletIndustrialDual020mA(UID, ipcon); // Create device object

        ipcon.Connect(HOST, PORT); // Connect to brickd
        // Don't use device before ipcon is connected

        // Register current callback to function CurrentCB
        id020.Current += CurrentCB;

        // Set period for current (sensor 1) callback to 1s (1000ms)
        // Note: The current (sensor 1) callback is only called every second
        //       if the current (sensor 1) has changed since the last call!
        id020.SetCurrentCallbackPeriod(1, 1000);

        Console.WriteLine("Press enter to exit");
        Console.ReadLine();
        ipcon.Disconnect();
    }
    static void Main()
    {
        IPConnection ipcon = new IPConnection(); // Create IP connection
        BrickletIndustrialDual020mA id020 =
          new BrickletIndustrialDual020mA(UID, ipcon); // Create device object

        ipcon.Connect(HOST, PORT); // Connect to brickd
        // Don't use device before ipcon is connected

        // Get threshold callbacks with a debounce time of 10 seconds (10000ms)
        id020.SetDebouncePeriod(10000);

        // Register current reached callback to function CurrentReachedCB
        id020.CurrentReached += CurrentReachedCB;

        // Configure threshold for current (sensor 1) "greater than 10 mA" (unit is nA)
        id020.SetCurrentCallbackThreshold(1, '>', 10*1000000, 0);

        Console.WriteLine("Press enter to exit");
        Console.ReadLine();
        ipcon.Disconnect();
    }