/// <summary>
        /// Attempts to retrieve the Psu Model Number.  This method
        /// calls down to the Chassis Manager with SendReceive
        /// </summary>
        private PsuModelNumberPacket GetPsuModel(byte psuId)
        {
            // Initialize return packet
            PsuModelNumberPacket returnPacket = new PsuModelNumberPacket();

            returnPacket.CompletionCode = CompletionCode.UnspecifiedError;
            returnPacket.ModelNumber    = "";

            try
            {
                PsuModelResponse myResponse = new PsuModelResponse();
                myResponse = (PsuModelResponse)this.SendReceive(this.PsuDeviceType, this.PsuId, new PsuRequest((byte)PmBusCommand.MFR_MODEL, (byte)PmBusResponseLength.MFR_MODEL), typeof(PsuModelResponse));

                // check for completion code
                if (myResponse.CompletionCode != 0)
                {
                    returnPacket.CompletionCode = (CompletionCode)myResponse.CompletionCode;
                }
                else
                {
                    returnPacket.CompletionCode = CompletionCode.Success;
                    if (myResponse.PsuModelNumber != null)
                    {
                        byte[] inModelNumber  = myResponse.PsuModelNumber;
                        byte[] outModelNumber = null;
                        PmBus.PsuModelNumberParser(ref inModelNumber, out outModelNumber);
                        returnPacket.ModelNumber = System.BitConverter.ToString(outModelNumber, 0);
                    }
                    else
                    {
                        returnPacket.ModelNumber = "";
                    }
                }
            }
            catch (System.Exception ex)
            {
                returnPacket.CompletionCode = CompletionCode.UnspecifiedError;
                returnPacket.ModelNumber    = "";
                Tracer.WriteError(this.PsuId, DeviceType.Psu, ex);
            }

            return(returnPacket);
        }
        /// <summary>
        /// Attempts to retrieve the Psu Model Number.  This method
        /// calls down to the Chassis Manager with SendReceive
        /// </summary>
        private PsuModelNumberPacket GetPsuModel(byte psuId)
        {
            // Initialize return packet
            PsuModelNumberPacket returnPacket = new PsuModelNumberPacket();
            returnPacket.CompletionCode = CompletionCode.UnspecifiedError;
            returnPacket.ModelNumber = "";

            try
            {
                PsuModelResponse myResponse = new PsuModelResponse();
                myResponse = (PsuModelResponse)this.SendReceive(this.PsuDeviceType, this.PsuId, new PsuRequest((byte)PmBusCommand.MFR_MODEL,(byte)PmBusResponseLength.MFR_MODEL), typeof(PsuModelResponse));

                // check for completion code
                if (myResponse.CompletionCode != 0)
                {
                    returnPacket.CompletionCode = (CompletionCode)myResponse.CompletionCode;
                }
                else
                {
                    returnPacket.CompletionCode = CompletionCode.Success;
                    if (myResponse.PsuModelNumber != null)
                    {
                        byte[] inModelNumber = myResponse.PsuModelNumber;
                        byte[] outModelNumber = null;
                        PmBus.PsuModelNumberParser(ref inModelNumber, out outModelNumber);
                        returnPacket.ModelNumber = System.BitConverter.ToString(outModelNumber, 0);
                    }
                    else
                    {
                        returnPacket.ModelNumber = "";
                    }
                }
            }
            catch (System.Exception ex)
            {
                returnPacket.CompletionCode = CompletionCode.UnspecifiedError;
                returnPacket.ModelNumber = "";
                Tracer.WriteError(this.PsuId, DeviceType.Psu, ex);
            }

            return returnPacket;
        }