PITTSFORD, N.Y. — After getting through the initial nerves and big storylines the first day of training camp always provides, the Bills settled in for their second day of work at St. John Fisher University on Thursday. And with it came the camp’s first moment of tempers flaring — a bit earlier than most camps.
On a rep during team drills, rookie tight end Jackson Hawes was blocking defensive end A.J. Epenesa on a wide rush attempt, but during the play, starting left tackle Dion Dawkins had fallen to the ground. Hawes continued to block Epenesa into the on-the-ground Dawkins, which brought Epenesa to the ground as well.
Epenesa immediately took exception and threw a punch at Hawes’ helmet before the two were quickly separated. Epenesa, who is usually quite mild-mannered in the locker room, remained heated even after heading to the sideline. Head coach Sean McDermott took a moment to talk with Hawes right after the rep, as the practice continued without another incident.
Here’s what else stood out from the Bills’ second day of camp and what it means.
Edwards takes new approach to contract year
Much of the focus during the Bills’ offseason has been on extending players, as well as some they have yet to extend. Most of that attention has centered on running back James Cook, who met with reporters on Thursday, saying he believes he’ll get paid “wherever it happens.” The other one many focus on is starting center Connor McGovern, who, like Cook, is on an expiring deal. But they aren’t the only two starting offensive players entering their final year. Left guard David Edwards, who was among the team’s best starters in 2024, will also be a free agent.
Edwards originally came to the Bills in 2023 on a one-year prove-it deal and served as their full-year sixth offensive lineman. The Bills were so impressed with the longtime Rams starter that they gave him a new two-year deal, and once the team released center Mitch Morse that same offseason, it opened the door for Edwards to become a starter as McGovern shifted to center. Now Edwards, 28, is entering a contract year once more.
“There hasn’t been anything of substance,” Edwards said of extension negotiations with the Bills. “I don’t worry about that stuff yet. As cliche as that is, that’s the truth, because I know what it did to me a few years ago.”
In 2022, the Rams had just beaten the Bengals in the Super Bowl. It was Edwards’ third season, and his third year as their full-time starter. As he entered the final year of his rookie deal for the 2022 season, it was all he could think about. He called it “crippling.”
“All I (was) consumed with was earning another contract,” Edwards said. “It was my motivation to work out in the offseason. I thought about it when I ate great food and (when) I was working out and (when) I was recovering — this is what I’m working for.”
Edwards’ 2022 season ended after just four games, as the Rams placed him on injured reserve. Edwards suffered a concussion in practice during Week 4 and missed that game in concussion protocol. He cleared it for Week 5, then suffered a second concussion in that game. His season was done, as was his shot at a huge payday.
“It was so debilitating mentally as I look back because, when I came to terms that I wasn’t going to get extended, it was like, ‘Well, what now?’” he said.
Now that Edwards has successfully rebuilt his career in Buffalo, he’s keeping it uncomplicated despite not knowing what the offseason answer will be.
“What I worry about now is the process of being on the field and what I’m asked to do,” he said. “On singles, when we’re running our mid-zone stuff, do I throw my hands to his outside shoulder? When I short-set guys, do I get my feet in the ground and use my hands? I think that makes everything simplified, rather than worrying about something that’s way down the road that I can’t control.”
Bosa’s usage worth watching
As the Bills looked to overhaul their defensive line during the offseason, they targeted a big name in Joey Bosa. Despite Bosa’s extensive injury history over the past three seasons, the Bills were willing to take a risk on him because of his talent, scheme fit and past success. Bosa arrived in Buffalo as the presumed starter opposite Greg Rousseau. While that still could happen, the early reps in training camp are noteworthy.
Bosa, who sat out all of the team’s spring practices with a calf injury, was fully cleared to practice as training camp began. But on the first day with the top defensive unit, it was Epenesa, the 2024 starter, not Bosa, getting the majority of those reps. Epenesa, who the Bills took off the field on most passing downs last season, was thought to be a rotational player for 2025, and one who could even be moved before cutdown day because of all the newcomers. But now, Epenesa appears firmly entrenched as one of their top three defensive ends, with his game-day role still up in the air. The answer to Bosa’s first-team involvement will come with more reps and more information over the next few weeks.
On top of that, on Day 2, Bosa didn’t partake in team drills, though he did participate in practice. McDermott wasn’t scheduled to speak with reporters on Thursday, so we don’t know why the team chose to keep Bosa on the sideline. However, considering how much they talked about having a “plan” for him in practices and games, perhaps it was a tactical decision rather than something happening to their big-name signing. Regardless, Bosa’s first few months in Buffalo haven’t gone as expected, and how the Bills handle his practice reps moving forward is worth closely monitoring.

Bills rookie cornerback Maxwell Hairston has shown flashes of his potential at times … and other times not. (Mark Konezny / Imagn Images)
Hairston’s early ups and downs
Rookie cornerback Maxwell Hairston, the first-round pick, has picked up where he left off in spring practices. On some plays, he has flashed the big-time potential the Bills saw from him at Kentucky, but on others, he may have been thinking too much and wound up losing a rep.
All spring, the Bills coached Hairston hard, hoping for rapid development. That trend continued on Wednesday and Thursday. On Day 1, Hairston made one of the best defensive plays of the day, closing on a Mitchell Trubisky pass from a long way away, showed his speed and acceleration to make up ground in a hurry and batted away the pass. It was a “wow” moment at the end of the practice, even if his positioning on the play wasn’t the best leading up to the breakup, but that’s what speed will do at cornerback. He’s the type of athlete the Bills haven’t invested in at that spot since McDermott and general manager Brandon Beane arrived.
On the other hand, you can tell that on some reps he’s still thinking through things. Lined up against wide receiver Jalen Virgil, Hairston was a split-second too slow to react to a route over the middle, and Virgil extended the separation with some good footwork mid-route, leading to an easy catch-and-run for a big gain. That inconsistency is likely why Hairston hasn’t gotten consistent time with the first-team defense just yet. He’s mixed in here and there with some other backups, but for the most part it’s been Tre’Davious White’s show alongside Christian Benford. But it’s very early in camp, and it’s going to take two to three weeks to see if Hairston has a legitimate chance to win the job for Week 1.
Brown’s absence opens door for two tackle options
Two players have a big opportunity with starting right tackle Spencer Brown missing time at the start of camp because of a back flare-up. The Bills have split the first-team reps pretty evenly between Tylan Grable, a sixth-round pick in 2024, and Ryan Van Demark, who has made the 53-man roster each of the last two seasons. In 2023, Van Demark served as the team’s top backup offensive tackle without much competition for the job, but that changed in 2024 once Grable arrived. He outplayed Van Demark and usurped the swing tackle role when healthy last season. Even after a multi-week injury handed the job back to Van Demark, Grable regained it in the playoffs.
Now their trajectories are quite different. In Grable, the Bills see an athletic, former high school quarterback who can play both tackle positions and possibly even both guard spots. They likely want to see if there’s some starting potential down the line, as his place on the team is secure. Grable could even factor into the discussion of who starts if Edwards leaves in free agency, or even further down the line once Dawkins gets closer to retirement.
For Van Demark, his spot on the team is not assured given that the team just used a sixth-round pick on offensive tackle Chase Lundt. This could be Van Demark’s best chance all summer to prove himself. He struggled quite a bit in his right tackle reps for the Bills last season, which is the likely reason he lost the top backup job to Grable. If Van Demark is a left tackle only, the lack of versatility hurts his chances of sticking around. The practices are still non-padded, making it difficult to get a full picture of how they look, but sometimes all it takes is some reps to open the coaches’ minds to something new, making this a massive chance for Grable and Van Demark for however long Brown is out.
Day 2 MVP, WR Khalil Shakir: Shakir caught multiple targets from quarterback Josh Allen in team drills, as the offense had a much better day than the one before. Shakir’s often subtle route running was on display, giving Allen ample space to get him the ball with his footwork and how well he read the defense. Shakir is getting plenty of time with Allen, which raises the possibility that Shakir’s role will grow. Regardless, he was excellent on Thursday.
Did not participate: RT Spencer Brown (back, active PUP), C Sedrick Van Pran-Granger (calf, active PUP), TE Dawson Knox (hamstring, non-football injury list), WR Laviska Shenault (lower leg, non-football injury list).
Left practice early: DE A.J. Epenesa (undisclosed), LB Dorian Williams (undisclosed).
(Top photo of Joey Bosa: Shawn Dowd / Rochester Democrat and Chronicle / USA Today Network via Imagn Images)
Source link