Home Forums Software Development Tobii 4C – Electron integration with core SDK and Tobii Interaction 0.7.3 Reply To: Tobii 4C – Electron integration with core SDK and Tobii Interaction 0.7.3


Hi Grant,

Your suggestions make sense assuming I have access to the normalised data in the Core SDK.

From what I read up online, the Tobii Core SDK doesn’t provide normalized data for the Gaze Point data stream. The EyeX used to. Am I incorrect in that assumption? If I download and install https://www.nuget.org/packages/Tobii.EyeX.Client/, will I be able to access the normalised coordinates?

using System;
using System.Net.Sockets;
using System.Text;
using Tobii.Interaction;
using Tobii.Interaction.Framework;
using Tobii.Interaction.Model;

/*Integrate this into a C# project that is set up to use the Tobii SDK.
  It will send the Tobii input to your electron App over UDP.
namespace TobiiSDKServer
    class TobiiServer
        static void Main(string[] args)

            // Initialise Host to Tobii Connection
            var host = new Host();

            //Uncomment this section to Launch Calibration when the project opens
             host.Context.LaunchConfigurationTool(ConfigurationTool.RetailCalibration, (data) => { });

            //Setup Server
            UdpClient udpClient = new UdpClient();
            udpClient.Connect("", 33333);

            //Create stream. 
            var gazePointDataStream = host.Streams.CreateGazePointDataStream();

            // Get the gaze data
            gazePointDataStream.GazePoint((x, y, ts) => SendInput(udpClient, x, y, ts));

            // Read

            // we will close the coonection to the Tobii Engine before exit.

            //ToDo: Add code to boot your Electron App here


        static void SendInput(UdpClient client, double x, double y, double ts)
            String sendString = @"{""id"":""gaze_data"", ""x"":" + x + @", ""y"": " + y + @", ""timestamp"":" + ts + @"}";
            Byte[] senddata = Encoding.ASCII.GetBytes(sendString);
            client.Send(senddata, senddata.Length);

I have done some modifications to this code on my other computer, though from what I can tell the results coming back from this are in mm and not pixels and I am struggling to get the normalised gazed coordinates.