/// <summary>
        /// Transmit a "Toggle" command
        /// </summary>
        /// <param name="toggleState">Card state to be toggled.</param>
        /// <returns>relay card state</returns>
        public RelayCardStateResponse ToggleCommand(CardRelayState toggleState)
        {
            var result = new RelayCardStateResponse
                                {
                                    CardResponseFrame = SendCommandToCard(
                                                                            this.port,
                                                                            (int)RequestCommand.Toggle,
                                                                            (byte)toggleState.CardAddress,
                                                                            toggleState.ToByteArray()[0])
                                };

            result.RelayState = new CardRelayState(ConstNumberOfCardPorts, result.CardResponseFrame.AddressByte);
            result.RelayState.FromByte(result.CardResponseFrame.DataByte);

            return result;
        }
        /// <summary>
        /// Transmit a "GetPort" Command
        /// </summary>
        /// <param name="cardAddress">The card address.</param>
        /// <returns>card response frame</returns>
        public RelayCardStateResponse GetPortCommand(int cardAddress)
        {
            var result = new RelayCardStateResponse
                             {
                                 CardResponseFrame =
                                     SendCommandToCard(
                                         this.port,
                                         (int)RequestCommand.GetPort,
                                         (byte)cardAddress,
                                         0)
                             };

            result.RelayState = new CardRelayState(ConstNumberOfCardPorts, result.CardResponseFrame.AddressByte);
            result.RelayState.FromByte(result.CardResponseFrame.DataByte);

            return result;
        }