internal ManufacturerSpecificReport(Node node, byte[] payload) : base(node)
        {
            if (payload == null)
            {
                throw new ArgumentNullException(nameof(payload));
            }
            if (payload.Length < 6)
            {
                throw new ReponseFormatException($"The response was not in the expected format. {GetType().Name}: Payload: {BitConverter.ToString(payload)}");
            }

            ManufacturerID = PayloadConverter.ToUInt16(payload, 0);
            ProductType    = PayloadConverter.ToUInt16(payload, 2);
            ProductID      = PayloadConverter.ToUInt16(payload, 4);
        }