public LeConnection(AppService service, BluetoothDevice device, ISerialNumber serialNumber)
 {
     this.service      = service;
     this.device       = device;
     this.serialNumber = serialNumber;
     this.protocol     = Protocol.FindProtocolFromVersion(EProtocolVersion.V1);
 }
        public GaugeDevice(GaugeSerialNumber serialNumber, IConnection connection, IGaugeProtocol protocol)
        {
            __serialNumber  = serialNumber;
            this.connection = connection;
            __protocol      = protocol;
            name            = serialNumber.ToString();

            connection.onStateChanged += ((IConnection conn, EConnectionState state) => {
                NotifyOfDeviceEvent(DeviceEvent.EType.ConnectionChange);
                foreach (GaugeDeviceSensor sensor in sensors)
                {
                    sensor.NotifyInvalidated();
                }
            });

            connection.onDataReceived += ((IConnection conn, byte[] packet) => {
                HandlePacket(packet);
            });

            lastNotify = DateTime.Now;
        }