Carson Palmer was perfect in his brief appearance, and the rest of the Arizona Cardinals were almost as good Saturday night in a 32-0 rout of Houston, a dismal debut for Bill O'Brien as Texans coach.
Palmer was 5 for 5 for 84 yards and a touchdown in his lone series in the preseason opener.
Ryan Fitzpatrick had a rough first game as Houston's quarterback. Playing the entire first half, he completed 6 of 14 passes for 55 yards with two interceptions as the Cardinals took a 20-0 lead at the break.
Arizona rookie Logan Thomas played the entire second half, completing 11 of 12 passes for 113 yards and a touchdown.
Houston was without wide receiver Andre Johnson, running back Arian Foster and cornerback Johnathan Joseph -- all nursing minor injuries.
The Texans, coming off a 2-14 season, got inside the Cardinals' 30-yard line once, and that ended with an interception.
"Really, really great to just see us come out and execute," Palmer said. "Nothing spectacular, nothing special, just everybody on the same page."
Arizona rookie John Brown caught five passes for 87 yards, all in the first half.
Palmer, entering his 12th NFL season and second with Arizona, had passes of 25 yards to Brown and 35 yards to Rob Housler, then capped his drive with a seven-yard scoring pass to Larry Fitzgerald.
Arizona's first-team defense had a three-and-out and an interception in its two series.
Rookie Chandler Catanzaro, trying to take the kicking job from Jay Feely, had field goals of 32, 28 and 25 yards.
With 1:28 to play, Houston rookie quarterback Tom Savage was tackled by JoJo Dickson for a safety.
The Cardinals had a 407-172 advantage in total yards.
Palmer's backup, Drew Stanton, who hasn't thrown a regular-season pass since 2010, completed 11 of 17 for 152 yards and 5-yard TD pass to Jaron Brown.
Case Keenum, 0-8 as a starter for Houston last season, played the third quarter, going 3 of 5 for 23 yards.
After Arizona took the opening kickoff, J.J. Watt beat guard Jonathan Cooper and sacked Palmer for a seven-yard loss at the Cardinals 15. But on third-and-16, Palmer found the speedy rookie John Brown on a 25-yard play. Moments later, he threw to Housler, who ran down the sideline on a 35-yard play yards to the 38.
A hands-to-the-face penalty on Ted Larsen, starting in place of injured Lyle Sendlein, negated Palmer's 13-yard TD pass to John Carlson. But two plays later, Palmer found Fitzgerald over the middle for a score.
Later in the first quarter, Fitzpatrick's pass was tipped by linebacker Kevin Minter. It bounced through the arms of linebacker Larry Foote before cornerback Antonio Cromartie, in his first season with Arizona, picked it off.
"It's good, from the standpoint of we just always try to be around the ball," Cromartie said. "When you're running to the ball, good things always happen."
NOTES: Arizona was without wide receiver Michael Floyd (groin) and wide receiver-kick returner Ted Ginn Jr. (knee). ... First overall draft pick Jadeveon Clowney had some problems but did beat basketball player-turned-tight end Darren Fells to stop Stepfan Taylor for a five-yard loss. ... Arizona's Dave Zastudil pinned Houston on its 3-yard line with a 54-yard punt midway through the second quarter. He led the NFL in punts inside the 20 the past two years. ... Feely is to kick next week when Arizona plays at Minnesota. ... Starting linemen Cooper and Larsen played the entire first half for the Cardinals.