Exemplo n.º 1
0
        /// <inheritdoc />
        public async Task OpenGateAsync()
        {
            if (_i2c == null)
            {
                throw new InvalidOperationException("Unable to open gate while disconnected");
            }

            if (Duration > 1000)
            {
                Duration = 1000;
            }
            ;

            _i2c.Write(_turnOnCommand);
            _currentStatus = DeviceStatus.Transitioning("Opening gate");

            await Task.Delay(1000);

            _i2c.Write(_turnOffCommand);
            _currentStatus = DeviceStatus.Open("Opening gate");
        }